From 8521e0c224315befba3e1f50dcd312ebb56e26ee Mon Sep 17 00:00:00 2001 From: jarzec Date: Tue, 27 Aug 2024 19:41:01 +0200 Subject: [PATCH] CI Update tests after recent modifs (#1256) --- .../pure2-range-operators.cpp.execution | 16 +++++++++++++++ .../mixed-bounds-check.cpp.execution | 2 +- ...ed-bounds-safety-with-assert.cpp.execution | 2 +- ...-safety-3-contract-violation.cpp.execution | 2 +- ...me-safety-and-null-contracts.cpp.execution | 2 +- ...re2-assert-expected-not-null.cpp.execution | 2 +- ...re2-assert-optional-not-null.cpp.execution | 2 +- ...2-assert-shared-ptr-not-null.cpp.execution | 2 +- ...2-assert-unique-ptr-not-null.cpp.execution | 2 +- .../pure2-default-arguments.cpp.execution | 2 +- .../pure2-range-operators.cpp.execution | 16 +++++++++++++++ .../pure2-range-operators.cpp.execution | 16 +++++++++++++++ .../pure2-range-operators.cpp.output | 4 ++++ .../mixed-bounds-check.cpp.execution | 2 +- ...ed-bounds-safety-with-assert.cpp.execution | 2 +- ...-safety-3-contract-violation.cpp.execution | 2 +- ...me-safety-and-null-contracts.cpp.execution | 2 +- ...re2-assert-optional-not-null.cpp.execution | 2 +- ...2-assert-shared-ptr-not-null.cpp.execution | 2 +- ...2-assert-unique-ptr-not-null.cpp.execution | 2 +- .../pure2-default-arguments.cpp.execution | 2 +- .../pure2-range-operators.cpp.execution | 16 +++++++++++++++ .../pure2-range-operators.cpp.execution | 19 ++++++++++++++++++ .../mixed-type-safety-1.cpp.output | 16 +++++++-------- .../pure2-range-operators.cpp.execution | 19 ++++++++++++++++++ ...ed-bounds-safety-with-assert.cpp.execution | 2 +- ...mixed-bugfix-for-ufcs-non-local.cpp.output | 20 +++++++++---------- .../pure2-default-arguments.cpp.execution | 2 +- .../pure2-range-operators.cpp.execution | 16 +++++++++++++++ .../pure2-default-arguments.cpp.execution | 2 +- .../pure2-range-operators.cpp.execution | 3 --- .../pure2-assert-expected-not-null.cpp.output | 4 ++-- .../pure2-default-arguments.cpp.execution | 2 +- .../pure2-range-operators.cpp.execution | 19 ++++++++++++++++++ .../pure2-type-safety-1.cpp.output | 2 +- 35 files changed, 183 insertions(+), 45 deletions(-) create mode 100644 regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.output diff --git a/regression-tests/test-results/apple-clang-14-c++2b/pure2-range-operators.cpp.execution b/regression-tests/test-results/apple-clang-14-c++2b/pure2-range-operators.cpp.execution index 5d6a1a5428..9168b08ea0 100644 --- a/regression-tests/test-results/apple-clang-14-c++2b/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/apple-clang-14-c++2b/pure2-range-operators.cpp.execution @@ -18,3 +18,19 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false diff --git a/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution index 77c30fa83e..60dbded0ba 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-check.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(970) decltype(auto) cpp2::impl::assert_in_bounds(auto &&, std::source_location) [arg = 5, x:auto = std::vector]: Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] +../../../include/cpp2util.h(1007) decltype(auto) cpp2::impl::assert_in_bounds(auto &&, std::source_location) [arg = 5, x:auto = std::vector]: 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/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution index 1284e51077..6effcd5768 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/mixed-bounds-safety-with-assert.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(782) : Bounds safety violation +../../../include/cpp2util.h(819) : Bounds safety violation diff --git a/regression-tests/test-results/apple-clang-15-c++2b/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 index dc708ffb5f..cda862f7c7 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/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 @@ -1 +1 @@ -../../../include/cpp2util.h(782) : Contract violation: fill: value must contain at least count elements +../../../include/cpp2util.h(819) : Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/apple-clang-15-c++2b/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 index ffe7899ea6..121149a600 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/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 @@ -1,2 +1,2 @@ sending error to my framework... [dynamic null dereference attempt detected] -from source location: ../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = int *&] +from source location: ../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = int *&] diff --git a/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution index a625bdf839..3f3a6e9f41 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-expected-not-null.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::expected]: Null safety violation: std::expected has an unexpected value +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::expected]: Null safety violation: std::expected has an unexpected value diff --git a/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution index a9d924ed2a..9529414a02 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/pure2-assert-optional-not-null.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::optional]: Null safety violation: std::optional does not contain a value +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::optional]: Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/apple-clang-15-c++2b/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 index 64d0654853..3eba52e06f 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/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 @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::shared_ptr]: Null safety violation: std::shared_ptr is empty +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::shared_ptr]: Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/apple-clang-15-c++2b/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 index e16aca64a9..a56bf43053 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/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 @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::unique_ptr]: Null safety violation: std::unique_ptr is empty +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::unique_ptr]: Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/apple-clang-15-c++2b/pure2-default-arguments.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-default-arguments.cpp.execution index 8eba454361..71d4adcb87 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/pure2-default-arguments.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/pure2-default-arguments.cpp.execution @@ -1,2 +1,2 @@ calling: -012 \ No newline at end of file +012an older compiler diff --git a/regression-tests/test-results/apple-clang-15-c++2b/pure2-range-operators.cpp.execution b/regression-tests/test-results/apple-clang-15-c++2b/pure2-range-operators.cpp.execution index 5d6a1a5428..9168b08ea0 100644 --- a/regression-tests/test-results/apple-clang-15-c++2b/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/apple-clang-15-c++2b/pure2-range-operators.cpp.execution @@ -18,3 +18,19 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.execution b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.execution index 5d6a1a5428..9168b08ea0 100644 --- a/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.execution @@ -18,3 +18,19 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false diff --git a/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.output b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.output new file mode 100644 index 0000000000..8a8cf29047 --- /dev/null +++ b/regression-tests/test-results/clang-15-c++20-libcpp/pure2-range-operators.cpp.output @@ -0,0 +1,4 @@ +pure2-range-operators.cpp2:44:34: error: expected namespace name + using namespace std::views; + ~~~~~^ +1 error generated. diff --git a/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution index 77c30fa83e..60dbded0ba 100644 --- a/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20/mixed-bounds-check.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(970) decltype(auto) cpp2::impl::assert_in_bounds(auto &&, std::source_location) [arg = 5, x:auto = std::vector]: Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] +../../../include/cpp2util.h(1007) decltype(auto) cpp2::impl::assert_in_bounds(auto &&, std::source_location) [arg = 5, x:auto = std::vector]: 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/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution index 1284e51077..6effcd5768 100644 --- a/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20/mixed-bounds-safety-with-assert.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(782) : Bounds safety violation +../../../include/cpp2util.h(819) : Bounds safety violation diff --git a/regression-tests/test-results/clang-15-c++20/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 index dc708ffb5f..cda862f7c7 100644 --- a/regression-tests/test-results/clang-15-c++20/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 @@ -1 +1 @@ -../../../include/cpp2util.h(782) : Contract violation: fill: value must contain at least count elements +../../../include/cpp2util.h(819) : Contract violation: fill: value must contain at least count elements diff --git a/regression-tests/test-results/clang-15-c++20/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 index ffe7899ea6..121149a600 100644 --- a/regression-tests/test-results/clang-15-c++20/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 @@ -1,2 +1,2 @@ sending error to my framework... [dynamic null dereference attempt detected] -from source location: ../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = int *&] +from source location: ../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = int *&] diff --git a/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution index a9d924ed2a..9529414a02 100644 --- a/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20/pure2-assert-optional-not-null.cpp.execution @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::optional]: Null safety violation: std::optional does not contain a value +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::optional]: Null safety violation: std::optional does not contain a value diff --git a/regression-tests/test-results/clang-15-c++20/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 index 64d0654853..3eba52e06f 100644 --- a/regression-tests/test-results/clang-15-c++20/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 @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::shared_ptr]: Null safety violation: std::shared_ptr is empty +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::shared_ptr]: Null safety violation: std::shared_ptr is empty diff --git a/regression-tests/test-results/clang-15-c++20/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 index e16aca64a9..a56bf43053 100644 --- a/regression-tests/test-results/clang-15-c++20/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 @@ -1 +1 @@ -../../../include/cpp2util.h(861) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::unique_ptr]: Null safety violation: std::unique_ptr is empty +../../../include/cpp2util.h(898) decltype(auto) cpp2::impl::assert_not_null(auto &&, std::source_location) [arg:auto = std::unique_ptr]: Null safety violation: std::unique_ptr is empty diff --git a/regression-tests/test-results/clang-15-c++20/pure2-default-arguments.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-default-arguments.cpp.execution index 8eba454361..71d4adcb87 100644 --- a/regression-tests/test-results/clang-15-c++20/pure2-default-arguments.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20/pure2-default-arguments.cpp.execution @@ -1,2 +1,2 @@ calling: -012 \ No newline at end of file +012an older compiler diff --git a/regression-tests/test-results/clang-15-c++20/pure2-range-operators.cpp.execution b/regression-tests/test-results/clang-15-c++20/pure2-range-operators.cpp.execution index 5d6a1a5428..9168b08ea0 100644 --- a/regression-tests/test-results/clang-15-c++20/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/clang-15-c++20/pure2-range-operators.cpp.execution @@ -18,3 +18,19 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false diff --git a/regression-tests/test-results/clang-18-c++20/pure2-range-operators.cpp.execution b/regression-tests/test-results/clang-18-c++20/pure2-range-operators.cpp.execution index 5d6a1a5428..df04174c1b 100644 --- a/regression-tests/test-results/clang-18-c++20/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/clang-18-c++20/pure2-range-operators.cpp.execution @@ -18,3 +18,22 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false + +Make sure views::take works: +1 2 3 4 5 2 3 4 \ No newline at end of file diff --git a/regression-tests/test-results/clang-18-c++23-libcpp/mixed-type-safety-1.cpp.output b/regression-tests/test-results/clang-18-c++23-libcpp/mixed-type-safety-1.cpp.output index d29bec6dc6..53616ba57d 100644 --- a/regression-tests/test-results/clang-18-c++23-libcpp/mixed-type-safety-1.cpp.output +++ b/regression-tests/test-results/clang-18-c++23-libcpp/mixed-type-safety-1.cpp.output @@ -19,8 +19,8 @@ In file included from /usr/lib/llvm-18/bin/../include/c++/v1/format:202: /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_functions.h:372:54: note: in instantiation of static data member 'std::basic_format_string>::__handles_' requested here 372 | _Context{__types_.data(), __handles_.data(), sizeof...(_Args)}); | ^ -mixed-type-safety-1.cpp2:29:11: note: in instantiation of function template specialization 'std::basic_format_string>::basic_format_string' requested here - 29 | print("1.1 is int? ", cpp2::impl::is(1.1)); +mixed-type-safety-1.cpp2:17:11: note: in instantiation of function template specialization 'std::basic_format_string>::basic_format_string' requested here + 17 | print("1.1 is int?", cpp2::impl::is(1.1)); | ^ /usr/lib/llvm-18/bin/../include/c++/v1/__format/formatter.h:36:3: note: 'formatter' has been explicitly marked deleted here 36 | formatter() = delete; @@ -49,8 +49,8 @@ In file included from /usr/lib/llvm-18/bin/../include/c++/v1/format:202: /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_functions.h:372:54: note: in instantiation of static data member 'std::basic_format_string>::__handles_' requested here 372 | _Context{__types_.data(), __handles_.data(), sizeof...(_Args)}); | ^ -mixed-type-safety-1.cpp2:30:12: note: in instantiation of function template specialization 'std::basic_format_string>::basic_format_string' requested here - 30 | print( "1 is int? ", cpp2::impl::is(1)); +mixed-type-safety-1.cpp2:18:12: note: in instantiation of function template specialization 'std::basic_format_string>::basic_format_string' requested here + 18 | print( "1 is int?", cpp2::impl::is(1)); | ^ /usr/lib/llvm-18/bin/../include/c++/v1/__format/formatter.h:36:3: note: 'formatter' has been explicitly marked deleted here 36 | formatter() = delete; @@ -95,8 +95,8 @@ In file included from /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_con /usr/lib/llvm-18/bin/../include/c++/v1/print:341:8: note: in instantiation of function template specialization 'std::print>' requested here 341 | std::print(stdout, __fmt, std::forward<_Args>(__args)...); | ^ -mixed-type-safety-1.cpp2:29:5: note: in instantiation of function template specialization 'std::print>' requested here - 29 | print("1.1 is int? ", cpp2::impl::is(1.1)); +mixed-type-safety-1.cpp2:17:5: note: in instantiation of function template specialization 'std::print>' requested here + 17 | print("1.1 is int?", cpp2::impl::is(1.1)); | ^ /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_arg_store.h:167:23: note: expression evaluates to '0 != 0' 167 | static_assert(__arg != __arg_t::__none, "the supplied type is not formattable"); @@ -181,8 +181,8 @@ In file included from /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_con /usr/lib/llvm-18/bin/../include/c++/v1/print:341:8: note: in instantiation of function template specialization 'std::print>' requested here 341 | std::print(stdout, __fmt, std::forward<_Args>(__args)...); | ^ -mixed-type-safety-1.cpp2:30:5: note: in instantiation of function template specialization 'std::print>' requested here - 30 | print( "1 is int? ", cpp2::impl::is(1)); +mixed-type-safety-1.cpp2:18:5: note: in instantiation of function template specialization 'std::print>' requested here + 18 | print( "1 is int?", cpp2::impl::is(1)); | ^ /usr/lib/llvm-18/bin/../include/c++/v1/__format/format_arg_store.h:167:23: note: expression evaluates to '0 != 0' 167 | static_assert(__arg != __arg_t::__none, "the supplied type is not formattable"); diff --git a/regression-tests/test-results/clang-18-c++23-libcpp/pure2-range-operators.cpp.execution b/regression-tests/test-results/clang-18-c++23-libcpp/pure2-range-operators.cpp.execution index 5d6a1a5428..df04174c1b 100644 --- a/regression-tests/test-results/clang-18-c++23-libcpp/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/clang-18-c++23-libcpp/pure2-range-operators.cpp.execution @@ -18,3 +18,22 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false + +Make sure views::take works: +1 2 3 4 5 2 3 4 \ No newline at end of file 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 index 8c61e02f7e..a5e3301561 100644 --- 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 @@ -1 +1 @@ -mixed-bounds-safety-with-assert.cpp2(11) void print_subrange(const auto:97&, cpp2::impl::in, cpp2::impl::in) [with auto:97 = std::vector; cpp2::impl::in = const int]: Bounds safety violation +mixed-bounds-safety-with-assert.cpp2(11) void print_subrange(const auto:115&, cpp2::impl::in, cpp2::impl::in) [with auto:115 = std::vector; cpp2::impl::in = const int]: Bounds safety violation diff --git a/regression-tests/test-results/gcc-13-c++2b/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 index 73e75d3150..2bdfe9d165 100644 --- a/regression-tests/test-results/gcc-13-c++2b/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 @@ -1,41 +1,41 @@ In file included from mixed-bugfix-for-ufcs-non-local.cpp:6: ../../../include/cpp2util.h:2100:1: error: lambda-expression in template parameter type - 2100 | // + 2100 | if constexpr (std::is_same_v< CPP2_TYPEOF(operator_as<13>(x)), T >) { if (x.index() == 13) return operator_as<13>(x); } | ^ ../../../include/cpp2util.h:2137:59: note: in expansion of macro ‘CPP2_UFCS_’ - 2137 | // as + 2137 | // std::any is and as | ^ 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:2100:1: error: lambda-expression in template parameter type - 2100 | // + 2100 | if constexpr (std::is_same_v< CPP2_TYPEOF(operator_as<13>(x)), T >) { if (x.index() == 13) return operator_as<13>(x); } | ^ ../../../include/cpp2util.h:2137:59: note: in expansion of macro ‘CPP2_UFCS_’ - 2137 | // as + 2137 | // std::any is and as | ^ 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:2100:1: error: lambda-expression in template parameter type - 2100 | // + 2100 | if constexpr (std::is_same_v< CPP2_TYPEOF(operator_as<13>(x)), T >) { if (x.index() == 13) return operator_as<13>(x); } | ^ ../../../include/cpp2util.h:2137:59: note: in expansion of macro ‘CPP2_UFCS_’ - 2137 | // as + 2137 | // std::any is and as | ^ 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:2100:1: error: lambda-expression in template parameter type - 2100 | // + 2100 | if constexpr (std::is_same_v< CPP2_TYPEOF(operator_as<13>(x)), T >) { if (x.index() == 13) return operator_as<13>(x); } | ^ ../../../include/cpp2util.h:2137:59: note: in expansion of macro ‘CPP2_UFCS_’ - 2137 | // as + 2137 | // std::any is and as | ^ 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:2100:1: error: lambda-expression in template parameter type - 2100 | // + 2100 | if constexpr (std::is_same_v< CPP2_TYPEOF(operator_as<13>(x)), T >) { if (x.index() == 13) return operator_as<13>(x); } | ^ ../../../include/cpp2util.h:2137:59: note: in expansion of macro ‘CPP2_UFCS_’ - 2137 | // as + 2137 | // std::any is and as | ^ 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-13-c++2b/pure2-default-arguments.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-default-arguments.cpp.execution index 0e56963ff2..13c1bc1e73 100644 --- a/regression-tests/test-results/gcc-13-c++2b/pure2-default-arguments.cpp.execution +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-default-arguments.cpp.execution @@ -1,2 +1,2 @@ calling: int main(int, char**) -012 \ No newline at end of file +012an older compiler diff --git a/regression-tests/test-results/gcc-13-c++2b/pure2-range-operators.cpp.execution b/regression-tests/test-results/gcc-13-c++2b/pure2-range-operators.cpp.execution index 5d6a1a5428..9168b08ea0 100644 --- a/regression-tests/test-results/gcc-13-c++2b/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/gcc-13-c++2b/pure2-range-operators.cpp.execution @@ -18,3 +18,19 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-default-arguments.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-default-arguments.cpp.execution index b619b22ae8..13c1bc1e73 100644 --- a/regression-tests/test-results/gcc-14-c++2b/pure2-default-arguments.cpp.execution +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-default-arguments.cpp.execution @@ -1,2 +1,2 @@ calling: int main(int, char**) -012a newer compiler +012an older compiler diff --git a/regression-tests/test-results/gcc-14-c++2b/pure2-range-operators.cpp.execution b/regression-tests/test-results/gcc-14-c++2b/pure2-range-operators.cpp.execution index df04174c1b..9168b08ea0 100644 --- a/regression-tests/test-results/gcc-14-c++2b/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/gcc-14-c++2b/pure2-range-operators.cpp.execution @@ -34,6 +34,3 @@ true true false false - -Make sure views::take works: -1 2 3 4 5 2 3 4 \ No newline at end of file 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 index dc395b6727..e069d85fd9 100644 --- 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 @@ -6,7 +6,7 @@ pure2-assert-expected-not-null.cpp2(7): error C2143: syntax error: missing ';' b 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(861): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&,std::source_location)' +..\..\..\include\cpp2util.h(898): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&,std::source_location)' pure2-assert-expected-not-null.cpp2(14): error C2039: 'expected': is not a member of 'std' predefined C++ types (compiler internal)(347): note: see declaration of 'std' pure2-assert-expected-not-null.cpp2(14): error C2062: type 'int' unexpected @@ -19,4 +19,4 @@ pure2-assert-expected-not-null.cpp2(14): note: while trying to match the argumen 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(861): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&,std::source_location)' +..\..\..\include\cpp2util.h(898): note: could be 'decltype(auto) cpp2::impl::assert_not_null(_T0 &&,std::source_location)' diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-default-arguments.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-default-arguments.cpp.execution index 8f0b4095c7..75f26d0fc7 100644 --- a/regression-tests/test-results/msvc-2022-c++20/pure2-default-arguments.cpp.execution +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-default-arguments.cpp.execution @@ -1,2 +1,2 @@ calling: int __cdecl main(const int,char **) -012 \ No newline at end of file +012a newer compiler diff --git a/regression-tests/test-results/msvc-2022-c++20/pure2-range-operators.cpp.execution b/regression-tests/test-results/msvc-2022-c++20/pure2-range-operators.cpp.execution index 5d6a1a5428..df04174c1b 100644 --- a/regression-tests/test-results/msvc-2022-c++20/pure2-range-operators.cpp.execution +++ b/regression-tests/test-results/msvc-2022-c++20/pure2-range-operators.cpp.execution @@ -18,3 +18,22 @@ And from indexes 1..=5 they are: Make sure non-random-access iterators work: Hokey Pokey + +Make sure .sum works: +210 +190 + +Make sure .contains works: +false +true +true +true +false +false +true +true +false +false + +Make sure views::take works: +1 2 3 4 5 2 3 4 \ No newline at end of file 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 index 61f78c5383..4e23eda77e 100644 --- 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 @@ -1,7 +1,7 @@ pure2-type-safety-1.cpp pure2-type-safety-1.cpp2(26): error C2666: 'print': overloaded functions have similar conversions pure2-type-safety-1.cpp2(29): note: could be 'void print(const std::string &,const bool)' -C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.40.33807\include\print(125): note: or 'void std::print(const std::basic_format_string>,std::false_type &&)' [found using argument-dependent lookup] +C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.40.33807\include\print(125): note: or 'void std::print(const std::basic_format_string>,std::false_type &&)' [found using argument-dependent lookup] pure2-type-safety-1.cpp2(26): note: while trying to match the argument list '(std::basic_string,std::allocator>, std::false_type)' pure2-type-safety-1.cpp2(26): note: the template instantiation context (the oldest one first) is pure2-type-safety-1.cpp2(8): note: see reference to function template instantiation 'void test_generic(const _T0 &,const _T1 (&))' being compiled