From f0802b2f500447aca8cd0db3fc3ce802d7de8235 Mon Sep 17 00:00:00 2001 From: Klaas Speller Date: Wed, 17 Aug 2022 13:42:32 +0200 Subject: create_test_sourcelist: Add support for more special characters in paths Use `cmSystemTools::MakeCidentifier` to robustly create a valid function name to which the test path maps. Fixes: #23855 --- Source/cmCreateTestSourceList.cxx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Source/cmCreateTestSourceList.cxx b/Source/cmCreateTestSourceList.cxx index 2a52d1a..75c25e3 100644 --- a/Source/cmCreateTestSourceList.cxx +++ b/Source/cmCreateTestSourceList.cxx @@ -87,9 +87,7 @@ bool cmCreateTestSourceList(std::vector const& args, func_name = cmSystemTools::GetFilenameWithoutLastExtension(*i); } cmSystemTools::ConvertToUnixSlashes(func_name); - std::replace(func_name.begin(), func_name.end(), ' ', '_'); - std::replace(func_name.begin(), func_name.end(), '/', '_'); - std::replace(func_name.begin(), func_name.end(), ':', '_'); + func_name = cmSystemTools::MakeCidentifier(func_name); bool already_declared = std::find(tests_func_name.begin(), tests_func_name.end(), func_name) != tests_func_name.end(); -- cgit v0.12