| Index: Source/wtf/Allocator.h
|
| diff --git a/Source/wtf/Allocator.h b/Source/wtf/Allocator.h
|
| index 29adf01267e863cbee05e0b6c84552998bdba987..5b39698e5abc1a71762f0fffc422df4cacf945b6 100644
|
| --- a/Source/wtf/Allocator.h
|
| +++ b/Source/wtf/Allocator.h
|
| @@ -5,6 +5,8 @@
|
| #ifndef WTF_Allocator_h
|
| #define WTF_Allocator_h
|
|
|
| +#include "wtf/StdLibExtras.h"
|
| +
|
| namespace WTF {
|
|
|
| // Classes that contain references to garbage-collected objects but aren't
|
| @@ -33,7 +35,8 @@ namespace WTF {
|
| private: \
|
| void* operator new(size_t) = delete; \
|
| void* operator new(size_t, NotNullTag, void*) = delete; \
|
| - void* operator new(size_t, void*) = delete;
|
| + void* operator new(size_t, void*) = delete; \
|
| + public:
|
|
|
| #define ALLOW_ONLY_INLINE_ALLOCATION() \
|
| public: \
|
| @@ -41,11 +44,18 @@ namespace WTF {
|
| void* operator new(size_t, NotNullTag, void* location) { return location; } \
|
| void* operator new(size_t, void* location) { return location; } \
|
| private: \
|
| - void* operator new(size_t) = delete;
|
| + void* operator new(size_t) = delete; \
|
| + public:
|
|
|
| #define STATIC_ONLY(Type) \
|
| private: \
|
| - Type() = delete;
|
| + Type() = delete; \
|
| + Type(const Type&) = delete; \
|
| + Type& operator=(const Type&) = delete; \
|
| + void* operator new(size_t) = delete; \
|
| + void* operator new(size_t, NotNullTag, void*) = delete; \
|
| + void* operator new(size_t, void*) = delete; \
|
| + public:
|
|
|
| #if COMPILER(CLANG)
|
| #define STACK_ALLOCATED() \
|
| @@ -53,7 +63,8 @@ namespace WTF {
|
| __attribute__((annotate("blink_stack_allocated"))) \
|
| void* operator new(size_t) = delete; \
|
| void* operator new(size_t, NotNullTag, void*) = delete; \
|
| - void* operator new(size_t, void*) = delete;
|
| + void* operator new(size_t, void*) = delete; \
|
| + public:
|
| #else
|
| #define STACK_ALLOCATED() DISALLOW_ALLOCATION()
|
| #endif
|
|
|