diff options
author | Robert Maynard <rmaynard@nvidia.com> | 2022-01-11 18:12:45 (GMT) |
---|---|---|
committer | Robert Maynard <rmaynard@nvidia.com> | 2022-01-11 21:03:57 (GMT) |
commit | ec1e40af1adda4e884168a7972c24e2d8ff33438 (patch) | |
tree | e9f136bfc8ada6374cf507c85f6a6db1a2d7f2a8 | |
parent | 1e839298b09a9140abcfde9cc0bd29770fecd345 (diff) | |
download | CMake-ec1e40af1adda4e884168a7972c24e2d8ff33438.zip CMake-ec1e40af1adda4e884168a7972c24e2d8ff33438.tar.gz CMake-ec1e40af1adda4e884168a7972c24e2d8ff33438.tar.bz2 |
cmStandardLevelResolver: Better error message on unsupported language level
Fixes #23079
9 files changed, 14 insertions, 14 deletions
diff --git a/Source/cmStandardLevelResolver.cxx b/Source/cmStandardLevelResolver.cxx index 61416e0..c027e29 100644 --- a/Source/cmStandardLevelResolver.cxx +++ b/Source/cmStandardLevelResolver.cxx @@ -152,8 +152,12 @@ struct StandardLevelComputer "dialect \"" << this->Language << *standardProp << "\" " << (ext ? "(with compiler extensions)" : "") - << ", but CMake " - "does not know the compile flags to use to enable it."; + << ". But the current compiler \"" + << makefile->GetSafeDefinition("CMAKE_" + this->Language + + "_COMPILER_ID") + << "\" does not support this, or " + "CMake does not know the flags to enable it."; + makefile->IssueMessage(MessageType::FATAL_ERROR, e.str()); } return option_flag; diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX11-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX11-stderr.txt index 0fc9112..a6ed7b7 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX11-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX11-stderr.txt @@ -1,3 +1,2 @@ CMake Error in CMakeLists.txt: - Target "foo" requires the language dialect "CXX11" , but CMake does not - know the compile flags to use to enable it. + Target "foo" requires the language dialect "CXX11".* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX11Ext-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX11Ext-stderr.txt index 5c68a1c..2569c84 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX11Ext-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX11Ext-stderr.txt @@ -1,3 +1,3 @@ CMake Error in CMakeLists.txt: Target "foo" requires the language dialect "CXX11" \(with compiler - extensions\), but CMake does not know the compile flags to use to enable it. + extensions\).* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX11ExtVariable-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX11ExtVariable-stderr.txt index 5c68a1c..2569c84 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX11ExtVariable-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX11ExtVariable-stderr.txt @@ -1,3 +1,3 @@ CMake Error in CMakeLists.txt: Target "foo" requires the language dialect "CXX11" \(with compiler - extensions\), but CMake does not know the compile flags to use to enable it. + extensions\).* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX11Variable-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX11Variable-stderr.txt index 0fc9112..a6ed7b7 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX11Variable-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX11Variable-stderr.txt @@ -1,3 +1,2 @@ CMake Error in CMakeLists.txt: - Target "foo" requires the language dialect "CXX11" , but CMake does not - know the compile flags to use to enable it. + Target "foo" requires the language dialect "CXX11".* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX98-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX98-stderr.txt index 47c8688..97d6f8e 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX98-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX98-stderr.txt @@ -1,3 +1,2 @@ CMake Error in CMakeLists.txt: - Target "foo" requires the language dialect "CXX98" , but CMake does not - know the compile flags to use to enable it. + Target "foo" requires the language dialect "CXX98".* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX98Ext-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX98Ext-stderr.txt index b4fdf8a..4a2e6db 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX98Ext-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX98Ext-stderr.txt @@ -1,3 +1,3 @@ CMake Error in CMakeLists.txt: Target "foo" requires the language dialect "CXX98" \(with compiler - extensions\), but CMake does not know the compile flags to use to enable it. + extensions\).* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX98ExtVariable-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX98ExtVariable-stderr.txt index b4fdf8a..4a2e6db 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX98ExtVariable-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX98ExtVariable-stderr.txt @@ -1,3 +1,3 @@ CMake Error in CMakeLists.txt: Target "foo" requires the language dialect "CXX98" \(with compiler - extensions\), but CMake does not know the compile flags to use to enable it. + extensions\).* diff --git a/Tests/RunCMake/CompileFeatures/RequireCXX98Variable-stderr.txt b/Tests/RunCMake/CompileFeatures/RequireCXX98Variable-stderr.txt index 47c8688..97d6f8e 100644 --- a/Tests/RunCMake/CompileFeatures/RequireCXX98Variable-stderr.txt +++ b/Tests/RunCMake/CompileFeatures/RequireCXX98Variable-stderr.txt @@ -1,3 +1,2 @@ CMake Error in CMakeLists.txt: - Target "foo" requires the language dialect "CXX98" , but CMake does not - know the compile flags to use to enable it. + Target "foo" requires the language dialect "CXX98".* |