summaryrefslogtreecommitdiffstats
path: root/Source/cmDyndepCollation.cxx
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2023-09-05 23:21:34 (GMT)
committerBen Boeckel <ben.boeckel@kitware.com>2023-09-12 18:46:36 (GMT)
commit458e3974a8d3827f051201403a1acc4ddca3c19e (patch)
tree45921bef4608e03f412d86003b82bf16e23cece4 /Source/cmDyndepCollation.cxx
parent8708b41532a01479a96b2d5a67e54b7a1397306f (diff)
downloadCMake-458e3974a8d3827f051201403a1acc4ddca3c19e.zip
CMake-458e3974a8d3827f051201403a1acc4ddca3c19e.tar.gz
CMake-458e3974a8d3827f051201403a1acc4ddca3c19e.tar.bz2
cxxmodules: detect and message about non-compiled sources
Previously an internal error was raised which ended up causing an internal exception to be thrown. This is a typo situation that should fall into an explicit error. Fixes: #25207
Diffstat (limited to 'Source/cmDyndepCollation.cxx')
-rw-r--r--Source/cmDyndepCollation.cxx7
1 files changed, 4 insertions, 3 deletions
diff --git a/Source/cmDyndepCollation.cxx b/Source/cmDyndepCollation.cxx
index 80e1357..b50718c 100644
--- a/Source/cmDyndepCollation.cxx
+++ b/Source/cmDyndepCollation.cxx
@@ -106,10 +106,11 @@ Json::Value CollationInformationCxxModules(
auto lookup = sf_map.find(file);
if (lookup == sf_map.end()) {
gt->Makefile->IssueMessage(
- MessageType::INTERNAL_ERROR,
- cmStrCat("Target \"", tgt->GetName(), "\" has source file \"",
+ MessageType::FATAL_ERROR,
+ cmStrCat("Target \"", tgt->GetName(), "\" has source file\n ",
file,
- R"(" which is not in any of its "FILE_SET BASE_DIRS".)"));
+ "\nin a \"FILE_SET TYPE CXX_MODULES\" but it is not "
+ "scheduled for compilation."));
continue;
}