Skip to content

CI Add Clang-18 C++23 regression tests #1154

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

Merged
merged 2 commits into from
Jul 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build-cppfront.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
cxx-std: 'c++20'
- runs-on: ubuntu-24.04
compiler: clang++-18
cxx-std: 'c++2b'
cxx-std: 'c++23'
- runs-on: ubuntu-24.04
compiler: g++-14
cxx-std: 'c++2b'
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/regression-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,11 @@ jobs:
compiler: clang++-18
cxx_std: c++20
stdlib: libstdc++
- os: ubuntu-24.04
shortosname: ubu-24
compiler: clang++-18
cxx_std: c++23
stdlib: libc++-18-dev
- os: ubuntu-22.04
shortosname: ubu-22
compiler: clang++-15
Expand Down
5 changes: 5 additions & 0 deletions regression-tests/run-tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,11 @@ if [ -z "$cxx_compiler" ]; then
usage
fi

if [ -z "$label" ]; then
echo "Run label not specified"
usage
fi

tests=$(ls | grep ".cpp2$")
if [[ -n "$chosen_tests" ]]; then
for test in $chosen_tests; do
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Ubuntu clang version 18.1.3 (1)
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 @@
1 "test"
0 ""
1 "test"
0 ""
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
(no match)
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,3 @@
11
12
13*14 is 182
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
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Null safety violation: std::expected has an unexpected value
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Null safety violation: std::optional does not contain a value
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Null safety violation: std::shared_ptr is empty
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Null safety violation: std::unique_ptr is empty
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
>> decorated
>> hello
>> world
Original file line number Diff line number Diff line change
@@ -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
Loading
Loading