diff options
-rw-r--r-- | mesonbuild/compilers/cpp.py | 8 | ||||
-rwxr-xr-x | run_unittests.py | 4 |
2 files changed, 7 insertions, 5 deletions
diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py index 15eb9a0..48e6a51 100644 --- a/mesonbuild/compilers/cpp.py +++ b/mesonbuild/compilers/cpp.py @@ -76,8 +76,8 @@ class ClangCPPCompiler(ClangCompiler, CPPCompiler): def get_options(self): return {'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', - ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++1z', - 'gnu++11', 'gnu++14', 'gnu++1z'], + ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', + 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z'], 'none')} def get_option_compile_args(self, options): @@ -102,8 +102,8 @@ class GnuCPPCompiler(GnuCompiler, CPPCompiler): def get_options(self): opts = {'cpp_std': coredata.UserComboOption('cpp_std', 'C++ language standard to use', - ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++1z', - 'gnu++03', 'gnu++11', 'gnu++14', 'gnu++1z'], + ['none', 'c++98', 'c++03', 'c++11', 'c++14', 'c++17', 'c++1z', + 'gnu++03', 'gnu++11', 'gnu++14', 'gnu++17', 'gnu++1z'], 'none'), 'cpp_debugstl': coredata.UserBooleanOption('cpp_debugstl', 'STL debug mode', diff --git a/run_unittests.py b/run_unittests.py index 9fc1720..fed8fae 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -35,7 +35,7 @@ import mesonbuild.mesonlib import mesonbuild.coredata from mesonbuild.interpreter import ObjectHolder from mesonbuild.mesonlib import is_linux, is_windows, is_osx, is_cygwin, windows_proof_rmtree -from mesonbuild.mesonlib import python_command, meson_command +from mesonbuild.mesonlib import python_command, meson_command, version_compare from mesonbuild.environment import Environment from mesonbuild.dependencies import DependencyException from mesonbuild.dependencies import PkgConfigDependency, ExternalProgram @@ -2048,6 +2048,8 @@ class LinuxlikeTests(BasePlatformTests): # Check that all the listed -std=xxx options for this compiler work # just fine when used for v in compiler.get_options()[lang_std].choices: + if compiler.get_id() == 'clang' and version_compare(compiler.version, '<5.0.0') and '17' in v: + continue std_opt = '{}={}'.format(lang_std, v) self.init(testdir, ['-D' + std_opt]) cmd = self.get_compdb()[0]['command'] |