| Index: src/globals.h
|
| diff --git a/src/globals.h b/src/globals.h
|
| index f00e676dde9866b9eb7bb2005d80ed4766da46a2..e695e94d4e6b465b555edc405f588d6ab0ec287d 100644
|
| --- a/src/globals.h
|
| +++ b/src/globals.h
|
| @@ -327,11 +327,18 @@ F FUNCTION_CAST(Address addr) {
|
| }
|
|
|
|
|
| +#if __cplusplus >= 201103L
|
| +#define DISALLOW_BY_DELETE = delete
|
| +#else
|
| +#define DISALLOW_BY_DELETE
|
| +#endif
|
| +
|
| +
|
| // A macro to disallow the evil copy constructor and operator= functions
|
| // This should be used in the private: declarations for a class
|
| -#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
|
| - TypeName(const TypeName&); \
|
| - void operator=(const TypeName&)
|
| +#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
|
| + TypeName(const TypeName&) DISALLOW_BY_DELETE; \
|
| + void operator=(const TypeName&) DISALLOW_BY_DELETE
|
|
|
|
|
| // A macro to disallow all the implicit constructors, namely the
|
| @@ -341,7 +348,7 @@ F FUNCTION_CAST(Address addr) {
|
| // that wants to prevent anyone from instantiating it. This is
|
| // especially useful for classes containing only static methods.
|
| #define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName) \
|
| - TypeName(); \
|
| + TypeName() DISALLOW_BY_DELETE; \
|
| DISALLOW_COPY_AND_ASSIGN(TypeName)
|
|
|
|
|
|
|