diff options
author | Loïc Blot <nerzhul@users.noreply.github.com> | 2017-06-10 13:49:15 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-10 13:49:15 +0200 |
commit | ab128e03ff555a8fc292352b0b21fc1075a4c008 (patch) | |
tree | 41c610f0168cf67abd93d63df7f80e7e9df8d4ba /src/util | |
parent | 9c497aa71f4678f7a8adcfedd37b73c5391d97ec (diff) | |
download | minetest-ab128e03ff555a8fc292352b0b21fc1075a4c008.tar.gz minetest-ab128e03ff555a8fc292352b0b21fc1075a4c008.tar.bz2 minetest-ab128e03ff555a8fc292352b0b21fc1075a4c008.zip |
C++11 patchset 6: forbid object copy using assigment/copy function deleters (#5945)
C++11 implement function deleting, it's generally used to prevent some object copy
In script API use this function removal on ScriptApiBase instead of ScriptApiClient/Server/MainMenu, this affect all ScriptApis
Move DISABLE_CLASS_COPY with constructor, the deleted function permit to replace function in its original place
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/basic_macros.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/util/basic_macros.h b/src/util/basic_macros.h index 687d7cf85..71be13a1f 100644 --- a/src/util/basic_macros.h +++ b/src/util/basic_macros.h @@ -33,9 +33,9 @@ with this program; if not, write to the Free Software Foundation, Inc., // 'Foobar', add the macro DISABLE_CLASS_COPY(Foobar) as a private member. // Note this also disables copying for any classes derived from 'Foobar' as well // as classes having a 'Foobar' member. -#define DISABLE_CLASS_COPY(C) \ - C(const C &); \ - C &operator=(const C &) +#define DISABLE_CLASS_COPY(C) \ + C(const C &) = delete; \ + C &operator=(const C &) = delete; #ifndef _MSC_VER #define UNUSED_ATTRIBUTE __attribute__ ((unused)) |