diff --git a/.github/workflows/build-cppfront.yaml b/.github/workflows/build-cppfront.yaml index 29364c468..d1282924c 100644 --- a/.github/workflows/build-cppfront.yaml +++ b/.github/workflows/build-cppfront.yaml @@ -22,7 +22,7 @@ jobs: strategy: fail-fast: false matrix: - runs-on: [ubuntu-latest] + runs-on: [ubuntu-22.04] compiler: [g++-10, g++-11, g++-12, clang++-12, clang++-14] cxx-std: ['c++20', 'c++2b'] exclude: @@ -38,6 +38,18 @@ jobs: - runs-on: macos-latest compiler: clang++ cxx-std: 'c++20' + - runs-on: ubuntu-24.04 + compiler: clang++-16 + cxx-std: 'c++20' + - runs-on: ubuntu-24.04 + compiler: clang++-17 + cxx-std: 'c++20' + - runs-on: ubuntu-24.04 + compiler: clang++-18 + cxx-std: 'c++20' + - runs-on: ubuntu-24.04 + compiler: g++-14 + cxx-std: 'c++2b' runs-on: ${{ matrix.runs-on }} env: CXX: ${{ matrix.compiler }} diff --git a/.github/workflows/regression-tests.yml b/.github/workflows/regression-tests.yml index 18ea18379..96071e977 100644 --- a/.github/workflows/regression-tests.yml +++ b/.github/workflows/regression-tests.yml @@ -11,7 +11,7 @@ on: jobs: regression-tests: - name: Run on ${{ matrix.os }} using ${{ matrix.compiler }} + name: ${{ matrix.shortosname }} | ${{ matrix.compiler }} | ${{ matrix.cxx_std }} | ${{ matrix.stdlib }} | ${{ matrix.os }} runs-on: ${{ matrix.os }} env: CXX: ${{ matrix.compiler }} @@ -19,21 +19,62 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-latest] - compiler: [g++-10, clang++-15] + os: [ubuntu-24.04] + shortosname: [ubu-24] + compiler: [g++-14, g++-13] + cxx_std: [c++2b] + stdlib: [libstdc++] include: + - os: ubuntu-20.04 + shortosname: ubu-20 + compiler: g++-10 + cxx_std: c++20 + stdlib: libstdc++ - os: ubuntu-24.04 - compiler: g++-13 + shortosname: ubu-24 + compiler: clang++-18 + cxx_std: c++20 + stdlib: libstdc++ + - os: ubuntu-22.04 + shortosname: ubu-22 + compiler: clang++-15 + cxx_std: c++20 + stdlib: libstdc++ + - os: ubuntu-22.04 + shortosname: ubu-22 + compiler: clang++-15 + cxx_std: c++20 + stdlib: libc++-15-dev - os: ubuntu-20.04 + shortosname: ubu-20 compiler: clang++-12 + cxx_std: c++20 + stdlib: libstdc++ - os: macos-14 + shortosname: mac-14 compiler: clang++ + cxx_std: c++2b + stdlib: default - os: macos-13 + shortosname: mac-13 compiler: clang++ + cxx_std: c++2b + stdlib: default - os: macos-13 + shortosname: mac-13 compiler: clang++-15 - - os: windows-latest + cxx_std: c++2b + stdlib: default + - os: windows-2022 + shortosname: win-22 + compiler: cl.exe + cxx_std: c++latest + stdlib: default + - os: windows-2022 + shortosname: win-22 compiler: cl.exe + cxx_std: c++20 + stdlib: default steps: - name: Checkout repo uses: actions/checkout@v4 @@ -48,7 +89,7 @@ jobs: if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos') run: | cd regression-tests - bash run-tests.sh -c ${{ matrix.compiler }} -l ${{ matrix.os }} + bash run-tests.sh -c ${{ matrix.compiler }} -s ${{ matrix.cxx_std }} -d ${{ matrix.stdlib }} -l ${{ matrix.os }} - name: Run regression tests - Windows version if: matrix.os == 'windows-latest' @@ -56,13 +97,13 @@ jobs: "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" && ^ git config --local core.autocrlf false && ^ cd regression-tests && ^ - bash run-tests.sh -c ${{ matrix.compiler }} -l ${{ matrix.os }} + bash run-tests.sh -c ${{ matrix.compiler }} -s ${{ matrix.cxx_std }} -d ${{ matrix.stdlib }} -l ${{ matrix.os }} shell: cmd - name: Upload patch if: ${{ !cancelled() }} uses: actions/upload-artifact@v4 with: - name: ${{ matrix.os }}-${{ matrix.compiler }}.patch - path: regression-tests/${{ matrix.os }}-${{ matrix.compiler }}.patch + name: ${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.cxx_std }}-${{ matrix.stdlib }}.patch + path: regression-tests/${{ matrix.os }}-${{ matrix.compiler }}-${{ matrix.cxx_std }}-${{ matrix.stdlib }}.patch if-no-files-found: ignore diff --git a/docs/cpp2/common.md b/docs/cpp2/common.md index 79420db36..b2fb28e38 100644 --- a/docs/cpp2/common.md +++ b/docs/cpp2/common.md @@ -67,7 +67,7 @@ All lists use `,` commas between list items, and may be enclosed by For example: -``` cpp title="Lists, using optional trailing commas just because we can" hl_lines="1 4 6 7" +``` cpp title="Lists" hl_lines="1 4 6 7" print: (t: T, u: U) = std::cout << t << u << "\n"; main: () = { diff --git a/docs/cpp2/declarations.md b/docs/cpp2/declarations.md index 3f46627a5..cbb553af6 100644 --- a/docs/cpp2/declarations.md +++ b/docs/cpp2/declarations.md @@ -254,7 +254,7 @@ main: () = { // Assertion that the size is the square of 4 static_assert( ints.size() == 16 ); - // And if can be used at run time, with run time values + // And it can be used at run time, with run time values std::cout << "the square of 4 is (square(4))$\n"; } // Prints: diff --git a/docs/cpp2/expressions.md b/docs/cpp2/expressions.md index 11822887f..2bf52f4c7 100644 --- a/docs/cpp2/expressions.md +++ b/docs/cpp2/expressions.md @@ -173,13 +173,11 @@ Here are some `as` casts with their Cpp1 equivalents. In this table, uppercase n ## `inspect` — pattern matching -An `inspect expr -> Type` expression allows pattern matching using `is`. +An `inspect expr -> Type = { /* alternatives */ }` expression allows pattern matching using `is`. - `expr` is evaluated once. -- Each alternative spelled `is C` is evaluated in order as if called with `expr is C`. - -- If an alternative evaluates to `#!cpp true`, then its `#!cpp = alternative;` body is used as the value of the entire `inspect` expression, and the meaning is the same as if the entire `inspect` expression had been written as just `#!cpp :Type = alternative;` — i.e., an unnamed object expression (aka 'temporary object') of type `Type` initialized with `alternative`. +- Each alternative is spelled `is C = statement;` and are evaluated in order. Each `is C` is evaluated if called with `expr is C`, and if it alternative evaluates to `#!cpp true`, then its `#!cpp = alternative;` body is used as the value of the entire `inspect` expression, and the meaning is the same as if the entire `inspect` expression had been written as just `#!cpp :Type = alternative;` — i.e., an unnamed object expression (aka 'temporary object') of type `Type` initialized with `alternative`. - A catchall `is _` is required. diff --git a/docs/cpp2/types.md b/docs/cpp2/types.md index 39cfd1dfa..d9cf9c5ab 100644 --- a/docs/cpp2/types.md +++ b/docs/cpp2/types.md @@ -81,7 +81,7 @@ For example: abstract_base: type = { // A pure virtual function: virtual + no body - print: (virtual this, msg: std::string); + print: (virtual this, msg: std::string) = { /*...*/ } // ... } @@ -92,7 +92,7 @@ derived: type this: abstract_base; // Explicit override - print: (override this, msg: std::string); + print: (override this, msg: std::string) = { /*...*/ } // ... } @@ -199,7 +199,7 @@ mytype: type name: std::string; social_handle: std::string = "(unknown)"; - // conversion from string + // conversion from string (construction + assignment) operator=: (out this, who: std::string) = { name = who; // if social_handle is not mentioned, defaults to: diff --git a/include/cpp2util.h b/include/cpp2util.h index 2a9014266..1bf3e9b4b 100644 --- a/include/cpp2util.h +++ b/include/cpp2util.h @@ -512,6 +512,12 @@ template requires requires { *std::declval(); } using deref_t = decltype(*std::declval()); +// Guaranteed to be a total order, unlike built-in operator== for T* +template +auto pointer_eq(T const* a, T const* b) { + return std::compare_three_way{}(a, b) == std::strong_ordering::equal; +} + //----------------------------------------------------------------------- // diff --git a/regression-tests/run-tests.sh b/regression-tests/run-tests.sh index 50c919e08..6640786fa 100644 --- a/regression-tests/run-tests.sh +++ b/regression-tests/run-tests.sh @@ -4,6 +4,8 @@ usage() { echo "Usage: $0 -c [-l ] [-t ]" echo " -c The compiler to use for the test" + echo " -s The C++ standard to compile with (e.g. 'c++20', 'c++2b', 'c++latest' depending on the compiler)" + echo " -d Clang-only: the C++ Standard Library to link with ('libstdc++', 'libc++', or 'default' for platform default)" echo " -l The label to use in output patch file name" echo " -t Runs only the provided, comma-separated tests (filenames including .cpp2)" echo " If the argument is not used all tests are run" @@ -46,7 +48,7 @@ check_file () { git ls-files --error-unmatch "$file" > /dev/null 2>&1 untracked=$? - patch_file="$label$cxx_compiler.patch" + patch_file="${label}-${cxx_compiler}-${cxx_std}-${cxx_stdlib}.patch" if [[ $untracked -eq 1 ]]; then # Add the file to the index to be able to diff it... @@ -67,14 +69,20 @@ check_file () { fi } -optstring="c:l:t:" +optstring="c:s:d:l:t:" while getopts ${optstring} arg; do case "${arg}" in c) cxx_compiler="${OPTARG}" ;; + s) + cxx_std="${OPTARG}" + ;; + d) + cxx_stdlib="${OPTARG}" + ;; l) - label="${OPTARG}-" + label="${OPTARG}" ;; t) # Replace commas with spaces @@ -125,8 +133,8 @@ expected_results_dir="test-results" ################ # Get the directory with the exec outputs and compilation command if [[ "$cxx_compiler" == *"cl.exe"* ]]; then - compiler_cmd='cl.exe -nologo -std:c++latest -MD -EHsc -I ..\..\..\include -Fe:' - exec_out_dir="$expected_results_dir/msvc-2022" + compiler_cmd="cl.exe -nologo -std:${cxx_std} -MD -EHsc -I ..\..\..\include -Fe:" + exec_out_dir="$expected_results_dir/msvc-2022-${cxx_std}" compiler_version=$(cl.exe) else # Verify the compiler command @@ -136,7 +144,6 @@ else exit 2 fi - cpp_std=c++2b compiler_version=$("$cxx_compiler" --version) if [[ "$compiler_version" == *"Apple clang version 14.0"* || @@ -148,22 +155,51 @@ else exec_out_dir="$expected_results_dir/clang-12" elif [[ "$compiler_version" == *"clang version 15.0"* ]]; then exec_out_dir="$expected_results_dir/clang-15" - # c++2b causes starge issues on GitHub ubuntu-latest runner - cpp_std="c++20" + elif [[ "$compiler_version" == *"clang version 18.1"* ]]; then + exec_out_dir="$expected_results_dir/clang-18" elif [[ "$compiler_version" == *"g++-10"* ]]; then exec_out_dir="$expected_results_dir/gcc-10" - # GCC 10 does not support c++2b - cpp_std=c++20 elif [[ "$compiler_version" == *"g++-12"* || "$compiler_version" == *"g++-13"* ]]; then exec_out_dir="$expected_results_dir/gcc-13" + elif [[ "$compiler_version" == *"g++-14"* ]]; then + exec_out_dir="$expected_results_dir/gcc-14" else printf "Unhandled compiler version:\n$compiler_version\n\n" exit 2 fi - compiler_cmd="$cxx_compiler -I../../../include -std=$cpp_std -pthread -o " + # Append the C++ standard (e.g. 'c++20') to the expected output dir name + exec_out_dir="${exec_out_dir}-${cxx_std}" + + # Clang can link with either libstdc++ or libc++ + # By default clang on ubuntu links with libstdc++ and on macOS links with libc++. + if [[ "$compiler_version" == *"clang"* ]]; then + if [[ "$cxx_stdlib" == "default" || "$cxx_stdlib" == "" ]]; then + cxx_stdlib_link_arg="" # Use compiler/platform default + elif [[ "$cxx_stdlib" == "libstdc++" ]]; then + cxx_stdlib_link_arg="-stdlib=libstdc++" + elif [[ "$cxx_stdlib" == *"libc++"* ]]; then + + # Need to install the correct libc++ packages, e.g. `libc++-15-dev` and `libc++abi-15-dev` for clang 15. + # Our `cxx_stdlib` variable contains the `libc++-XX-dev` package name so we need to create the abi version. + cxx_stdlib_abi_package="${cxx_stdlib/libc++/libc++abi}" + printf "Installing packages: $cxx_stdlib $cxx_stdlib_abi_package\n\n" + sudo apt-get install -y $cxx_stdlib $cxx_stdlib_abi_package + + cxx_stdlib_link_arg="-stdlib=libc++" + exec_out_dir="${exec_out_dir}-libcpp" + else + printf "Unhandled C++ Standard Library option:\n$cxx_stdlib\n\n" + exit 2 + fi + else + cxx_stdlib_link_arg="" # Use compiler/platform default + fi + + compiler_cmd="$cxx_compiler -I../../../include -std=$cxx_std $cxx_stdlib_link_arg -pthread -o " + printf "\ncompiler_cmd: $compiler_cmd\n\n" fi if [[ -d "$exec_out_dir" ]]; then @@ -171,7 +207,7 @@ if [[ -d "$exec_out_dir" ]]; then printf "Directory with reference compilation/execution files to use:\n$exec_out_dir\n\n" else - printf "Directory with reference compilation/execution files not found for compiler: '$cxx_compiler'\n\n" + printf "Directory with reference compilation/execution files not found for compiler: '$cxx_compiler' at $exec_out_dir\n\n" exit 2 fi @@ -191,8 +227,8 @@ regression_test_link_obj="" if [[ "$cxx_compiler" == *"cl.exe"* ]]; then echo "Building std and std.compat modules" (cd $exec_out_dir; \ - cl.exe -nologo -std:c++latest -MD -EHsc -c "${VCToolsInstallDir}/modules/std.ixx"; - cl.exe -nologo -std:c++latest -MD -EHsc -c "${VCToolsInstallDir}/modules/std.compat.ixx") + cl.exe -nologo -std:${cxx_std} -MD -EHsc -c "${VCToolsInstallDir}/modules/std.ixx"; + cl.exe -nologo -std:${cxx_std} -MD -EHsc -c "${VCToolsInstallDir}/modules/std.compat.ixx") regression_test_link_obj="std.obj std.compat.obj" fi diff --git a/regression-tests/test-results/apple-clang-14/clang-version.output b/regression-tests/test-results/apple-clang-14-c++2b/clang-version.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/clang-version.output rename to regression-tests/test-results/apple-clang-14-c++2b/clang-version.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-check.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-check.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-check.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-float-literals.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-float-literals.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-float-literals.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-float-literals.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-forwarding.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-forwarding.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-forwarding.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-forwarding.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-hello.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-hello.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-hello.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-hello.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-increment-decrement.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-templates.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-values.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-values.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-values.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-out-destruction.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-out-destruction.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-out-destruction.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-parameter-passing.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-string-interpolation.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-test-parens.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-test-parens.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-test-parens.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-test-parens.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-type-safety-1.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-expected-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-expected-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-break-continue.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-break-continue.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-break-continue.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-break-continue.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-concept-definition.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-concept-definition.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-concept-definition.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-contracts.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-contracts.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-contracts.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-contracts.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-enum.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-enum.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-enum.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-enum.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-enum.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-forward-return.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-forward-return.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-forward-return.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-forward-return.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-hello.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-hello.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-hello.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-hello.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-interpolation.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-last-use.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-last-use.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-last-use.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-last-use.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-main-args.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-main-args.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-main-args.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-main-args.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-more-wildcards.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-print.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-print.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-print.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-print.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-print.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-print.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-repeated-call.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-repeated-call.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-repeated-call.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-requires-clauses.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-stdio.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-stdio.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-stdio.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-stdio.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-trailing-commas.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-type-safety-1.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-basics.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-basics.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-basics.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-basics.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-inheritance.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-union.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-union.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-union.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-union.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-union.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-union.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-variadics.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-variadics.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-variadics.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-variadics.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/apple-clang-14/pure2-various-string-literals.cpp.output b/regression-tests/test-results/apple-clang-14-c++2b/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-14/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/apple-clang-14-c++2b/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/apple-clang-14/run-tests-apple-clang.sh b/regression-tests/test-results/apple-clang-14-c++2b/run-tests-apple-clang.sh old mode 100755 new mode 100644 similarity index 100% rename from regression-tests/test-results/apple-clang-14/run-tests-apple-clang.sh rename to regression-tests/test-results/apple-clang-14-c++2b/run-tests-apple-clang.sh diff --git a/regression-tests/test-results/apple-clang-14/xyzzy b/regression-tests/test-results/apple-clang-14-c++2b/xyzzy similarity index 100% rename from regression-tests/test-results/apple-clang-14/xyzzy rename to regression-tests/test-results/apple-clang-14-c++2b/xyzzy diff --git a/regression-tests/test-results/apple-clang-15/clang-version.output b/regression-tests/test-results/apple-clang-15-c++2b/clang-version.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/clang-version.output rename to regression-tests/test-results/apple-clang-15-c++2b/clang-version.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-check.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-check.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-check.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-float-literals.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-float-literals.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-float-literals.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-float-literals.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-forwarding.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-forwarding.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-forwarding.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-forwarding.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-hello.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-hello.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-hello.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-hello.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-increment-decrement.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-templates.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-values.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-values.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-values.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-out-destruction.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-out-destruction.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-out-destruction.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-parameter-passing.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-string-interpolation.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-test-parens.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-test-parens.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-test-parens.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-test-parens.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-type-safety-1.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-break-continue.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-break-continue.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-break-continue.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-break-continue.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-concept-definition.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-concept-definition.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-concept-definition.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-contracts.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-contracts.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-contracts.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-contracts.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-enum.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-enum.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-enum.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-enum.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-enum.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-forward-return.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-forward-return.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-forward-return.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-forward-return.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-hello.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-hello.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-hello.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-hello.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-hello.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-interpolation.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-last-use.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-last-use.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-last-use.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-last-use.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-main-args.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-main-args.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-main-args.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-main-args.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-more-wildcards.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-print.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-print.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-print.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-print.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-print.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-print.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-repeated-call.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-repeated-call.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-repeated-call.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-requires-clauses.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-stdio.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-stdio.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-stdio.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-stdio.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-trailing-commas.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-safety-1.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-basics.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-basics.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-basics.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-basics.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-inheritance.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-union.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-union.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-union.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-union.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-union.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-union.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-variadics.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-variadics.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-variadics.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-variadics.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/apple-clang-15/pure2-various-string-literals.cpp.output b/regression-tests/test-results/apple-clang-15-c++2b/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/apple-clang-15/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/apple-clang-15-c++2b/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/apple-clang-15/run-tests-apple-clang.sh b/regression-tests/test-results/apple-clang-15-c++2b/run-tests-apple-clang.sh old mode 100755 new mode 100644 similarity index 100% rename from regression-tests/test-results/apple-clang-15/run-tests-apple-clang.sh rename to regression-tests/test-results/apple-clang-15-c++2b/run-tests-apple-clang.sh diff --git a/regression-tests/test-results/apple-clang-15/xyzzy b/regression-tests/test-results/apple-clang-15-c++2b/xyzzy similarity index 100% rename from regression-tests/test-results/apple-clang-15/xyzzy rename to regression-tests/test-results/apple-clang-15-c++2b/xyzzy diff --git a/regression-tests/test-results/clang-12/clang-version.output b/regression-tests/test-results/clang-12-c++20/clang-version.output similarity index 100% rename from regression-tests/test-results/clang-12/clang-version.output rename to regression-tests/test-results/clang-12-c++20/clang-version.output diff --git a/regression-tests/test-results/clang-12/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bounds-check.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-bounds-check.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-check.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-float-literals.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-float-literals.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-float-literals.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-float-literals.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-forwarding.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-forwarding.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-forwarding.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-forwarding.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-hello.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-hello.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-hello.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-hello.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-hello.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-increment-decrement.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-inspect-templates.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-inspect-values.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-inspect-values.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-values.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-out-destruction.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-out-destruction.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-out-destruction.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-parameter-passing.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-string-interpolation.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-test-parens.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-test-parens.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-test-parens.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-test-parens.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-type-safety-1.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/clang-12/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/clang-12-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/clang-12-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-12/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/clang-12-c++20/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/clang-12-c++20/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-assert-expected-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-assert-expected-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-break-continue.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-break-continue.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-break-continue.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-break-continue.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-concept-definition.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-concept-definition.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-concept-definition.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-contracts.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-contracts.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-contracts.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-contracts.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-enum.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-enum.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-enum.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-enum.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-enum.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-forward-return.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-forward-return.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-forward-return.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-forward-return.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-hello.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-hello.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-hello.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-hello.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-hello.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-interpolation.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-interpolation.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-interpolation.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-interpolation.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-last-use.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-last-use.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-main-args.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-main-args.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-main-args.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-main-args.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-more-wildcards.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-print.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-print.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-print.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-print.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-print.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-print.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-regex.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-regex.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-regex.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-regex.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-regex.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-regex.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-regex.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-regex.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-repeated-call.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-repeated-call.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-repeated-call.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-requires-clauses.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-stdio.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-stdio.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-stdio.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-stdio.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-trailing-commas.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-type-safety-1.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-basics.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-basics.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-basics.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-basics.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-inheritance.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-union.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-union.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-union.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-union.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-union.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-union.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-variadics.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-variadics.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-variadics.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-variadics.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/clang-12/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/clang-12-c++20/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-12/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/clang-12-c++20/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/clang-12/pure2-various-string-literals.cpp.output b/regression-tests/test-results/clang-12-c++20/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/clang-12/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/clang-12-c++20/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/clang-12/run-tests-clang-12.sh b/regression-tests/test-results/clang-12-c++20/run-tests-clang-12.sh similarity index 91% rename from regression-tests/test-results/clang-12/run-tests-clang-12.sh rename to regression-tests/test-results/clang-12-c++20/run-tests-clang-12.sh index b36b8c38e..d179a2390 100644 --- a/regression-tests/test-results/clang-12/run-tests-clang-12.sh +++ b/regression-tests/test-results/clang-12-c++20/run-tests-clang-12.sh @@ -10,7 +10,7 @@ for f in *.cpp do let count=count+1 printf "[%s] Starting clang++-12 %s\n" "$count" "$f" - clang++-12 -I../../../include -std=c++2b -pthread -Wunused-parameter -o test.exe $f > $f.output 2>&1 + clang++-12 -I../../../include -std=c++20 -pthread -Wunused-parameter -o test.exe $f > $f.output 2>&1 rm -f $f if test -f "test.exe"; then let exe_count=exe_count+1 diff --git a/regression-tests/test-results/clang-12/xyzzy b/regression-tests/test-results/clang-12-c++20/xyzzy similarity index 100% rename from regression-tests/test-results/clang-12/xyzzy rename to regression-tests/test-results/clang-12-c++20/xyzzy diff --git a/regression-tests/test-results/clang-15/clang-version.output b/regression-tests/test-results/clang-15-c++20-libcpp/clang-version.output similarity index 100% rename from regression-tests/test-results/clang-15/clang-version.output rename to regression-tests/test-results/clang-15-c++20-libcpp/clang-version.output diff --git a/regression-tests/test-results/clang-15/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bounds-check.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bounds-check.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-check.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-captures-in-expressions-and-postconditions.cpp.output new file mode 100644 index 000000000..cdd0a80e9 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-captures-in-expressions-and-postconditions.cpp.output @@ -0,0 +1,7 @@ +mixed-captures-in-expressions-and-postconditions.cpp2:12:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, callback); + ~~~~~~~~~~~~~^ +mixed-captures-in-expressions-and-postconditions.cpp2:14:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(cpp2::move(vec), cpp2::move(callback)); + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-float-literals.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-float-literals.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-float-literals.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-float-literals.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-forwarding.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-forwarding.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-forwarding.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-forwarding.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-for-each.cpp.output new file mode 100644 index 000000000..bd728c7b1 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-for-each.cpp.output @@ -0,0 +1,7 @@ +mixed-function-expression-and-std-for-each.cpp2:12:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each( + ~~~~~~~~~~~~~^ +mixed-function-expression-and-std-for-each.cpp2:19:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each( + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output new file mode 100644 index 000000000..9b0737fa2 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output @@ -0,0 +1,7 @@ +mixed-function-expression-and-std-ranges-for-each-with-capture.cpp2:13:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each + ~~~~~~~~~~~~~^ +mixed-function-expression-and-std-ranges-for-each-with-capture.cpp2:17:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, cpp2::move(callback)); + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each.cpp.output new file mode 100644 index 000000000..cb0d9071f --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-and-std-ranges-for-each.cpp.output @@ -0,0 +1,7 @@ +mixed-function-expression-and-std-ranges-for-each.cpp2:12:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each + ~~~~~~~~~~~~~^ +mixed-function-expression-and-std-ranges-for-each.cpp2:16:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, cpp2::move(callback)); + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-pointer-capture.cpp.output new file mode 100644 index 000000000..e498f2c95 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-pointer-capture.cpp.output @@ -0,0 +1,7 @@ +mixed-function-expression-with-pointer-capture.cpp2:13:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, [_0 = (&y)](auto const& x) mutable -> void { + ~~~~~~~~~~~~~^ +mixed-function-expression-with-pointer-capture.cpp2:18:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, cpp2::move(callback)); + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-repeated-capture.cpp.output new file mode 100644 index 000000000..22e8ecc97 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-function-expression-with-repeated-capture.cpp.output @@ -0,0 +1,7 @@ +mixed-function-expression-with-repeated-capture.cpp2:13:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each + ~~~~~~~~~~~~~^ +mixed-function-expression-with-repeated-capture.cpp2:17:18: error: no member named 'for_each' in namespace 'std::ranges' + std::ranges::for_each(vec, cpp2::move(callback)); + ~~~~~~~~~~~~~^ +2 errors generated. diff --git a/regression-tests/test-results/clang-15/mixed-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-hello.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-hello.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-increment-decrement.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-inspect-templates.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-inspect-values.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-inspect-values.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-values.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-out-destruction.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-out-destruction.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-out-destruction.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-parameter-passing.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-string-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-test-parens.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-test-parens.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-test-parens.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-test-parens.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-type-safety-1.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-expected-not-null.cpp.output new file mode 100644 index 000000000..94d006323 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-expected-not-null.cpp.output @@ -0,0 +1,19 @@ +pure2-assert-expected-not-null.cpp2:7:10: error: no member named 'expected' in namespace 'std' + std::expected ex {4}; + ~~~~~^ +pure2-assert-expected-not-null.cpp2:7:22: error: expected '(' for function-style cast or type construction + std::expected ex {4}; + ~~~^ +pure2-assert-expected-not-null.cpp2:9:193: error: use of undeclared identifier 'ex' + return *cpp2::impl::assert_not_null(cpp2::move(up)) + *cpp2::impl::assert_not_null(cpp2::move(sp)) + *cpp2::impl::assert_not_null(cpp2::move(op)) + *cpp2::impl::assert_not_null(cpp2::move(ex)); + ^ +pure2-assert-expected-not-null.cpp2:14:10: error: no member named 'expected' in namespace 'std' + std::expected ex {std::unexpected(false)}; + ~~~~~^ +pure2-assert-expected-not-null.cpp2:14:22: error: expected '(' for function-style cast or type construction + std::expected ex {std::unexpected(false)}; + ~~~^ +pure2-assert-expected-not-null.cpp2:15:52: error: use of undeclared identifier 'ex' + return *cpp2::impl::assert_not_null(cpp2::move(ex)); + ^ +6 errors generated. diff --git a/regression-tests/test-results/clang-15/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-break-continue.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-break-continue.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-break-continue.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-break-continue.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-function-expression.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-noexcept.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-noexcept.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-sfinae.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-sfinae.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-concept-definition.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-concept-definition.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-concept-definition.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-contracts.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-contracts.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-contracts.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-contracts.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-enum.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-enum.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-enum.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-enum.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-enum.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-forward-return.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-forward-return.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-forward-return.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-forward-return.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-hello.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-hello.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-last-use.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-last-use.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-last-use.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-last-use.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-main-args.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-main-args.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-main-args.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-main-args.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-more-wildcards.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-print.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-print.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-print.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-print.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-print.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-print.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-repeated-call.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-repeated-call.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-repeated-call.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-requires-clauses.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-stdio.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-stdio.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-stdio.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-stdio.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-trailing-commas.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-and-namespace-aliases.cpp.output new file mode 100644 index 000000000..99c308c8e --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-and-namespace-aliases.cpp.output @@ -0,0 +1,26 @@ +pure2-type-and-namespace-aliases.cpp2:3:61: error: no member named 'pmr' in namespace 'std' + template using pmr_vec = std::vector>; + ~~~~~^ +pure2-type-and-namespace-aliases.cpp2:3:88: error: 'T' does not refer to a value + template using pmr_vec = std::vector>; + ^ +pure2-type-and-namespace-aliases.cpp2:3:23: note: declared here + template using pmr_vec = std::vector>; + ^ +pure2-type-and-namespace-aliases.cpp2:3:91: error: expected ';' after alias declaration + template using pmr_vec = std::vector>; + ^ + ; +pure2-type-and-namespace-aliases.cpp2:18:9: error: no member named 'pmr_vec' in namespace 'N' + N1::pmr_vec v {"xyzzy", "plugh"}; + ~~~~^ +pure2-type-and-namespace-aliases.cpp2:18:29: error: expected '(' for function-style cast or type construction + N1::pmr_vec v {"xyzzy", "plugh"}; + ~~~~~~~~~~~~^ +pure2-type-and-namespace-aliases.cpp2:18:31: error: use of undeclared identifier 'v' + N1::pmr_vec v {"xyzzy", "plugh"}; + ^ +pure2-type-and-namespace-aliases.cpp2:20:27: error: use of undeclared identifier 'v' +auto const& v2{cpp2::move(v)}; + ^ +7 errors generated. diff --git a/regression-tests/test-results/clang-15/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-type-safety-1.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-basics.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-basics.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-basics.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-basics.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-inheritance.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-union.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-union.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-union.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-union.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-union.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-union.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-variadics.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-variadics.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-variadics.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-variadics.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-various-string-literals.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/clang-15-c++20-libcpp/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/clang-15/xyzzy b/regression-tests/test-results/clang-15-c++20-libcpp/xyzzy similarity index 100% rename from regression-tests/test-results/clang-15/xyzzy rename to regression-tests/test-results/clang-15-c++20-libcpp/xyzzy diff --git a/regression-tests/test-results/clang-15-c++20/clang-version.output b/regression-tests/test-results/clang-15-c++20/clang-version.output new file mode 100644 index 000000000..de4f2d583 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20/clang-version.output @@ -0,0 +1,4 @@ +Ubuntu clang version 15.0.7 +Target: x86_64-pc-linux-gnu +Thread model: posix +InstalledDir: /usr/bin diff --git a/regression-tests/test-results/gcc-10/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-check.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-check.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-check.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/clang-18/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-18/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/clang-18/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/clang-18/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-float-literals.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-float-literals.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-float-literals.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-float-literals.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-forwarding.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-forwarding.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-forwarding.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-forwarding.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/clang-15/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-hello.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-hello.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/clang-15/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-templates.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-values.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-values.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-values.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-out-destruction.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-out-destruction.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-out-destruction.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-parameter-passing.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-string-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-test-parens.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-test-parens.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-test-parens.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-test-parens.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-type-safety-1.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/clang-15/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-break-continue.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-break-continue.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-break-continue.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-break-continue.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution diff --git a/regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/clang-18/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-concept-definition.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-concept-definition.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-concept-definition.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-contracts.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-contracts.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-contracts.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-contracts.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-enum.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-enum.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-enum.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-enum.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-enum.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-forward-return.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-forward-return.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-forward-return.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-forward-return.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-hello.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-hello.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-hello.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-hello.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-hello.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-last-use.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-last-use.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-last-use.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-last-use.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-main-args.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-main-args.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-main-args.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-main-args.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-more-wildcards.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-print.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-print.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-print.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-print.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-repeated-call.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-repeated-call.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-repeated-call.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-stdio.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-stdio.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-stdio.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-stdio.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-trailing-commas.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/clang-15/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/clang-15/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-type-safety-1.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-basics.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-basics.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-basics.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-basics.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-inheritance.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-union.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-union.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-union.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-union.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-union.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-union.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-variadics.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-variadics.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-variadics.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-variadics.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/clang-15-c++20/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-various-string-literals.cpp.output b/regression-tests/test-results/clang-15-c++20/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/clang-15-c++20/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/gcc-10/xyzzy b/regression-tests/test-results/clang-15-c++20/xyzzy similarity index 100% rename from regression-tests/test-results/gcc-10/xyzzy rename to regression-tests/test-results/clang-15-c++20/xyzzy diff --git a/regression-tests/test-results/clang-18-c++20/clang-version.output b/regression-tests/test-results/clang-18-c++20/clang-version.output new file mode 100644 index 000000000..3e808daf9 --- /dev/null +++ b/regression-tests/test-results/clang-18-c++20/clang-version.output @@ -0,0 +1,4 @@ +Ubuntu clang version 18.1.3 (1) +Target: x86_64-pc-linux-gnu +Thread model: posix +InstalledDir: /usr/bin \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-check.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-check.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-check.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp copy.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp copy.execution diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp copy.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp copy.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-float-literals.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-float-literals.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-float-literals.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-float-literals.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-forwarding.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-forwarding.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-forwarding.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-forwarding.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-10/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-hello.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-hello.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-hello.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-hello.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-hello.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-increment-decrement.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-increment-decrement.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-increment-decrement.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-increment-decrement.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-templates.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-values.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-values.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-values.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-out-destruction.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-out-destruction.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-out-destruction.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-with-forward.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-with-forward.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-parameter-passing.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-postfix-expression-custom-formatting.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-postfix-expression-custom-formatting.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-string-interpolation.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-test-parens.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-test-parens.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-test-parens.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-test-parens.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-type-safety-1.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/clang-18-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/clang-18-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-13/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/clang-18-c++20/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/clang-18-c++20/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/clang-18-c++20/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-assert-expected-not-null.cpp.output new file mode 100644 index 000000000..ba14d3848 --- /dev/null +++ b/regression-tests/test-results/clang-18-c++20/pure2-assert-expected-not-null.cpp.output @@ -0,0 +1,27 @@ +pure2-assert-expected-not-null.cpp2:7:22: error: expected '(' for function-style cast or type construction + 7 | std::expected ex {4}; + | ~~~^ +pure2-assert-expected-not-null.cpp2:7:10: error: no member named 'expected' in namespace 'std'; did you mean 'unexpected'? + 7 | std::expected ex {4}; + | ~~~~~^~~~~~~~ + | unexpected +/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/exception:110:8: note: 'unexpected' declared here + 110 | void unexpected() __attribute__ ((__noreturn__,__cold__)); + | ^ +pure2-assert-expected-not-null.cpp2:9:193: error: use of undeclared identifier 'ex' + 9 | return *cpp2::impl::assert_not_null(cpp2::move(up)) + *cpp2::impl::assert_not_null(cpp2::move(sp)) + *cpp2::impl::assert_not_null(cpp2::move(op)) + *cpp2::impl::assert_not_null(cpp2::move(ex)); + | ^ +pure2-assert-expected-not-null.cpp2:14:22: error: expected '(' for function-style cast or type construction + 14 | std::expected ex {std::unexpected(false)}; + | ~~~^ +pure2-assert-expected-not-null.cpp2:14:10: error: no member named 'expected' in namespace 'std'; did you mean 'unexpected'? + 14 | std::expected ex {std::unexpected(false)}; + | ~~~~~^~~~~~~~ + | unexpected +/usr/bin/../lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/exception:110:8: note: 'unexpected' declared here + 110 | void unexpected() __attribute__ ((__noreturn__,__cold__)); + | ^ +pure2-assert-expected-not-null.cpp2:15:52: error: use of undeclared identifier 'ex' + 15 | return *cpp2::impl::assert_not_null(cpp2::move(ex)); + | ^ +6 errors generated. diff --git a/regression-tests/test-results/gcc-13/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-break-continue.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-break-continue.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-break-continue.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-break-continue.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-discard-precedence.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-discard-precedence.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-indexed-call.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-indexed-call.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-max-munch.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-max-munch.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp copy.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp copy.execution diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp copy.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp copy.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp copy.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp copy.execution diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp copy.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp copy.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp copy.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp copy.execution diff --git a/regression-tests/test-results/gcc-13/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp copy.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp copy.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-empty-index.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp copy.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-empty-index.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp copy.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp copy.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp copy.output diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-sfinae.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-variable-template.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-variable-template.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-concept-definition.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-concept-definition.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-concept-definition.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-concept-definition.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-concept-definition.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-contracts.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-contracts.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-contracts.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-contracts.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-enum.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-enum.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-enum.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-enum.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-enum.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-forward-return.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-forward-return.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-forward-return.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-forward-return.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-hello.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-hello.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-hello.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-hello.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-hello.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-interpolation.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-interpolation.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-interpolation.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-interpolation.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-last-use.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-last-use.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-last-use.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-last-use.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-main-args.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-main-args.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-main-args.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-main-args.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-more-wildcards.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-print.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-print.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-print.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-print.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-print.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-print.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-print.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-repeated-call.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-repeated-call.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-repeated-call.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-requires-clauses.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-stdio-with-raii.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-stdio-with-raii.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-stdio.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-stdio.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-stdio.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-stdio.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-stdio.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-stdio.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-trailing-commas.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-trailing-commas.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-trailing-commas.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/gcc-10/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-type-safety-1.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-basics.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-basics.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-basics.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-basics.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-inheritance.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-union.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-union.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-union.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-union.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-union.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-union.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-variadics.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-variadics.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-variadics.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-variadics.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/gcc-13/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-various-string-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/clang-18-c++20/pure2-various-string-literals.cpp.execution diff --git a/regression-tests/test-results/gcc-13/pure2-various-string-literals.cpp.output b/regression-tests/test-results/clang-18-c++20/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/clang-18-c++20/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/gcc-13/xyzzy b/regression-tests/test-results/clang-18-c++20/xyzzy similarity index 100% rename from regression-tests/test-results/gcc-13/xyzzy rename to regression-tests/test-results/clang-18-c++20/xyzzy diff --git a/regression-tests/test-results/gcc-10/gcc-version.output b/regression-tests/test-results/gcc-10-c++20/gcc-version.output similarity index 100% rename from regression-tests/test-results/gcc-10/gcc-version.output rename to regression-tests/test-results/gcc-10-c++20/gcc-version.output diff --git a/regression-tests/test-results/msvc-2022/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-allcpp1-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-allcpp1-hello.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-allcpp1-hello.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-as-for-variant-20-types.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-as-for-variant-20-types.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-as-for-variant-20-types.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-literal-as-nttp.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-check.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-check.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-check.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-check.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-ufcs-non-local.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert-2.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert-2.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert-2.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing-with-forward.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-postfix-expression-custom-formatting.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-assign-expression-list.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-discard-precedence.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-indexed-call.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-max-munch.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-fixed-type-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-fixed-type-aliases.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-fixed-type-aliases.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-function-expression.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-float-literals.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-float-literals.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-float-literals.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-float-literals.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-initialization.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-forwarding.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-forwarding.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-forwarding.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-forwarding.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-optional-template-argument-list.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-name-lookup.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-noexcept.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/gcc-13/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-unbraced-function-expression.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-hello.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-hello.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-hello.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-variable-template.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-hello.cpp.output diff --git a/regression-tests/test-results/gcc-10/mixed-increment-decrement.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/gcc-10-c++20/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-initialization-safety-3-contract-violation.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-concept-definition.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-concept-definition.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-initialization-safety-3.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-stdio-with-raii.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-templates.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-templates.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-templates.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-stdio.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-stdio.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-values-2.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-values-2.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-values-2.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-trailing-commas.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-values.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-values.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-values.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-values.cpp.execution diff --git a/regression-tests/test-results/msvc-2022/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-ufcs-member-access-and-chaining.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-various-string-literals.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-intro-for-with-counter-include-last.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-intro-for-with-counter-include-last.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-intro-for-with-counter-include-last.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-intro-for-with-counter-include-last.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-lifetime-safety-and-null-contracts.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-lifetime-safety-pointer-init-4.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-multiple-return-values.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-multiple-return-values.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-multiple-return-values.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-multiple-return-values.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-out-destruction.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-out-destruction.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-out-destruction.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-out-destruction.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-out-destruction.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-out-destruction.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-generic-out.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing-generic-out.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-generic-out.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-generic-out.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-with-forward.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing-with-forward.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-parameter-passing.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-postexpression-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-postexpression-with-capture.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-postexpression-with-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-postexpression-with-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-postfix-expression-custom-formatting.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-postfix-expression-custom-formatting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-string-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-string-interpolation.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-string-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-string-interpolation.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-string-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-test-parens.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-test-parens.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-test-parens.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-test-parens.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-test-parens.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-test-parens.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-type-safety-1.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-type-safety-1.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/gcc-10-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-ufcs-multiple-template-arguments.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/gcc-10-c++20/mixed-ufcs-multiple-template-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-assert-expected-not-null.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-assert-optional-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-optional-not-null.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-assert-optional-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-assert-optional-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-assert-shared-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-shared-ptr-not-null.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-assert-shared-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-assert-shared-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-assert-unique-ptr-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-unique-ptr-not-null.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-assert-unique-ptr-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-assert-unique-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bounds-safety-span.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bounds-safety-span.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-bounds-safety-span.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bounds-safety-span.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-break-continue.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-break-continue.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-break-continue.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-break-continue.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-break-continue.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-break-continue.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-assign-expression-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-discard-precedence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-discard-precedence.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-indexed-call.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-indexed-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-max-munch.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-max-munch.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-memberwise-base-assignment.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-non-local-initialization.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-template-argument.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-template-argument.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-template-argument.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-template-argument.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-arguments.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-variable-template.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-bugfix-for-variable-template.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-chained-comparisons.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-chained-comparisons.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-chained-comparisons.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-chained-comparisons.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-concept-definition.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-concept-definition.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-concept-definition.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-concept-definition.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-contracts.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-contracts.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-contracts.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-contracts.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-contracts.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-defaulted-comparisons-and-final-types.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-enum.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-enum.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-enum.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-enum.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-enum.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-enum.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-for-loop-range-with-lambda.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-for-loop-range-with-lambda.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-for-loop-range-with-lambda.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-for-loop-range-with-lambda.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-forward-return.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-forward-return.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-forward-return.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-forward-return.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-forward-return.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-forward-return.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-function-multiple-forward-arguments.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-function-multiple-forward-arguments.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-function-multiple-forward-arguments.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-function-multiple-forward-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-hello.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-hello.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-hello.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-hello.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-hello.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-initialization-safety-with-else-if.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-initialization-safety-with-else-if.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-initialization-safety-with-else-if.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-initialization-safety-with-else-if.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-expression-with-as-in-generic-function.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-fallback-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-interpolation.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-interpolation.cpp.execution new file mode 100644 index 000000000..7dbfcb544 --- /dev/null +++ b/regression-tests/test-results/gcc-10-c++20/pure2-interpolation.cpp.execution @@ -0,0 +1,12 @@ +g0g0g +0g0g +0g0 +00 +"0" +"0 +" + +pl(ug$h +0pl(ug$h +Dog kennel color mauve price 3.14 in stock = true +Dog kennel color mauve price 3.140000 in stock = true diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-interpolation.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-hello-2022.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-intro-example-hello-2022.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-intro-example-hello-2022.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-hello-2022.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-three-loops.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-intro-example-three-loops.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-intro-example-three-loops.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-free-functions-predicate.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-free-functions-predicate.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-is-with-free-functions-predicate.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-free-functions-predicate.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-unnamed-predicates.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-unnamed-predicates.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-is-with-unnamed-predicates.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-unnamed-predicates.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-variable-and-value.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-variable-and-value.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-is-with-variable-and-value.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-is-with-variable-and-value.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-last-use.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-last-use.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-last-use.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-last-use.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-last-use.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-last-use.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-look-up-parameter-across-unnamed-function.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-main-args.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-main-args.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-main-args.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-main-args.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-main-args.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-main-args.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-more-wildcards.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-more-wildcards.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-more-wildcards.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-more-wildcards.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-more-wildcards.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-print.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-print.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-print.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-raw-string-literal-and-interpolation.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-raw-string-literal-and-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-repeated-call.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-repeated-call.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-repeated-call.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-repeated-call.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-repeated-call.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-repeated-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-requires-clauses.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-requires-clauses.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-requires-clauses.cpp.execution diff --git a/regression-tests/test-results/gcc-10/pure2-requires-clauses.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-10/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/gcc-10-c++20/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/msvc-2022/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-return-tuple-operator.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-return-tuple-operator.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-return-tuple-operator.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-return-tuple-operator.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-statement-scope-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-statement-scope-parameters.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-statement-scope-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-statement-scope-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-stdio-with-raii.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-stdio-with-raii.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-stdio.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-stdio.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-stdio.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-stdio.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-template-parameter-lists.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-template-parameter-lists.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-template-parameter-lists.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-template-parameter-lists.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-trailing-commas.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-trailing-commas.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-trailing-commas.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-type-and-namespace-aliases.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-1.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-safety-1.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-type-safety-1.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-1.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-safety-2-with-inspect-expression.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-basics.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-basics.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-basics.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-basics.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-basics.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-basics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-down-upcast.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-down-upcast.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-down-upcast.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-down-upcast.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-inheritance.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-inheritance.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-inheritance.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-inheritance.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-inheritance.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-order-independence-and-nesting.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-order-independence-and-nesting.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-order-independence-and-nesting.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-order-independence-and-nesting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-ordering-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-ordering-via-meta-functions.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-ordering-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-ordering-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-1-provide-everything.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-that-parameters.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-that-parameters.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-that-parameters.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-that-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-types-value-types-via-meta-functions.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-value-types-via-meta-functions.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-types-value-types-via-meta-functions.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-types-value-types-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-ufcs-member-access-and-chaining.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-union.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-union.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-union.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-union.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-union.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-union.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-variadics.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-variadics.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-variadics.cpp.execution rename to regression-tests/test-results/gcc-10-c++20/pure2-variadics.cpp.execution diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-variadics.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-variadics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/gcc-10-c++20/pure2-various-string-literals.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10-c++20/pure2-various-string-literals.cpp.output b/regression-tests/test-results/gcc-10-c++20/pure2-various-string-literals.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-10/run-tests-gcc-10.sh b/regression-tests/test-results/gcc-10-c++20/run-tests-gcc-10.sh similarity index 100% rename from regression-tests/test-results/gcc-10/run-tests-gcc-10.sh rename to regression-tests/test-results/gcc-10-c++20/run-tests-gcc-10.sh diff --git a/regression-tests/test-results/msvc-2022/xyzzy b/regression-tests/test-results/gcc-10-c++20/xyzzy similarity index 100% rename from regression-tests/test-results/msvc-2022/xyzzy rename to regression-tests/test-results/gcc-10-c++20/xyzzy diff --git a/regression-tests/test-results/gcc-13/gcc-version.output b/regression-tests/test-results/gcc-13-c++2b/gcc-version.output similarity index 100% rename from regression-tests/test-results/gcc-13/gcc-version.output rename to regression-tests/test-results/gcc-13-c++2b/gcc-version.output diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-allcpp1-hello.cpp.execution new file mode 100644 index 000000000..802992c42 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-allcpp1-hello.cpp.execution @@ -0,0 +1 @@ +Hello world diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-allcpp1-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-as-for-variant-20-types.cpp.execution new file mode 100644 index 000000000..5e2c9d82e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-as-for-variant-20-types.cpp.execution @@ -0,0 +1,60 @@ +v as X< 0> = 0 +v as X< 1> = 1 +v as X< 2> = 2 +v as X< 3> = 3 +v as X< 4> = 4 +v as X< 5> = 5 +v as X< 6> = 6 +v as X< 7> = 7 +v as X< 8> = 8 +v as X< 9> = 9 +v as X<10> = 10 +v as X<11> = 11 +v as X<12> = 12 +v as X<13> = 13 +v as X<14> = 14 +v as X<15> = 15 +v as X<16> = 16 +v as X<17> = 17 +v as X<18> = 18 +v as X<19> = 19 +as_const(v) as X< 0> = 0 +as_const(v) as X< 1> = 1 +as_const(v) as X< 2> = 2 +as_const(v) as X< 3> = 3 +as_const(v) as X< 4> = 4 +as_const(v) as X< 5> = 5 +as_const(v) as X< 6> = 6 +as_const(v) as X< 7> = 7 +as_const(v) as X< 8> = 8 +as_const(v) as X< 9> = 9 +as_const(v) as X<10> = 10 +as_const(v) as X<11> = 11 +as_const(v) as X<12> = 12 +as_const(v) as X<13> = 13 +as_const(v) as X<14> = 14 +as_const(v) as X<15> = 15 +as_const(v) as X<16> = 16 +as_const(v) as X<17> = 17 +as_const(v) as X<18> = 18 +as_const(v) as X<19> = 19 +move(v) as X< 0> = 0 +move(v) as X< 1> = 1 +move(v) as X< 2> = 2 +move(v) as X< 3> = 3 +move(v) as X< 4> = 4 +move(v) as X< 5> = 5 +move(v) as X< 6> = 6 +move(v) as X< 7> = 7 +move(v) as X< 8> = 8 +move(v) as X< 9> = 9 +move(v) as X<10> = 10 +move(v) as X<11> = 11 +move(v) as X<12> = 12 +move(v) as X<13> = 13 +move(v) as X<14> = 14 +move(v) as X<15> = 15 +move(v) as X<16> = 16 +move(v) as X<17> = 17 +move(v) as X<18> = 18 +move(v) as X<19> = 19 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-as-for-variant-20-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-check.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-check.cpp.execution new file mode 100644 index 000000000..8474b9159 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-check.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-check.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-check.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution new file mode 100644 index 000000000..6330ca570 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution @@ -0,0 +1,5 @@ +1 +44 +45 +46 +5 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert-2.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert.cpp.execution new file mode 100644 index 000000000..776dc1460 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bounds-safety-with-assert.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/gcc-13-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/msvc-2022/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-captures-in-expressions-and-postconditions.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-fixed-type-aliases.cpp.execution new file mode 100644 index 000000000..3122e6030 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-fixed-type-aliases.cpp.execution @@ -0,0 +1,4 @@ +true +false +"test.exe" +true diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-fixed-type-aliases.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-float-literals.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-float-literals.cpp.execution new file mode 100644 index 000000000..6b15b12bc --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-float-literals.cpp.execution @@ -0,0 +1,72 @@ +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-float-literals.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-float-literals.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-forwarding.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-forwarding.cpp.execution new file mode 100644 index 000000000..952feac3b --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-forwarding.cpp.execution @@ -0,0 +1,12 @@ ++X 1 ++X 2 +copy X 1 +copy X 2 +copy X 1 +move X 2 ++X 3 ++X 4 +copy X 3 +copy X 4 +move X 3 +move X 4 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-forwarding.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-forwarding.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-for-each.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-for-each.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-for-each.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-with-pointer-capture.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-pointer-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-with-repeated-capture.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-function-expression-with-repeated-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-hello.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-hello.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-increment-decrement.cpp.execution new file mode 100644 index 000000000..6f42aeb32 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-increment-decrement.cpp.execution @@ -0,0 +1,2 @@ +12234 +12234 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-increment-decrement.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-increment-decrement.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution new file mode 100644 index 000000000..e16104fe5 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution @@ -0,0 +1 @@ +Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3.cpp.execution new file mode 100644 index 000000000..b261dd86c --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3.cpp.execution @@ -0,0 +1 @@ +>> [xyzzy] diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-initialization-safety-3.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-templates.cpp.execution new file mode 100644 index 000000000..03cdf50b7 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-templates.cpp.execution @@ -0,0 +1,8 @@ +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-templates.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-templates.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values-2.cpp.execution new file mode 100644 index 000000000..8372eadca --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values-2.cpp.execution @@ -0,0 +1,5 @@ +i is between 11 and 20 +less than 20 +i is between 10 and 30 +v is empty +v is empty diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values-2.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values.cpp.execution new file mode 100644 index 000000000..e7130e0f8 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values.cpp.execution @@ -0,0 +1,12 @@ +rev dodgson +(no match) +the answer +zero +plugh +zero +1 or 2 +1 or 2 +3 +integer -42 +xyzzy +(no match) diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-values.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..984a60a83 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-example-three-loops.cpp.execution @@ -0,0 +1,7 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution new file mode 100644 index 000000000..05961867a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution @@ -0,0 +1,5 @@ +1 42 +2 84 +3 168 +4 336 +5 672 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-intro-for-with-counter-include-last.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution new file mode 100644 index 000000000..f4dd62312 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution @@ -0,0 +1 @@ +sending error to my framework... [dynamic null dereference attempt detected] diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution new file mode 100644 index 000000000..7ee4d37b2 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution @@ -0,0 +1 @@ +>> 42 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-multiple-return-values.cpp.execution new file mode 100644 index 000000000..b3fc65a7c --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-multiple-return-values.cpp.execution @@ -0,0 +1,2 @@ +a is 10 +b is xyzzy diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-multiple-return-values.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-out-destruction.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-out-destruction.cpp.execution new file mode 100644 index 000000000..df8e3e4ff --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-out-destruction.cpp.execution @@ -0,0 +1,21 @@ +enter main +enter f00 +enter f01 ++X 1 +exit f01 +-X 1 +exit f00 + +enter f10 +enter f11 +enter f12 +enter f13 +enter f14 ++X 2 +exit f14 +exit f13 +exit f12 +-X 2 +exit f11 +exit f10 +exit main diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-out-destruction.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-out-destruction.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-generic-out.cpp.execution new file mode 100644 index 000000000..982a789cf --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-generic-out.cpp.execution @@ -0,0 +1,2 @@ +42 +exxxx diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-generic-out.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-with-forward.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing-with-forward.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-parameter-passing.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-postexpression-with-capture.cpp.execution new file mode 100644 index 000000000..a17035eda --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-postexpression-with-capture.cpp.execution @@ -0,0 +1,2 @@ +xyzzy and plugh +xyzzyplugh diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-postexpression-with-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-postfix-expression-custom-formatting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-string-interpolation.cpp.execution new file mode 100644 index 000000000..eebb290a9 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-string-interpolation.cpp.execution @@ -0,0 +1,17 @@ +a = 2, b = (empty) +a^2 + b = 46 +sv = my string_view +osv = (empty) +osv = string literal bound to optional string_view +var = (empty) +var = abracadabra +var = 2.718280 +mypair = (12, 3.400000) +tup1 = (12) +tup2 = (12, 3.400000) +tup3 = (12, 3.400000, 456) +p = (first, (empty)) +t = (3.140000, (empty), (empty)) +vv = 0 +vv = (1, 2.300000) +custom = (customize me - no cpp2::to_string overload exists for this type) diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-string-interpolation.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-string-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-test-parens.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-test-parens.cpp.execution new file mode 100644 index 000000000..59967f29d --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-test-parens.cpp.execution @@ -0,0 +1,3 @@ +11 +12 +13*14 is 182 diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-test-parens.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-test-parens.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-type-safety-1.cpp.execution new file mode 100644 index 000000000..f1a0d084e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-type-safety-1.cpp.execution @@ -0,0 +1,6 @@ +1.1 is int? false +1 is int? true + +s* is Shape? true +s* is Circle? true +s* is Square? false diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-type-safety-1.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution new file mode 100644 index 000000000..dec75369f --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution @@ -0,0 +1,2 @@ +rain +rain diff --git a/regression-tests/test-results/gcc-13-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/gcc-13-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-expected-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/pure2-assert-expected-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-expected-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-optional-not-null.cpp.execution new file mode 100644 index 000000000..c6aeba0fd --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-optional-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-optional-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution new file mode 100644 index 000000000..85aafbe6a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-shared-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution new file mode 100644 index 000000000..af633d171 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-assert-unique-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bounds-safety-span.cpp.execution new file mode 100644 index 000000000..3a0304fa2 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-bounds-safety-span.cpp.execution @@ -0,0 +1,3 @@ +>> decorated +>> hello +>> world diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bounds-safety-span.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-break-continue.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-break-continue.cpp.execution new file mode 100644 index 000000000..c8af55771 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-break-continue.cpp.execution @@ -0,0 +1,26 @@ +while_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +while_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +while_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +while_break_outer: + 00 inner 01 + +do_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +do_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +do_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +do_break_outer: + 00 inner 01 + +for_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +for_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +for_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +for_break_outer: + 00 inner 01 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-break-continue.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-break-continue.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-discard-precedence.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-empty-index.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-empty-index.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-indexed-call.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-indexed-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-max-munch.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-max-munch.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution new file mode 100644 index 000000000..566837e51 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution @@ -0,0 +1,2 @@ +(out this, that) +(out this, that) diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/gcc-13/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-template-argument.cpp.execution new file mode 100644 index 000000000..c508d5366 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-template-argument.cpp.execution @@ -0,0 +1 @@ +false diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-template-argument.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution new file mode 100644 index 000000000..0e41b7819 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution @@ -0,0 +1,4 @@ +0123456789 +9 +0123456789 +9 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-variable-template.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-bugfix-for-variable-template.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-chained-comparisons.cpp.execution new file mode 100644 index 000000000..b41a1bf75 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-chained-comparisons.cpp.execution @@ -0,0 +1,27 @@ +0 0 0: true false false +0 0 1: false false false +0 0 2: false false false +0 1 0: false false false +0 1 1: false true false +0 1 2: false true false +0 2 0: false false false +0 2 1: false false false +0 2 2: false true false +1 0 0: false false false +1 0 1: false false false +1 0 2: false false false +1 1 0: false false true +1 1 1: true false false +1 1 2: false false false +1 2 0: false false false +1 2 1: false false false +1 2 2: false true false +2 0 0: false false false +2 0 1: false false false +2 0 2: false false false +2 1 0: false false true +2 1 1: false false false +2 1 2: false false false +2 2 0: false false true +2 2 1: false false true +2 2 2: true false false diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-chained-comparisons.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-concept-definition.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-concept-definition.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-concept-definition.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-concept-definition.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-contracts.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-contracts.cpp.execution new file mode 100644 index 000000000..e8a01cd98 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-contracts.cpp.execution @@ -0,0 +1,3 @@ +1 +2 +4 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-contracts.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution new file mode 100644 index 000000000..9ff824547 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution @@ -0,0 +1 @@ +less \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-enum.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-enum.cpp.execution new file mode 100644 index 000000000..6d9a33c28 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-enum.cpp.execution @@ -0,0 +1,29 @@ +x.to_string() is clubs +x2.to_string() is clubs +with if else: clubs +with inspect: clubs + +file_attributes::cached.get_raw_value() is 1 +file_attributes::current.get_raw_value() is 2 +file_attributes::obsolete.get_raw_value() is 4 +file_attributes::cached_and_current.get_raw_value() is 3 +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (cached) +f2 is (cached) +f2 is (none) +f2 is (cached) +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (f2) is true +f2 is (f ) is true + +f is (cached, current, obsolete, cached_and_current) +f2 is (cached, current, cached_and_current) +f. get_raw_value() is 7 +f2.get_raw_value() is 3 +f == f2 is false +f is (f2) is false +f2 is (f ) is false +(f & f2) == f2 is true +inspecting f: includes all f2's flags ('cached' and 'current') diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-enum.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-enum.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-for-loop-range-with-lambda.cpp.execution new file mode 100644 index 000000000..19b3a90b2 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-for-loop-range-with-lambda.cpp.execution @@ -0,0 +1 @@ +12345123451234512345 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-for-loop-range-with-lambda.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-forward-return.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-forward-return.cpp.execution new file mode 100644 index 000000000..f259f2362 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-forward-return.cpp.execution @@ -0,0 +1,2 @@ +4 +42 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-forward-return.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-forward-return.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-function-multiple-forward-arguments.cpp.execution new file mode 100644 index 000000000..8baef1b4a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-function-multiple-forward-arguments.cpp.execution @@ -0,0 +1 @@ +abc diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-function-multiple-forward-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-hello.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-hello.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-initialization-safety-with-else-if.cpp.execution new file mode 100644 index 000000000..d00491fd7 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-initialization-safety-with-else-if.cpp.execution @@ -0,0 +1 @@ +1 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-initialization-safety-with-else-if.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution new file mode 100644 index 000000000..fd5a6cdff --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int or string + variant value is not an int or string + any value is "xyzzy" + optional value is not an int or string + int value is integer 42 + variant value is integer 1 + any value is integer 2 + optional value is integer 3 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution new file mode 100644 index 000000000..3cd874b4e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution @@ -0,0 +1,3 @@ + syzygy value is not an int + 1 value is 1 + 1.100000 value is not an int diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a5cbcefe9 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution @@ -0,0 +1,11 @@ + +All these cases satisfy "matches std::string" + +variant + ... matches std::string + +string + ... matches std::string + +optional + ... matches std::string diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a2df8769d --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution @@ -0,0 +1,17 @@ + +All these cases satisfy "VOYDE AND EMPTIE" + +unique_ptr + ... VOYDE AND EMPTIE + +vector::iterator + ... VOYDE AND EMPTIE + +variant + ... VOYDE AND EMPTIE + +any + ... VOYDE AND EMPTIE + +optional + ... VOYDE AND EMPTIE diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-interpolation.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-interpolation.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-interpolation.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/pure2-interpolation.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-interpolation.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-hello-2022.cpp.execution new file mode 100644 index 000000000..8e8c5ee29 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-hello-2022.cpp.execution @@ -0,0 +1,2 @@ +>> [hello] - length 7 +>> [2022] - length 6 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-hello-2022.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..c218d85df --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-three-loops.cpp.execution @@ -0,0 +1,8 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] +>> end of program diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-free-functions-predicate.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-free-functions-predicate.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-free-functions-predicate.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-unnamed-predicates.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-unnamed-predicates.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-unnamed-predicates.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-variable-and-value.cpp.execution new file mode 100644 index 000000000..a9bc0680a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-variable-and-value.cpp.execution @@ -0,0 +1,9 @@ +3.14: unknown +42: 42 +WithOp(): unknown +WithGenOp(): unknown +Cmp(): comparable +std::string("text"): text +"text": text +std::string_view("text"): text +:std::vector = ('t','e','x','t','\0'): unknown diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-is-with-variable-and-value.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-last-use.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-last-use.cpp.execution new file mode 100644 index 000000000..4632e068d --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-last-use.cpp.execution @@ -0,0 +1 @@ +123456 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-last-use.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-last-use.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution new file mode 100644 index 000000000..871727de1 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution @@ -0,0 +1 @@ +84 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-main-args.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-main-args.cpp.execution new file mode 100644 index 000000000..bd992e432 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-main-args.cpp.execution @@ -0,0 +1,2 @@ +args.argc is 1 +args.argv[0] is test.exe diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-main-args.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-main-args.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-more-wildcards.cpp.execution new file mode 100644 index 000000000..e37d6cb21 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-more-wildcards.cpp.execution @@ -0,0 +1,2 @@ +yes, less +yes, always diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-more-wildcards.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-more-wildcards.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-print.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-print.cpp.execution new file mode 100644 index 000000000..4e4b4573d --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-print.cpp.execution @@ -0,0 +1,2 @@ +43 +forty-and-three diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-print.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-print.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution new file mode 100644 index 000000000..c48e2bd60 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution @@ -0,0 +1,17 @@ +this is a string +raw string without interpolation +this is raw string literal + +that can last for multiple + +lines +this is raw string literal +that can last for multiple +lines +42 R"(this can be added too)" +calculations like m["one"] + m["two"] = 3 also works +at the beginning of the line!!! + + + 4242 +1.2.0.42 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-repeated-call.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-repeated-call.cpp.execution new file mode 100644 index 000000000..d81cc0710 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-repeated-call.cpp.execution @@ -0,0 +1 @@ +42 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-repeated-call.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-repeated-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-requires-clauses.cpp.execution new file mode 100644 index 000000000..105d7d9ad --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-requires-clauses.cpp.execution @@ -0,0 +1 @@ +100 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-requires-clauses.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-requires-clauses.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-return-tuple-operator.cpp.execution new file mode 100644 index 000000000..a3b7f9a55 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-return-tuple-operator.cpp.execution @@ -0,0 +1,3 @@ +12 , 34 +23 , 45 +34 , 56 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-return-tuple-operator.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-statement-scope-parameters.cpp.execution new file mode 100644 index 000000000..6fe5c7f6a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-statement-scope-parameters.cpp.execution @@ -0,0 +1,2 @@ +42 +43 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-statement-scope-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-stdio-with-raii.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-stdio-with-raii.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-stdio.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-stdio.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-stdio.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-stdio.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution new file mode 100644 index 000000000..b8626c4cf --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution @@ -0,0 +1 @@ +4 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-template-parameter-lists.cpp.execution new file mode 100644 index 000000000..2861a7a20 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-template-parameter-lists.cpp.execution @@ -0,0 +1,4 @@ +f1: 2 +f2: 4 +f3: 6 +f4: 8 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-template-parameter-lists.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-trailing-commas.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-trailing-commas.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-trailing-commas.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-type-and-namespace-aliases.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-and-namespace-aliases.cpp.execution rename to regression-tests/test-results/gcc-13-c++2b/pure2-type-and-namespace-aliases.cpp.execution diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-type-and-namespace-aliases.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-1.cpp.execution new file mode 100644 index 000000000..d1aa6265a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-1.cpp.execution @@ -0,0 +1,9 @@ + double is int? false + variant is int? false + any is int? false + optional is int? false + + int is int? true + variant is int? true + any is int? true + optional is int? true diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-1.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution new file mode 100644 index 000000000..7045a6e79 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int + variant value is not an int + any value is not an int + optional value is not an int + int value is 42 + variant value is 1 + any value is 2 + optional value is 3 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-basics.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-basics.cpp.execution new file mode 100644 index 000000000..96b31fc42 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-basics.cpp.execution @@ -0,0 +1,27 @@ +myclass: implicit from int + data: 1, more: 504 +N::myclass::f with 53 +N::myclass::nested::g +f1: 2 +f2: 4 +f3: 6 +f4: 8 +myclass: explicit from string + data: 99, more: abracadabra +myclass: default + data: 504, more: 3.141590 +myclass: from int and string + data: 77, more: hair1 plugh +x's state before assignments: data: 1, more: 504 +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: destructor +myclass: destructor +myclass: destructor +myclass: destructor diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-basics.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-basics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-down-upcast.cpp.execution new file mode 100644 index 000000000..20751af06 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-down-upcast.cpp.execution @@ -0,0 +1,24 @@ +const foo +const foo +const foo +const foo +foo +foo +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B mut: 0.000000 +Call B mut: 0.000000 +Call A mut: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A mut: 0 +Call B mut: 0.000000 +Call A mut: 0 diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-down-upcast.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-inheritance.cpp.execution new file mode 100644 index 000000000..809430aaa --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-inheritance.cpp.execution @@ -0,0 +1,5 @@ +Parsnip checks in for the day's shift +printing: Parsnip lives at 123 Main St. +-> [vcall: make_speak] Parsnip cracks a few jokes with a coworker +-> [vcall: do_work] Parsnip carries some half-tonne crates of Fe2O3 to cold storage +Tired but satisfied after another successful day, Parsnip checks out and goes home to their family diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-inheritance.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-inheritance.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-order-independence-and-nesting.cpp.execution new file mode 100644 index 000000000..cc716cc8c --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-order-independence-and-nesting.cpp.execution @@ -0,0 +1,5 @@ +made a safely initialized cycle +leaving call to 'why(5)' +leaving call to 'why(3)' +leaving call to 'why(1)' +hallo welt diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-order-independence-and-nesting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution new file mode 100644 index 000000000..54b3aab09 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less more less diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-ordering-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution new file mode 100644 index 000000000..fc5a23bde --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution new file mode 100644 index 000000000..7cbf0f869 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - copy mv-assign [ Clara | 123 Ford Dr.(AC) ] <- [ | ] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution new file mode 100644 index 000000000..541b2a0d9 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution new file mode 100644 index 000000000..24d4e763a --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution new file mode 100644 index 000000000..c387c0371 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-that-parameters.cpp.execution new file mode 100644 index 000000000..abd49e623 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-that-parameters.cpp.execution @@ -0,0 +1,7 @@ +name 'Henry', addr '123 Ford Dr.' +----- +name 'Henry', addr '123 Ford Dr.' +name 'Henry', addr '123 Ford Dr.' +----- +name '', addr '' +name 'Henry', addr '123 Ford Dr.' diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-that-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution new file mode 100644 index 000000000..daee7bf51 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less less less \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-types-value-types-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-union.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-union.cpp.execution new file mode 100644 index 000000000..e52daad8e --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-union.cpp.execution @@ -0,0 +1,4 @@ +sizeof(x) - alignof(x) == max(sizeof(fields)) is true +(not a name) +xyz +42 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-union.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-union.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-variadics.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-variadics.cpp.execution new file mode 100644 index 000000000..53bc692f9 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-variadics.cpp.execution @@ -0,0 +1,7 @@ +xyz +plu +abr +3.14word-1500 +first all() returned false +second all() returned true +sum of (1, 2, 3, 100) is: 106 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-variadics.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-variadics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-various-string-literals.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-various-string-literals.cpp.output b/regression-tests/test-results/gcc-13-c++2b/pure2-various-string-literals.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-13/run-tests-gcc-13.sh b/regression-tests/test-results/gcc-13-c++2b/run-tests-gcc-13.sh similarity index 100% rename from regression-tests/test-results/gcc-13/run-tests-gcc-13.sh rename to regression-tests/test-results/gcc-13-c++2b/run-tests-gcc-13.sh diff --git a/regression-tests/test-results/gcc-13-c++2b/xyzzy b/regression-tests/test-results/gcc-13-c++2b/xyzzy new file mode 100644 index 000000000..805bcb853 --- /dev/null +++ b/regression-tests/test-results/gcc-13-c++2b/xyzzy @@ -0,0 +1 @@ +Hello Fred with UFCS! \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/gcc-version.output b/regression-tests/test-results/gcc-14-c++2b/gcc-version.output new file mode 100644 index 000000000..10159098f --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/gcc-version.output @@ -0,0 +1,4 @@ +g++-14 (Ubuntu 14-20240412-0ubuntu1) 14.0.1 20240412 (experimental) [master r14-9935-g67e1433a94f] +Copyright (C) 2024 Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-allcpp1-hello.cpp.execution new file mode 100644 index 000000000..802992c42 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-allcpp1-hello.cpp.execution @@ -0,0 +1 @@ +Hello world diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-allcpp1-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-as-for-variant-20-types.cpp.execution new file mode 100644 index 000000000..5e2c9d82e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-as-for-variant-20-types.cpp.execution @@ -0,0 +1,60 @@ +v as X< 0> = 0 +v as X< 1> = 1 +v as X< 2> = 2 +v as X< 3> = 3 +v as X< 4> = 4 +v as X< 5> = 5 +v as X< 6> = 6 +v as X< 7> = 7 +v as X< 8> = 8 +v as X< 9> = 9 +v as X<10> = 10 +v as X<11> = 11 +v as X<12> = 12 +v as X<13> = 13 +v as X<14> = 14 +v as X<15> = 15 +v as X<16> = 16 +v as X<17> = 17 +v as X<18> = 18 +v as X<19> = 19 +as_const(v) as X< 0> = 0 +as_const(v) as X< 1> = 1 +as_const(v) as X< 2> = 2 +as_const(v) as X< 3> = 3 +as_const(v) as X< 4> = 4 +as_const(v) as X< 5> = 5 +as_const(v) as X< 6> = 6 +as_const(v) as X< 7> = 7 +as_const(v) as X< 8> = 8 +as_const(v) as X< 9> = 9 +as_const(v) as X<10> = 10 +as_const(v) as X<11> = 11 +as_const(v) as X<12> = 12 +as_const(v) as X<13> = 13 +as_const(v) as X<14> = 14 +as_const(v) as X<15> = 15 +as_const(v) as X<16> = 16 +as_const(v) as X<17> = 17 +as_const(v) as X<18> = 18 +as_const(v) as X<19> = 19 +move(v) as X< 0> = 0 +move(v) as X< 1> = 1 +move(v) as X< 2> = 2 +move(v) as X< 3> = 3 +move(v) as X< 4> = 4 +move(v) as X< 5> = 5 +move(v) as X< 6> = 6 +move(v) as X< 7> = 7 +move(v) as X< 8> = 8 +move(v) as X< 9> = 9 +move(v) as X<10> = 10 +move(v) as X<11> = 11 +move(v) as X<12> = 12 +move(v) as X<13> = 13 +move(v) as X<14> = 14 +move(v) as X<15> = 15 +move(v) as X<16> = 16 +move(v) as X<17> = 17 +move(v) as X<18> = 18 +move(v) as X<19> = 19 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-as-for-variant-20-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-check.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-check.cpp.execution new file mode 100644 index 000000000..8474b9159 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-check.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-check.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-check.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution new file mode 100644 index 000000000..6330ca570 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.execution @@ -0,0 +1,5 @@ +1 +44 +45 +46 +5 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert-2.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert.cpp.execution new file mode 100644 index 000000000..776dc1460 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bounds-safety-with-assert.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-literal-as-nttp.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output new file mode 100644 index 000000000..74d1ceac6 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-bugfix-for-ufcs-non-local.cpp.output @@ -0,0 +1,41 @@ +In file included from mixed-bugfix-for-ufcs-non-local.cpp:6: +../../../include/cpp2util.h:1128:1: error: lambda-expression in template parameter type + 1128 | [LAMBDADEFCAPT]< \ + | ^ +../../../include/cpp2util.h:1165:59: note: in expansion of macro ‘CPP2_UFCS_’ + 1165 | #define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,CPP2_UFCS_IDENTITY,CPP2_UFCS_IDENTITY,(),,__VA_ARGS__) + | ^~~~~~~~~~ +mixed-bugfix-for-ufcs-non-local.cpp2:13:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’ +mixed-bugfix-for-ufcs-non-local.cpp2:13:36: error: template argument 1 is invalid +../../../include/cpp2util.h:1128:1: error: lambda-expression in template parameter type + 1128 | [LAMBDADEFCAPT]< \ + | ^ +../../../include/cpp2util.h:1165:59: note: in expansion of macro ‘CPP2_UFCS_’ + 1165 | #define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,CPP2_UFCS_IDENTITY,CPP2_UFCS_IDENTITY,(),,__VA_ARGS__) + | ^~~~~~~~~~ +mixed-bugfix-for-ufcs-non-local.cpp2:21:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’ +mixed-bugfix-for-ufcs-non-local.cpp2:21:36: error: template argument 1 is invalid +../../../include/cpp2util.h:1128:1: error: lambda-expression in template parameter type + 1128 | [LAMBDADEFCAPT]< \ + | ^ +../../../include/cpp2util.h:1165:59: note: in expansion of macro ‘CPP2_UFCS_’ + 1165 | #define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,CPP2_UFCS_IDENTITY,CPP2_UFCS_IDENTITY,(),,__VA_ARGS__) + | ^~~~~~~~~~ +mixed-bugfix-for-ufcs-non-local.cpp2:31:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’ +mixed-bugfix-for-ufcs-non-local.cpp2:31:36: error: template argument 1 is invalid +../../../include/cpp2util.h:1128:1: error: lambda-expression in template parameter type + 1128 | [LAMBDADEFCAPT]< \ + | ^ +../../../include/cpp2util.h:1165:59: note: in expansion of macro ‘CPP2_UFCS_’ + 1165 | #define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,CPP2_UFCS_IDENTITY,CPP2_UFCS_IDENTITY,(),,__VA_ARGS__) + | ^~~~~~~~~~ +mixed-bugfix-for-ufcs-non-local.cpp2:33:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’ +mixed-bugfix-for-ufcs-non-local.cpp2:33:36: error: template argument 1 is invalid +../../../include/cpp2util.h:1128:1: error: lambda-expression in template parameter type + 1128 | [LAMBDADEFCAPT]< \ + | ^ +../../../include/cpp2util.h:1165:59: note: in expansion of macro ‘CPP2_UFCS_’ + 1165 | #define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,CPP2_UFCS_IDENTITY,CPP2_UFCS_IDENTITY,(),,__VA_ARGS__) + | ^~~~~~~~~~ +mixed-bugfix-for-ufcs-non-local.cpp2:21:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’ +mixed-bugfix-for-ufcs-non-local.cpp2:21:36: error: template argument 1 is invalid diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-captures-in-expressions-and-postconditions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-fixed-type-aliases.cpp.execution new file mode 100644 index 000000000..3122e6030 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-fixed-type-aliases.cpp.execution @@ -0,0 +1,4 @@ +true +false +"test.exe" +true diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-fixed-type-aliases.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-float-literals.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-float-literals.cpp.execution new file mode 100644 index 000000000..6b15b12bc --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-float-literals.cpp.execution @@ -0,0 +1,72 @@ +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-float-literals.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-float-literals.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-forwarding.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-forwarding.cpp.execution new file mode 100644 index 000000000..952feac3b --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-forwarding.cpp.execution @@ -0,0 +1,12 @@ ++X 1 ++X 2 +copy X 1 +copy X 2 +copy X 1 +move X 2 ++X 3 ++X 4 +copy X 3 +copy X 4 +move X 3 +move X 4 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-forwarding.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-forwarding.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-for-each.cpp.execution new file mode 100644 index 000000000..728fbcc8f --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-for-each.cpp.execution @@ -0,0 +1,2 @@ +hello-ish maybe +2022-ish maybe diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-for-each.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-and-std-ranges-for-each.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution new file mode 100644 index 000000000..e9d6a083f --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2023 +hello-ish +2023-ish diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-pointer-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution new file mode 100644 index 000000000..137aaec33 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-function-expression-with-repeated-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-hello.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-hello.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-increment-decrement.cpp.execution new file mode 100644 index 000000000..6f42aeb32 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-increment-decrement.cpp.execution @@ -0,0 +1,2 @@ +12234 +12234 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-increment-decrement.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-increment-decrement.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution new file mode 100644 index 000000000..e16104fe5 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.execution @@ -0,0 +1 @@ +Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3-contract-violation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3.cpp.execution new file mode 100644 index 000000000..b261dd86c --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3.cpp.execution @@ -0,0 +1 @@ +>> [xyzzy] diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-initialization-safety-3.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-templates.cpp.execution new file mode 100644 index 000000000..03cdf50b7 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-templates.cpp.execution @@ -0,0 +1,8 @@ +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-templates.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-templates.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values-2.cpp.execution new file mode 100644 index 000000000..8372eadca --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values-2.cpp.execution @@ -0,0 +1,5 @@ +i is between 11 and 20 +less than 20 +i is between 10 and 30 +v is empty +v is empty diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values-2.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values.cpp.execution new file mode 100644 index 000000000..e7130e0f8 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values.cpp.execution @@ -0,0 +1,12 @@ +rev dodgson +(no match) +the answer +zero +plugh +zero +1 or 2 +1 or 2 +3 +integer -42 +xyzzy +(no match) diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-values.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-inspect-with-typeof-of-template-arg-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..984a60a83 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-example-three-loops.cpp.execution @@ -0,0 +1,7 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution new file mode 100644 index 000000000..05961867a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.execution @@ -0,0 +1,5 @@ +1 42 +2 84 +3 168 +4 336 +5 672 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-intro-for-with-counter-include-last.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution new file mode 100644 index 000000000..f4dd62312 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.execution @@ -0,0 +1 @@ +sending error to my framework... [dynamic null dereference attempt detected] diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-and-null-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution new file mode 100644 index 000000000..7ee4d37b2 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.execution @@ -0,0 +1 @@ +>> 42 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-lifetime-safety-pointer-init-4.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-multiple-return-values.cpp.execution new file mode 100644 index 000000000..b3fc65a7c --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-multiple-return-values.cpp.execution @@ -0,0 +1,2 @@ +a is 10 +b is xyzzy diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-multiple-return-values.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-out-destruction.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-out-destruction.cpp.execution new file mode 100644 index 000000000..df8e3e4ff --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-out-destruction.cpp.execution @@ -0,0 +1,21 @@ +enter main +enter f00 +enter f01 ++X 1 +exit f01 +-X 1 +exit f00 + +enter f10 +enter f11 +enter f12 +enter f13 +enter f14 ++X 2 +exit f14 +exit f13 +exit f12 +-X 2 +exit f11 +exit f10 +exit main diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-out-destruction.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-out-destruction.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-generic-out.cpp.execution new file mode 100644 index 000000000..982a789cf --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-generic-out.cpp.execution @@ -0,0 +1,2 @@ +42 +exxxx diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-generic-out.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-with-forward.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing-with-forward.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-parameter-passing.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-postexpression-with-capture.cpp.execution new file mode 100644 index 000000000..a17035eda --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-postexpression-with-capture.cpp.execution @@ -0,0 +1,2 @@ +xyzzy and plugh +xyzzyplugh diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-postexpression-with-capture.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-postfix-expression-custom-formatting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-string-interpolation.cpp.execution new file mode 100644 index 000000000..eebb290a9 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-string-interpolation.cpp.execution @@ -0,0 +1,17 @@ +a = 2, b = (empty) +a^2 + b = 46 +sv = my string_view +osv = (empty) +osv = string literal bound to optional string_view +var = (empty) +var = abracadabra +var = 2.718280 +mypair = (12, 3.400000) +tup1 = (12) +tup2 = (12, 3.400000) +tup3 = (12, 3.400000, 456) +p = (first, (empty)) +t = (3.140000, (empty), (empty)) +vv = 0 +vv = (1, 2.300000) +custom = (customize me - no cpp2::to_string overload exists for this type) diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-string-interpolation.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-string-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-test-parens.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-test-parens.cpp.execution new file mode 100644 index 000000000..59967f29d --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-test-parens.cpp.execution @@ -0,0 +1,3 @@ +11 +12 +13*14 is 182 diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-test-parens.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-test-parens.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-type-safety-1.cpp.execution new file mode 100644 index 000000000..f1a0d084e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-type-safety-1.cpp.execution @@ -0,0 +1,6 @@ +1.1 is int? false +1 is int? true + +s* is Shape? true +s* is Circle? true +s* is Square? false diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-type-safety-1.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution new file mode 100644 index 000000000..dec75369f --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.execution @@ -0,0 +1,2 @@ +rain +rain diff --git a/regression-tests/test-results/gcc-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/gcc-14-c++2b/mixed-ufcs-multiple-template-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-expected-not-null.cpp.execution similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-expected-not-null.cpp.execution rename to regression-tests/test-results/gcc-14-c++2b/pure2-assert-expected-not-null.cpp.execution diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-expected-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-optional-not-null.cpp.execution new file mode 100644 index 000000000..c6aeba0fd --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-optional-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-optional-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution new file mode 100644 index 000000000..85aafbe6a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-shared-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution new file mode 100644 index 000000000..af633d171 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-assert-unique-ptr-not-null.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bounds-safety-span.cpp.execution new file mode 100644 index 000000000..3a0304fa2 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-bounds-safety-span.cpp.execution @@ -0,0 +1,3 @@ +>> decorated +>> hello +>> world diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bounds-safety-span.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-break-continue.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-break-continue.cpp.execution new file mode 100644 index 000000000..c8af55771 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-break-continue.cpp.execution @@ -0,0 +1,26 @@ +while_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +while_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +while_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +while_break_outer: + 00 inner 01 + +do_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +do_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +do_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +do_break_outer: + 00 inner 01 + +for_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +for_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +for_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +for_break_outer: + 00 inner 01 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-break-continue.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-break-continue.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-assign-expression-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-discard-precedence.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-empty-index.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-empty-index.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-indexed-call.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-indexed-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-max-munch.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-max-munch.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution new file mode 100644 index 000000000..566837e51 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.execution @@ -0,0 +1,2 @@ +(out this, that) +(out this, that) diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-memberwise-base-assignment.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-function-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-non-local-initialization.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-optional-template-argument-list.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-template-argument.cpp.execution new file mode 100644 index 000000000..c508d5366 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-template-argument.cpp.execution @@ -0,0 +1 @@ +false diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-template-argument.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution new file mode 100644 index 000000000..0e41b7819 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.execution @@ -0,0 +1,4 @@ +0123456789 +9 +0123456789 +9 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-name-lookup.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-noexcept.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-ufcs-sfinae.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-unbraced-function-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-variable-template.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-bugfix-for-variable-template.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-chained-comparisons.cpp.execution new file mode 100644 index 000000000..b41a1bf75 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-chained-comparisons.cpp.execution @@ -0,0 +1,27 @@ +0 0 0: true false false +0 0 1: false false false +0 0 2: false false false +0 1 0: false false false +0 1 1: false true false +0 1 2: false true false +0 2 0: false false false +0 2 1: false false false +0 2 2: false true false +1 0 0: false false false +1 0 1: false false false +1 0 2: false false false +1 1 0: false false true +1 1 1: true false false +1 1 2: false false false +1 2 0: false false false +1 2 1: false false false +1 2 2: false true false +2 0 0: false false false +2 0 1: false false false +2 0 2: false false false +2 1 0: false false true +2 1 1: false false false +2 1 2: false false false +2 2 0: false false true +2 2 1: false false true +2 2 2: true false false diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-chained-comparisons.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-concept-definition.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-concept-definition.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-concept-definition.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-concept-definition.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-contracts.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-contracts.cpp.execution new file mode 100644 index 000000000..e8a01cd98 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-contracts.cpp.execution @@ -0,0 +1,3 @@ +1 +2 +4 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-contracts.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-contracts.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution new file mode 100644 index 000000000..9ff824547 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.execution @@ -0,0 +1 @@ +less \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-defaulted-comparisons-and-final-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-enum.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-enum.cpp.execution new file mode 100644 index 000000000..6d9a33c28 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-enum.cpp.execution @@ -0,0 +1,29 @@ +x.to_string() is clubs +x2.to_string() is clubs +with if else: clubs +with inspect: clubs + +file_attributes::cached.get_raw_value() is 1 +file_attributes::current.get_raw_value() is 2 +file_attributes::obsolete.get_raw_value() is 4 +file_attributes::cached_and_current.get_raw_value() is 3 +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (cached) +f2 is (cached) +f2 is (none) +f2 is (cached) +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (f2) is true +f2 is (f ) is true + +f is (cached, current, obsolete, cached_and_current) +f2 is (cached, current, cached_and_current) +f. get_raw_value() is 7 +f2.get_raw_value() is 3 +f == f2 is false +f is (f2) is false +f2 is (f ) is false +(f & f2) == f2 is true +inspecting f: includes all f2's flags ('cached' and 'current') diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-enum.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-enum.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-for-loop-range-with-lambda.cpp.execution new file mode 100644 index 000000000..19b3a90b2 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-for-loop-range-with-lambda.cpp.execution @@ -0,0 +1 @@ +12345123451234512345 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-for-loop-range-with-lambda.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-forward-return.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-forward-return.cpp.execution new file mode 100644 index 000000000..f259f2362 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-forward-return.cpp.execution @@ -0,0 +1,2 @@ +4 +42 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-forward-return.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-forward-return.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-function-multiple-forward-arguments.cpp.execution new file mode 100644 index 000000000..8baef1b4a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-function-multiple-forward-arguments.cpp.execution @@ -0,0 +1 @@ +abc diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-function-multiple-forward-arguments.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-hello.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-hello.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-hello.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-initialization-safety-with-else-if.cpp.execution new file mode 100644 index 000000000..d00491fd7 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-initialization-safety-with-else-if.cpp.execution @@ -0,0 +1 @@ +1 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-initialization-safety-with-else-if.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution new file mode 100644 index 000000000..fd5a6cdff --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int or string + variant value is not an int or string + any value is "xyzzy" + optional value is not an int or string + int value is integer 42 + variant value is integer 1 + any value is integer 2 + optional value is integer 3 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution new file mode 100644 index 000000000..3cd874b4e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.execution @@ -0,0 +1,3 @@ + syzygy value is not an int + 1 value is 1 + 1.100000 value is not an int diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-expression-with-as-in-generic-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a5cbcefe9 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.execution @@ -0,0 +1,11 @@ + +All these cases satisfy "matches std::string" + +variant + ... matches std::string + +string + ... matches std::string + +optional + ... matches std::string diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-fallback-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a2df8769d --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution @@ -0,0 +1,17 @@ + +All these cases satisfy "VOYDE AND EMPTIE" + +unique_ptr + ... VOYDE AND EMPTIE + +vector::iterator + ... VOYDE AND EMPTIE + +variant + ... VOYDE AND EMPTIE + +any + ... VOYDE AND EMPTIE + +optional + ... VOYDE AND EMPTIE diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-interpolation.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-interpolation.cpp.execution new file mode 100644 index 000000000..850cfc6bf --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-interpolation.cpp.execution @@ -0,0 +1,12 @@ +g0g0g +0g0g +0g0 +00 +"0" +"0 +" + +pl(ug$h +0pl(ug$h +Dog kennel color mauve price 3.14 in stock = true +Dog kennel color mauve price 3.14 in stock = true diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-interpolation.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-hello-2022.cpp.execution new file mode 100644 index 000000000..8e8c5ee29 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-hello-2022.cpp.execution @@ -0,0 +1,2 @@ +>> [hello] - length 7 +>> [2022] - length 6 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-hello-2022.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..c218d85df --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-three-loops.cpp.execution @@ -0,0 +1,8 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] +>> end of program diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-free-functions-predicate.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-free-functions-predicate.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-free-functions-predicate.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-unnamed-predicates.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-unnamed-predicates.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-unnamed-predicates.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-variable-and-value.cpp.execution new file mode 100644 index 000000000..a9bc0680a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-variable-and-value.cpp.execution @@ -0,0 +1,9 @@ +3.14: unknown +42: 42 +WithOp(): unknown +WithGenOp(): unknown +Cmp(): comparable +std::string("text"): text +"text": text +std::string_view("text"): text +:std::vector = ('t','e','x','t','\0'): unknown diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-is-with-variable-and-value.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-last-use.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-last-use.cpp.execution new file mode 100644 index 000000000..4632e068d --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-last-use.cpp.execution @@ -0,0 +1 @@ +123456 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-last-use.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-last-use.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution new file mode 100644 index 000000000..871727de1 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.execution @@ -0,0 +1 @@ +84 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-look-up-parameter-across-unnamed-function.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-main-args.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-main-args.cpp.execution new file mode 100644 index 000000000..bd992e432 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-main-args.cpp.execution @@ -0,0 +1,2 @@ +args.argc is 1 +args.argv[0] is test.exe diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-main-args.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-main-args.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-more-wildcards.cpp.execution new file mode 100644 index 000000000..e37d6cb21 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-more-wildcards.cpp.execution @@ -0,0 +1,2 @@ +yes, less +yes, always diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-more-wildcards.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-more-wildcards.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-print.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-print.cpp.execution new file mode 100644 index 000000000..4e4b4573d --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-print.cpp.execution @@ -0,0 +1,2 @@ +43 +forty-and-three diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-print.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-print.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution new file mode 100644 index 000000000..c48e2bd60 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.execution @@ -0,0 +1,17 @@ +this is a string +raw string without interpolation +this is raw string literal + +that can last for multiple + +lines +this is raw string literal +that can last for multiple +lines +42 R"(this can be added too)" +calculations like m["one"] + m["two"] = 3 also works +at the beginning of the line!!! + + + 4242 +1.2.0.42 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-raw-string-literal-and-interpolation.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-repeated-call.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-repeated-call.cpp.execution new file mode 100644 index 000000000..d81cc0710 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-repeated-call.cpp.execution @@ -0,0 +1 @@ +42 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-repeated-call.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-repeated-call.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-requires-clauses.cpp.execution new file mode 100644 index 000000000..105d7d9ad --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-requires-clauses.cpp.execution @@ -0,0 +1 @@ +100 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-requires-clauses.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-requires-clauses.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-return-tuple-operator.cpp.execution new file mode 100644 index 000000000..a3b7f9a55 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-return-tuple-operator.cpp.execution @@ -0,0 +1,3 @@ +12 , 34 +23 , 45 +34 , 56 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-return-tuple-operator.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-statement-scope-parameters.cpp.execution new file mode 100644 index 000000000..6fe5c7f6a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-statement-scope-parameters.cpp.execution @@ -0,0 +1,2 @@ +42 +43 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-statement-scope-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-stdio-with-raii.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-stdio-with-raii.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-stdio.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-stdio.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-stdio.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-stdio.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution new file mode 100644 index 000000000..b8626c4cf --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution @@ -0,0 +1 @@ +4 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-synthesize-rightshift-and-rightshifteq.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-template-parameter-lists.cpp.execution new file mode 100644 index 000000000..2861a7a20 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-template-parameter-lists.cpp.execution @@ -0,0 +1,4 @@ +f1: 2 +f2: 4 +f3: 6 +f4: 8 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-template-parameter-lists.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-trailing-commas.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-trailing-commas.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-trailing-commas.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-type-and-namespace-aliases.cpp.execution new file mode 100644 index 000000000..9f037f474 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-type-and-namespace-aliases.cpp.execution @@ -0,0 +1,2 @@ +xyzzy +plugh diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-type-and-namespace-aliases.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-1.cpp.execution new file mode 100644 index 000000000..d1aa6265a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-1.cpp.execution @@ -0,0 +1,9 @@ + double is int? false + variant is int? false + any is int? false + optional is int? false + + int is int? true + variant is int? true + any is int? true + optional is int? true diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-1.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-1.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution new file mode 100644 index 000000000..7045a6e79 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int + variant value is not an int + any value is not an int + optional value is not an int + int value is 42 + variant value is 1 + any value is 2 + optional value is 3 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-type-safety-2-with-inspect-expression.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-basics.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-basics.cpp.execution new file mode 100644 index 000000000..96b31fc42 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-basics.cpp.execution @@ -0,0 +1,27 @@ +myclass: implicit from int + data: 1, more: 504 +N::myclass::f with 53 +N::myclass::nested::g +f1: 2 +f2: 4 +f3: 6 +f4: 8 +myclass: explicit from string + data: 99, more: abracadabra +myclass: default + data: 504, more: 3.141590 +myclass: from int and string + data: 77, more: hair1 plugh +x's state before assignments: data: 1, more: 504 +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: destructor +myclass: destructor +myclass: destructor +myclass: destructor diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-basics.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-basics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-down-upcast.cpp.execution new file mode 100644 index 000000000..20751af06 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-down-upcast.cpp.execution @@ -0,0 +1,24 @@ +const foo +const foo +const foo +const foo +foo +foo +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B mut: 0.000000 +Call B mut: 0.000000 +Call A mut: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A mut: 0 +Call B mut: 0.000000 +Call A mut: 0 diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-down-upcast.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-inheritance.cpp.execution new file mode 100644 index 000000000..809430aaa --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-inheritance.cpp.execution @@ -0,0 +1,5 @@ +Parsnip checks in for the day's shift +printing: Parsnip lives at 123 Main St. +-> [vcall: make_speak] Parsnip cracks a few jokes with a coworker +-> [vcall: do_work] Parsnip carries some half-tonne crates of Fe2O3 to cold storage +Tired but satisfied after another successful day, Parsnip checks out and goes home to their family diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-inheritance.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-inheritance.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-order-independence-and-nesting.cpp.execution new file mode 100644 index 000000000..cc716cc8c --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-order-independence-and-nesting.cpp.execution @@ -0,0 +1,5 @@ +made a safely initialized cycle +leaving call to 'why(5)' +leaving call to 'why(3)' +leaving call to 'why(1)' +hallo welt diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-order-independence-and-nesting.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution new file mode 100644 index 000000000..54b3aab09 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less more less diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-ordering-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution new file mode 100644 index 000000000..fc5a23bde --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-1-provide-everything.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution new file mode 100644 index 000000000..7cbf0f869 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - copy mv-assign [ Clara | 123 Ford Dr.(AC) ] <- [ | ] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution new file mode 100644 index 000000000..541b2a0d9 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution new file mode 100644 index 000000000..24d4e763a --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution new file mode 100644 index 000000000..c387c0371 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-that-parameters.cpp.execution new file mode 100644 index 000000000..abd49e623 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-that-parameters.cpp.execution @@ -0,0 +1,7 @@ +name 'Henry', addr '123 Ford Dr.' +----- +name 'Henry', addr '123 Ford Dr.' +name 'Henry', addr '123 Ford Dr.' +----- +name '', addr '' +name 'Henry', addr '123 Ford Dr.' diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-that-parameters.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution new file mode 100644 index 000000000..daee7bf51 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less less less \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-types-value-types-via-meta-functions.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-ufcs-member-access-and-chaining.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-union.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-union.cpp.execution new file mode 100644 index 000000000..e52daad8e --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-union.cpp.execution @@ -0,0 +1,4 @@ +sizeof(x) - alignof(x) == max(sizeof(fields)) is true +(not a name) +xyz +42 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-union.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-union.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-variadics.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-variadics.cpp.execution new file mode 100644 index 000000000..53bc692f9 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-variadics.cpp.execution @@ -0,0 +1,7 @@ +xyz +plu +abr +3.14word-1500 +first all() returned false +second all() returned true +sum of (1, 2, 3, 100) is: 106 \ No newline at end of file diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-variadics.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-variadics.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-various-string-literals.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-various-string-literals.cpp.output b/regression-tests/test-results/gcc-14-c++2b/pure2-various-string-literals.cpp.output new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/gcc-14-c++2b/run-tests-gcc-13.sh b/regression-tests/test-results/gcc-14-c++2b/run-tests-gcc-13.sh new file mode 100644 index 000000000..95f3efcda --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/run-tests-gcc-13.sh @@ -0,0 +1,24 @@ +# This is intended to be run in the /test-results/gcc-13 subdirectory +# in a Linux shell with gcc 13 installed +# +cp ../*.cpp . +rm -f *.output +count=0 +exe_count=0 +g++ --version > gcc-version.output 2>&1 +for f in *.cpp +do + let count=count+1 + printf "[%s] Starting gcc 13 %s\n" "$count" "$f" + g++ -I../../../include -std=c++2b -pthread -Wold-style-cast -Wunused-parameter -o test.exe $f > $f.output 2>&1 + rm -f $f + if test -f "test.exe"; then + let exe_count=exe_count+1 + printf " Starting executable\n" + ./test.exe > $f.execution 2>&1 + rm -f test.exe + fi +done +rm -f *.obj *.exp *.lib +printf "\nDone: %s .cpp tests compiled\n" "$count" +printf "\n %s .cpp executables generated and run\n" "$exe_count" diff --git a/regression-tests/test-results/gcc-14-c++2b/xyzzy b/regression-tests/test-results/gcc-14-c++2b/xyzzy new file mode 100644 index 000000000..805bcb853 --- /dev/null +++ b/regression-tests/test-results/gcc-14-c++2b/xyzzy @@ -0,0 +1 @@ +Hello Fred with UFCS! \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/MSVC-version.output b/regression-tests/test-results/msvc-2022-c++20/MSVC-version.output similarity index 100% rename from regression-tests/test-results/msvc-2022/MSVC-version.output rename to regression-tests/test-results/msvc-2022-c++20/MSVC-version.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-allcpp1-hello.cpp.execution new file mode 100644 index 000000000..802992c42 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-allcpp1-hello.cpp.execution @@ -0,0 +1 @@ +Hello world diff --git a/regression-tests/test-results/msvc-2022/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-allcpp1-hello.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-allcpp1-hello.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-allcpp1-hello.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-as-for-variant-20-types.cpp.execution new file mode 100644 index 000000000..5e2c9d82e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-as-for-variant-20-types.cpp.execution @@ -0,0 +1,60 @@ +v as X< 0> = 0 +v as X< 1> = 1 +v as X< 2> = 2 +v as X< 3> = 3 +v as X< 4> = 4 +v as X< 5> = 5 +v as X< 6> = 6 +v as X< 7> = 7 +v as X< 8> = 8 +v as X< 9> = 9 +v as X<10> = 10 +v as X<11> = 11 +v as X<12> = 12 +v as X<13> = 13 +v as X<14> = 14 +v as X<15> = 15 +v as X<16> = 16 +v as X<17> = 17 +v as X<18> = 18 +v as X<19> = 19 +as_const(v) as X< 0> = 0 +as_const(v) as X< 1> = 1 +as_const(v) as X< 2> = 2 +as_const(v) as X< 3> = 3 +as_const(v) as X< 4> = 4 +as_const(v) as X< 5> = 5 +as_const(v) as X< 6> = 6 +as_const(v) as X< 7> = 7 +as_const(v) as X< 8> = 8 +as_const(v) as X< 9> = 9 +as_const(v) as X<10> = 10 +as_const(v) as X<11> = 11 +as_const(v) as X<12> = 12 +as_const(v) as X<13> = 13 +as_const(v) as X<14> = 14 +as_const(v) as X<15> = 15 +as_const(v) as X<16> = 16 +as_const(v) as X<17> = 17 +as_const(v) as X<18> = 18 +as_const(v) as X<19> = 19 +move(v) as X< 0> = 0 +move(v) as X< 1> = 1 +move(v) as X< 2> = 2 +move(v) as X< 3> = 3 +move(v) as X< 4> = 4 +move(v) as X< 5> = 5 +move(v) as X< 6> = 6 +move(v) as X< 7> = 7 +move(v) as X< 8> = 8 +move(v) as X< 9> = 9 +move(v) as X<10> = 10 +move(v) as X<11> = 11 +move(v) as X<12> = 12 +move(v) as X<13> = 13 +move(v) as X<14> = 14 +move(v) as X<15> = 15 +move(v) as X<16> = 16 +move(v) as X<17> = 17 +move(v) as X<18> = 18 +move(v) as X<19> = 19 diff --git a/regression-tests/test-results/msvc-2022/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-as-for-variant-20-types.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-as-for-variant-20-types.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-as-for-variant-20-types.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-check.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-check.cpp.execution new file mode 100644 index 000000000..8474b9159 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-check.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-check.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-check.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-check.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bounds-check.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert-2.cpp.execution new file mode 100644 index 000000000..6330ca570 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert-2.cpp.execution @@ -0,0 +1,5 @@ +1 +44 +45 +46 +5 diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert-2.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert-2.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert-2.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert.cpp.execution new file mode 100644 index 000000000..776dc1460 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation diff --git a/regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bounds-safety-with-assert.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bounds-safety-with-assert.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-literal-as-nttp.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-literal-as-nttp.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-literal-as-nttp.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-ufcs-non-local.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-bugfix-for-ufcs-non-local.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-bugfix-for-ufcs-non-local.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-captures-in-expressions-and-postconditions.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-captures-in-expressions-and-postconditions.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-captures-in-expressions-and-postconditions.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-fixed-type-aliases.cpp.execution new file mode 100644 index 000000000..3122e6030 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-fixed-type-aliases.cpp.execution @@ -0,0 +1,4 @@ +true +false +"test.exe" +true diff --git a/regression-tests/test-results/msvc-2022/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-fixed-type-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-fixed-type-aliases.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-fixed-type-aliases.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-float-literals.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-float-literals.cpp.execution new file mode 100644 index 000000000..6b15b12bc --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-float-literals.cpp.execution @@ -0,0 +1,72 @@ +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 diff --git a/regression-tests/test-results/msvc-2022/mixed-float-literals.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-float-literals.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-float-literals.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-float-literals.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-forwarding.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-forwarding.cpp.execution new file mode 100644 index 000000000..952feac3b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-forwarding.cpp.execution @@ -0,0 +1,12 @@ ++X 1 ++X 2 +copy X 1 +copy X 2 +copy X 1 +move X 2 ++X 3 ++X 4 +copy X 3 +copy X 4 +move X 3 +move X 4 diff --git a/regression-tests/test-results/msvc-2022/mixed-forwarding.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-forwarding.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-forwarding.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-forwarding.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-for-each.cpp.execution new file mode 100644 index 000000000..728fbcc8f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-for-each.cpp.execution @@ -0,0 +1,2 @@ +hello-ish maybe +2022-ish maybe diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-for-each.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-for-each.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-and-std-ranges-for-each.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-and-std-ranges-for-each.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-pointer-capture.cpp.execution new file mode 100644 index 000000000..e9d6a083f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-pointer-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2023 +hello-ish +2023-ish diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-pointer-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-with-pointer-capture.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-pointer-capture.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-repeated-capture.cpp.execution new file mode 100644 index 000000000..137aaec33 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-repeated-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-repeated-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-function-expression-with-repeated-capture.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-function-expression-with-repeated-capture.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/msvc-2022/mixed-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-hello.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-hello.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-hello.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-increment-decrement.cpp.execution new file mode 100644 index 000000000..6f42aeb32 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-increment-decrement.cpp.execution @@ -0,0 +1,2 @@ +12234 +12234 diff --git a/regression-tests/test-results/msvc-2022/mixed-increment-decrement.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-increment-decrement.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-increment-decrement.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-increment-decrement.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution new file mode 100644 index 000000000..e16104fe5 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3-contract-violation.cpp.execution @@ -0,0 +1 @@ +Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/msvc-2022/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3-contract-violation.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-initialization-safety-3-contract-violation.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3-contract-violation.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3.cpp.execution new file mode 100644 index 000000000..b261dd86c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3.cpp.execution @@ -0,0 +1 @@ +>> [xyzzy] diff --git a/regression-tests/test-results/msvc-2022/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-initialization-safety-3.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-initialization-safety-3.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-templates.cpp.execution new file mode 100644 index 000000000..03cdf50b7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-templates.cpp.execution @@ -0,0 +1,8 @@ +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-templates.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-templates.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-templates.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-inspect-templates.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values-2.cpp.execution new file mode 100644 index 000000000..8372eadca --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values-2.cpp.execution @@ -0,0 +1,5 @@ +i is between 11 and 20 +less than 20 +i is between 10 and 30 +v is empty +v is empty diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values-2.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-values-2.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values-2.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values.cpp.execution new file mode 100644 index 000000000..e7130e0f8 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values.cpp.execution @@ -0,0 +1,12 @@ +rev dodgson +(no match) +the answer +zero +plugh +zero +1 or 2 +1 or 2 +3 +integer -42 +xyzzy +(no match) diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-values.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-values.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-inspect-values.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-inspect-with-typeof-of-template-arg-list.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-inspect-with-typeof-of-template-arg-list.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..984a60a83 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-example-three-loops.cpp.execution @@ -0,0 +1,7 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] diff --git a/regression-tests/test-results/msvc-2022/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-intro-example-three-loops.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-for-with-counter-include-last.cpp.execution new file mode 100644 index 000000000..05961867a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-for-with-counter-include-last.cpp.execution @@ -0,0 +1,5 @@ +1 42 +2 84 +3 168 +4 336 +5 672 diff --git a/regression-tests/test-results/msvc-2022/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-intro-for-with-counter-include-last.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-intro-for-with-counter-include-last.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-intro-for-with-counter-include-last.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution new file mode 100644 index 000000000..f4dd62312 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-and-null-contracts.cpp.execution @@ -0,0 +1 @@ +sending error to my framework... [dynamic null dereference attempt detected] diff --git a/regression-tests/test-results/msvc-2022/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-lifetime-safety-and-null-contracts.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-and-null-contracts.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution new file mode 100644 index 000000000..7ee4d37b2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-pointer-init-4.cpp.execution @@ -0,0 +1 @@ +>> 42 diff --git a/regression-tests/test-results/msvc-2022/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-lifetime-safety-pointer-init-4.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-lifetime-safety-pointer-init-4.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-multiple-return-values.cpp.execution new file mode 100644 index 000000000..b3fc65a7c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-multiple-return-values.cpp.execution @@ -0,0 +1,2 @@ +a is 10 +b is xyzzy diff --git a/regression-tests/test-results/msvc-2022/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-multiple-return-values.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-multiple-return-values.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-multiple-return-values.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-out-destruction.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-out-destruction.cpp.execution new file mode 100644 index 000000000..df8e3e4ff --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-out-destruction.cpp.execution @@ -0,0 +1,21 @@ +enter main +enter f00 +enter f01 ++X 1 +exit f01 +-X 1 +exit f00 + +enter f10 +enter f11 +enter f12 +enter f13 +enter f14 ++X 2 +exit f14 +exit f13 +exit f12 +-X 2 +exit f11 +exit f10 +exit main diff --git a/regression-tests/test-results/msvc-2022/mixed-out-destruction.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-out-destruction.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-out-destruction.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-out-destruction.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-generic-out.cpp.execution new file mode 100644 index 000000000..982a789cf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-generic-out.cpp.execution @@ -0,0 +1,2 @@ +42 +exxxx diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-generic-out.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing-generic-out.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-generic-out.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-with-forward.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-with-forward.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing-with-forward.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing-with-forward.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-parameter-passing.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-parameter-passing.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-parameter-passing.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-postexpression-with-capture.cpp.execution new file mode 100644 index 000000000..a17035eda --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-postexpression-with-capture.cpp.execution @@ -0,0 +1,2 @@ +xyzzy and plugh +xyzzyplugh diff --git a/regression-tests/test-results/msvc-2022/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-postexpression-with-capture.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-postexpression-with-capture.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-postexpression-with-capture.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-postfix-expression-custom-formatting.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-postfix-expression-custom-formatting.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-postfix-expression-custom-formatting.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-postfix-expression-custom-formatting.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-string-interpolation.cpp.execution new file mode 100644 index 000000000..eebb290a9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-string-interpolation.cpp.execution @@ -0,0 +1,17 @@ +a = 2, b = (empty) +a^2 + b = 46 +sv = my string_view +osv = (empty) +osv = string literal bound to optional string_view +var = (empty) +var = abracadabra +var = 2.718280 +mypair = (12, 3.400000) +tup1 = (12) +tup2 = (12, 3.400000) +tup3 = (12, 3.400000, 456) +p = (first, (empty)) +t = (3.140000, (empty), (empty)) +vv = 0 +vv = (1, 2.300000) +custom = (customize me - no cpp2::to_string overload exists for this type) diff --git a/regression-tests/test-results/msvc-2022/mixed-string-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-string-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-string-interpolation.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-string-interpolation.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-test-parens.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-test-parens.cpp.execution new file mode 100644 index 000000000..59967f29d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-test-parens.cpp.execution @@ -0,0 +1,3 @@ +11 +12 +13*14 is 182 diff --git a/regression-tests/test-results/msvc-2022/mixed-test-parens.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-test-parens.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-test-parens.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-test-parens.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-type-safety-1.cpp.execution new file mode 100644 index 000000000..f1a0d084e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-type-safety-1.cpp.execution @@ -0,0 +1,6 @@ +1.1 is int? false +1 is int? true + +s* is Shape? true +s* is Circle? true +s* is Square? false diff --git a/regression-tests/test-results/msvc-2022/mixed-type-safety-1.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-type-safety-1.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-type-safety-1.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution new file mode 100644 index 000000000..dec75369f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/mixed-ufcs-multiple-template-arguments.cpp.execution @@ -0,0 +1,2 @@ +rain +rain diff --git a/regression-tests/test-results/msvc-2022/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++20/mixed-ufcs-multiple-template-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/mixed-ufcs-multiple-template-arguments.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/mixed-ufcs-multiple-template-arguments.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.execution new file mode 100644 index 000000000..8887aa1aa --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::expected has an unexpected value diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.output new file mode 100644 index 000000000..f2e012a95 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-expected-not-null.cpp.output @@ -0,0 +1,20 @@ +pure2-assert-expected-not-null.cpp +pure2-assert-expected-not-null.cpp2(7): error C2039: 'expected': is not a member of 'std' +predefined C++ types (compiler internal)(348): note: see declaration of 'std' +pure2-assert-expected-not-null.cpp2(7): error C2062: type 'int' unexpected +pure2-assert-expected-not-null.cpp2(7): error C2143: syntax error: missing ';' before '{' +pure2-assert-expected-not-null.cpp2(7): error C2143: syntax error: missing ';' before '}' +pure2-assert-expected-not-null.cpp2(9): error C2065: 'ex': undeclared identifier +pure2-assert-expected-not-null.cpp2(9): error C2672: 'cpp2::impl::assert_not_null': no matching overloaded function found +..\..\..\include\cpp2util.h(632): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&)' +pure2-assert-expected-not-null.cpp2(14): error C2039: 'expected': is not a member of 'std' +predefined C++ types (compiler internal)(348): note: see declaration of 'std' +pure2-assert-expected-not-null.cpp2(14): error C2062: type 'int' unexpected +pure2-assert-expected-not-null.cpp2(14): error C2143: syntax error: missing ';' before '{' +pure2-assert-expected-not-null.cpp2(14): error C2039: 'unexpected': is not a member of 'std' +predefined C++ types (compiler internal)(348): note: see declaration of 'std' +pure2-assert-expected-not-null.cpp2(14): error C3861: 'unexpected': identifier not found +pure2-assert-expected-not-null.cpp2(14): error C2143: syntax error: missing ';' before '}' +pure2-assert-expected-not-null.cpp2(15): error C2065: 'ex': undeclared identifier +pure2-assert-expected-not-null.cpp2(15): error C2672: 'cpp2::impl::assert_not_null': no matching overloaded function found +..\..\..\include\cpp2util.h(632): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&)' diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-optional-not-null.cpp.execution new file mode 100644 index 000000000..c6aeba0fd --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-optional-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-optional-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-optional-not-null.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-assert-optional-not-null.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-shared-ptr-not-null.cpp.execution new file mode 100644 index 000000000..85aafbe6a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-shared-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-shared-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-shared-ptr-not-null.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-assert-shared-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-unique-ptr-not-null.cpp.execution new file mode 100644 index 000000000..af633d171 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-unique-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-assert-unique-ptr-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-unique-ptr-not-null.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-assert-unique-ptr-not-null.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bounds-safety-span.cpp.execution new file mode 100644 index 000000000..3a0304fa2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-bounds-safety-span.cpp.execution @@ -0,0 +1,3 @@ +>> decorated +>> hello +>> world diff --git a/regression-tests/test-results/msvc-2022/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bounds-safety-span.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bounds-safety-span.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bounds-safety-span.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-break-continue.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-break-continue.cpp.execution new file mode 100644 index 000000000..c8af55771 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-break-continue.cpp.execution @@ -0,0 +1,26 @@ +while_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +while_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +while_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +while_break_outer: + 00 inner 01 + +do_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +do_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +do_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +do_break_outer: + 00 inner 01 + +for_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +for_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +for_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +for_break_outer: + 00 inner 01 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-break-continue.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-break-continue.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-break-continue.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-break-continue.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-assign-expression-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-assign-expression-list.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-assign-expression-list.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-assign-expression-list.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-discard-precedence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-discard-precedence.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-discard-precedence.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-discard-precedence.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-indexed-call.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-indexed-call.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-indexed-call.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-indexed-call.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-max-munch.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-max-munch.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-max-munch.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-max-munch.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution new file mode 100644 index 000000000..566837e51 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.execution @@ -0,0 +1,2 @@ +(out this, that) +(out this, that) diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-memberwise-base-assignment.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-memberwise-base-assignment.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-function-expression.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-function-expression.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-initialization.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-initialization.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-non-local-initialization.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-non-local-initialization.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-optional-template-argument-list.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-optional-template-argument-list.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-template-argument.cpp.execution new file mode 100644 index 000000000..c508d5366 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-template-argument.cpp.execution @@ -0,0 +1 @@ +false diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-template-argument.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-template-argument.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-template-argument.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution new file mode 100644 index 000000000..0e41b7819 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-arguments.cpp.execution @@ -0,0 +1,4 @@ +0123456789 +9 +0123456789 +9 diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-arguments.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-arguments.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-name-lookup.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-name-lookup.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-noexcept.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-noexcept.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-ufcs-sfinae.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-ufcs-sfinae.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-unbraced-function-expression.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-unbraced-function-expression.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-variable-template.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-variable-template.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-bugfix-for-variable-template.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-bugfix-for-variable-template.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-chained-comparisons.cpp.execution new file mode 100644 index 000000000..b41a1bf75 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-chained-comparisons.cpp.execution @@ -0,0 +1,27 @@ +0 0 0: true false false +0 0 1: false false false +0 0 2: false false false +0 1 0: false false false +0 1 1: false true false +0 1 2: false true false +0 2 0: false false false +0 2 1: false false false +0 2 2: false true false +1 0 0: false false false +1 0 1: false false false +1 0 2: false false false +1 1 0: false false true +1 1 1: true false false +1 1 2: false false false +1 2 0: false false false +1 2 1: false false false +1 2 2: false true false +2 0 0: false false false +2 0 1: false false false +2 0 2: false false false +2 1 0: false false true +2 1 1: false false false +2 1 2: false false false +2 2 0: false false true +2 2 1: false false true +2 2 2: true false false diff --git a/regression-tests/test-results/msvc-2022/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-chained-comparisons.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-chained-comparisons.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-chained-comparisons.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-concept-definition.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-concept-definition.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-concept-definition.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-concept-definition.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-concept-definition.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-concept-definition.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-contracts.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-contracts.cpp.execution new file mode 100644 index 000000000..e8a01cd98 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-contracts.cpp.execution @@ -0,0 +1,3 @@ +1 +2 +4 diff --git a/regression-tests/test-results/msvc-2022/pure2-contracts.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-contracts.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-contracts.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-contracts.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution new file mode 100644 index 000000000..9ff824547 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-defaulted-comparisons-and-final-types.cpp.execution @@ -0,0 +1 @@ +less \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-defaulted-comparisons-and-final-types.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-defaulted-comparisons-and-final-types.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-enum.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-enum.cpp.execution new file mode 100644 index 000000000..6d9a33c28 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-enum.cpp.execution @@ -0,0 +1,29 @@ +x.to_string() is clubs +x2.to_string() is clubs +with if else: clubs +with inspect: clubs + +file_attributes::cached.get_raw_value() is 1 +file_attributes::current.get_raw_value() is 2 +file_attributes::obsolete.get_raw_value() is 4 +file_attributes::cached_and_current.get_raw_value() is 3 +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (cached) +f2 is (cached) +f2 is (none) +f2 is (cached) +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (f2) is true +f2 is (f ) is true + +f is (cached, current, obsolete, cached_and_current) +f2 is (cached, current, cached_and_current) +f. get_raw_value() is 7 +f2.get_raw_value() is 3 +f == f2 is false +f is (f2) is false +f2 is (f ) is false +(f & f2) == f2 is true +inspecting f: includes all f2's flags ('cached' and 'current') diff --git a/regression-tests/test-results/msvc-2022/pure2-enum.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-enum.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-enum.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-enum.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-for-loop-range-with-lambda.cpp.execution new file mode 100644 index 000000000..19b3a90b2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-for-loop-range-with-lambda.cpp.execution @@ -0,0 +1 @@ +12345123451234512345 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-for-loop-range-with-lambda.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-for-loop-range-with-lambda.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-for-loop-range-with-lambda.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-forward-return.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-forward-return.cpp.execution new file mode 100644 index 000000000..f259f2362 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-forward-return.cpp.execution @@ -0,0 +1,2 @@ +4 +42 diff --git a/regression-tests/test-results/msvc-2022/pure2-forward-return.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-forward-return.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-forward-return.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-forward-return.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-function-multiple-forward-arguments.cpp.execution new file mode 100644 index 000000000..8baef1b4a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-function-multiple-forward-arguments.cpp.execution @@ -0,0 +1 @@ +abc diff --git a/regression-tests/test-results/msvc-2022/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-function-multiple-forward-arguments.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-function-multiple-forward-arguments.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-function-multiple-forward-arguments.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/msvc-2022/pure2-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-hello.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-hello.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-hello.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-initialization-safety-with-else-if.cpp.execution new file mode 100644 index 000000000..d00491fd7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-initialization-safety-with-else-if.cpp.execution @@ -0,0 +1 @@ +1 diff --git a/regression-tests/test-results/msvc-2022/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-initialization-safety-with-else-if.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-initialization-safety-with-else-if.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-initialization-safety-with-else-if.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution new file mode 100644 index 000000000..fd5a6cdff --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int or string + variant value is not an int or string + any value is "xyzzy" + optional value is not an int or string + int value is integer 42 + variant value is integer 1 + any value is integer 2 + optional value is integer 3 diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution new file mode 100644 index 000000000..3cd874b4e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.execution @@ -0,0 +1,3 @@ + syzygy value is not an int + 1 value is 1 + 1.100000 value is not an int diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-expression-with-as-in-generic-function.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-inspect-expression-with-as-in-generic-function.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a5cbcefe9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.execution @@ -0,0 +1,11 @@ + +All these cases satisfy "matches std::string" + +variant + ... matches std::string + +string + ... matches std::string + +optional + ... matches std::string diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-fallback-with-variant-any-optional.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-inspect-fallback-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a2df8769d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution @@ -0,0 +1,17 @@ + +All these cases satisfy "VOYDE AND EMPTIE" + +unique_ptr + ... VOYDE AND EMPTIE + +vector::iterator + ... VOYDE AND EMPTIE + +variant + ... VOYDE AND EMPTIE + +any + ... VOYDE AND EMPTIE + +optional + ... VOYDE AND EMPTIE diff --git a/regression-tests/test-results/msvc-2022/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-interpolation.cpp.execution new file mode 100644 index 000000000..850cfc6bf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-interpolation.cpp.execution @@ -0,0 +1,12 @@ +g0g0g +0g0g +0g0 +00 +"0" +"0 +" + +pl(ug$h +0pl(ug$h +Dog kennel color mauve price 3.14 in stock = true +Dog kennel color mauve price 3.14 in stock = true diff --git a/regression-tests/test-results/msvc-2022/pure2-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-interpolation.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-interpolation.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-hello-2022.cpp.execution new file mode 100644 index 000000000..8e8c5ee29 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-hello-2022.cpp.execution @@ -0,0 +1,2 @@ +>> [hello] - length 7 +>> [2022] - length 6 diff --git a/regression-tests/test-results/msvc-2022/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-hello-2022.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-intro-example-hello-2022.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-hello-2022.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..c218d85df --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-three-loops.cpp.execution @@ -0,0 +1,8 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] +>> end of program diff --git a/regression-tests/test-results/msvc-2022/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-three-loops.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-intro-example-three-loops.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-intro-example-three-loops.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-free-functions-predicate.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-free-functions-predicate.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-free-functions-predicate.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-free-functions-predicate.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-is-with-free-functions-predicate.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-unnamed-predicates.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-unnamed-predicates.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-unnamed-predicates.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-unnamed-predicates.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-is-with-unnamed-predicates.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-variable-and-value.cpp.execution new file mode 100644 index 000000000..a9bc0680a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-variable-and-value.cpp.execution @@ -0,0 +1,9 @@ +3.14: unknown +42: 42 +WithOp(): unknown +WithGenOp(): unknown +Cmp(): comparable +std::string("text"): text +"text": text +std::string_view("text"): text +:std::vector = ('t','e','x','t','\0'): unknown diff --git a/regression-tests/test-results/msvc-2022/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-is-with-variable-and-value.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-is-with-variable-and-value.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-is-with-variable-and-value.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-last-use.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-last-use.cpp.execution new file mode 100644 index 000000000..4632e068d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-last-use.cpp.execution @@ -0,0 +1 @@ +123456 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-last-use.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-last-use.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-last-use.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-last-use.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution new file mode 100644 index 000000000..871727de1 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.execution @@ -0,0 +1 @@ +84 diff --git a/regression-tests/test-results/msvc-2022/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-look-up-parameter-across-unnamed-function.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-look-up-parameter-across-unnamed-function.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-main-args.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-main-args.cpp.execution new file mode 100644 index 000000000..bd992e432 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-main-args.cpp.execution @@ -0,0 +1,2 @@ +args.argc is 1 +args.argv[0] is test.exe diff --git a/regression-tests/test-results/msvc-2022/pure2-main-args.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-main-args.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-main-args.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-main-args.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-more-wildcards.cpp.execution new file mode 100644 index 000000000..e37d6cb21 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-more-wildcards.cpp.execution @@ -0,0 +1,2 @@ +yes, less +yes, always diff --git a/regression-tests/test-results/msvc-2022/pure2-more-wildcards.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-more-wildcards.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-more-wildcards.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-more-wildcards.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-print.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-print.cpp.execution new file mode 100644 index 000000000..4e4b4573d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-print.cpp.execution @@ -0,0 +1,2 @@ +43 +forty-and-three diff --git a/regression-tests/test-results/msvc-2022/pure2-print.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-print.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-print.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-print.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution new file mode 100644 index 000000000..c48e2bd60 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-raw-string-literal-and-interpolation.cpp.execution @@ -0,0 +1,17 @@ +this is a string +raw string without interpolation +this is raw string literal + +that can last for multiple + +lines +this is raw string literal +that can last for multiple +lines +42 R"(this can be added too)" +calculations like m["one"] + m["two"] = 3 also works +at the beginning of the line!!! + + + 4242 +1.2.0.42 diff --git a/regression-tests/test-results/msvc-2022/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-raw-string-literal-and-interpolation.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-raw-string-literal-and-interpolation.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-raw-string-literal-and-interpolation.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-repeated-call.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-repeated-call.cpp.execution new file mode 100644 index 000000000..d81cc0710 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-repeated-call.cpp.execution @@ -0,0 +1 @@ +42 diff --git a/regression-tests/test-results/msvc-2022/pure2-repeated-call.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-repeated-call.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-repeated-call.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-repeated-call.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-requires-clauses.cpp.execution new file mode 100644 index 000000000..105d7d9ad --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-requires-clauses.cpp.execution @@ -0,0 +1 @@ +100 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-requires-clauses.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-requires-clauses.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-requires-clauses.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-requires-clauses.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-return-tuple-operator.cpp.execution new file mode 100644 index 000000000..a3b7f9a55 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-return-tuple-operator.cpp.execution @@ -0,0 +1,3 @@ +12 , 34 +23 , 45 +34 , 56 diff --git a/regression-tests/test-results/msvc-2022/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-return-tuple-operator.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-return-tuple-operator.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-return-tuple-operator.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-statement-scope-parameters.cpp.execution new file mode 100644 index 000000000..6fe5c7f6a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-statement-scope-parameters.cpp.execution @@ -0,0 +1,2 @@ +42 +43 diff --git a/regression-tests/test-results/msvc-2022/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-statement-scope-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-statement-scope-parameters.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-statement-scope-parameters.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-stdio-with-raii.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-stdio-with-raii.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-stdio-with-raii.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-stdio-with-raii.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-stdio.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-stdio.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-stdio.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-stdio.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-stdio.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-stdio.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution new file mode 100644 index 000000000..b8626c4cf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution @@ -0,0 +1 @@ +4 diff --git a/regression-tests/test-results/msvc-2022/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-synthesize-rightshift-and-rightshifteq.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-synthesize-rightshift-and-rightshifteq.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-template-parameter-lists.cpp.execution new file mode 100644 index 000000000..2861a7a20 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-template-parameter-lists.cpp.execution @@ -0,0 +1,4 @@ +f1: 2 +f2: 4 +f3: 6 +f4: 8 diff --git a/regression-tests/test-results/msvc-2022/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-template-parameter-lists.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-template-parameter-lists.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-template-parameter-lists.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-trailing-commas.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-trailing-commas.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-trailing-commas.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-trailing-commas.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-trailing-commas.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-type-and-namespace-aliases.cpp.execution new file mode 100644 index 000000000..9f037f474 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-type-and-namespace-aliases.cpp.execution @@ -0,0 +1,2 @@ +xyzzy +plugh diff --git a/regression-tests/test-results/msvc-2022/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-type-and-namespace-aliases.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-and-namespace-aliases.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-type-and-namespace-aliases.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-1.cpp.execution new file mode 100644 index 000000000..d1aa6265a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-1.cpp.execution @@ -0,0 +1,9 @@ + double is int? false + variant is int? false + any is int? false + optional is int? false + + int is int? true + variant is int? true + any is int? true + optional is int? true diff --git a/regression-tests/test-results/msvc-2022/pure2-type-safety-1.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-1.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-safety-1.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-1.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution new file mode 100644 index 000000000..7045a6e79 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-2-with-inspect-expression.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int + variant value is not an int + any value is not an int + optional value is not an int + int value is 42 + variant value is 1 + any value is 2 + optional value is 3 diff --git a/regression-tests/test-results/msvc-2022/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-type-safety-2-with-inspect-expression.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-type-safety-2-with-inspect-expression.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-basics.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-basics.cpp.execution new file mode 100644 index 000000000..96b31fc42 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-basics.cpp.execution @@ -0,0 +1,27 @@ +myclass: implicit from int + data: 1, more: 504 +N::myclass::f with 53 +N::myclass::nested::g +f1: 2 +f2: 4 +f3: 6 +f4: 8 +myclass: explicit from string + data: 99, more: abracadabra +myclass: default + data: 504, more: 3.141590 +myclass: from int and string + data: 77, more: hair1 plugh +x's state before assignments: data: 1, more: 504 +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: destructor +myclass: destructor +myclass: destructor +myclass: destructor diff --git a/regression-tests/test-results/msvc-2022/pure2-types-basics.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-basics.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-basics.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-basics.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-down-upcast.cpp.execution new file mode 100644 index 000000000..20751af06 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-down-upcast.cpp.execution @@ -0,0 +1,24 @@ +const foo +const foo +const foo +const foo +foo +foo +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B mut: 0.000000 +Call B mut: 0.000000 +Call A mut: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A mut: 0 +Call B mut: 0.000000 +Call A mut: 0 diff --git a/regression-tests/test-results/msvc-2022/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-down-upcast.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-down-upcast.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-down-upcast.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-inheritance.cpp.execution new file mode 100644 index 000000000..809430aaa --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-inheritance.cpp.execution @@ -0,0 +1,5 @@ +Parsnip checks in for the day's shift +printing: Parsnip lives at 123 Main St. +-> [vcall: make_speak] Parsnip cracks a few jokes with a coworker +-> [vcall: do_work] Parsnip carries some half-tonne crates of Fe2O3 to cold storage +Tired but satisfied after another successful day, Parsnip checks out and goes home to their family diff --git a/regression-tests/test-results/msvc-2022/pure2-types-inheritance.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-inheritance.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-inheritance.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-inheritance.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-order-independence-and-nesting.cpp.execution new file mode 100644 index 000000000..cc716cc8c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-order-independence-and-nesting.cpp.execution @@ -0,0 +1,5 @@ +made a safely initialized cycle +leaving call to 'why(5)' +leaving call to 'why(3)' +leaving call to 'why(1)' +hallo welt diff --git a/regression-tests/test-results/msvc-2022/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-order-independence-and-nesting.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-order-independence-and-nesting.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-order-independence-and-nesting.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-ordering-via-meta-functions.cpp.execution new file mode 100644 index 000000000..54b3aab09 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-ordering-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less more less diff --git a/regression-tests/test-results/msvc-2022/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-ordering-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-ordering-via-meta-functions.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-ordering-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution new file mode 100644 index 000000000..fc5a23bde --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-1-provide-everything.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-1-provide-everything.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution new file mode 100644 index 000000000..7cbf0f869 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - copy mv-assign [ Clara | 123 Ford Dr.(AC) ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution new file mode 100644 index 000000000..541b2a0d9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution new file mode 100644 index 000000000..24d4e763a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution new file mode 100644 index 000000000..c387c0371 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-that-parameters.cpp.execution new file mode 100644 index 000000000..abd49e623 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-that-parameters.cpp.execution @@ -0,0 +1,7 @@ +name 'Henry', addr '123 Ford Dr.' +----- +name 'Henry', addr '123 Ford Dr.' +name 'Henry', addr '123 Ford Dr.' +----- +name '', addr '' +name 'Henry', addr '123 Ford Dr.' diff --git a/regression-tests/test-results/msvc-2022/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-that-parameters.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-that-parameters.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-that-parameters.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-types-value-types-via-meta-functions.cpp.execution new file mode 100644 index 000000000..daee7bf51 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-types-value-types-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less less less \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-types-value-types-via-meta-functions.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-types-value-types-via-meta-functions.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-types-value-types-via-meta-functions.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-ufcs-member-access-and-chaining.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-ufcs-member-access-and-chaining.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-ufcs-member-access-and-chaining.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-ufcs-member-access-and-chaining.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-union.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-union.cpp.execution new file mode 100644 index 000000000..e52daad8e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-union.cpp.execution @@ -0,0 +1,4 @@ +sizeof(x) - alignof(x) == max(sizeof(fields)) is true +(not a name) +xyz +42 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-union.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-union.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-union.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-union.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-variadics.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-variadics.cpp.execution new file mode 100644 index 000000000..53bc692f9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-variadics.cpp.execution @@ -0,0 +1,7 @@ +xyz +plu +abr +3.14word-1500 +first all() returned false +second all() returned true +sum of (1, 2, 3, 100) is: 106 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022/pure2-variadics.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-variadics.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-variadics.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-variadics.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-various-string-literals.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022/pure2-various-string-literals.cpp.output b/regression-tests/test-results/msvc-2022-c++20/pure2-various-string-literals.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-various-string-literals.cpp.output rename to regression-tests/test-results/msvc-2022-c++20/pure2-various-string-literals.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++20/run-tests-msvc-2022.bat b/regression-tests/test-results/msvc-2022-c++20/run-tests-msvc-2022.bat new file mode 100644 index 000000000..60fe20f77 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/run-tests-msvc-2022.bat @@ -0,0 +1,32 @@ +REM This is intended to be run in the /test-results/msvc-2022-c++20 directory +REM in a VS2022 Command Prompt (which sets the path and other environment) +REM +REM After installing VS2022, to finish setting up std modules in your environment, run: +REM cl /std:c++20 /EHsc /nologo /W4 /MD /c "%VCToolsInstallDir%\modules\std.ixx" +REM cl /std:c++20 /EHsc /nologo /W4 /MD /c "%VCToolsInstallDir%\modules\std.compat.ixx" +REM More info: https://learn.microsoft.com/en-us/cpp/cpp/tutorial-import-stl-named-module?view=msvc-170 +REM +@echo off +SETLOCAL EnableDelayedExpansion +copy ..\*.cpp . +del *.output +set count=0 +set exe_count=0 +cl 1>NUL 2> MSVC-version.output +for %%f in (*.cpp) do ( + set /a count+=1 + echo [!count!] Starting MSVC cl.exe %%f + cl.exe %%f -Fe"test" -nologo -std:c++20 -MD -EHsc -I ..\..\..\include std.obj std.compat.obj >> %%f.output 2>&1 + del %%f + IF EXIST "test.exe" ( + set /a exe_count+=1 + echo. Starting executable + test.exe > %%f.execution 2>&1 + del test.exe + ) +) +del pure2-*.obj mixed-*.obj *.exp *.lib +echo. +echo Done: %count% .cpp tests compiled +echo. +echo. %exe_count% executables generated and run diff --git a/regression-tests/test-results/msvc-2022-c++20/xyzzy b/regression-tests/test-results/msvc-2022-c++20/xyzzy new file mode 100644 index 000000000..805bcb853 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++20/xyzzy @@ -0,0 +1 @@ +Hello Fred with UFCS! \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/MSVC-version.output b/regression-tests/test-results/msvc-2022-c++latest/MSVC-version.output new file mode 100644 index 000000000..ba2c3c80f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/MSVC-version.output @@ -0,0 +1,3 @@ +Microsoft (R) C/C++ Optimizing Compiler Version 19.39.33523 for x86 +Copyright (C) Microsoft Corporation. All rights reserved. + diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.execution new file mode 100644 index 000000000..802992c42 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.execution @@ -0,0 +1 @@ +Hello world diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.output new file mode 100644 index 000000000..86a375fbe --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-allcpp1-hello.cpp.output @@ -0,0 +1 @@ +mixed-allcpp1-hello.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.execution new file mode 100644 index 000000000..5e2c9d82e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.execution @@ -0,0 +1,60 @@ +v as X< 0> = 0 +v as X< 1> = 1 +v as X< 2> = 2 +v as X< 3> = 3 +v as X< 4> = 4 +v as X< 5> = 5 +v as X< 6> = 6 +v as X< 7> = 7 +v as X< 8> = 8 +v as X< 9> = 9 +v as X<10> = 10 +v as X<11> = 11 +v as X<12> = 12 +v as X<13> = 13 +v as X<14> = 14 +v as X<15> = 15 +v as X<16> = 16 +v as X<17> = 17 +v as X<18> = 18 +v as X<19> = 19 +as_const(v) as X< 0> = 0 +as_const(v) as X< 1> = 1 +as_const(v) as X< 2> = 2 +as_const(v) as X< 3> = 3 +as_const(v) as X< 4> = 4 +as_const(v) as X< 5> = 5 +as_const(v) as X< 6> = 6 +as_const(v) as X< 7> = 7 +as_const(v) as X< 8> = 8 +as_const(v) as X< 9> = 9 +as_const(v) as X<10> = 10 +as_const(v) as X<11> = 11 +as_const(v) as X<12> = 12 +as_const(v) as X<13> = 13 +as_const(v) as X<14> = 14 +as_const(v) as X<15> = 15 +as_const(v) as X<16> = 16 +as_const(v) as X<17> = 17 +as_const(v) as X<18> = 18 +as_const(v) as X<19> = 19 +move(v) as X< 0> = 0 +move(v) as X< 1> = 1 +move(v) as X< 2> = 2 +move(v) as X< 3> = 3 +move(v) as X< 4> = 4 +move(v) as X< 5> = 5 +move(v) as X< 6> = 6 +move(v) as X< 7> = 7 +move(v) as X< 8> = 8 +move(v) as X< 9> = 9 +move(v) as X<10> = 10 +move(v) as X<11> = 11 +move(v) as X<12> = 12 +move(v) as X<13> = 13 +move(v) as X<14> = 14 +move(v) as X<15> = 15 +move(v) as X<16> = 16 +move(v) as X<17> = 17 +move(v) as X<18> = 18 +move(v) as X<19> = 19 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.output new file mode 100644 index 000000000..5a1c1486a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-as-for-variant-20-types.cpp.output @@ -0,0 +1 @@ +mixed-as-for-variant-20-types.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.execution new file mode 100644 index 000000000..8474b9159 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.output new file mode 100644 index 000000000..9ee4b1599 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-check.cpp.output @@ -0,0 +1 @@ +mixed-bounds-check.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.execution new file mode 100644 index 000000000..6330ca570 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.execution @@ -0,0 +1,5 @@ +1 +44 +45 +46 +5 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.output new file mode 100644 index 000000000..3ca6492a6 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert-2.cpp.output @@ -0,0 +1 @@ +mixed-bounds-safety-with-assert-2.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.execution new file mode 100644 index 000000000..776dc1460 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.execution @@ -0,0 +1 @@ +Bounds safety violation diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.output new file mode 100644 index 000000000..e3a12dc06 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bounds-safety-with-assert.cpp.output @@ -0,0 +1 @@ +mixed-bounds-safety-with-assert.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output new file mode 100644 index 000000000..220d9f379 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp.output @@ -0,0 +1 @@ +mixed-bugfix-for-cpp2-comment-cpp1-sequence.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-literal-as-nttp.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-literal-as-nttp.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-literal-as-nttp.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-literal-as-nttp.cpp.output new file mode 100644 index 000000000..18fd52ba9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-literal-as-nttp.cpp.output @@ -0,0 +1 @@ +mixed-bugfix-for-literal-as-nttp.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-ufcs-non-local.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-ufcs-non-local.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-ufcs-non-local.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-ufcs-non-local.cpp.output new file mode 100644 index 000000000..f3f5e9025 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-bugfix-for-ufcs-non-local.cpp.output @@ -0,0 +1 @@ +mixed-bugfix-for-ufcs-non-local.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.output new file mode 100644 index 000000000..3456b8e70 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-captures-in-expressions-and-postconditions.cpp.output @@ -0,0 +1 @@ +mixed-captures-in-expressions-and-postconditions.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.execution new file mode 100644 index 000000000..3122e6030 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.execution @@ -0,0 +1,4 @@ +true +false +"test.exe" +true diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.output new file mode 100644 index 000000000..becf536ff --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-fixed-type-aliases.cpp.output @@ -0,0 +1 @@ +mixed-fixed-type-aliases.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.execution new file mode 100644 index 000000000..6b15b12bc --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.execution @@ -0,0 +1,72 @@ +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +123456 +456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123 +123 +123 +123 +123 +123 +123456 +123 +123 +123 +123 +123 +123 +123456 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 +123456 +456 +1e+10 +1e+10 +1e-10 +1e-10 +1e-10 +1e-10 +1e-10 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.output new file mode 100644 index 000000000..88d9ba25d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-float-literals.cpp.output @@ -0,0 +1 @@ +mixed-float-literals.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.execution new file mode 100644 index 000000000..952feac3b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.execution @@ -0,0 +1,12 @@ ++X 1 ++X 2 +copy X 1 +copy X 2 +copy X 1 +move X 2 ++X 3 ++X 4 +copy X 3 +copy X 4 +move X 3 +move X 4 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.output new file mode 100644 index 000000000..fde27181e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-forwarding.cpp.output @@ -0,0 +1 @@ +mixed-forwarding.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.execution new file mode 100644 index 000000000..728fbcc8f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.execution @@ -0,0 +1,2 @@ +hello-ish maybe +2022-ish maybe diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.output new file mode 100644 index 000000000..07a403c21 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-for-each.cpp.output @@ -0,0 +1 @@ +mixed-function-expression-and-std-for-each.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output new file mode 100644 index 000000000..99262261e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each-with-capture.cpp.output @@ -0,0 +1 @@ +mixed-function-expression-and-std-ranges-for-each-with-capture.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.execution new file mode 100644 index 000000000..dfca5b9a3 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.execution @@ -0,0 +1,4 @@ +hello +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.output new file mode 100644 index 000000000..7a3f4c717 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-and-std-ranges-for-each.cpp.output @@ -0,0 +1 @@ +mixed-function-expression-and-std-ranges-for-each.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.execution new file mode 100644 index 000000000..e9d6a083f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2023 +hello-ish +2023-ish diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.output new file mode 100644 index 000000000..82f6bcf2b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-pointer-capture.cpp.output @@ -0,0 +1 @@ +mixed-function-expression-with-pointer-capture.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.execution new file mode 100644 index 000000000..137aaec33 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.execution @@ -0,0 +1,6 @@ + +hello + +2022 +hello-ish +2022-ish diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.output new file mode 100644 index 000000000..b14c8c989 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-function-expression-with-repeated-capture.cpp.output @@ -0,0 +1 @@ +mixed-function-expression-with-repeated-capture.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.output new file mode 100644 index 000000000..8f2ebaa7d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-hello.cpp.output @@ -0,0 +1 @@ +mixed-hello.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.execution new file mode 100644 index 000000000..6f42aeb32 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.execution @@ -0,0 +1,2 @@ +12234 +12234 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.output new file mode 100644 index 000000000..83e40edd0 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-increment-decrement.cpp.output @@ -0,0 +1 @@ +mixed-increment-decrement.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.execution new file mode 100644 index 000000000..e16104fe5 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.execution @@ -0,0 +1 @@ +Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.output new file mode 100644 index 000000000..48ee8166d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3-contract-violation.cpp.output @@ -0,0 +1 @@ +mixed-initialization-safety-3-contract-violation.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.execution new file mode 100644 index 000000000..b261dd86c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.execution @@ -0,0 +1 @@ +>> [xyzzy] diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.output new file mode 100644 index 000000000..ce1768dcb --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-initialization-safety-3.cpp.output @@ -0,0 +1 @@ +mixed-initialization-safety-3.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.execution new file mode 100644 index 000000000..03cdf50b7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.execution @@ -0,0 +1,8 @@ +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type +inspected vec : std::vector +inspected arr : std::array +inspected var : std::variant +inspected myt : my_type diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.output new file mode 100644 index 000000000..ec741a8ce --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-templates.cpp.output @@ -0,0 +1 @@ +mixed-inspect-templates.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.execution new file mode 100644 index 000000000..8372eadca --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.execution @@ -0,0 +1,5 @@ +i is between 11 and 20 +less than 20 +i is between 10 and 30 +v is empty +v is empty diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.output new file mode 100644 index 000000000..4a11a301e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values-2.cpp.output @@ -0,0 +1 @@ +mixed-inspect-values-2.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.execution new file mode 100644 index 000000000..e7130e0f8 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.execution @@ -0,0 +1,12 @@ +rev dodgson +(no match) +the answer +zero +plugh +zero +1 or 2 +1 or 2 +3 +integer -42 +xyzzy +(no match) diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.output new file mode 100644 index 000000000..9ca15cda4 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-values.cpp.output @@ -0,0 +1 @@ +mixed-inspect-values.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-with-typeof-of-template-arg-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-with-typeof-of-template-arg-list.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-with-typeof-of-template-arg-list.cpp.output new file mode 100644 index 000000000..0baee193e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-inspect-with-typeof-of-template-arg-list.cpp.output @@ -0,0 +1 @@ +mixed-inspect-with-typeof-of-template-arg-list.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..984a60a83 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.execution @@ -0,0 +1,7 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..1874d7f40 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-example-three-loops.cpp.output @@ -0,0 +1 @@ +mixed-intro-example-three-loops.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.execution new file mode 100644 index 000000000..05961867a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.execution @@ -0,0 +1,5 @@ +1 42 +2 84 +3 168 +4 336 +5 672 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.output new file mode 100644 index 000000000..47d4e6fd7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-intro-for-with-counter-include-last.cpp.output @@ -0,0 +1 @@ +mixed-intro-for-with-counter-include-last.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.execution new file mode 100644 index 000000000..f4dd62312 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.execution @@ -0,0 +1 @@ +sending error to my framework... [dynamic null dereference attempt detected] diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.output new file mode 100644 index 000000000..d94f9aa88 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-and-null-contracts.cpp.output @@ -0,0 +1 @@ +mixed-lifetime-safety-and-null-contracts.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.execution new file mode 100644 index 000000000..7ee4d37b2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.execution @@ -0,0 +1 @@ +>> 42 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.output new file mode 100644 index 000000000..e5ad52049 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-lifetime-safety-pointer-init-4.cpp.output @@ -0,0 +1 @@ +mixed-lifetime-safety-pointer-init-4.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.execution new file mode 100644 index 000000000..b3fc65a7c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.execution @@ -0,0 +1,2 @@ +a is 10 +b is xyzzy diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.output new file mode 100644 index 000000000..4840a9b5a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-multiple-return-values.cpp.output @@ -0,0 +1 @@ +mixed-multiple-return-values.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.execution new file mode 100644 index 000000000..df8e3e4ff --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.execution @@ -0,0 +1,21 @@ +enter main +enter f00 +enter f01 ++X 1 +exit f01 +-X 1 +exit f00 + +enter f10 +enter f11 +enter f12 +enter f13 +enter f14 ++X 2 +exit f14 +exit f13 +exit f12 +-X 2 +exit f11 +exit f10 +exit main diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.output new file mode 100644 index 000000000..84944483c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-out-destruction.cpp.output @@ -0,0 +1 @@ +mixed-out-destruction.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.execution new file mode 100644 index 000000000..982a789cf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.execution @@ -0,0 +1,2 @@ +42 +exxxx diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.output new file mode 100644 index 000000000..b925af34c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-generic-out.cpp.output @@ -0,0 +1 @@ +mixed-parameter-passing-generic-out.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-with-forward.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-with-forward.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-with-forward.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-with-forward.cpp.output new file mode 100644 index 000000000..fed8c6373 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing-with-forward.cpp.output @@ -0,0 +1 @@ +mixed-parameter-passing-with-forward.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing.cpp.output new file mode 100644 index 000000000..195c5a96b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-parameter-passing.cpp.output @@ -0,0 +1 @@ +mixed-parameter-passing.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.execution new file mode 100644 index 000000000..a17035eda --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.execution @@ -0,0 +1,2 @@ +xyzzy and plugh +xyzzyplugh diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.output new file mode 100644 index 000000000..6bc493909 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-postexpression-with-capture.cpp.output @@ -0,0 +1 @@ +mixed-postexpression-with-capture.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-postfix-expression-custom-formatting.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-postfix-expression-custom-formatting.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-postfix-expression-custom-formatting.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-postfix-expression-custom-formatting.cpp.output new file mode 100644 index 000000000..8cc7a3df4 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-postfix-expression-custom-formatting.cpp.output @@ -0,0 +1 @@ +mixed-postfix-expression-custom-formatting.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.execution new file mode 100644 index 000000000..eebb290a9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.execution @@ -0,0 +1,17 @@ +a = 2, b = (empty) +a^2 + b = 46 +sv = my string_view +osv = (empty) +osv = string literal bound to optional string_view +var = (empty) +var = abracadabra +var = 2.718280 +mypair = (12, 3.400000) +tup1 = (12) +tup2 = (12, 3.400000) +tup3 = (12, 3.400000, 456) +p = (first, (empty)) +t = (3.140000, (empty), (empty)) +vv = 0 +vv = (1, 2.300000) +custom = (customize me - no cpp2::to_string overload exists for this type) diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.output new file mode 100644 index 000000000..814f0d905 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-string-interpolation.cpp.output @@ -0,0 +1 @@ +mixed-string-interpolation.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.execution new file mode 100644 index 000000000..59967f29d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.execution @@ -0,0 +1,3 @@ +11 +12 +13*14 is 182 diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.output new file mode 100644 index 000000000..a2eae8e8e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-test-parens.cpp.output @@ -0,0 +1 @@ +mixed-test-parens.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.execution new file mode 100644 index 000000000..f1a0d084e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.execution @@ -0,0 +1,6 @@ +1.1 is int? false +1 is int? true + +s* is Shape? true +s* is Circle? true +s* is Square? false diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.output new file mode 100644 index 000000000..c1f46ad66 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-type-safety-1.cpp.output @@ -0,0 +1 @@ +mixed-type-safety-1.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.execution new file mode 100644 index 000000000..dec75369f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.execution @@ -0,0 +1,2 @@ +rain +rain diff --git a/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.output new file mode 100644 index 000000000..4eae503ce --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/mixed-ufcs-multiple-template-arguments.cpp.output @@ -0,0 +1 @@ +mixed-ufcs-multiple-template-arguments.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-expected-not-null.cpp.execution new file mode 100644 index 000000000..8887aa1aa --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-expected-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::expected has an unexpected value diff --git a/regression-tests/test-results/msvc-2022/pure2-assert-expected-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-expected-not-null.cpp.output similarity index 100% rename from regression-tests/test-results/msvc-2022/pure2-assert-expected-not-null.cpp.output rename to regression-tests/test-results/msvc-2022-c++latest/pure2-assert-expected-not-null.cpp.output diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.execution new file mode 100644 index 000000000..c6aeba0fd --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.output new file mode 100644 index 000000000..ac5c880cd --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-optional-not-null.cpp.output @@ -0,0 +1 @@ +pure2-assert-optional-not-null.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.execution new file mode 100644 index 000000000..85aafbe6a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.output new file mode 100644 index 000000000..28a635c28 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-shared-ptr-not-null.cpp.output @@ -0,0 +1 @@ +pure2-assert-shared-ptr-not-null.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.execution new file mode 100644 index 000000000..af633d171 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.execution @@ -0,0 +1 @@ +Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.output new file mode 100644 index 000000000..7d1d60b4e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-assert-unique-ptr-not-null.cpp.output @@ -0,0 +1 @@ +pure2-assert-unique-ptr-not-null.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.execution new file mode 100644 index 000000000..3a0304fa2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.execution @@ -0,0 +1,3 @@ +>> decorated +>> hello +>> world diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.output new file mode 100644 index 000000000..20a78540c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bounds-safety-span.cpp.output @@ -0,0 +1 @@ +pure2-bounds-safety-span.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.execution new file mode 100644 index 000000000..c8af55771 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.execution @@ -0,0 +1,26 @@ +while_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +while_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +while_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +while_break_outer: + 00 inner 01 + +do_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +do_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +do_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +do_break_outer: + 00 inner 01 + +for_continue_inner: + 00 inner 01 02 inner outer 10 inner 11 12 inner outer 20 inner 21 22 inner outer +for_continue_outer: + 00 inner 01 10 inner 11 20 inner 21 +for_break_inner: + 00 inner 01 outer 10 inner 11 outer 20 inner 21 outer +for_break_outer: + 00 inner 01 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.output new file mode 100644 index 000000000..80bde778d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-break-continue.cpp.output @@ -0,0 +1 @@ +pure2-break-continue.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-assign-expression-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-assign-expression-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-assign-expression-list.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-assign-expression-list.cpp.output new file mode 100644 index 000000000..a6ae9f44a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-assign-expression-list.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-assign-expression-list.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-discard-precedence.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-discard-precedence.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-discard-precedence.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-discard-precedence.cpp.output new file mode 100644 index 000000000..783665cd0 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-discard-precedence.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-discard-precedence.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-indexed-call.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-indexed-call.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-indexed-call.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-indexed-call.cpp.output new file mode 100644 index 000000000..1287434d5 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-indexed-call.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-indexed-call.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-max-munch.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-max-munch.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-max-munch.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-max-munch.cpp.output new file mode 100644 index 000000000..566c4d693 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-max-munch.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-max-munch.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.execution new file mode 100644 index 000000000..566837e51 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.execution @@ -0,0 +1,2 @@ +(out this, that) +(out this, that) diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.output new file mode 100644 index 000000000..8927219d7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-memberwise-base-assignment.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-memberwise-base-assignment.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output new file mode 100644 index 000000000..f0a96b463 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-name-lookup-and-value-decoration.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-name-lookup-and-value-decoration.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-function-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-function-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-function-expression.cpp.output new file mode 100644 index 000000000..83fcf4bec --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-function-expression.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-non-local-function-expression.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-initialization.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-initialization.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-initialization.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-initialization.cpp.output new file mode 100644 index 000000000..9fd01a3d0 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-non-local-initialization.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-non-local-initialization.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-optional-template-argument-list.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-optional-template-argument-list.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-optional-template-argument-list.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-optional-template-argument-list.cpp.output new file mode 100644 index 000000000..d49488a64 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-optional-template-argument-list.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-optional-template-argument-list.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output new file mode 100644 index 000000000..fa01371ee --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-in-forward-declaration.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-requires-clause-in-forward-declaration.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output new file mode 100644 index 000000000..2e5bc8e9f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-requires-clause-unbraced-function-initializer.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.execution new file mode 100644 index 000000000..c508d5366 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.execution @@ -0,0 +1 @@ +false diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.output new file mode 100644 index 000000000..2b2d765d2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-template-argument.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-template-argument.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.execution new file mode 100644 index 000000000..0e41b7819 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.execution @@ -0,0 +1,4 @@ +0123456789 +9 +0123456789 +9 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.output new file mode 100644 index 000000000..c20b9908a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-arguments.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-ufcs-arguments.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-name-lookup.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-name-lookup.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-name-lookup.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-name-lookup.cpp.output new file mode 100644 index 000000000..cfe4625ad --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-name-lookup.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-ufcs-name-lookup.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-noexcept.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-noexcept.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-noexcept.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-noexcept.cpp.output new file mode 100644 index 000000000..c7322ce84 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-noexcept.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-ufcs-noexcept.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-sfinae.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-sfinae.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-sfinae.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-sfinae.cpp.output new file mode 100644 index 000000000..5d72f9750 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-ufcs-sfinae.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-ufcs-sfinae.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-unbraced-function-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-unbraced-function-expression.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-unbraced-function-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-unbraced-function-expression.cpp.output new file mode 100644 index 000000000..57e058827 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-unbraced-function-expression.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-unbraced-function-expression.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-variable-template.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-variable-template.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-variable-template.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-variable-template.cpp.output new file mode 100644 index 000000000..c58ee5a51 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-bugfix-for-variable-template.cpp.output @@ -0,0 +1 @@ +pure2-bugfix-for-variable-template.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.execution new file mode 100644 index 000000000..b41a1bf75 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.execution @@ -0,0 +1,27 @@ +0 0 0: true false false +0 0 1: false false false +0 0 2: false false false +0 1 0: false false false +0 1 1: false true false +0 1 2: false true false +0 2 0: false false false +0 2 1: false false false +0 2 2: false true false +1 0 0: false false false +1 0 1: false false false +1 0 2: false false false +1 1 0: false false true +1 1 1: true false false +1 1 2: false false false +1 2 0: false false false +1 2 1: false false false +1 2 2: false true false +2 0 0: false false false +2 0 1: false false false +2 0 2: false false false +2 1 0: false false true +2 1 1: false false false +2 1 2: false false false +2 2 0: false false true +2 2 1: false false true +2 2 2: true false false diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.output new file mode 100644 index 000000000..0f8d9e000 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-chained-comparisons.cpp.output @@ -0,0 +1 @@ +pure2-chained-comparisons.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-concept-definition.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-concept-definition.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-concept-definition.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-concept-definition.cpp.output new file mode 100644 index 000000000..1a6f1c663 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-concept-definition.cpp.output @@ -0,0 +1 @@ +pure2-concept-definition.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.execution new file mode 100644 index 000000000..e8a01cd98 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.execution @@ -0,0 +1,3 @@ +1 +2 +4 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.output new file mode 100644 index 000000000..c1ac8c9c7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-contracts.cpp.output @@ -0,0 +1 @@ +pure2-contracts.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.execution new file mode 100644 index 000000000..9ff824547 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.execution @@ -0,0 +1 @@ +less \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.output new file mode 100644 index 000000000..a69d84fb4 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-defaulted-comparisons-and-final-types.cpp.output @@ -0,0 +1 @@ +pure2-defaulted-comparisons-and-final-types.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.execution new file mode 100644 index 000000000..6d9a33c28 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.execution @@ -0,0 +1,29 @@ +x.to_string() is clubs +x2.to_string() is clubs +with if else: clubs +with inspect: clubs + +file_attributes::cached.get_raw_value() is 1 +file_attributes::current.get_raw_value() is 2 +file_attributes::obsolete.get_raw_value() is 4 +file_attributes::cached_and_current.get_raw_value() is 3 +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (cached) +f2 is (cached) +f2 is (none) +f2 is (cached) +f. get_raw_value() is 1 +f2.get_raw_value() is 1 +f is (f2) is true +f2 is (f ) is true + +f is (cached, current, obsolete, cached_and_current) +f2 is (cached, current, cached_and_current) +f. get_raw_value() is 7 +f2.get_raw_value() is 3 +f == f2 is false +f is (f2) is false +f2 is (f ) is false +(f & f2) == f2 is true +inspecting f: includes all f2's flags ('cached' and 'current') diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.output new file mode 100644 index 000000000..81df03d19 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-enum.cpp.output @@ -0,0 +1 @@ +pure2-enum.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.execution new file mode 100644 index 000000000..19b3a90b2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.execution @@ -0,0 +1 @@ +12345123451234512345 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.output new file mode 100644 index 000000000..d6f0513de --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-for-loop-range-with-lambda.cpp.output @@ -0,0 +1 @@ +pure2-for-loop-range-with-lambda.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.execution new file mode 100644 index 000000000..f259f2362 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.execution @@ -0,0 +1,2 @@ +4 +42 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.output new file mode 100644 index 000000000..03fb43cc8 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-forward-return.cpp.output @@ -0,0 +1 @@ +pure2-forward-return.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.execution new file mode 100644 index 000000000..8baef1b4a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.execution @@ -0,0 +1 @@ +abc diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.output new file mode 100644 index 000000000..fb0e5f1d4 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-function-multiple-forward-arguments.cpp.output @@ -0,0 +1 @@ +pure2-function-multiple-forward-arguments.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.execution new file mode 100644 index 000000000..c8848197e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.execution @@ -0,0 +1 @@ +Hello [world] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.output new file mode 100644 index 000000000..83e848232 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-hello.cpp.output @@ -0,0 +1 @@ +pure2-hello.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.execution new file mode 100644 index 000000000..d00491fd7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.execution @@ -0,0 +1 @@ +1 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.output new file mode 100644 index 000000000..67638a3f2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-initialization-safety-with-else-if.cpp.output @@ -0,0 +1 @@ +pure2-initialization-safety-with-else-if.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution new file mode 100644 index 000000000..fd5a6cdff --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int or string + variant value is not an int or string + any value is "xyzzy" + optional value is not an int or string + int value is integer 42 + variant value is integer 1 + any value is integer 2 + optional value is integer 3 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output new file mode 100644 index 000000000..9f384ba8b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-in-generic-function-multiple-types.cpp.output @@ -0,0 +1 @@ +pure2-inspect-expression-in-generic-function-multiple-types.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.execution new file mode 100644 index 000000000..3cd874b4e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.execution @@ -0,0 +1,3 @@ + syzygy value is not an int + 1 value is 1 + 1.100000 value is not an int diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.output new file mode 100644 index 000000000..9b94f7dc8 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-expression-with-as-in-generic-function.cpp.output @@ -0,0 +1 @@ +pure2-inspect-expression-with-as-in-generic-function.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a5cbcefe9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.execution @@ -0,0 +1,11 @@ + +All these cases satisfy "matches std::string" + +variant + ... matches std::string + +string + ... matches std::string + +optional + ... matches std::string diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..e37a9db99 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-fallback-with-variant-any-optional.cpp.output @@ -0,0 +1 @@ +pure2-inspect-fallback-with-variant-any-optional.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution new file mode 100644 index 000000000..a2df8769d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.execution @@ -0,0 +1,17 @@ + +All these cases satisfy "VOYDE AND EMPTIE" + +unique_ptr + ... VOYDE AND EMPTIE + +vector::iterator + ... VOYDE AND EMPTIE + +variant + ... VOYDE AND EMPTIE + +any + ... VOYDE AND EMPTIE + +optional + ... VOYDE AND EMPTIE diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output new file mode 100644 index 000000000..bb2e2b9a7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-inspect-generic-void-empty-with-variant-any-optional.cpp.output @@ -0,0 +1 @@ +pure2-inspect-generic-void-empty-with-variant-any-optional.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.execution new file mode 100644 index 000000000..850cfc6bf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.execution @@ -0,0 +1,12 @@ +g0g0g +0g0g +0g0 +00 +"0" +"0 +" + +pl(ug$h +0pl(ug$h +Dog kennel color mauve price 3.14 in stock = true +Dog kennel color mauve price 3.14 in stock = true diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.output new file mode 100644 index 000000000..2b9f9aac2 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-interpolation.cpp.output @@ -0,0 +1 @@ +pure2-interpolation.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.execution new file mode 100644 index 000000000..8e8c5ee29 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.execution @@ -0,0 +1,2 @@ +>> [hello] - length 7 +>> [2022] - length 6 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.output new file mode 100644 index 000000000..9fb86fbfe --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-hello-2022.cpp.output @@ -0,0 +1 @@ +pure2-intro-example-hello-2022.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.execution new file mode 100644 index 000000000..c218d85df --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.execution @@ -0,0 +1,8 @@ +>> hello +>> big +>> world + ** ** ** +>> [hello] +>> [big] +>> [world] +>> end of program diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.output new file mode 100644 index 000000000..34b8c3bdd --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-intro-example-three-loops.cpp.output @@ -0,0 +1 @@ +pure2-intro-example-three-loops.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.output new file mode 100644 index 000000000..e2ffd5e62 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-free-functions-predicate.cpp.output @@ -0,0 +1 @@ +pure2-is-with-free-functions-predicate.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.execution new file mode 100644 index 000000000..c8a07e430 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.execution @@ -0,0 +1,6 @@ +3.140000 is double bigger than 3 +3.140000 is bigger than 3 +42 is integer bigger than 3 +42 is bigger than 3 +a is integer bigger than 3 +a is bigger than 3 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.output new file mode 100644 index 000000000..67d1d00c8 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-unnamed-predicates.cpp.output @@ -0,0 +1 @@ +pure2-is-with-unnamed-predicates.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.execution new file mode 100644 index 000000000..a9bc0680a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.execution @@ -0,0 +1,9 @@ +3.14: unknown +42: 42 +WithOp(): unknown +WithGenOp(): unknown +Cmp(): comparable +std::string("text"): text +"text": text +std::string_view("text"): text +:std::vector = ('t','e','x','t','\0'): unknown diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.output new file mode 100644 index 000000000..4358a6f73 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-is-with-variable-and-value.cpp.output @@ -0,0 +1 @@ +pure2-is-with-variable-and-value.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.execution new file mode 100644 index 000000000..4632e068d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.execution @@ -0,0 +1 @@ +123456 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.output new file mode 100644 index 000000000..79703bb60 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-last-use.cpp.output @@ -0,0 +1 @@ +pure2-last-use.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.execution new file mode 100644 index 000000000..871727de1 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.execution @@ -0,0 +1 @@ +84 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.output new file mode 100644 index 000000000..659b6c7cf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-look-up-parameter-across-unnamed-function.cpp.output @@ -0,0 +1 @@ +pure2-look-up-parameter-across-unnamed-function.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.execution new file mode 100644 index 000000000..bd992e432 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.execution @@ -0,0 +1,2 @@ +args.argc is 1 +args.argv[0] is test.exe diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.output new file mode 100644 index 000000000..549285e8f --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-main-args.cpp.output @@ -0,0 +1 @@ +pure2-main-args.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.execution new file mode 100644 index 000000000..e37d6cb21 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.execution @@ -0,0 +1,2 @@ +yes, less +yes, always diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.output new file mode 100644 index 000000000..3f50e02c5 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-more-wildcards.cpp.output @@ -0,0 +1 @@ +pure2-more-wildcards.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.execution new file mode 100644 index 000000000..4e4b4573d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.execution @@ -0,0 +1,2 @@ +43 +forty-and-three diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.output new file mode 100644 index 000000000..c64d03157 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-print.cpp.output @@ -0,0 +1 @@ +pure2-print.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.execution new file mode 100644 index 000000000..c48e2bd60 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.execution @@ -0,0 +1,17 @@ +this is a string +raw string without interpolation +this is raw string literal + +that can last for multiple + +lines +this is raw string literal +that can last for multiple +lines +42 R"(this can be added too)" +calculations like m["one"] + m["two"] = 3 also works +at the beginning of the line!!! + + + 4242 +1.2.0.42 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.output new file mode 100644 index 000000000..32c8700a6 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-raw-string-literal-and-interpolation.cpp.output @@ -0,0 +1 @@ +pure2-raw-string-literal-and-interpolation.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.execution new file mode 100644 index 000000000..d81cc0710 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.execution @@ -0,0 +1 @@ +42 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.output new file mode 100644 index 000000000..08c93faba --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-repeated-call.cpp.output @@ -0,0 +1 @@ +pure2-repeated-call.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.execution new file mode 100644 index 000000000..105d7d9ad --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.execution @@ -0,0 +1 @@ +100 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.output new file mode 100644 index 000000000..fa1d3b023 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-requires-clauses.cpp.output @@ -0,0 +1 @@ +pure2-requires-clauses.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.execution new file mode 100644 index 000000000..a3b7f9a55 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.execution @@ -0,0 +1,3 @@ +12 , 34 +23 , 45 +34 , 56 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.output new file mode 100644 index 000000000..04fe9fa9a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-return-tuple-operator.cpp.output @@ -0,0 +1 @@ +pure2-return-tuple-operator.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.execution new file mode 100644 index 000000000..6fe5c7f6a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.execution @@ -0,0 +1,2 @@ +42 +43 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.output new file mode 100644 index 000000000..9d578c804 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-statement-scope-parameters.cpp.output @@ -0,0 +1 @@ +pure2-statement-scope-parameters.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio-with-raii.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio-with-raii.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio-with-raii.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio-with-raii.cpp.output new file mode 100644 index 000000000..fd34d7948 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio-with-raii.cpp.output @@ -0,0 +1 @@ +pure2-stdio-with-raii.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio.cpp.output new file mode 100644 index 000000000..97b473624 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-stdio.cpp.output @@ -0,0 +1 @@ +pure2-stdio.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution new file mode 100644 index 000000000..b8626c4cf --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.execution @@ -0,0 +1 @@ +4 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.output new file mode 100644 index 000000000..bf0609bb1 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-synthesize-rightshift-and-rightshifteq.cpp.output @@ -0,0 +1 @@ +pure2-synthesize-rightshift-and-rightshifteq.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.execution new file mode 100644 index 000000000..2861a7a20 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.execution @@ -0,0 +1,4 @@ +f1: 2 +f2: 4 +f3: 6 +f4: 8 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.output new file mode 100644 index 000000000..d91fcd9db --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-template-parameter-lists.cpp.output @@ -0,0 +1 @@ +pure2-template-parameter-lists.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-trailing-commas.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-trailing-commas.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-trailing-commas.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-trailing-commas.cpp.output new file mode 100644 index 000000000..af6792f7a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-trailing-commas.cpp.output @@ -0,0 +1 @@ +pure2-trailing-commas.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.execution new file mode 100644 index 000000000..9f037f474 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.execution @@ -0,0 +1,2 @@ +xyzzy +plugh diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.output new file mode 100644 index 000000000..1aa549606 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-and-namespace-aliases.cpp.output @@ -0,0 +1 @@ +pure2-type-and-namespace-aliases.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.execution new file mode 100644 index 000000000..d1aa6265a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.execution @@ -0,0 +1,9 @@ + double is int? false + variant is int? false + any is int? false + optional is int? false + + int is int? true + variant is int? true + any is int? true + optional is int? true diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.output new file mode 100644 index 000000000..cdc655933 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-1.cpp.output @@ -0,0 +1 @@ +pure2-type-safety-1.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.execution new file mode 100644 index 000000000..7045a6e79 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.execution @@ -0,0 +1,8 @@ + double value is not an int + variant value is not an int + any value is not an int + optional value is not an int + int value is 42 + variant value is 1 + any value is 2 + optional value is 3 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.output new file mode 100644 index 000000000..29bffd49b --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-type-safety-2-with-inspect-expression.cpp.output @@ -0,0 +1 @@ +pure2-type-safety-2-with-inspect-expression.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.execution new file mode 100644 index 000000000..96b31fc42 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.execution @@ -0,0 +1,27 @@ +myclass: implicit from int + data: 1, more: 504 +N::myclass::f with 53 +N::myclass::nested::g +f1: 2 +f2: 4 +f3: 6 +f4: 8 +myclass: explicit from string + data: 99, more: abracadabra +myclass: default + data: 504, more: 3.141590 +myclass: from int and string + data: 77, more: hair1 plugh +x's state before assignments: data: 1, more: 504 +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: implicit from int + data: 84, more: 504 +myclass: explicit from string + data: 99, more: syzygy +myclass: destructor +myclass: destructor +myclass: destructor +myclass: destructor diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.output new file mode 100644 index 000000000..cde0a0595 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-basics.cpp.output @@ -0,0 +1 @@ +pure2-types-basics.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.execution new file mode 100644 index 000000000..20751af06 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.execution @@ -0,0 +1,24 @@ +const foo +const foo +const foo +const foo +foo +foo +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B const: 0.000000 +Call B const: 0.000000 +Call A const: 0 +Call B mut: 0.000000 +Call B mut: 0.000000 +Call A mut: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A const: 0 +Call B const: 0.000000 +Call A const: 0 +Call A mut: 0 +Call B mut: 0.000000 +Call A mut: 0 diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.output new file mode 100644 index 000000000..b2fe7c301 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-down-upcast.cpp.output @@ -0,0 +1 @@ +pure2-types-down-upcast.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.execution new file mode 100644 index 000000000..809430aaa --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.execution @@ -0,0 +1,5 @@ +Parsnip checks in for the day's shift +printing: Parsnip lives at 123 Main St. +-> [vcall: make_speak] Parsnip cracks a few jokes with a coworker +-> [vcall: do_work] Parsnip carries some half-tonne crates of Fe2O3 to cold storage +Tired but satisfied after another successful day, Parsnip checks out and goes home to their family diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.output new file mode 100644 index 000000000..e5f505e71 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-inheritance.cpp.output @@ -0,0 +1 @@ +pure2-types-inheritance.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.execution new file mode 100644 index 000000000..cc716cc8c --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.execution @@ -0,0 +1,5 @@ +made a safely initialized cycle +leaving call to 'why(5)' +leaving call to 'why(3)' +leaving call to 'why(1)' +hallo welt diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.output new file mode 100644 index 000000000..7c4ae790a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-order-independence-and-nesting.cpp.output @@ -0,0 +1 @@ +pure2-types-order-independence-and-nesting.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.execution new file mode 100644 index 000000000..54b3aab09 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less more less diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.output new file mode 100644 index 000000000..6325b9ff6 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-ordering-via-meta-functions.cpp.output @@ -0,0 +1 @@ +pure2-types-ordering-via-meta-functions.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.execution new file mode 100644 index 000000000..fc5a23bde --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.output new file mode 100644 index 000000000..a2c28dc20 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-1-provide-everything.cpp.output @@ -0,0 +1 @@ +pure2-types-smf-and-that-1-provide-everything.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution new file mode 100644 index 000000000..7cbf0f869 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - copy mv-assign [ Clara | 123 Ford Dr.(AC) ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output new file mode 100644 index 000000000..72f67a0de --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp.output @@ -0,0 +1 @@ +pure2-types-smf-and-that-2-provide-mvconstruct-and-cpassign.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution new file mode 100644 index 000000000..541b2a0d9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - move mv-construct [ Clara(CM) | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output new file mode 100644 index 000000000..c5d5b9553 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp.output @@ -0,0 +1 @@ +pure2-types-smf-and-that-3-provide-mvconstruct-and-mvassign.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution new file mode 100644 index 000000000..24d4e763a --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +assign - copy cp-assign [ Clara | 123 Ford Dr.(AC) ] <- [ Clara | 123 Ford Dr. ] +assign - move mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output new file mode 100644 index 000000000..2663813b7 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp.output @@ -0,0 +1 @@ +pure2-types-smf-and-that-4-provide-cpassign-and-mvassign.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution new file mode 100644 index 000000000..c387c0371 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.execution @@ -0,0 +1,8 @@ +Function invoked Call syntax Results +---------------------- ------------ ------------------------------------------------------ +ctor - from string construct [ Henry | 123 Ford Dr. ] +ctor - from string assign [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) cp-construct [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-construct [ Clara | 123 Ford Dr. ] <- [ | ] +ctor - copy (GENERAL) cp-assign [ Clara | 123 Ford Dr. ] <- [ Clara | 123 Ford Dr. ] +ctor - copy (GENERAL) mv-assign [ Clara | 123 Ford Dr. ] <- [ | ] diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output new file mode 100644 index 000000000..7d0c7961d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp.output @@ -0,0 +1 @@ +pure2-types-smf-and-that-5-provide-nothing-but-general-case.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.execution new file mode 100644 index 000000000..abd49e623 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.execution @@ -0,0 +1,7 @@ +name 'Henry', addr '123 Ford Dr.' +----- +name 'Henry', addr '123 Ford Dr.' +name 'Henry', addr '123 Ford Dr.' +----- +name '', addr '' +name 'Henry', addr '123 Ford Dr.' diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.output new file mode 100644 index 000000000..0c919b5e0 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-that-parameters.cpp.output @@ -0,0 +1 @@ +pure2-types-that-parameters.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.execution new file mode 100644 index 000000000..daee7bf51 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.execution @@ -0,0 +1 @@ +less less less \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.output new file mode 100644 index 000000000..68b15f606 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-types-value-types-via-meta-functions.cpp.output @@ -0,0 +1 @@ +pure2-types-value-types-via-meta-functions.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-ufcs-member-access-and-chaining.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-ufcs-member-access-and-chaining.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-ufcs-member-access-and-chaining.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-ufcs-member-access-and-chaining.cpp.output new file mode 100644 index 000000000..bc5763e41 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-ufcs-member-access-and-chaining.cpp.output @@ -0,0 +1 @@ +pure2-ufcs-member-access-and-chaining.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.execution new file mode 100644 index 000000000..e52daad8e --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.execution @@ -0,0 +1,4 @@ +sizeof(x) - alignof(x) == max(sizeof(fields)) is true +(not a name) +xyz +42 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.output new file mode 100644 index 000000000..e4baed02d --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-union.cpp.output @@ -0,0 +1 @@ +pure2-union.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.execution new file mode 100644 index 000000000..53bc692f9 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.execution @@ -0,0 +1,7 @@ +xyz +plu +abr +3.14word-1500 +first all() returned false +second all() returned true +sum of (1, 2, 3, 100) is: 106 \ No newline at end of file diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.output new file mode 100644 index 000000000..01aa45382 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-variadics.cpp.output @@ -0,0 +1 @@ +pure2-variadics.cpp diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-various-string-literals.cpp.execution b/regression-tests/test-results/msvc-2022-c++latest/pure2-various-string-literals.cpp.execution new file mode 100644 index 000000000..e69de29bb diff --git a/regression-tests/test-results/msvc-2022-c++latest/pure2-various-string-literals.cpp.output b/regression-tests/test-results/msvc-2022-c++latest/pure2-various-string-literals.cpp.output new file mode 100644 index 000000000..2ae43b011 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/pure2-various-string-literals.cpp.output @@ -0,0 +1 @@ +pure2-various-string-literals.cpp diff --git a/regression-tests/test-results/msvc-2022/run-tests-msvc-2022.bat b/regression-tests/test-results/msvc-2022-c++latest/run-tests-msvc-2022.bat similarity index 93% rename from regression-tests/test-results/msvc-2022/run-tests-msvc-2022.bat rename to regression-tests/test-results/msvc-2022-c++latest/run-tests-msvc-2022.bat index 207dc61cd..270dfde12 100644 --- a/regression-tests/test-results/msvc-2022/run-tests-msvc-2022.bat +++ b/regression-tests/test-results/msvc-2022-c++latest/run-tests-msvc-2022.bat @@ -1,4 +1,4 @@ -REM This is intended to be run in the /test-results/msvc-2022 directory +REM This is intended to be run in the /test-results/msvc-2022-c++latest directory REM in a VS2022 Command Prompt (which sets the path and other environment) REM REM After installing VS2022, to finish setting up std modules in your environment, run: diff --git a/regression-tests/test-results/msvc-2022-c++latest/xyzzy b/regression-tests/test-results/msvc-2022-c++latest/xyzzy new file mode 100644 index 000000000..805bcb853 --- /dev/null +++ b/regression-tests/test-results/msvc-2022-c++latest/xyzzy @@ -0,0 +1 @@ +Hello Fred with UFCS! \ No newline at end of file diff --git a/regression-tests/test-results/pure2-forward-return-diagnostics-error.cpp2.output b/regression-tests/test-results/pure2-forward-return-diagnostics-error.cpp2.output index d1df1ddcd..1d1df28af 100644 --- a/regression-tests/test-results/pure2-forward-return-diagnostics-error.cpp2.output +++ b/regression-tests/test-results/pure2-forward-return-diagnostics-error.cpp2.output @@ -1,24 +1,24 @@ pure2-forward-return-diagnostics-error.cpp2... -pure2-forward-return-diagnostics-error.cpp2(1,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(2,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(3,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(4,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(5,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(6,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(7,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(8,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(9,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(10,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(11,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(12,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(13,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(14,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(15,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(16,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(17,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(18,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(19,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(20,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(21,28): error: a 'forward' return type cannot return a temporary variable -pure2-forward-return-diagnostics-error.cpp2(22,28): error: a 'forward' return type cannot return a temporary variable +pure2-forward-return-diagnostics-error.cpp2(1,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(2,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(3,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(4,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(5,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(6,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(7,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(8,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(9,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(10,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(11,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(12,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(13,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(14,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(15,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(16,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(17,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(18,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(19,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(20,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(21,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' +pure2-forward-return-diagnostics-error.cpp2(22,28): error: a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;' diff --git a/source/common.h b/source/common.h index 692c06e0f..06e4608be 100644 --- a/source/common.h +++ b/source/common.h @@ -23,6 +23,14 @@ #include "cpp2util.h" +//=========================================================================== +// When defined, builds cppfront in an instrumented (and slower) mode that +// prints more information under -_debug +//=========================================================================== + +//#define CPP2_DEBUG_BUILD + + //=========================================================================== // Common types //=========================================================================== @@ -1005,6 +1013,7 @@ class stable_vector } auto size() const -> size_t { + testing.enforce(!data.empty()); return (data.size() - 1) * PageSize + data.back().size(); } @@ -1239,90 +1248,8 @@ std::vector stackinstr::largest; // timer: a little profiling timer to measure time spent in // specific sections of code // -// This is a tool for cppfront developers to measure the run-time of -// specific parts of cppfront code. -// -// Do still use a profiler too. But once you know where to measure, -// this has some advantages: -// -// - Precise: It's easy to accurately measure specific parts of -// code across the run of the program, not relying on sampling to -// representatively hit those regions -// -// - Flexible: You can have as many timers as you want, each with -// a clearly readable name, including nested timers (see example -// below) -// -// - Portable: It's part of cppfront itself, no separate tool needed -// -// - Integrated: Reports are printed automatically by -verbose -// -// Usage guide -// ----------- -// -// To measure the total time spent in a specific section of code, create -// a scope_timer guard object in that scope and give it a readable -// string name that will remind you what it's measuring. -// -// Example: Today I wanted to measure how long get_declaration_of is -// taking. So add this line at the start of that function's body: -// -// auto timer = scope_timer("get_declaration_of"); -// -// Recompile cppfront, then run with -verbose: -// -// cppfront pure2-last-use.cpp2 -p -verb -// -// Sample output: -// -// pure2-last-use.cpp2... ok (all Cpp2, passes safety checks) -// Cpp1 0 lines -// Cpp2 1,050 lines (100%) -// Time 1,629 ms -// 1,120 ms in get_declaration_of -// -// The first "Time:" is the total run time of the compiland. It is then -// followed by any active scope_timer names, in alphabetical order -// (you can choose names so that related timers appear together). -// -// Here, this one function is taking most of the total runtime. It -// consists of two major loops, one run before the other, so we can -// measure the cost of each part, using names that will be -// reported together and in understandable order with -verbose: -// -// - The function's first loop is to find a starting point, so -// enclose that in { } with a scope_timer: -// -// { -// auto timer1 = scope_timer("get_declaration_of step 1, initial find loop"); -// /* the code I want to measure */ -// } -// -// - Immediately after that, install a second timer to measure the -// second loop which covers the entire rest of the function body: -// -// auto timer2 = scope_timer("get_declaration_of step 2, rest of lookup"); -// /* followed by the rest of the function's body */ -// -// - And, since it's easy, throw in a third timer to measure one -// sub-part of the step 2 loop... right before the 'move this' -// branch we can add this to measure the time spent in oly that -// trailing 1/3 of each loop iteration (starting and stopping the -// timer at those points in each loop iteration to measure just -// the sum of all those loop fragments): -// -// auto timer2b = scope_timer("get_declaration_of step 2b, 'move this' branch"); -// -// Recompile cppfront and run again with -verbose... sample output: -// -// pure2-last-use.cpp2... ok (all Cpp2, passes safety checks) -// Cpp1 0 lines -// Cpp2 1,050 lines (100%) -// Time 1,471 ms -// 1,139 ms in get_declaration_of -// 540 ms in get_declaration_of step 1, initial find loop -// 567 ms in get_declaration_of step 2, rest of lookup -// 148 ms in get_declaration_of step 2b, 'move this' branch +// Use CPP2_SCOPE_TIMER("unique name") to declare local objects whose +// total timings will be reported in -verbose in CPP2_DEBUG_BUILD builds. // //----------------------------------------------------------------------- // @@ -1359,16 +1286,19 @@ class timer static std::unordered_map timers; // global named timers -auto scope_timer(std::string_view name) -> std::shared_ptr { - if (flag_internal_debug) { - timers[name].start(); - auto stop = [=]{ timers[name].stop(); }; - return std::make_shared>( std::move(stop) ); - } - // Else - return {}; +auto scope_timer(std::string_view name) { + timers[name].start(); + auto stop = [=]{ timers[name].stop(); }; + return finally( std::move(stop) ); } +#ifdef CPP2_DEBUG_BUILD +#define CPP2_CONCAT(x,y) x##y +#define CPP2_UNIQUE_NAME(x,y) CPP2_CONCAT(x,y) +#define CPP2_SCOPE_TIMER(name) auto CPP2_UNIQUE_NAME(timer,__LINE__) = scope_timer(name) +#else +#define CPP2_SCOPE_TIMER(name) +#endif } diff --git a/source/parse.h b/source/parse.h index 391a780ee..b8d404625 100644 --- a/source/parse.h +++ b/source/parse.h @@ -2479,6 +2479,18 @@ struct function_type_node return has_parameter_with_name_and_pass(s, passing_style::in); } + auto has_copy_parameter_named(std::string_view s) const + -> bool + { + return has_parameter_with_name_and_pass(s, passing_style::copy); + } + + auto has_inout_parameter_named(std::string_view s) const + -> bool + { + return has_parameter_with_name_and_pass(s, passing_style::inout); + } + auto has_out_parameter_named(std::string_view s) const -> bool { @@ -2491,6 +2503,12 @@ struct function_type_node return has_parameter_with_name_and_pass(s, passing_style::move); } + auto has_forward_parameter_named(std::string_view s) const + -> bool + { + return has_parameter_with_name_and_pass(s, passing_style::forward); + } + // Internals // auto position() const @@ -2923,6 +2941,24 @@ struct declaration_node return std::get(type)->has_in_parameter_named(s); } + auto has_copy_parameter_named(std::string_view s) const + -> bool + { + if (!is_function()) { + return false; + } + return std::get(type)->has_copy_parameter_named(s); + } + + auto has_inout_parameter_named(std::string_view s) const + -> bool + { + if (!is_function()) { + return false; + } + return std::get(type)->has_inout_parameter_named(s); + } + auto has_out_parameter_named(std::string_view s) const -> bool { @@ -2941,6 +2977,15 @@ struct declaration_node return std::get(type)->has_move_parameter_named(s); } + auto has_forward_parameter_named(std::string_view s) const + -> bool + { + if (!is_function()) { + return false; + } + return std::get(type)->has_forward_parameter_named(s); + } + auto nth_parameter_type_name(int n) const -> std::string { diff --git a/source/reflect.h b/source/reflect.h index ec9877ffa..ad555bbb8 100644 --- a/source/reflect.h +++ b/source/reflect.h @@ -27,19 +27,19 @@ class declaration; #line 332 "reflect.h2" class function_declaration; -#line 419 "reflect.h2" +#line 422 "reflect.h2" class object_declaration; -#line 455 "reflect.h2" +#line 458 "reflect.h2" class type_declaration; -#line 590 "reflect.h2" +#line 593 "reflect.h2" class alias_declaration; -#line 963 "reflect.h2" +#line 966 "reflect.h2" class value_member_info; -#line 1559 "reflect.h2" +#line 1562 "reflect.h2" } } @@ -321,8 +321,11 @@ class function_declaration public: [[nodiscard]] auto index_of_parameter_named(cpp2::impl::in s) const& -> int; public: [[nodiscard]] auto has_parameter_named(cpp2::impl::in s) const& -> bool; public: [[nodiscard]] auto has_in_parameter_named(cpp2::impl::in s) const& -> bool; + public: [[nodiscard]] auto has_copy_parameter_named(cpp2::impl::in s) const& -> bool; + public: [[nodiscard]] auto has_inout_parameter_named(cpp2::impl::in s) const& -> bool; public: [[nodiscard]] auto has_out_parameter_named(cpp2::impl::in s) const& -> bool; public: [[nodiscard]] auto has_move_parameter_named(cpp2::impl::in s) const& -> bool; + public: [[nodiscard]] auto has_forward_parameter_named(cpp2::impl::in s) const& -> bool; public: [[nodiscard]] auto first_parameter_name() const& -> std::string; public: [[nodiscard]] auto has_parameter_with_name_and_pass(cpp2::impl::in s, cpp2::impl::in pass) const& -> bool; @@ -354,7 +357,7 @@ class function_declaration public: [[nodiscard]] auto get_parameters() const& -> std::vector; -#line 390 "reflect.h2" +#line 393 "reflect.h2" public: [[nodiscard]] auto is_binary_comparison_function() const& -> bool; public: auto default_to_virtual() & -> void; @@ -365,103 +368,103 @@ class function_declaration public: function_declaration(function_declaration const& that); -#line 413 "reflect.h2" +#line 416 "reflect.h2" }; -#line 416 "reflect.h2" +#line 419 "reflect.h2" //----------------------------------------------------------------------- // Object declarations // class object_declaration : public declaration { -#line 423 "reflect.h2" +#line 426 "reflect.h2" public: explicit object_declaration( declaration_node* n_, cpp2::impl::in s ); -#line 433 "reflect.h2" +#line 436 "reflect.h2" public: [[nodiscard]] auto is_const() const& -> bool; public: [[nodiscard]] auto has_wildcard_type() const& -> bool; public: [[nodiscard]] auto type() const& -> std::string; -#line 443 "reflect.h2" +#line 446 "reflect.h2" public: [[nodiscard]] auto initializer() const& -> std::string; public: object_declaration(object_declaration const& that); -#line 449 "reflect.h2" +#line 452 "reflect.h2" }; -#line 452 "reflect.h2" +#line 455 "reflect.h2" //----------------------------------------------------------------------- // Type declarations // class type_declaration : public declaration { -#line 459 "reflect.h2" +#line 462 "reflect.h2" public: explicit type_declaration( declaration_node* n_, cpp2::impl::in s ); -#line 469 "reflect.h2" +#line 472 "reflect.h2" public: auto reserve_names(cpp2::impl::in name, auto&& ...etc) const& -> void; -#line 481 "reflect.h2" +#line 484 "reflect.h2" public: [[nodiscard]] auto is_polymorphic() const& -> bool; public: [[nodiscard]] auto is_final() const& -> bool; public: [[nodiscard]] auto make_final() & -> bool; public: [[nodiscard]] auto get_member_functions() const& -> std::vector; -#line 496 "reflect.h2" +#line 499 "reflect.h2" public: [[nodiscard]] auto get_member_functions_needing_initializer() const& -> std::vector; -#line 511 "reflect.h2" +#line 514 "reflect.h2" public: [[nodiscard]] auto get_member_objects() const& -> std::vector; -#line 521 "reflect.h2" +#line 524 "reflect.h2" public: [[nodiscard]] auto get_member_types() const& -> std::vector; -#line 531 "reflect.h2" +#line 534 "reflect.h2" public: [[nodiscard]] auto get_member_aliases() const& -> std::vector; -#line 541 "reflect.h2" +#line 544 "reflect.h2" public: [[nodiscard]] auto get_members() const& -> std::vector; struct query_declared_value_set_functions_ret { bool out_this_in_that; bool out_this_move_that; bool inout_this_in_that; bool inout_this_move_that; }; -#line 551 "reflect.h2" +#line 554 "reflect.h2" public: [[nodiscard]] auto query_declared_value_set_functions() const& -> query_declared_value_set_functions_ret; -#line 566 "reflect.h2" +#line 569 "reflect.h2" public: auto add_member(cpp2::impl::in source) & -> void; -#line 580 "reflect.h2" +#line 583 "reflect.h2" public: auto remove_marked_members() & -> void; public: auto remove_all_members() & -> void; public: auto disable_member_function_generation() & -> void; public: type_declaration(type_declaration const& that); -#line 584 "reflect.h2" +#line 587 "reflect.h2" }; -#line 587 "reflect.h2" +#line 590 "reflect.h2" //----------------------------------------------------------------------- // Alias declarations // class alias_declaration : public declaration { -#line 594 "reflect.h2" +#line 597 "reflect.h2" public: explicit alias_declaration( declaration_node* n_, @@ -470,10 +473,10 @@ class alias_declaration public: alias_declaration(alias_declaration const& that); -#line 603 "reflect.h2" +#line 606 "reflect.h2" }; -#line 606 "reflect.h2" +#line 609 "reflect.h2" //----------------------------------------------------------------------- // // Metafunctions - these are hardwired for now until we get to the @@ -488,7 +491,7 @@ class alias_declaration // auto add_virtual_destructor(meta::type_declaration& t) -> void; -#line 624 "reflect.h2" +#line 627 "reflect.h2" //----------------------------------------------------------------------- // // "... an abstract base class defines an interface ..." @@ -503,7 +506,7 @@ auto add_virtual_destructor(meta::type_declaration& t) -> void; // auto interface(meta::type_declaration& t) -> void; -#line 663 "reflect.h2" +#line 666 "reflect.h2" //----------------------------------------------------------------------- // // "C.35: A base class destructor should be either public and @@ -525,7 +528,7 @@ auto interface(meta::type_declaration& t) -> void; // auto polymorphic_base(meta::type_declaration& t) -> void; -#line 707 "reflect.h2" +#line 710 "reflect.h2" //----------------------------------------------------------------------- // // "... A totally ordered type ... requires operator<=> that @@ -551,7 +554,7 @@ auto ordered_impl( cpp2::impl::in ordering// must be "strong_ordering" etc. ) -> void; -#line 751 "reflect.h2" +#line 754 "reflect.h2" //----------------------------------------------------------------------- // ordered - a totally ordered type // @@ -559,19 +562,19 @@ auto ordered_impl( // auto ordered(meta::type_declaration& t) -> void; -#line 761 "reflect.h2" +#line 764 "reflect.h2" //----------------------------------------------------------------------- // weakly_ordered - a weakly ordered type // auto weakly_ordered(meta::type_declaration& t) -> void; -#line 769 "reflect.h2" +#line 772 "reflect.h2" //----------------------------------------------------------------------- // partially_ordered - a partially ordered type // auto partially_ordered(meta::type_declaration& t) -> void; -#line 778 "reflect.h2" +#line 781 "reflect.h2" //----------------------------------------------------------------------- // // "A value is ... a regular type. It must have all public @@ -590,7 +593,7 @@ auto partially_ordered(meta::type_declaration& t) -> void; // auto copyable(meta::type_declaration& t) -> void; -#line 815 "reflect.h2" +#line 818 "reflect.h2" //----------------------------------------------------------------------- // // basic_value @@ -600,7 +603,7 @@ auto copyable(meta::type_declaration& t) -> void; // auto basic_value(meta::type_declaration& t) -> void; -#line 840 "reflect.h2" +#line 843 "reflect.h2" //----------------------------------------------------------------------- // // "A 'value' is a totally ordered basic_value..." @@ -613,13 +616,13 @@ auto basic_value(meta::type_declaration& t) -> void; // auto value(meta::type_declaration& t) -> void; -#line 856 "reflect.h2" +#line 859 "reflect.h2" auto weakly_ordered_value(meta::type_declaration& t) -> void; -#line 862 "reflect.h2" +#line 865 "reflect.h2" auto partially_ordered_value(meta::type_declaration& t) -> void; -#line 869 "reflect.h2" +#line 872 "reflect.h2" //----------------------------------------------------------------------- // // C.20: If you can avoid defining default operations, do @@ -644,7 +647,7 @@ auto partially_ordered_value(meta::type_declaration& t) -> void; // auto cpp1_rule_of_zero(meta::type_declaration& t) -> void; -#line 903 "reflect.h2" +#line 906 "reflect.h2" //----------------------------------------------------------------------- // // "By definition, a `struct` is a `class` in which members @@ -672,7 +675,7 @@ auto cpp1_rule_of_zero(meta::type_declaration& t) -> void; // auto cpp2_struct(meta::type_declaration& t) -> void; -#line 946 "reflect.h2" +#line 949 "reflect.h2" //----------------------------------------------------------------------- // // "C enumerations constitute a curiously half-baked concept. ... @@ -702,7 +705,7 @@ auto basic_enum( cpp2::impl::in bitwise ) -> void; -#line 1153 "reflect.h2" +#line 1156 "reflect.h2" //----------------------------------------------------------------------- // // "An enum[...] is a totally ordered value type that stores a @@ -714,7 +717,7 @@ auto basic_enum( // auto cpp2_enum(meta::type_declaration& t) -> void; -#line 1179 "reflect.h2" +#line 1182 "reflect.h2" //----------------------------------------------------------------------- // // "flag_enum expresses an enumeration that stores values @@ -727,7 +730,7 @@ auto cpp2_enum(meta::type_declaration& t) -> void; // auto flag_enum(meta::type_declaration& t) -> void; -#line 1211 "reflect.h2" +#line 1214 "reflect.h2" //----------------------------------------------------------------------- // // "As with void*, programmers should know that unions [...] are @@ -754,14 +757,14 @@ auto flag_enum(meta::type_declaration& t) -> void; auto cpp2_union(meta::type_declaration& t) -> void; -#line 1364 "reflect.h2" +#line 1367 "reflect.h2" //----------------------------------------------------------------------- // // print - output a pretty-printed visualization of t // auto print(cpp2::impl::in t) -> void; -#line 1373 "reflect.h2" +#line 1376 "reflect.h2" //----------------------------------------------------------------------- // // regex - creates regular expressions from members @@ -778,7 +781,7 @@ auto print(cpp2::impl::in t) -> void; // auto regex_gen(meta::type_declaration& t) -> void; -#line 1449 "reflect.h2" +#line 1452 "reflect.h2" //----------------------------------------------------------------------- // // apply_metafunctions @@ -789,7 +792,7 @@ auto regex_gen(meta::type_declaration& t) -> void; auto const& error ) -> bool; -#line 1559 "reflect.h2" +#line 1562 "reflect.h2" } } @@ -811,9 +814,9 @@ namespace meta { stable_vector* generated_tokens_ ) : errors{ errors_ } - , errors_original_size{ cpp2::unsafe_narrow(std::ssize(*cpp2::impl::assert_not_null(errors))) } + , errors_original_size{ cpp2::unsafe_narrow(std::ssize(*errors)) } , generated_tokens{ generated_tokens_ } - , parser{ *cpp2::impl::assert_not_null(errors) } + , parser{ *errors } #line 52 "reflect.h2" { @@ -833,8 +836,8 @@ namespace meta { #line 69 "reflect.h2" [[nodiscard]] auto compiler_services::get_argument(cpp2::impl::in index) & -> std::string{ metafunctions_used = true; - if (([_0 = 0, _1 = index, _2 = CPP2_UFCS(ssize)(metafunction_args)]{ return cpp2::impl::cmp_less_eq(_0,_1) && cpp2::impl::cmp_less(_1,_2); }())) { - return CPP2_ASSERT_IN_BOUNDS(metafunction_args, index); + if (([_0 = 0, _1 = index, _2 = CPP2_UFCS(ssize)(metafunction_args)]{ return _0<=_1 && _1<_2; }())) { + return metafunction_args[index]; } return ""; } @@ -863,7 +866,7 @@ namespace meta { auto lines {&CPP2_UFCS(back)(generated_lines)}; auto add_line {[&, _1 = lines](cpp2::impl::in s) mutable -> void{ - static_cast(CPP2_UFCS(emplace_back)((*cpp2::impl::assert_not_null(_1)), s, source_line::category::cpp2)); + static_cast(CPP2_UFCS(emplace_back)((*_1), s, source_line::category::cpp2)); }}; { auto newline_pos{CPP2_UFCS(find)(source, '\n')}; @@ -872,10 +875,10 @@ auto newline_pos{CPP2_UFCS(find)(source, '\n')}; // #line 102 "reflect.h2" - if ( cpp2::impl::cmp_greater(CPP2_UFCS(ssize)(source),1) - && newline_pos != source.npos) + if ( CPP2_UFCS(ssize)(source)>1 + && newline_pos!=source.npos) { - while( newline_pos != std::string_view::npos ) + while( newline_pos!=std::string_view::npos ) { add_line(CPP2_UFCS(substr)(source, 0, newline_pos)); CPP2_UFCS(remove_prefix)(source, newline_pos + 1); @@ -892,17 +895,17 @@ auto newline_pos{CPP2_UFCS(find)(source, '\n')}; // Now lex this source fragment to generate // a single grammar_map entry, whose .second // is the vector of tokens - static_cast(CPP2_UFCS(emplace_back)(generated_lexers, *cpp2::impl::assert_not_null(errors))); + static_cast(CPP2_UFCS(emplace_back)(generated_lexers, *errors)); auto tokens {&CPP2_UFCS(back)(generated_lexers)}; - CPP2_UFCS(lex)((*cpp2::impl::assert_not_null(tokens)), *cpp2::impl::assert_not_null(cpp2::move(lines)), true); + CPP2_UFCS(lex)((*tokens), *cpp2::move(lines), true); - if (cpp2::cpp2_default.is_active() && !(std::ssize(CPP2_UFCS(get_map)((*cpp2::impl::assert_not_null(tokens)))) == 1) ) { cpp2::cpp2_default.report_violation(""); } + if (cpp2::cpp2_default.is_active() && !(std::ssize(CPP2_UFCS(get_map)((*tokens)))==1) ) { cpp2::cpp2_default.report_violation(""); } // Now parse this single declaration from // the lexed tokens ret.construct(CPP2_UFCS(parse_one_declaration)(parser, - (*cpp2::impl::assert_not_null(CPP2_UFCS(begin)(CPP2_UFCS(get_map)(*cpp2::impl::assert_not_null(cpp2::move(tokens)))))).second, - *cpp2::impl::assert_not_null(generated_tokens) + (*CPP2_UFCS(begin)(CPP2_UFCS(get_map)(*cpp2::move(tokens)))).second, + *generated_tokens )); if (!(ret.value())) { error(("parse failed - the source string is not a valid statement:\n" + cpp2::to_string(cpp2::move(original_source)))); @@ -935,7 +938,7 @@ auto newline_pos{CPP2_UFCS(find)(source, '\n')}; if (!(CPP2_UFCS(empty)(metafunction_name))) { message = { "while applying @" + cpp2::to_string(metafunction_name) + " - " + cpp2::to_string(message) }; } - static_cast(CPP2_UFCS(emplace_back)((*cpp2::impl::assert_not_null(errors)), position(), cpp2::move(message))); + static_cast(CPP2_UFCS(emplace_back)((*errors), position(), cpp2::move(message))); } #line 169 "reflect.h2" @@ -973,10 +976,10 @@ compiler_services::compiler_services(compiler_services const& that) } #line 241 "reflect.h2" - [[nodiscard]] auto declaration_base::position() const -> source_position { return CPP2_UFCS(position)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration_base::position() const -> source_position { return CPP2_UFCS(position)((*n)); } #line 243 "reflect.h2" - [[nodiscard]] auto declaration_base::print() const& -> std::string { return CPP2_UFCS(pretty_print_visualize)((*cpp2::impl::assert_not_null(n)), 0); } + [[nodiscard]] auto declaration_base::print() const& -> std::string { return CPP2_UFCS(pretty_print_visualize)((*n), 0); } declaration_base::~declaration_base() noexcept{} declaration_base::declaration_base(declaration_base const& that) @@ -996,68 +999,68 @@ declaration_base::declaration_base(declaration_base const& that) } #line 263 "reflect.h2" - [[nodiscard]] auto declaration::is_public() const& -> bool { return CPP2_UFCS(is_public)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_public() const& -> bool { return CPP2_UFCS(is_public)((*n)); } #line 264 "reflect.h2" - [[nodiscard]] auto declaration::is_protected() const& -> bool { return CPP2_UFCS(is_protected)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_protected() const& -> bool { return CPP2_UFCS(is_protected)((*n)); } #line 265 "reflect.h2" - [[nodiscard]] auto declaration::is_private() const& -> bool { return CPP2_UFCS(is_private)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_private() const& -> bool { return CPP2_UFCS(is_private)((*n)); } #line 266 "reflect.h2" - [[nodiscard]] auto declaration::is_default_access() const& -> bool { return CPP2_UFCS(is_default_access)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_default_access() const& -> bool { return CPP2_UFCS(is_default_access)((*n)); } #line 268 "reflect.h2" - auto declaration::default_to_public() & -> void { static_cast(CPP2_UFCS(make_public)((*cpp2::impl::assert_not_null(n)))); } + auto declaration::default_to_public() & -> void { static_cast(CPP2_UFCS(make_public)((*n))); } #line 269 "reflect.h2" - auto declaration::default_to_protected() & -> void { static_cast(CPP2_UFCS(make_protected)((*cpp2::impl::assert_not_null(n)))); } + auto declaration::default_to_protected() & -> void { static_cast(CPP2_UFCS(make_protected)((*n))); } #line 270 "reflect.h2" - auto declaration::default_to_private() & -> void { static_cast(CPP2_UFCS(make_private)((*cpp2::impl::assert_not_null(n)))); } + auto declaration::default_to_private() & -> void { static_cast(CPP2_UFCS(make_private)((*n))); } #line 272 "reflect.h2" - [[nodiscard]] auto declaration::make_public() & -> bool { return CPP2_UFCS(make_public)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::make_public() & -> bool { return CPP2_UFCS(make_public)((*n)); } #line 273 "reflect.h2" - [[nodiscard]] auto declaration::make_protected() & -> bool { return CPP2_UFCS(make_protected)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::make_protected() & -> bool { return CPP2_UFCS(make_protected)((*n)); } #line 274 "reflect.h2" - [[nodiscard]] auto declaration::make_private() & -> bool { return CPP2_UFCS(make_private)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::make_private() & -> bool { return CPP2_UFCS(make_private)((*n)); } #line 276 "reflect.h2" - [[nodiscard]] auto declaration::has_name() const& -> bool { return CPP2_UFCS(has_name)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::has_name() const& -> bool { return CPP2_UFCS(has_name)((*n)); } #line 277 "reflect.h2" - [[nodiscard]] auto declaration::has_name(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_name)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto declaration::has_name(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_name)((*n), s); } #line 279 "reflect.h2" [[nodiscard]] auto declaration::name() const& -> std::string_view{ - if (has_name()) {return CPP2_UFCS(as_string_view)((*cpp2::impl::assert_not_null(CPP2_UFCS(name)(*cpp2::impl::assert_not_null(n))))); } + if (has_name()) {return CPP2_UFCS(as_string_view)((*CPP2_UFCS(name)(*n))); } else { return ""; } } #line 284 "reflect.h2" - [[nodiscard]] auto declaration::has_initializer() const& -> bool { return CPP2_UFCS(has_initializer)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::has_initializer() const& -> bool { return CPP2_UFCS(has_initializer)((*n)); } #line 286 "reflect.h2" - [[nodiscard]] auto declaration::is_global() const& -> bool { return CPP2_UFCS(is_global)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_global() const& -> bool { return CPP2_UFCS(is_global)((*n)); } #line 287 "reflect.h2" - [[nodiscard]] auto declaration::is_function() const& -> bool { return CPP2_UFCS(is_function)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_function() const& -> bool { return CPP2_UFCS(is_function)((*n)); } #line 288 "reflect.h2" - [[nodiscard]] auto declaration::is_object() const& -> bool { return CPP2_UFCS(is_object)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_object() const& -> bool { return CPP2_UFCS(is_object)((*n)); } #line 289 "reflect.h2" - [[nodiscard]] auto declaration::is_base_object() const& -> bool { return CPP2_UFCS(is_base_object)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_base_object() const& -> bool { return CPP2_UFCS(is_base_object)((*n)); } #line 290 "reflect.h2" - [[nodiscard]] auto declaration::is_member_object() const& -> bool { return CPP2_UFCS(is_member_object)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_member_object() const& -> bool { return CPP2_UFCS(is_member_object)((*n)); } #line 291 "reflect.h2" - [[nodiscard]] auto declaration::is_type() const& -> bool { return CPP2_UFCS(is_type)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_type() const& -> bool { return CPP2_UFCS(is_type)((*n)); } #line 292 "reflect.h2" - [[nodiscard]] auto declaration::is_namespace() const& -> bool { return CPP2_UFCS(is_namespace)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_namespace() const& -> bool { return CPP2_UFCS(is_namespace)((*n)); } #line 293 "reflect.h2" - [[nodiscard]] auto declaration::is_alias() const& -> bool { return CPP2_UFCS(is_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_alias() const& -> bool { return CPP2_UFCS(is_alias)((*n)); } #line 295 "reflect.h2" - [[nodiscard]] auto declaration::is_type_alias() const& -> bool { return CPP2_UFCS(is_type_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_type_alias() const& -> bool { return CPP2_UFCS(is_type_alias)((*n)); } #line 296 "reflect.h2" - [[nodiscard]] auto declaration::is_namespace_alias() const& -> bool { return CPP2_UFCS(is_namespace_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_namespace_alias() const& -> bool { return CPP2_UFCS(is_namespace_alias)((*n)); } #line 297 "reflect.h2" - [[nodiscard]] auto declaration::is_object_alias() const& -> bool { return CPP2_UFCS(is_object_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_object_alias() const& -> bool { return CPP2_UFCS(is_object_alias)((*n)); } #line 299 "reflect.h2" - [[nodiscard]] auto declaration::is_function_expression() const& -> bool { return CPP2_UFCS(is_function_expression)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::is_function_expression() const& -> bool { return CPP2_UFCS(is_function_expression)((*n)); } #line 301 "reflect.h2" [[nodiscard]] auto declaration::as_function() const& -> function_declaration { return function_declaration(n, (*this)); } @@ -1069,28 +1072,28 @@ declaration_base::declaration_base(declaration_base const& that) [[nodiscard]] auto declaration::as_alias() const& -> alias_declaration { return alias_declaration(n, (*this)); } #line 306 "reflect.h2" - [[nodiscard]] auto declaration::get_parent() const& -> declaration { return declaration((*cpp2::impl::assert_not_null(n)).parent_declaration, (*this)); } + [[nodiscard]] auto declaration::get_parent() const& -> declaration { return declaration((*n).parent_declaration, (*this)); } #line 308 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_function() const& -> bool { return CPP2_UFCS(parent_is_function)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_function() const& -> bool { return CPP2_UFCS(parent_is_function)((*n)); } #line 309 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_object() const& -> bool { return CPP2_UFCS(parent_is_object)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_object() const& -> bool { return CPP2_UFCS(parent_is_object)((*n)); } #line 310 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_type() const& -> bool { return CPP2_UFCS(parent_is_type)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_type() const& -> bool { return CPP2_UFCS(parent_is_type)((*n)); } #line 311 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_namespace() const& -> bool { return CPP2_UFCS(parent_is_namespace)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_namespace() const& -> bool { return CPP2_UFCS(parent_is_namespace)((*n)); } #line 312 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_alias() const& -> bool { return CPP2_UFCS(parent_is_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_alias() const& -> bool { return CPP2_UFCS(parent_is_alias)((*n)); } #line 314 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_type_alias() const& -> bool { return CPP2_UFCS(parent_is_type_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_type_alias() const& -> bool { return CPP2_UFCS(parent_is_type_alias)((*n)); } #line 315 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_namespace_alias() const& -> bool { return CPP2_UFCS(parent_is_namespace_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_namespace_alias() const& -> bool { return CPP2_UFCS(parent_is_namespace_alias)((*n)); } #line 316 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_object_alias() const& -> bool { return CPP2_UFCS(parent_is_object_alias)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_object_alias() const& -> bool { return CPP2_UFCS(parent_is_object_alias)((*n)); } #line 318 "reflect.h2" - [[nodiscard]] auto declaration::parent_is_polymorphic() const& -> bool { return CPP2_UFCS(parent_is_polymorphic)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto declaration::parent_is_polymorphic() const& -> bool { return CPP2_UFCS(parent_is_polymorphic)((*n)); } #line 320 "reflect.h2" auto declaration::mark_for_removal_from_enclosing_type() & -> void @@ -1098,7 +1101,7 @@ declaration_base::declaration_base(declaration_base const& that) { if (cpp2::type_safety.is_active() && !(parent_is_type()) ) { cpp2::type_safety.report_violation(""); } #line 323 "reflect.h2" - auto test {CPP2_UFCS(type_member_mark_for_removal)((*cpp2::impl::assert_not_null(n)))}; + auto test {CPP2_UFCS(type_member_mark_for_removal)((*n))}; if (cpp2::cpp2_default.is_active() && !(cpp2::move(test)) ) { cpp2::cpp2_default.report_violation(""); }// ... to ensure this assert is true } @@ -1116,95 +1119,101 @@ declaration::declaration(declaration const& that) #line 341 "reflect.h2" { - if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_function)((*cpp2::impl::assert_not_null(n)))) ) { cpp2::cpp2_default.report_violation(""); } + if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_function)((*n))) ) { cpp2::cpp2_default.report_violation(""); } } #line 346 "reflect.h2" - [[nodiscard]] auto function_declaration::index_of_parameter_named(cpp2::impl::in s) const& -> int { return CPP2_UFCS(index_of_parameter_named)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto function_declaration::index_of_parameter_named(cpp2::impl::in s) const& -> int { return CPP2_UFCS(index_of_parameter_named)((*n), s); } #line 347 "reflect.h2" - [[nodiscard]] auto function_declaration::has_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_parameter_named)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto function_declaration::has_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_parameter_named)((*n), s); } #line 348 "reflect.h2" - [[nodiscard]] auto function_declaration::has_in_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_in_parameter_named)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto function_declaration::has_in_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_in_parameter_named)((*n), s); } #line 349 "reflect.h2" - [[nodiscard]] auto function_declaration::has_out_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_out_parameter_named)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto function_declaration::has_copy_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_copy_parameter_named)((*n), s); } #line 350 "reflect.h2" - [[nodiscard]] auto function_declaration::has_move_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_move_parameter_named)((*cpp2::impl::assert_not_null(n)), s); } + [[nodiscard]] auto function_declaration::has_inout_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_inout_parameter_named)((*n), s); } #line 351 "reflect.h2" - [[nodiscard]] auto function_declaration::first_parameter_name() const& -> std::string { return CPP2_UFCS(first_parameter_name)((*cpp2::impl::assert_not_null(n))); } - + [[nodiscard]] auto function_declaration::has_out_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_out_parameter_named)((*n), s); } +#line 352 "reflect.h2" + [[nodiscard]] auto function_declaration::has_move_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_move_parameter_named)((*n), s); } #line 353 "reflect.h2" - [[nodiscard]] auto function_declaration::has_parameter_with_name_and_pass(cpp2::impl::in s, cpp2::impl::in pass) const& -> bool { - return CPP2_UFCS(has_parameter_with_name_and_pass)((*cpp2::impl::assert_not_null(n)), s, pass); } -#line 355 "reflect.h2" - [[nodiscard]] auto function_declaration::is_function_with_this() const& -> bool { return CPP2_UFCS(is_function_with_this)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::has_forward_parameter_named(cpp2::impl::in s) const& -> bool { return CPP2_UFCS(has_forward_parameter_named)((*n), s); } +#line 354 "reflect.h2" + [[nodiscard]] auto function_declaration::first_parameter_name() const& -> std::string { return CPP2_UFCS(first_parameter_name)((*n)); } + #line 356 "reflect.h2" - [[nodiscard]] auto function_declaration::is_virtual() const& -> bool { return CPP2_UFCS(is_virtual_function)((*cpp2::impl::assert_not_null(n))); } -#line 357 "reflect.h2" - [[nodiscard]] auto function_declaration::is_defaultable() const& -> bool { return CPP2_UFCS(is_defaultable_function)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::has_parameter_with_name_and_pass(cpp2::impl::in s, cpp2::impl::in pass) const& -> bool { + return CPP2_UFCS(has_parameter_with_name_and_pass)((*n), s, pass); } #line 358 "reflect.h2" - [[nodiscard]] auto function_declaration::is_constructor() const& -> bool { return CPP2_UFCS(is_constructor)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_function_with_this() const& -> bool { return CPP2_UFCS(is_function_with_this)((*n)); } #line 359 "reflect.h2" - [[nodiscard]] auto function_declaration::is_default_constructor() const& -> bool { return CPP2_UFCS(is_default_constructor)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_virtual() const& -> bool { return CPP2_UFCS(is_virtual_function)((*n)); } #line 360 "reflect.h2" - [[nodiscard]] auto function_declaration::is_move() const& -> bool { return CPP2_UFCS(is_move)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_defaultable() const& -> bool { return CPP2_UFCS(is_defaultable_function)((*n)); } #line 361 "reflect.h2" - [[nodiscard]] auto function_declaration::is_swap() const& -> bool { return CPP2_UFCS(is_swap)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_constructor() const& -> bool { return CPP2_UFCS(is_constructor)((*n)); } #line 362 "reflect.h2" - [[nodiscard]] auto function_declaration::is_constructor_with_that() const& -> bool { return CPP2_UFCS(is_constructor_with_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_default_constructor() const& -> bool { return CPP2_UFCS(is_default_constructor)((*n)); } #line 363 "reflect.h2" - [[nodiscard]] auto function_declaration::is_constructor_with_in_that() const& -> bool { return CPP2_UFCS(is_constructor_with_in_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_move() const& -> bool { return CPP2_UFCS(is_move)((*n)); } #line 364 "reflect.h2" - [[nodiscard]] auto function_declaration::is_constructor_with_move_that() const& -> bool { return CPP2_UFCS(is_constructor_with_move_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_swap() const& -> bool { return CPP2_UFCS(is_swap)((*n)); } #line 365 "reflect.h2" - [[nodiscard]] auto function_declaration::is_assignment() const& -> bool { return CPP2_UFCS(is_assignment)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_constructor_with_that() const& -> bool { return CPP2_UFCS(is_constructor_with_that)((*n)); } #line 366 "reflect.h2" - [[nodiscard]] auto function_declaration::is_assignment_with_that() const& -> bool { return CPP2_UFCS(is_assignment_with_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_constructor_with_in_that() const& -> bool { return CPP2_UFCS(is_constructor_with_in_that)((*n)); } #line 367 "reflect.h2" - [[nodiscard]] auto function_declaration::is_assignment_with_in_that() const& -> bool { return CPP2_UFCS(is_assignment_with_in_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_constructor_with_move_that() const& -> bool { return CPP2_UFCS(is_constructor_with_move_that)((*n)); } #line 368 "reflect.h2" - [[nodiscard]] auto function_declaration::is_assignment_with_move_that() const& -> bool { return CPP2_UFCS(is_assignment_with_move_that)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_assignment() const& -> bool { return CPP2_UFCS(is_assignment)((*n)); } #line 369 "reflect.h2" - [[nodiscard]] auto function_declaration::is_destructor() const& -> bool { return CPP2_UFCS(is_destructor)((*cpp2::impl::assert_not_null(n))); } - + [[nodiscard]] auto function_declaration::is_assignment_with_that() const& -> bool { return CPP2_UFCS(is_assignment_with_that)((*n)); } +#line 370 "reflect.h2" + [[nodiscard]] auto function_declaration::is_assignment_with_in_that() const& -> bool { return CPP2_UFCS(is_assignment_with_in_that)((*n)); } #line 371 "reflect.h2" - [[nodiscard]] auto function_declaration::is_copy_or_move() const& -> bool { return is_constructor_with_that() || is_assignment_with_that(); } + [[nodiscard]] auto function_declaration::is_assignment_with_move_that() const& -> bool { return CPP2_UFCS(is_assignment_with_move_that)((*n)); } +#line 372 "reflect.h2" + [[nodiscard]] auto function_declaration::is_destructor() const& -> bool { return CPP2_UFCS(is_destructor)((*n)); } -#line 373 "reflect.h2" - [[nodiscard]] auto function_declaration::has_declared_return_type() const& -> bool { return CPP2_UFCS(has_declared_return_type)((*cpp2::impl::assert_not_null(n))); } #line 374 "reflect.h2" - [[nodiscard]] auto function_declaration::has_deduced_return_type() const& -> bool { return CPP2_UFCS(has_deduced_return_type)((*cpp2::impl::assert_not_null(n))); } -#line 375 "reflect.h2" - [[nodiscard]] auto function_declaration::has_bool_return_type() const& -> bool { return CPP2_UFCS(has_bool_return_type)((*cpp2::impl::assert_not_null(n))); } -#line 376 "reflect.h2" - [[nodiscard]] auto function_declaration::has_non_void_return_type() const& -> bool { return CPP2_UFCS(has_non_void_return_type)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::is_copy_or_move() const& -> bool { return is_constructor_with_that() || is_assignment_with_that(); } +#line 376 "reflect.h2" + [[nodiscard]] auto function_declaration::has_declared_return_type() const& -> bool { return CPP2_UFCS(has_declared_return_type)((*n)); } +#line 377 "reflect.h2" + [[nodiscard]] auto function_declaration::has_deduced_return_type() const& -> bool { return CPP2_UFCS(has_deduced_return_type)((*n)); } #line 378 "reflect.h2" - [[nodiscard]] auto function_declaration::unnamed_return_type() const& -> std::string { return CPP2_UFCS(unnamed_return_type_to_string)((*cpp2::impl::assert_not_null(n))); } + [[nodiscard]] auto function_declaration::has_bool_return_type() const& -> bool { return CPP2_UFCS(has_bool_return_type)((*n)); } +#line 379 "reflect.h2" + [[nodiscard]] auto function_declaration::has_non_void_return_type() const& -> bool { return CPP2_UFCS(has_non_void_return_type)((*n)); } + +#line 381 "reflect.h2" + [[nodiscard]] auto function_declaration::unnamed_return_type() const& -> std::string { return CPP2_UFCS(unnamed_return_type_to_string)((*n)); } -#line 380 "reflect.h2" +#line 383 "reflect.h2" [[nodiscard]] auto function_declaration::get_parameters() const& -> std::vector { std::vector ret {}; - for ( auto const& param : CPP2_UFCS(get_function_parameters)((*cpp2::impl::assert_not_null(n))) ) { - static_cast(CPP2_UFCS(emplace_back)(ret, &*cpp2::impl::assert_not_null((*cpp2::impl::assert_not_null(param)).declaration), (*this))); + for ( auto const& param : CPP2_UFCS(get_function_parameters)((*n)) ) { + static_cast(CPP2_UFCS(emplace_back)(ret, &*(*param).declaration, (*this))); } return ret; } -#line 390 "reflect.h2" - [[nodiscard]] auto function_declaration::is_binary_comparison_function() const& -> bool { return CPP2_UFCS(is_binary_comparison_function)((*cpp2::impl::assert_not_null(n))); } +#line 393 "reflect.h2" + [[nodiscard]] auto function_declaration::is_binary_comparison_function() const& -> bool { return CPP2_UFCS(is_binary_comparison_function)((*n)); } -#line 392 "reflect.h2" - auto function_declaration::default_to_virtual() & -> void { static_cast(CPP2_UFCS(make_function_virtual)((*cpp2::impl::assert_not_null(n)))); } +#line 395 "reflect.h2" + auto function_declaration::default_to_virtual() & -> void { static_cast(CPP2_UFCS(make_function_virtual)((*n))); } -#line 394 "reflect.h2" - [[nodiscard]] auto function_declaration::make_virtual() & -> bool { return CPP2_UFCS(make_function_virtual)((*cpp2::impl::assert_not_null(n))); } +#line 397 "reflect.h2" + [[nodiscard]] auto function_declaration::make_virtual() & -> bool { return CPP2_UFCS(make_function_virtual)((*n)); } -#line 396 "reflect.h2" +#line 399 "reflect.h2" auto function_declaration::add_initializer(cpp2::impl::in source) & -> void -#line 399 "reflect.h2" +#line 402 "reflect.h2" { if ((*this).is_active() && !(!(has_initializer())) ) { (*this).report_violation(CPP2_CONTRACT_MSG("cannot add an initializer to a function that already has one")); } if ((*this).is_active() && !(parent_is_type()) ) { (*this).report_violation(CPP2_CONTRACT_MSG("cannot add an initializer to a function that isn't in a type scope")); } @@ -1213,48 +1222,48 @@ declaration::declaration(declaration const& that) //require( parent_is_type(), // "cannot add an initializer to a function that isn't in a type scope"); -#line 405 "reflect.h2" +#line 408 "reflect.h2" auto stmt {parse_statement(source)}; if (!((cpp2::impl::as_(stmt)))) { error("cannot add an initializer that is not a valid statement"); return ; } - require(CPP2_UFCS(add_function_initializer)((*cpp2::impl::assert_not_null(n)), std::move(cpp2::move(stmt))), + require(CPP2_UFCS(add_function_initializer)((*n), std::move(cpp2::move(stmt))), std::string("unexpected error while attempting to add initializer")); } function_declaration::function_declaration(function_declaration const& that) : declaration{ static_cast(that) }{} -#line 423 "reflect.h2" +#line 426 "reflect.h2" object_declaration::object_declaration( declaration_node* n_, cpp2::impl::in s ) : declaration{ n_, s } -#line 428 "reflect.h2" +#line 431 "reflect.h2" { - if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_object)((*cpp2::impl::assert_not_null(n)))) ) { cpp2::cpp2_default.report_violation(""); } + if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_object)((*n))) ) { cpp2::cpp2_default.report_violation(""); } } -#line 433 "reflect.h2" - [[nodiscard]] auto object_declaration::is_const() const& -> bool { return CPP2_UFCS(is_const)((*cpp2::impl::assert_not_null(n))); } -#line 434 "reflect.h2" - [[nodiscard]] auto object_declaration::has_wildcard_type() const& -> bool { return CPP2_UFCS(has_wildcard_type)((*cpp2::impl::assert_not_null(n))); } - #line 436 "reflect.h2" + [[nodiscard]] auto object_declaration::is_const() const& -> bool { return CPP2_UFCS(is_const)((*n)); } +#line 437 "reflect.h2" + [[nodiscard]] auto object_declaration::has_wildcard_type() const& -> bool { return CPP2_UFCS(has_wildcard_type)((*n)); } + +#line 439 "reflect.h2" [[nodiscard]] auto object_declaration::type() const& -> std::string{ - auto ret {CPP2_UFCS(object_type)((*cpp2::impl::assert_not_null(n)))}; + auto ret {CPP2_UFCS(object_type)((*n))}; require(!(contains(ret, "(*ERROR*)")), "cannot to_string this type: " + ret); return ret; } -#line 443 "reflect.h2" +#line 446 "reflect.h2" [[nodiscard]] auto object_declaration::initializer() const& -> std::string{ - auto ret {CPP2_UFCS(object_initializer)((*cpp2::impl::assert_not_null(n)))}; + auto ret {CPP2_UFCS(object_initializer)((*n))}; require(!(contains(ret, "(*ERROR*)")), "cannot to_string this initializer: " + ret); return ret; @@ -1263,20 +1272,20 @@ declaration::declaration(declaration const& that) object_declaration::object_declaration(object_declaration const& that) : declaration{ static_cast(that) }{} -#line 459 "reflect.h2" +#line 462 "reflect.h2" type_declaration::type_declaration( declaration_node* n_, cpp2::impl::in s ) : declaration{ n_, s } -#line 464 "reflect.h2" +#line 467 "reflect.h2" { - if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_type)((*cpp2::impl::assert_not_null(n)))) ) { cpp2::cpp2_default.report_violation(""); } + if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_type)((*n))) ) { cpp2::cpp2_default.report_violation(""); } } -#line 469 "reflect.h2" +#line 472 "reflect.h2" auto type_declaration::reserve_names(cpp2::impl::in name, auto&& ...etc) const& -> void { // etc is not declared ':string_view' for compatibility with GCC 10.x for ( @@ -1289,103 +1298,103 @@ declaration::declaration(declaration const& that) } } -#line 481 "reflect.h2" - [[nodiscard]] auto type_declaration::is_polymorphic() const& -> bool { return CPP2_UFCS(is_polymorphic)((*cpp2::impl::assert_not_null(n))); } -#line 482 "reflect.h2" - [[nodiscard]] auto type_declaration::is_final() const& -> bool { return CPP2_UFCS(is_type_final)((*cpp2::impl::assert_not_null(n))); } -#line 483 "reflect.h2" - [[nodiscard]] auto type_declaration::make_final() & -> bool { return CPP2_UFCS(make_type_final)((*cpp2::impl::assert_not_null(n))); } - +#line 484 "reflect.h2" + [[nodiscard]] auto type_declaration::is_polymorphic() const& -> bool { return CPP2_UFCS(is_polymorphic)((*n)); } #line 485 "reflect.h2" + [[nodiscard]] auto type_declaration::is_final() const& -> bool { return CPP2_UFCS(is_type_final)((*n)); } +#line 486 "reflect.h2" + [[nodiscard]] auto type_declaration::make_final() & -> bool { return CPP2_UFCS(make_type_final)((*n)); } + +#line 488 "reflect.h2" [[nodiscard]] auto type_declaration::get_member_functions() const& -> std::vector { std::vector ret {}; for ( - auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::functions) ) { + auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::functions) ) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 496 "reflect.h2" +#line 499 "reflect.h2" [[nodiscard]] auto type_declaration::get_member_functions_needing_initializer() const& -> std::vector { std::vector ret {}; for ( - auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::functions) ) - if ( !(CPP2_UFCS(has_initializer)((*cpp2::impl::assert_not_null(d)))) - && !(CPP2_UFCS(is_virtual_function)((*cpp2::impl::assert_not_null(d)))) - && !(CPP2_UFCS(is_defaultable_function)((*cpp2::impl::assert_not_null(d))))) + auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::functions) ) + if ( !(CPP2_UFCS(has_initializer)((*d))) + && !(CPP2_UFCS(is_virtual_function)((*d))) + && !(CPP2_UFCS(is_defaultable_function)((*d)))) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 511 "reflect.h2" +#line 514 "reflect.h2" [[nodiscard]] auto type_declaration::get_member_objects() const& -> std::vector { std::vector ret {}; - for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::objects) ) { + for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::objects) ) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 521 "reflect.h2" +#line 524 "reflect.h2" [[nodiscard]] auto type_declaration::get_member_types() const& -> std::vector { std::vector ret {}; - for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::types) ) { + for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::types) ) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 531 "reflect.h2" +#line 534 "reflect.h2" [[nodiscard]] auto type_declaration::get_member_aliases() const& -> std::vector { std::vector ret {}; - for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::aliases) ) { + for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::aliases) ) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 541 "reflect.h2" +#line 544 "reflect.h2" [[nodiscard]] auto type_declaration::get_members() const& -> std::vector { std::vector ret {}; - for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*cpp2::impl::assert_not_null(n)), declaration_node::all) ) { + for ( auto const& d : CPP2_UFCS(get_type_scope_declarations)((*n), declaration_node::all) ) { static_cast(CPP2_UFCS(emplace_back)(ret, d, (*this))); } return ret; } -#line 551 "reflect.h2" +#line 554 "reflect.h2" [[nodiscard]] auto type_declaration::query_declared_value_set_functions() const& -> query_declared_value_set_functions_ret -#line 558 "reflect.h2" +#line 561 "reflect.h2" { cpp2::impl::deferred_init out_this_in_that; cpp2::impl::deferred_init out_this_move_that; cpp2::impl::deferred_init inout_this_in_that; cpp2::impl::deferred_init inout_this_move_that; -#line 559 "reflect.h2" - auto declared {CPP2_UFCS(find_declared_value_set_functions)((*cpp2::impl::assert_not_null(n)))}; +#line 562 "reflect.h2" + auto declared {CPP2_UFCS(find_declared_value_set_functions)((*n))}; out_this_in_that.construct(declared.out_this_in_that != nullptr); - out_this_move_that.construct(declared.out_this_move_that != nullptr); - inout_this_in_that.construct(declared.inout_this_in_that != nullptr); - inout_this_move_that.construct(cpp2::move(declared).inout_this_move_that != nullptr); + out_this_move_that.construct(declared.out_this_move_that!=nullptr); + inout_this_in_that.construct(declared.inout_this_in_that!=nullptr); + inout_this_move_that.construct(cpp2::move(declared).inout_this_move_that!=nullptr); return { std::move(out_this_in_that.value()), std::move(out_this_move_that.value()), std::move(inout_this_in_that.value()), std::move(inout_this_move_that.value()) }; } -#line 566 "reflect.h2" +#line 569 "reflect.h2" auto type_declaration::add_member(cpp2::impl::in source) & -> void { auto decl {parse_statement(source)}; @@ -1393,47 +1402,47 @@ declaration::declaration(declaration const& that) error("the provided source string is not a valid statement"); return ; } - if (!(CPP2_UFCS(is_declaration)((*cpp2::impl::assert_not_null(decl))))) { + if (!(CPP2_UFCS(is_declaration)((*decl)))) { error("cannot add a member that is not a declaration"); } - require(CPP2_UFCS(add_type_member)((*cpp2::impl::assert_not_null(n)), std::move(cpp2::move(decl))), + require(CPP2_UFCS(add_type_member)((*n), std::move(cpp2::move(decl))), std::string("unexpected error while attempting to add member:\n") + source); } -#line 580 "reflect.h2" - auto type_declaration::remove_marked_members() & -> void { CPP2_UFCS(type_remove_marked_members)((*cpp2::impl::assert_not_null(n))); } -#line 581 "reflect.h2" - auto type_declaration::remove_all_members() & -> void { CPP2_UFCS(type_remove_all_members)((*cpp2::impl::assert_not_null(n))); } - #line 583 "reflect.h2" - auto type_declaration::disable_member_function_generation() & -> void { CPP2_UFCS(type_disable_member_function_generation)((*cpp2::impl::assert_not_null(n))); } + auto type_declaration::remove_marked_members() & -> void { CPP2_UFCS(type_remove_marked_members)((*n)); } +#line 584 "reflect.h2" + auto type_declaration::remove_all_members() & -> void { CPP2_UFCS(type_remove_all_members)((*n)); } + +#line 586 "reflect.h2" + auto type_declaration::disable_member_function_generation() & -> void { CPP2_UFCS(type_disable_member_function_generation)((*n)); } type_declaration::type_declaration(type_declaration const& that) : declaration{ static_cast(that) }{} -#line 594 "reflect.h2" +#line 597 "reflect.h2" alias_declaration::alias_declaration( declaration_node* n_, cpp2::impl::in s ) : declaration{ n_, s } -#line 599 "reflect.h2" +#line 602 "reflect.h2" { - if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_alias)((*cpp2::impl::assert_not_null(n)))) ) { cpp2::cpp2_default.report_violation(""); } + if (cpp2::cpp2_default.is_active() && !(CPP2_UFCS(is_alias)((*n))) ) { cpp2::cpp2_default.report_violation(""); } } alias_declaration::alias_declaration(alias_declaration const& that) : declaration{ static_cast(that) }{} -#line 618 "reflect.h2" +#line 621 "reflect.h2" auto add_virtual_destructor(meta::type_declaration& t) -> void { CPP2_UFCS(add_member)(t, "operator=: (virtual move this) = { }"); } -#line 636 "reflect.h2" +#line 639 "reflect.h2" auto interface(meta::type_declaration& t) -> void { auto has_dtor {false}; @@ -1460,7 +1469,7 @@ auto interface(meta::type_declaration& t) -> void } } -#line 682 "reflect.h2" +#line 685 "reflect.h2" auto polymorphic_base(meta::type_declaration& t) -> void { auto has_dtor {false}; @@ -1485,7 +1494,7 @@ auto polymorphic_base(meta::type_declaration& t) -> void } } -#line 727 "reflect.h2" +#line 730 "reflect.h2" auto ordered_impl( meta::type_declaration& t, cpp2::impl::in ordering @@ -1498,7 +1507,7 @@ auto ordered_impl( if (CPP2_UFCS(has_name)(mf, "operator<=>")) { has_spaceship = true; auto return_name {CPP2_UFCS(unnamed_return_type)(mf)}; - if (CPP2_UFCS(find)(return_name, ordering) == return_name.npos) + if (CPP2_UFCS(find)(return_name, ordering)==return_name.npos) { CPP2_UFCS(error)(mf, "operator<=> must return std::" + cpp2::impl::as_(ordering)); } @@ -1510,25 +1519,25 @@ auto ordered_impl( } } -#line 756 "reflect.h2" +#line 759 "reflect.h2" auto ordered(meta::type_declaration& t) -> void { ordered_impl(t, "strong_ordering"); } -#line 764 "reflect.h2" +#line 767 "reflect.h2" auto weakly_ordered(meta::type_declaration& t) -> void { ordered_impl(t, "weak_ordering"); } -#line 772 "reflect.h2" +#line 775 "reflect.h2" auto partially_ordered(meta::type_declaration& t) -> void { ordered_impl(t, "partial_ordering"); } -#line 794 "reflect.h2" +#line 797 "reflect.h2" auto copyable(meta::type_declaration& t) -> void { // If the user explicitly wrote any of the copy/move functions, @@ -1550,7 +1559,7 @@ auto copyable(meta::type_declaration& t) -> void }} } -#line 822 "reflect.h2" +#line 825 "reflect.h2" auto basic_value(meta::type_declaration& t) -> void { CPP2_UFCS(copyable)(t); @@ -1569,28 +1578,28 @@ auto basic_value(meta::type_declaration& t) -> void } } -#line 850 "reflect.h2" +#line 853 "reflect.h2" auto value(meta::type_declaration& t) -> void { CPP2_UFCS(ordered)(t); CPP2_UFCS(basic_value)(t); } -#line 856 "reflect.h2" +#line 859 "reflect.h2" auto weakly_ordered_value(meta::type_declaration& t) -> void { CPP2_UFCS(weakly_ordered)(t); CPP2_UFCS(basic_value)(t); } -#line 862 "reflect.h2" +#line 865 "reflect.h2" auto partially_ordered_value(meta::type_declaration& t) -> void { CPP2_UFCS(partially_ordered)(t); CPP2_UFCS(basic_value)(t); } -#line 891 "reflect.h2" +#line 894 "reflect.h2" auto cpp1_rule_of_zero(meta::type_declaration& t) -> void { for ( auto& mf : CPP2_UFCS(get_member_functions)(t) ) @@ -1603,7 +1612,7 @@ auto cpp1_rule_of_zero(meta::type_declaration& t) -> void CPP2_UFCS(disable_member_function_generation)(t); } -#line 928 "reflect.h2" +#line 931 "reflect.h2" auto cpp2_struct(meta::type_declaration& t) -> void { for ( auto& m : CPP2_UFCS(get_members)(t) ) @@ -1621,7 +1630,7 @@ auto cpp2_struct(meta::type_declaration& t) -> void CPP2_UFCS(cpp1_rule_of_zero)(t); } -#line 969 "reflect.h2" +#line 972 "reflect.h2" auto basic_enum( meta::type_declaration& t, auto const& nextval, @@ -1646,7 +1655,7 @@ auto basic_enum( { std::string value{"-1"}; -#line 992 "reflect.h2" +#line 995 "reflect.h2" for ( auto const& m : CPP2_UFCS(get_members)(t) ) if ( CPP2_UFCS(is_member_object)(m)) @@ -1668,11 +1677,11 @@ std::string value{"-1"}; nextval(value, cpp2::move(init)); - auto v {std::strtoll(&CPP2_ASSERT_IN_BOUNDS_LITERAL(value, 0), nullptr, 10)}; // for non-numeric values we'll just get 0 which is okay for now - if (cpp2::impl::cmp_less(v,min_value)) { + auto v {std::strtoll(&value[0], nullptr, 10)}; // for non-numeric values we'll just get 0 which is okay for now + if (vmax_value) { max_value = cpp2::move(v); } @@ -1685,29 +1694,29 @@ std::string value{"-1"}; } } -#line 1029 "reflect.h2" +#line 1032 "reflect.h2" if ((CPP2_UFCS(empty)(enumerators))) { CPP2_UFCS(error)(t, "an enumeration must contain at least one enumerator value"); return ; } // Compute the default underlying type, if it wasn't explicitly specified - if (underlying_type.value() == "") + if (underlying_type.value()=="") { CPP2_UFCS(require)(t, !(cpp2::move(found_non_numeric)), "if you write an enumerator with a non-numeric-literal value, you must specify the enumeration's underlying type"); if (!(bitwise)) { - if (cpp2::impl::cmp_greater_eq(min_value,std::numeric_limits::min()) && cpp2::impl::cmp_less_eq(max_value,std::numeric_limits::max())) { + if (min_value>=std::numeric_limits::min() && max_value<=std::numeric_limits::max()) { underlying_type.value() = "i8"; } - else {if (cpp2::impl::cmp_greater_eq(min_value,std::numeric_limits::min()) && cpp2::impl::cmp_less_eq(max_value,std::numeric_limits::max())) { + else {if (min_value>=std::numeric_limits::min() && max_value<=std::numeric_limits::max()) { underlying_type.value() = "i16"; } - else {if (cpp2::impl::cmp_greater_eq(min_value,std::numeric_limits::min()) && cpp2::impl::cmp_less_eq(max_value,std::numeric_limits::max())) { + else {if (min_value>=std::numeric_limits::min() && max_value<=std::numeric_limits::max()) { underlying_type.value() = "i32"; } - else {if (cpp2::impl::cmp_greater_eq(cpp2::move(min_value),std::numeric_limits::min()) && cpp2::impl::cmp_less_eq(cpp2::move(max_value),std::numeric_limits::max())) { + else {if (cpp2::move(min_value)>=std::numeric_limits::min() && cpp2::move(max_value)<=std::numeric_limits::max()) { underlying_type.value() = "i64"; } else { @@ -1716,13 +1725,13 @@ std::string value{"-1"}; } else { auto umax {cpp2::move(max_value) * cpp2::impl::as_()}; - if (cpp2::impl::cmp_less_eq(umax,std::numeric_limits::max())) { + if (umax<=std::numeric_limits::max()) { underlying_type.value() = "u8"; } - else {if (cpp2::impl::cmp_less_eq(umax,std::numeric_limits::max())) { + else {if (umax<=std::numeric_limits::max()) { underlying_type.value() = "u16"; } - else {if (cpp2::impl::cmp_less_eq(cpp2::move(umax),std::numeric_limits::max())) { + else {if (cpp2::move(umax)<=std::numeric_limits::max()) { underlying_type.value() = "u32"; } else { @@ -1731,7 +1740,7 @@ std::string value{"-1"}; } } -#line 1075 "reflect.h2" +#line 1078 "reflect.h2" // 2. Replace: Erase the contents and replace with modified contents // // Note that most values and functions are declared as '==' compile-time values, i.e. Cpp1 'constexpr' @@ -1740,7 +1749,7 @@ std::string value{"-1"}; // Generate the 'none' value if appropriate, and use that or // else the first enumerator as the default-constructed value - auto default_value {CPP2_ASSERT_IN_BOUNDS_LITERAL(enumerators, 0).name}; + auto default_value {enumerators[0].name}; if (bitwise) { default_value = "none"; value_member_info e {"none", "", "0"}; @@ -1779,7 +1788,7 @@ std::string to_string{" to_string: (this) -> std::string = { \n"}; // Provide a 'to_string' function to print enumerator name(s) -#line 1120 "reflect.h2" +#line 1123 "reflect.h2" { if (bitwise) { to_string += " _ret : std::string = \"(\";\n"; @@ -1789,9 +1798,9 @@ std::string to_string{" to_string: (this) -> std::string = { \n"}; for ( auto const& e : cpp2::move(enumerators) ) { - if (e.name != "_") {// ignore unnamed values + if (e.name!="_") { // ignore unnamed values if (bitwise) { - if (e.name != "none") { + if (e.name!="none") { to_string += (" if (this & " + cpp2::to_string(e.name) + ") == " + cpp2::to_string(e.name) + " { _ret += _comma + \"" + cpp2::to_string(e.name) + "\"; _comma = \", \"; }\n"); } } @@ -1811,10 +1820,10 @@ std::string to_string{" to_string: (this) -> std::string = { \n"}; CPP2_UFCS(add_member)(t, cpp2::move(to_string)); } } -#line 1150 "reflect.h2" +#line 1153 "reflect.h2" } -#line 1162 "reflect.h2" +#line 1165 "reflect.h2" auto cpp2_enum(meta::type_declaration& t) -> void { // Let basic_enum do its thing, with an incrementing value generator @@ -1823,7 +1832,7 @@ auto cpp2_enum(meta::type_declaration& t) -> void if (!(CPP2_UFCS(empty)(specified_value))) { value = specified_value; }else { - auto v {std::strtoll(&CPP2_ASSERT_IN_BOUNDS_LITERAL(value, 0), nullptr, 10)}; + auto v {std::strtoll(&value[0], nullptr, 10)}; value = cpp2::impl::as_((cpp2::move(v) + 1)); } }, @@ -1831,7 +1840,7 @@ auto cpp2_enum(meta::type_declaration& t) -> void ); } -#line 1189 "reflect.h2" +#line 1192 "reflect.h2" auto flag_enum(meta::type_declaration& t) -> void { // Let basic_enum do its thing, with a power-of-two value generator @@ -1840,8 +1849,8 @@ auto flag_enum(meta::type_declaration& t) -> void if (!(CPP2_UFCS(empty)(specified_value))) { value = specified_value; }else { - auto v {std::strtoll(&CPP2_ASSERT_IN_BOUNDS_LITERAL(value, 0), nullptr, 10)}; - if (cpp2::impl::cmp_less(v,1)) { + auto v {std::strtoll(&value[0], nullptr, 10)}; + if (v<1) { value = "1"; } else { @@ -1853,7 +1862,7 @@ auto flag_enum(meta::type_declaration& t) -> void ); } -#line 1235 "reflect.h2" +#line 1238 "reflect.h2" auto cpp2_union(meta::type_declaration& t) -> void { std::vector alternatives {}; @@ -1862,7 +1871,7 @@ auto value{0}; // 1. Gather: All the user-written members, and find/compute the max size -#line 1242 "reflect.h2" +#line 1245 "reflect.h2" for ( auto const& m : CPP2_UFCS(get_members)(t) ) { do @@ -1888,22 +1897,22 @@ auto value{0}; } while (false); ++value; } } -#line 1266 "reflect.h2" +#line 1269 "reflect.h2" std::string discriminator_type {}; - if (cpp2::impl::cmp_less(CPP2_UFCS(ssize)(alternatives),std::numeric_limits::max())) { + if (CPP2_UFCS(ssize)(alternatives)::max()) { discriminator_type = "i8"; } - else {if (cpp2::impl::cmp_less(CPP2_UFCS(ssize)(alternatives),std::numeric_limits::max())) { + else {if (CPP2_UFCS(ssize)(alternatives)::max()) { discriminator_type = "i16"; } - else {if (cpp2::impl::cmp_less(CPP2_UFCS(ssize)(alternatives),std::numeric_limits::max())) { + else {if (CPP2_UFCS(ssize)(alternatives)::max()) { discriminator_type = "i32"; } else { discriminator_type = "i64"; }}} -#line 1281 "reflect.h2" +#line 1284 "reflect.h2" // 2. Replace: Erase the contents and replace with modified contents CPP2_UFCS(remove_marked_members)(t); @@ -1912,7 +1921,7 @@ std::string storage{" _storage: cpp2::aligned_storage t) -> void { std::cout << CPP2_UFCS(print)(t) << "\n"; } -#line 1387 "reflect.h2" +#line 1390 "reflect.h2" auto regex_gen(meta::type_declaration& t) -> void { auto has_default {false}; @@ -2027,7 +2036,7 @@ auto regex_gen(meta::type_declaration& t) -> void } CPP2_UFCS(mark_for_removal_from_enclosing_type)(m); - if (name == prefix) { + if (name==prefix) { if (has_default) { CPP2_UFCS(error)(t, "Type can only contain one default named regular expression."); } @@ -2044,7 +2053,7 @@ auto regex_gen(meta::type_declaration& t) -> void name = CPP2_UFCS(substr)(name, 0, CPP2_UFCS(size)(name) - CPP2_UFCS(size)(postfix)); if (CPP2_UFCS(contains)(expressions, name)) { - CPP2_ASSERT_IN_BOUNDS(expressions, name).second = cpp2::move(expr); + expressions[name].second = cpp2::move(expr); } else { CPP2_UFCS(error)(t, "Expression modifier defined without expression."); @@ -2052,10 +2061,10 @@ auto regex_gen(meta::type_declaration& t) -> void } else { - CPP2_ASSERT_IN_BOUNDS(expressions, name) = std::make_pair(cpp2::move(expr), ""); + expressions[name] = std::make_pair(cpp2::move(expr), ""); } -#line 1435 "reflect.h2" +#line 1438 "reflect.h2" } } @@ -2069,7 +2078,7 @@ auto regex_gen(meta::type_declaration& t) -> void } } -#line 1453 "reflect.h2" +#line 1456 "reflect.h2" [[nodiscard]] auto apply_metafunctions( declaration_node& n, type_declaration& rtype, @@ -2083,7 +2092,7 @@ auto regex_gen(meta::type_declaration& t) -> void for ( auto const& m : CPP2_UFCS(get_members)(rtype) ) { - CPP2_UFCS(require)(m, !(CPP2_UFCS(starts_with)(CPP2_UFCS(name)(m), "_")) || CPP2_UFCS(ssize)(CPP2_UFCS(name)(m)) == 1, + CPP2_UFCS(require)(m, !(CPP2_UFCS(starts_with)(CPP2_UFCS(name)(m), "_")) || CPP2_UFCS(ssize)(CPP2_UFCS(name)(m))==1, "a type that applies a metafunction cannot have a body that declares a name that starts with '_' - those names are reserved for the metafunction implementation"); } @@ -2093,67 +2102,67 @@ auto regex_gen(meta::type_declaration& t) -> void { // Convert the name and any template arguments to strings // and record that in rtype - auto name {CPP2_UFCS(to_string)((*cpp2::impl::assert_not_null(meta)))}; + auto name {CPP2_UFCS(to_string)((*meta))}; name = CPP2_UFCS(substr)(name, 0, CPP2_UFCS(find)(name, '<')); std::vector args {}; for ( - auto const& arg : CPP2_UFCS(template_arguments)((*cpp2::impl::assert_not_null(meta))) ) + auto const& arg : CPP2_UFCS(template_arguments)((*meta)) ) CPP2_UFCS(push_back)(args, CPP2_UFCS(to_string)(arg)); CPP2_UFCS(set_metafunction_name)(rtype, name, args); // Dispatch // - if (name == "interface") { + if (name=="interface") { interface(rtype); } - else {if (name == "polymorphic_base") { + else {if (name=="polymorphic_base") { polymorphic_base(rtype); } - else {if (name == "ordered") { + else {if (name=="ordered") { ordered(rtype); } - else {if (name == "weakly_ordered") { + else {if (name=="weakly_ordered") { weakly_ordered(rtype); } - else {if (name == "partially_ordered") { + else {if (name=="partially_ordered") { partially_ordered(rtype); } - else {if (name == "copyable") { + else {if (name=="copyable") { copyable(rtype); } - else {if (name == "basic_value") { + else {if (name=="basic_value") { basic_value(rtype); } - else {if (name == "value") { + else {if (name=="value") { value(rtype); } - else {if (name == "weakly_ordered_value") { + else {if (name=="weakly_ordered_value") { weakly_ordered_value(rtype); } - else {if (name == "partially_ordered_value") { + else {if (name=="partially_ordered_value") { partially_ordered_value(rtype); } - else {if (name == "cpp1_rule_of_zero") { + else {if (name=="cpp1_rule_of_zero") { cpp1_rule_of_zero(rtype); } - else {if (name == "struct") { + else {if (name=="struct") { cpp2_struct(rtype); } - else {if (name == "enum") { + else {if (name=="enum") { cpp2_enum(rtype); } - else {if (name == "flag_enum") { + else {if (name=="flag_enum") { flag_enum(rtype); } - else {if (name == "union") { + else {if (name=="union") { cpp2_union(rtype); } - else {if (name == "print") { + else {if (name=="print") { print(rtype); } - else {if (name == "regex") { + else {if (name=="regex") { regex_gen(rtype); } else { @@ -2167,7 +2176,7 @@ auto regex_gen(meta::type_declaration& t) -> void && !(CPP2_UFCS(arguments_were_used)(rtype)))) { - error(name + " did not use its template arguments - did you mean to write '" + name + " <" + CPP2_ASSERT_IN_BOUNDS_LITERAL(cpp2::move(args), 0) + "> type' (with the spaces)?"); + error(name + " did not use its template arguments - did you mean to write '" + name + " <" + cpp2::move(args)[0] + "> type' (with the spaces)?"); return false; } } @@ -2175,7 +2184,7 @@ auto regex_gen(meta::type_declaration& t) -> void return true; } -#line 1559 "reflect.h2" +#line 1562 "reflect.h2" } } diff --git a/source/reflect.h2 b/source/reflect.h2 index 1a11b4d26..afa7c9024 100644 --- a/source/reflect.h2 +++ b/source/reflect.h2 @@ -346,8 +346,11 @@ function_declaration: @copyable type = index_of_parameter_named : (this, s: std::string_view) -> int = n*.index_of_parameter_named(s); has_parameter_named : (this, s: std::string_view) -> bool = n*.has_parameter_named(s); has_in_parameter_named : (this, s: std::string_view) -> bool = n*.has_in_parameter_named(s); + has_copy_parameter_named : (this, s: std::string_view) -> bool = n*.has_copy_parameter_named(s); + has_inout_parameter_named : (this, s: std::string_view) -> bool = n*.has_inout_parameter_named(s); has_out_parameter_named : (this, s: std::string_view) -> bool = n*.has_out_parameter_named(s); has_move_parameter_named : (this, s: std::string_view) -> bool = n*.has_move_parameter_named(s); + has_forward_parameter_named : (this, s: std::string_view) -> bool = n*.has_forward_parameter_named(s); first_parameter_name : (this) -> std::string = n*.first_parameter_name(); has_parameter_with_name_and_pass: (this, s: std::string_view, pass: passing_style) -> bool diff --git a/source/sema.h b/source/sema.h index d558d5bed..6c4f2ecf6 100644 --- a/source/sema.h +++ b/source/sema.h @@ -201,8 +201,6 @@ struct compound_sym { }; struct symbol { - int depth = -1; - enum active { declaration=0, identifier, selection, compound }; std::variant < declaration_sym, @@ -211,12 +209,13 @@ struct symbol { compound_sym > sym; + int depth = -1; bool start = true; - symbol(int depth, declaration_sym const& sym) : depth{depth}, sym{sym}, start{sym.start} { } - symbol(int depth, identifier_sym const& sym) : depth{depth}, sym{sym}, start{!sym.is_deactivation()} { } - symbol(int depth, selection_sym const& sym) : depth{depth}, sym{sym}, start{sym.start} { } - symbol(int depth, compound_sym const& sym) : depth{depth}, sym{sym}, start{sym.start} { } + symbol(int depth, declaration_sym const& sym) : sym{sym}, depth{depth}, start{sym.start} { } + symbol(int depth, identifier_sym const& sym) : sym{sym}, depth{depth}, start{!sym.is_deactivation()} { } + symbol(int depth, selection_sym const& sym) : sym{sym}, depth{depth}, start{sym.start} { } + symbol(int depth, compound_sym const& sym) : sym{sym}, depth{depth}, start{sym.start} { } auto is_declaration() const -> bool { return sym.index() == declaration; } auto is_identifier () const -> bool { return sym.index() == identifier ; } @@ -366,52 +365,23 @@ auto is_definite_last_use(token const* t) // //----------------------------------------------------------------------- // - -// Optimization helper: We'll cache results of calls to get_declaration_of -// in an unordered_map, using this struct for the g_d_o params as a key -// -struct gdo_params { - token const* pt; bool a; bool b; - auto operator<=>(gdo_params const&) const -> std::strong_ordering = default; -}; -} -namespace std { - template <> - struct hash { - auto operator()(const cpp2::gdo_params& key) const -> std::size_t { - return std::hash()(key.pt); // first is enough - } - }; -} -namespace cpp2 { - - -// Now back to class sema... -// class sema { public: std::vector& errors; stable_vector symbols; + index_t global_token_counter = 1; std::vector active_selections; + std::vector current_declarations; - // The following data is for lookup optimization - // - mutable std::unordered_map< gdo_params, declaration_sym const* > gdo_cached_results; - - struct declaration_start { - int token_order; - stable_vector::const_iterator iter; - - declaration_start( int to, cpp2::stable_vector::const_iterator it) - : token_order{to} - , iter{it} - { } - - auto operator<=>(int to) const { return token_order <=> to; } + struct declaration_of_t { + declaration_sym const* sym; + bool in_current_function; + bool prev_token_was_this = false; + declaration_sym const* this_param_sym = {}; }; - mutable stable_vector< declaration_start > declaration_starts; + std::unordered_map< token const*, declaration_of_t > declaration_of; public: //----------------------------------------------------------------------- @@ -424,7 +394,6 @@ class sema ) : errors{ errors_ } { - declaration_starts.emplace_back( -1, symbols.cbegin() ); } // Get the declaration of t within the same named function or beyond it @@ -433,47 +402,36 @@ class sema auto get_declaration_of( token const* t, bool look_beyond_current_function = false, - bool include_implicit_this = false, - bool include_returns = true + bool include_implicit_this = false ) const -> declaration_sym const* { if (!t) { return {}; } - return get_declaration_of(*t, look_beyond_current_function, include_implicit_this, include_returns ); + return get_declaration_of(*t, look_beyond_current_function, include_implicit_this ); } - //----------------------------------------------------------------------- - // Until I'm confident these optimizations are solid, use this dispatcher - // to check for regression bugs by invoking both versions and comparing - // the cached overall result, and the initial start for the table scan - // - mutable stable_vector::const_iterator initial_find_old; - mutable stable_vector::const_iterator initial_find_new; - auto get_declaration_of( token const& t, bool look_beyond_current_function = false, - bool include_implicit_this = false, - bool include_returns = true + bool include_implicit_this = false ) const -> declaration_sym const* { //--------- START TEMPORARY REGRESSION TEST CODE FOR G_D_O OPTIMIZATION VERIFICATION --------- auto result_old = static_cast(nullptr); - auto result_new = static_cast(nullptr); if (flag_internal_debug) { auto debug = false; // t == "xxx" && t.position().colno > 20; if (debug) { - std::cout << "\nlooking up " << t.as_string_view() << " (" << static_cast(&t) << ", " << look_beyond_current_function << ", " << include_implicit_this << ", " << include_returns << ") from " << t.position().to_string(); + std::cout << "\nlooking up " << t.as_string_view() << " (" << static_cast(&t) << ", " << look_beyond_current_function << ", " << include_implicit_this << ") from " << t.position().to_string(); std::cout << " ... symbol table state is:\n"; debug_print(std::cout); } - result_old = get_declaration_of_old(t, look_beyond_current_function, include_implicit_this, include_returns ); + result_old = get_declaration_of_old(t, look_beyond_current_function, include_implicit_this ); if (debug) { std::cout << "\n found -> " << static_cast(result_old); @@ -481,30 +439,67 @@ class sema } //--------- END TEMPORARY REGRESSION TEST CODE FOR G_D_O OPTIMIZATION VERIFICATION ----------- - auto timer = scope_timer("get_declaration_of_new - including external caching"); + // Calculate result using declaration_of[] + auto result = static_cast(nullptr); - // Check the cache first to avoid duplicate computations - // - auto my_params = gdo_params{&t, look_beyond_current_function, include_implicit_this}; - if (auto probe = gdo_cached_results.find(my_params); - probe != gdo_cached_results.cend() - ) { - // Ignore the internal debug comparison data since the - // cached version didn't need to recompute it - initial_find_new = initial_find_old = symbols.cbegin(); + auto d = declaration_of.find(&t); - result_new = probe->second; - } - else - { - result_new = - get_declaration_of_new(t, look_beyond_current_function, include_implicit_this, include_returns ); + if (d != declaration_of.cend()) + { + // If we're asked to include implicit this, + // and t itself is not 'this' and not qualified with 'this.`, + // and there's a 'this' result available, then use that + if ( + include_implicit_this + && t != "this" + && !d->second.prev_token_was_this + && d->second.this_param_sym + ) + { + result = d->second.this_param_sym; + } + // Otherwise just use the main result + else + { + //assert( d->second.sym && d->second.sym->declaration->has_name(t) ); + result = d->second.sym; + } + } - // Store if not null (null lookups can sometimes change to non-null when repeated later) - if (result_new) { - gdo_cached_results[my_params] = result_new; + // Now we have the lookup result, but based on lookup constraints flags + // we may decide it's unsuitable for this lookup and not use it... + // + // TODO: The initial versions of these conditions are written to make the + // new lookup results exactly match the prior lookup results, so we don't + // introduce regressions. However, not all these wrinkles may be needed + // or desirable, so after we know we didn't introduce regressions we can + // consider tweaking/simplifying them -- which is easier now that they're + // collected all in one place + if ( + result + // If we were told not to look beyond the current function + && !look_beyond_current_function + // And we're not already using the 'this' parameter which is local + && result != d->second.this_param_sym + // And this result isn't our own function-local object declaration + && !( + d->second.sym->declaration->identifier->get_token() == &t + && d->second.sym->declaration->is_object() + && d->second.sym->declaration->parent_is_function() + ) + // And this result is not in the current function + // or we weren't in a function to begin with + && ( + !d->second.in_current_function + || !d->second.sym->declaration->parent_is_function() + ) + ) + { + // Then don't use the result, return 'not found' instead + result = nullptr; } + } //--------- START TEMPORARY REGRESSION TEST CODE FOR G_D_O OPTIMIZATION VERIFICATION --------- @@ -512,10 +507,7 @@ class sema // if ( flag_internal_debug - && ( - initial_find_old != initial_find_new - || result_old != result_new - ) + && result_old != result ) { std::cerr << "\n Internal compiler error - see cppfront-ice-data.out for debug information\n\n"; @@ -523,16 +515,13 @@ class sema auto out = std::ofstream{"cppfront-ice-data.out"}; out << "g_d_o arguments:\n"; - out << " " << static_cast(&t) << " -> " << t.as_string_view() << " (on line " << t.position().lineno - << "), token order # " << t.get_global_token_order() << "\n"; - out << " " << std::boolalpha << look_beyond_current_function << "\n"; - out << " " << std::boolalpha << include_implicit_this << "\n"; - - out << "initial_find_old: " << (initial_find_old - symbols.cbegin()) << "\n"; - out << "initial_find_new: " << (initial_find_new - symbols.cbegin()) << "\n\n"; + out << " " << static_cast(&t) << " -> " << t.as_string_view() << " @ " << t.position().to_string() + << ", token order # " << t.get_global_token_order() << "\n"; + out << " look_beyond_current_function: " << std::boolalpha << look_beyond_current_function << "\n"; + out << " include_implicit_this: " << std::boolalpha << include_implicit_this << "\n"; - out << "result_old: " << static_cast(result_old) << "\n"; - out << "result_new: " << static_cast(result_new) << "\n\n"; + out << "result_old: " << static_cast(result_old) << "\n"; + out << "result: " << static_cast(result ) << "\n\n"; debug_print(out); @@ -540,7 +529,7 @@ class sema } //--------- END TEMPORARY REGRESSION TEST CODE FOR G_D_O OPTIMIZATION VERIFICATION ----------- - return result_new; + return result; } //----------------------------------------------------------------------- @@ -549,12 +538,11 @@ class sema auto get_declaration_of_old( token const& t, bool look_beyond_current_function = false, - bool include_implicit_this = false, - bool include_returns = true + bool include_implicit_this = false ) const -> declaration_sym const* { - auto timer = scope_timer("get_declaration_of - old"); + CPP2_SCOPE_TIMER("get_declaration_of - old"); // First find the position the query is coming from // and remember its depth @@ -571,8 +559,6 @@ class sema return nullptr; } - initial_find_old = i; - auto depth = 0; // If we found it exactly, we have its depth @@ -695,7 +681,6 @@ class sema if ( decl.identifier && *decl.identifier == t - && (!decl.return_param || include_returns ) ) { return &decl; @@ -739,248 +724,6 @@ class sema return nullptr; } - //----------------------------------------------------------------------- - // Optimized version: - // - auto get_declaration_of_new( - token const& t, - bool look_beyond_current_function = false, - bool include_implicit_this = false, - bool include_returns = true - ) const - -> declaration_sym const* - { - auto timer = scope_timer("get_declaration_of_new"); - - // First find the position the query is coming from - // and remember its depth - auto i = symbols.cbegin(); - auto depth = 0; - - { - auto timer1 = scope_timer("get_declaration_of_new - phase 1 initial loop"); - - // If the declaration_starts list got this far yet, use that to - // skip repeating the whole linear search from the table beginning - // - auto probe = std::lower_bound( - declaration_starts.begin(), - declaration_starts.end(), - t.get_global_token_order() - ); - if (probe != declaration_starts.end()) - { - if (probe->iter->get_global_token_order() != t.get_global_token_order()) { - --probe; - } - i = probe->iter; - } - - // Else resume appending values to the declaration_starts list - // - else - { - // Start right after where we left off - i = declaration_starts.back().iter; - } - - while ( - i != symbols.cend() - && i->get_global_token_order() < t.get_global_token_order() - ) - { - if ( - i->is_declaration() - && i->as_declaration().start - ) - { - if (auto to = i->get_global_token_order(); - to > 0 - && declaration_starts.back().token_order < to) - { - declaration_starts.emplace_back( to, i ); - } - } - - ++i; - } - - if (i == symbols.cbegin()) { - return nullptr; - } - - initial_find_new = i; - - // If we found it exactly, we have its depth - if ( - i != symbols.cend() - && i->get_global_token_order() == t.get_global_token_order() - ) - { - depth = i->depth; - } - // Else we're at cend or at the entry for the following token, - // so move backward one entry to approximate the location - else - { - // OK since we already checked that we're not at cbegin - --i; - - // If we're now at cbegin, not found - if (i == symbols.cbegin()) { - return nullptr; - } - - // Else if this location is the end of a named non-object - // declaration, go to its beginning - if (i->is_declaration()) - { - auto find_start_of_name = static_cast(nullptr); - - if ( - !i->start - && !i->as_declaration().declaration->is_object() - ) - { - find_start_of_name = i->as_declaration().declaration->name(); - } - - if (find_start_of_name) - { - // We want to go backwards until we're at the corresponding - // declaration start, and there could be intervening nested - // declaration ends/starts to pass by - int relative_decl_depth = 1; - while (--i != symbols.cbegin()) { - if ( - i->is_declaration() - && !i->as_declaration().declaration->is_object() - ) - { - if (i->start) { - --relative_decl_depth; - if (relative_decl_depth == 0) { - // With proper nesting, this should be the name we're looking for - assert( - i->as_declaration().declaration->has_name( - find_start_of_name->as_string_view() - ) - ); - break; - } - } - else { - ++relative_decl_depth; - } - } - } - - // This shouldn't happen with correct nesting, so - // alternatively we could assert(i != symbols.cbegin()) - if (i == symbols.cbegin()) { - return nullptr; - } - } - } - - depth = i->depth; - } - } - - auto timer2 = scope_timer("get_declaration_of_new - phase 2 backward scan loop"); - - // Then look backward to find the first declaration of - // this name that is not deeper (in a nested scope) - // and is in the same function - using I = stable_vector::const_iterator; - auto advance = [](I& i, int n, I bound) { // TODO Use `std::ranges::advance` - auto timer2a = scope_timer("get_declaration_of_new - phase 2a 'advance' part of loop"); - auto in = i; - if (std::abs(n) >= std::abs(bound - i)) { - i = bound; - } - else { - auto timer2aa = scope_timer("get_declaration_of_new - phase 2aa 'std::advance' specifically"); - std::advance(i, n); - } - return n - (i - in); - }; - advance(i, -int(i->position() > t.position()), symbols.cbegin()); - advance(i, 1, symbols.cend()); - while (advance(i, -1, symbols.begin()) == 0) - { - if ( - i->sym.index() == symbol::active::declaration - && i->depth <= depth - ) - { - auto const& decl = std::get(i->sym); - - // Conditionally look beyond the start of the current named (has identifier) - // function (an unnamed function is ok to look beyond) or enclosing scope - assert(decl.declaration); - if ( - ( - decl.declaration->type.index() == declaration_node::a_function - || decl.declaration->type.index() == declaration_node::a_type - || decl.declaration->type.index() == declaration_node::a_namespace - ) - && decl.declaration->identifier - && !look_beyond_current_function - ) - { - return nullptr; - } - - // If the name matches, this is it - if ( - decl.identifier - && *decl.identifier == t - && (!decl.return_param || include_returns ) - ) - { - return &decl; - } - - auto timer2b = scope_timer("get_declaration_of_new - phase 2b 'move this' part of loop"); - - // If we reached a 'move this' parameter, look it up in the type members - if ( - include_implicit_this - && decl.identifier - && *decl.identifier == "this" - ) - { - if (auto n = decl.declaration; - decl.parameter - && decl.parameter->pass == passing_style::move - && n - && n->parent_is_function() - && (n = n->parent_declaration)->parent_is_type() - && n->my_statement - && n->my_statement->compound_parent - && std::any_of( - n->my_statement->compound_parent->statements.begin(), - n->my_statement->compound_parent->statements.end(), - [&t, n](std::unique_ptr const& s) mutable { - return s - && s->statement.index() == statement_node::declaration - && (n = &*std::get(s->statement))->identifier - && n->identifier->to_string() == t; - }) - ) - { - return &decl; - } - return nullptr; - } - - depth = i->depth; - } - } - - return nullptr; - } auto is_captured(token const& t) const -> bool @@ -1024,23 +767,19 @@ class sema -> void { o << "---------------------------------------------------------------------------\n"; - o << "cached_results: size " << gdo_cached_results.size() << "\n"; - o << " & tok flags maps to\n"; - - for (auto& e : gdo_cached_results) { - o << " (" << static_cast(e.first.pt) << ", " << e.first.a << ", " << e.first.b - << ") -> " << static_cast(e.second) << "\n"; - } - - o << "\n---------------------------------------------------------------------------\n"; + o << "declaration_of: size " << declaration_of.size() << "\n"; + o << " & tok #tok & sym identifier #tok in_curr_fn prev_was_this & this_param_sym\n"; - o << "declaration_starts: size " << declaration_starts.size() << "\n"; - o << " idx tok# maps to\n"; - - for (auto i = 0; auto& e : declaration_starts) { - o << std::setw(6) << std::right << i++ << " | "; - o << std::setw(6) << std::right << e.token_order - << " -> symbols[" << (e.iter - symbols.cbegin()) << "]\n"; + for (auto& e : declaration_of) { + o << " " << static_cast(e.first) + << " " << std::setw(4) << std::right << e.first->get_global_token_order() + << " -> " << static_cast(e.second.sym) + << " " << std::setw(16) << (e.second.sym && e.second.sym->identifier ? e.second.sym->identifier->as_string_view() : "(null)") + << std::setw(4) << std::right << (e.second.sym && e.second.sym->identifier ? e.second.sym->identifier->get_global_token_order() : 0) + << " " << std::setw(10) << std::left << e.second.in_current_function + << " " << std::setw(13) << e.second.prev_token_was_this + << " " << static_cast(e.second.this_param_sym) + << "\n"; } o << "\n---------------------------------------------------------------------------\n"; @@ -2655,6 +2394,7 @@ class sema { indices_of_uses_per_scope.emplace_back(); indices_of_activations_per_scope.emplace_back(); + current_declarations.push_back( nullptr ); // represent a lifetime scope as a null declaration } auto push_use(identifier_sym sym) -> void @@ -2708,6 +2448,13 @@ class sema } } + // All the scope-local names stay active for lookup until the end of their scope + while (current_declarations.back()) { + current_declarations.pop_back(); + } + assert(!current_declarations.back()); // we're popping a lifetime scope + current_declarations.pop_back(); + indices_of_uses_per_scope.pop_back(); indices_of_activations_per_scope.pop_back(); } @@ -2773,6 +2520,7 @@ class sema if (n.pass != passing_style::out) { push_activation( declaration_sym( true, n.declaration.get(), n.declaration->name(), n.declaration->initializer.get(), &n, inside_returns_list)); + current_declarations.push_back( &symbols.back().as_declaration() ); } } @@ -2848,6 +2596,7 @@ class sema ) { push_activation( declaration_sym( true, &n, n.name(), n.initializer.get(), inside_out_parameter, false, inside_returns_list ) ); + current_declarations.push_back( &symbols.back().as_declaration() ); if (!n.is_object()) { ++scope_depth; } @@ -2880,6 +2629,21 @@ class sema ) { symbols.emplace_back( scope_depth, declaration_sym( false, &n, nullptr, nullptr, inside_out_parameter, false, inside_returns_list ) ); + + // All scoped entities stay active for lookup until the end of their enclosing + // entity -- so we only remove nested entities, not the current entity + while ( + !current_declarations.back() + || current_declarations.back()->declaration != &n + ) + { + current_declarations.pop_back(); + } + assert( + current_declarations.back() + && current_declarations.back()->declaration == &n // we're popping the corresponding declaration + ); + if (!n.is_object()) { --scope_depth; } @@ -2903,6 +2667,10 @@ class sema auto start(token const& t, int) -> void { + // By giving tokens an order during sema + // generated code can be equally checked + t.set_global_token_order( global_token_counter++ ); + auto guard = finally([&]() { prev2_token = prev_token; prev_token = &t; @@ -2943,10 +2711,100 @@ class sema return; } - // By giving tokens an order during sema - // generated code can be equally checked - static index_t global_token_counter = 1; // TODO static - t.set_global_token_order( global_token_counter++ ); + // If normal name lookup finds this name from here, + // remember its point of declaration + auto in_current_function = true; + auto found_this = static_cast( nullptr ); + auto prev_token_was_this = false; + auto i = current_declarations.rbegin(); + for ( + ; + i != current_declarations.rend(); + ++i + ) + { + // Ignore null == scope begin/end, that's a placeholder not a real declaration + if (*i == nullptr) { + continue; + } + + // If we're going beyond the initial named function, remember that + if ( + ( + (*i)->declaration->is_function() + || (*i)->declaration->is_type() + || (*i)->declaration->is_namespace() + ) + && (*i)->declaration->identifier + ) + { + in_current_function = false; + } + + // Else: + // If we found it exactly + if ((*i)->declaration->has_name(t)) + { + // SUCCESS: Record it and break + //declaration_of[&t] = { *i, in_current_function && (*i)->declaration->parent_is_function() }; + break; + } + + // Else: + + // If we reached a 'move this' parameter, look it up in the type members + if ( + !found_this + && (*i)->declaration->has_name("this") + && (*i)->parameter + && (*i)->parameter->pass == passing_style::move // TODO: consider removing this + ) + { + if (auto n = (*i)->declaration; + (*i)->parameter + && (*i)->parameter->pass == passing_style::move + && n + && n->parent_is_function() + && (n = n->parent_declaration)->parent_is_type() + && n->my_statement + && n->my_statement->compound_parent + && std::any_of( + n->my_statement->compound_parent->statements.begin(), + n->my_statement->compound_parent->statements.end(), + [&t, n](std::unique_ptr const& s) mutable { + return s + && s->statement.index() == statement_node::declaration + && (n = &*std::get(s->statement))->identifier + && n->identifier->to_string() == t; + }) + ) + { + // PARTIAL SUCCESS: Record the location of 'this' and keep going + // + found_this = *i; + prev_token_was_this = *prev2_token == "this" && *prev_token == "."; + //declaration_of[&t] = { *i, in_current_function, *prev2_token == "this" && *prev_token == "." }; + } + } + } + + if (i != current_declarations.rend()) { + declaration_of[&t] = { + *i, + in_current_function && (*i)->declaration->parent_is_function(), + prev_token_was_this, + found_this + }; + } + else if (found_this) { + declaration_of[&t] = { + nullptr, + false, + prev_token_was_this, + found_this + }; + } + auto started_member_access = prev_token @@ -3007,7 +2865,7 @@ class sema } accessed_member_for_ufcs = nullptr; } - else if (auto decl = get_declaration_of(t, false, !started_this_member_access, !started_member_access); + else if (auto decl = get_declaration_of(t, false, !started_this_member_access); decl && decl->declaration->name() != &t ) diff --git a/source/to_cpp1.h b/source/to_cpp1.h index 6a86b4efb..79289105b 100644 --- a/source/to_cpp1.h +++ b/source/to_cpp1.h @@ -2379,13 +2379,14 @@ class cppfront is_parameter_name && ( current_functions.back().decl->has_in_parameter_named(*tok) + || current_functions.back().decl->has_copy_parameter_named(*tok) || current_functions.back().decl->has_move_parameter_named(*tok) ) ) { errors.emplace_back( n.position(), - "a 'forward' return type cannot return an 'in' or 'move' parameter" + "a 'forward' return type cannot return an 'in', 'copy', or 'move' parameter" ); return; } @@ -2406,7 +2407,7 @@ class cppfront { errors.emplace_back( n.position(), - "a 'forward' return type cannot return a temporary variable" + "a 'forward' return type must return an 'inout', 'out', or 'forward' parameter; it cannot return a complex expression -- for example: for a function that takes a stream object 'output`, instead of 'return output << data;' write 'output << data; return output;'" ); return; }