diff options
| author | Leitwolf11 | 2026-11-01 00:25:59 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-11-01 00:25:59 +0300 |
| commit | ff1da91edffa9ee887e9fe737fcd87ec540dfa60 (patch) | |
| tree | 25841e888932ebac3a51c4b59f77cea5a87ae5bd /tests | |
| parent | 42c68725c816963ec6529dd635d5aaaac23b1c05 (diff) | |
| download | catch3-chore/cpp17-descriptions.tar.gz | |
Say C++17 everywhere the project describes itselfchore/cpp17-descriptions
The move to C++17 left a trail of older claims. The Runner's own
.clang-format still said c++20; the result is byte for byte the same under
either value. Premake and Xmake still compiled the library as C++20 and
the main library as C++14, which meant their CI jobs were not testing the
language the project promises. Both now use C++17 for every target.
The rest is text: the Meson pkg-config description claimed C++14, comments
in the CMake and Meson files explained requirements that no longer exist,
.clang-tidy gave C++14 as the reason for two exclusions, issue templates
asked for C++20 samples, and the example headers named -std=c++14 and
catch2-with-main. The release notes and the migration guide state the
C++17 minimum. Doxygen's brief called the project "Catch2's test API",
which presents it as Catch2. Meson declared only BSL-1.0; it now names both
licenses of the tree. The amalgamated files are regenerated.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/CMakeLists.txt | 8 | ||||
| -rw-r--r-- | tests/ExtraTests/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | tests/meson.build | 2 |
3 files changed, 5 insertions, 7 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index a5524a38..33bbc4b5 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -31,9 +31,8 @@ if(CATCH3_BUILD_SURROGATES) # Extracts all non-helper (e.g. Progmasoft/Catch3/All.hpp) headers from the # Catch3 target, and returns them through the argument. function(ExtractCatch3Headers OutArg) - # The engine's headers are the ones that come from Catch2. The other - # headers need C++20; the surrogates check the engine's headers at the - # language level of the build. + # The engine's headers are the ones that come from Catch2; the surrogates + # check them at the language level of the build. file(STRINGS "${CATCH_DIR}/tools/scripts/upstreamFiles.txt" upstreamFiles REGEX "^src/") get_target_property(targetSources Catch3 SOURCES) foreach(Source ${targetSources}) @@ -153,8 +152,7 @@ add_executable(SelfTest ${TEST_SOURCES} ${TEST_HEADERS}) target_include_directories(SelfTest PRIVATE ${SELF_TEST_DIR}) target_link_libraries(SelfTest PRIVATE Catch3WithMain) -# Exercise the C++20 Progmasoft layer independently so the upstream Catch2 -# SelfTest continues to compile at its supported baseline language level. +# Exercise the Progmasoft layer independently of the upstream Catch2 SelfTest. add_executable(ProgmasoftSelfTest Progmasoft/Generators.tests.cpp Progmasoft/Property.tests.cpp diff --git a/tests/ExtraTests/CMakeLists.txt b/tests/ExtraTests/CMakeLists.txt index e6488650..232b86dc 100644 --- a/tests/ExtraTests/CMakeLists.txt +++ b/tests/ExtraTests/CMakeLists.txt @@ -430,7 +430,7 @@ add_executable(AmalgamatedTestCompilation ${CATCH_DIR}/extras/catch_amalgamated_third_party.hpp ) target_include_directories(AmalgamatedTestCompilation PRIVATE ${CATCH_DIR}/extras) -# The amalgamated files hold the runner, which needs C++20. +# The amalgamated files hold the runner, which needs C++17. target_compile_features(AmalgamatedTestCompilation PRIVATE cxx_std_17) add_test(NAME AmalgamatedFileTest COMMAND AmalgamatedTestCompilation --no-history) diff --git a/tests/meson.build b/tests/meson.build index 95556f06..6ec807d7 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -68,7 +68,7 @@ self_test = executable( test('SelfTest', self_test, args: ['--no-history']) -# The Progmasoft tests need C++20; SelfTest keeps the C++ mode it has upstream. +# The Progmasoft tests need C++17; SelfTest keeps the project's C++ mode. progmasoft_property_tests = executable( 'ProgmasoftPropertyTests', [ |