-
Notifications
You must be signed in to change notification settings - Fork 262
CI: Add Clang 15 support in regression tests #974
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -129,31 +129,39 @@ if [[ "$cxx_compiler" == *"cl.exe"* ]]; then | |
exec_out_dir="$expected_results_dir/msvc-2022" | ||
compiler_version=$(cl.exe) | ||
else | ||
compiler_cmd="$cxx_compiler -I../../../include -std=c++20 -pthread -o " | ||
compiler_version=$("$cxx_compiler" --version) | ||
|
||
# We don't currently support Apple Clang 15 so try and switch to 14 | ||
if [[ "$compiler_version" == *"Apple clang version 15.0"* ]]; then | ||
printf "Found Apple Clang 15, attempting to switch to Apple Clang 14" | ||
cxx_compiler=$(xcodebuild -find clang++) | ||
compiler_version=$("$cxx_compiler" --version) | ||
# Verify the compiler command | ||
which "$cxx_compiler" > /dev/null | ||
if [[ $? != 0 ]]; then | ||
printf "The compiler '$cxx_compiler' is not installed\n\n" | ||
exit 2 | ||
fi | ||
|
||
if [[ "$compiler_version" == *"Apple clang version 14.0"* ]]; then | ||
cpp_std=c++2b | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The tests should be run with C++20. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Oh, sorry, I didn't know. The confusion came from the fact that There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @hsutter I you are OK with compiling all regression tests with |
||
compiler_version=$("$cxx_compiler" --version) | ||
|
||
if [[ "$compiler_version" == *"Apple clang version 14.0"* || | ||
"$compiler_version" == *"Homebrew clang version 15.0"* ]]; then | ||
exec_out_dir="$expected_results_dir/apple-clang-14" | ||
elif [[ "$compiler_version" == *"clang version 12.0"* ]]; then | ||
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" == *"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" | ||
else | ||
printf "Unhandled compiler version:\n$compiler_version\n\n" | ||
exit 2 | ||
fi | ||
|
||
compiler_cmd="$cxx_compiler -I../../../include -std=$cpp_std -pthread -o " | ||
fi | ||
|
||
if [[ -d "$exec_out_dir" ]]; then | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
Ubuntu clang version 15.0.7 | ||
Target: x86_64-pc-linux-gnu | ||
Thread model: posix | ||
InstalledDir: /usr/bin |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Hello world |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
1 | ||
44 | ||
45 | ||
46 | ||
5 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Bounds safety violation |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
hello | ||
2022 | ||
hello-ish | ||
2022-ish |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
true | ||
false | ||
"test.exe" | ||
true |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
hello-ish maybe | ||
2022-ish maybe |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
hello | ||
2022 | ||
hello-ish | ||
2022-ish |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
hello | ||
2022 | ||
hello-ish | ||
2022-ish |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
|
||
hello | ||
|
||
2023 | ||
hello-ish | ||
2023-ish |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
|
||
hello | ||
|
||
2022 | ||
hello-ish | ||
2022-ish |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Hello [world] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
12234 | ||
12234 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Contract violation: fill: value must contain at least count elements |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
>> [xyzzy] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
rev dodgson | ||
(no match) | ||
the answer | ||
zero | ||
plugh | ||
zero | ||
1 or 2 | ||
1 or 2 | ||
3 | ||
integer -42 | ||
xyzzy | ||
3 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
>> hello | ||
>> big | ||
>> world | ||
** ** ** | ||
>> [hello] | ||
>> [big] | ||
>> [world] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
1 42 | ||
2 84 | ||
3 168 | ||
4 336 | ||
5 672 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
sending error to my framework... [dynamic null dereference attempt detected] |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
>> 42 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
a is 10 | ||
b is xyzzy |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
42 | ||
exxxx |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
xyzzy and plugh | ||
xyzzyplugh |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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) |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
12 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
rain | ||
rain |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[Explanation] The path is taken from here.