Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(301)

Side by Side Diff: src/inspector/Allocator.h

Issue 2340193002: [inspector] removed ArrayLengthHelperFunction specialization for empty array (Closed)
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/v8.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 the V8 project authors. All rights reserved. 1 // Copyright 2016 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_INSPECTOR_ALLOCATOR_H_ 5 #ifndef V8_INSPECTOR_ALLOCATOR_H_
6 #define V8_INSPECTOR_ALLOCATOR_H_ 6 #define V8_INSPECTOR_ALLOCATOR_H_
7 7
8 #include <cstddef> 8 #include <cstddef>
9 #include <cstdint> 9 #include <cstdint>
10 10
11 enum NotNullTagEnum { NotNullLiteral }; 11 enum NotNullTagEnum { NotNullLiteral };
12 12
13 #define V8_INSPECTOR_DISALLOW_NEW() \ 13 #define V8_INSPECTOR_DISALLOW_NEW() \
14 private: \ 14 private: \
15 void* operator new(size_t) = delete; \ 15 void* operator new(size_t) = delete; \
16 void* operator new(size_t, NotNullTagEnum, void*) = delete; \ 16 void* operator new(size_t, NotNullTagEnum, void*) = delete; \
17 void* operator new(size_t, void*) = delete; \ 17 void* operator new(size_t, void*) = delete; \
18 \ 18 \
19 public: 19 public:
20 20
21 #define V8_INSPECTOR_DISALLOW_COPY(ClassName) \ 21 #define V8_INSPECTOR_DISALLOW_COPY(ClassName) \
22 private: \ 22 private: \
23 ClassName(const ClassName&) = delete; \ 23 ClassName(const ClassName&) = delete; \
24 ClassName& operator=(const ClassName&) = delete 24 ClassName& operator=(const ClassName&) = delete
25 25
26 // Macro that returns a compile time constant with the length of an array, but 26 // Macro that returns a compile time constant with the length of an array, but
27 // gives an error if passed a non-array. 27 // gives an error if passed a non-array.
28 template <typename T, std::size_t Size> 28 template <typename T, std::size_t Size>
29 char (&ArrayLengthHelperFunction(T (&)[Size]))[Size]; 29 char (&ArrayLengthHelperFunction(T (&)[Size]))[Size];
30 // GCC needs some help to deduce a 0 length array.
31 #if defined(__GNUC__)
32 template <typename T>
33 char (&ArrayLengthHelperFunction(T (&)[0]))[0];
34 #endif
35 #define V8_INSPECTOR_ARRAY_LENGTH(array) \ 30 #define V8_INSPECTOR_ARRAY_LENGTH(array) \
36 sizeof(::ArrayLengthHelperFunction(array)) 31 sizeof(::ArrayLengthHelperFunction(array))
37 32
38 #endif // V8_INSPECTOR_ALLOCATOR_H_ 33 #endif // V8_INSPECTOR_ALLOCATOR_H_
OLDNEW
« no previous file with comments | « no previous file | src/v8.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698