aboutsummaryrefslogtreecommitdiff
path: root/src/util/cpp11.h
diff options
context:
space:
mode:
authorLoïc Blot <nerzhul@users.noreply.github.com>2017-03-29 13:34:57 +0200
committerGitHub <noreply@github.com>2017-03-29 13:34:57 +0200
commitb605b95749aad90b53e6c58a1ee43b50f8217e7c (patch)
treef036a6d80ea539aad95e55443720b97b74668a9b /src/util/cpp11.h
parent5e806690fc5e0067247bbc1e541ba03b83fb761b (diff)
downloadminetest-b605b95749aad90b53e6c58a1ee43b50f8217e7c.tar.gz
minetest-b605b95749aad90b53e6c58a1ee43b50f8217e7c.tar.bz2
minetest-b605b95749aad90b53e6c58a1ee43b50f8217e7c.zip
Add CPP11 header to define nullptr & constexpr (#5471)
This header permit to use nullptr & constexpr keywords in portable code segments and benefit from nullptr & constexpr when using C++11 and greater
Diffstat (limited to 'src/util/cpp11.h')
-rw-r--r--src/util/cpp11.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/util/cpp11.h b/src/util/cpp11.h
new file mode 100644
index 000000000..14913cb86
--- /dev/null
+++ b/src/util/cpp11.h
@@ -0,0 +1,32 @@
+/*
+Minetest
+Copyright (C) 2016 nerzhul, Loic Blot <loic.blot@unix-experience.fr>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+*/
+
+#ifndef MT_CPP11_HEADER
+#define MT_CPP11_HEADER
+
+#if __cplusplus < 201103L || _MSC_VER < 1600
+#define USE_CPP11_FAKE_KEYWORD
+#endif
+
+#ifdef USE_CPP11_FAKE_KEYWORD
+#define constexpr const
+#define nullptr NULL
+#endif
+
+#endif