Skip to content

Commit 20727ff

Browse files
committed
Add GCC 15 support.
1 parent 1a6062a commit 20727ff

File tree

134 files changed

+2192
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

134 files changed

+2192
-0
lines changed

regression-tests/run-tests.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,10 @@ else
179179
exec_out_dir="$expected_results_dir/gcc-13"
180180
elif [[ "$compiler_version" == *"g++-14"* ]]; then
181181
exec_out_dir="$expected_results_dir/gcc-14"
182+
elif [[ "$compiler_version" == *"g++-15"* ||
183+
"$compiler_version" == *"g++ (Ubuntu 15"*
184+
]]; then
185+
exec_out_dir="$expected_results_dir/gcc-15"
182186
else
183187
printf "Unhandled compiler version:\n$compiler_version\n\n"
184188
exit 2
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
gcc (Ubuntu 15.2.0-4ubuntu4) 15.2.0
2+
Copyright (C) 2025 Free Software Foundation, Inc.
3+
This is free software; see the source for copying conditions. There is NO
4+
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Hello world
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
v as X< 0> = 0
2+
v as X< 1> = 1
3+
v as X< 2> = 2
4+
v as X< 3> = 3
5+
v as X< 4> = 4
6+
v as X< 5> = 5
7+
v as X< 6> = 6
8+
v as X< 7> = 7
9+
v as X< 8> = 8
10+
v as X< 9> = 9
11+
v as X<10> = 10
12+
v as X<11> = 11
13+
v as X<12> = 12
14+
v as X<13> = 13
15+
v as X<14> = 14
16+
v as X<15> = 15
17+
v as X<16> = 16
18+
v as X<17> = 17
19+
v as X<18> = 18
20+
v as X<19> = 19
21+
as_const(v) as X< 0> = 0
22+
as_const(v) as X< 1> = 1
23+
as_const(v) as X< 2> = 2
24+
as_const(v) as X< 3> = 3
25+
as_const(v) as X< 4> = 4
26+
as_const(v) as X< 5> = 5
27+
as_const(v) as X< 6> = 6
28+
as_const(v) as X< 7> = 7
29+
as_const(v) as X< 8> = 8
30+
as_const(v) as X< 9> = 9
31+
as_const(v) as X<10> = 10
32+
as_const(v) as X<11> = 11
33+
as_const(v) as X<12> = 12
34+
as_const(v) as X<13> = 13
35+
as_const(v) as X<14> = 14
36+
as_const(v) as X<15> = 15
37+
as_const(v) as X<16> = 16
38+
as_const(v) as X<17> = 17
39+
as_const(v) as X<18> = 18
40+
as_const(v) as X<19> = 19
41+
move(v) as X< 0> = 0
42+
move(v) as X< 1> = 1
43+
move(v) as X< 2> = 2
44+
move(v) as X< 3> = 3
45+
move(v) as X< 4> = 4
46+
move(v) as X< 5> = 5
47+
move(v) as X< 6> = 6
48+
move(v) as X< 7> = 7
49+
move(v) as X< 8> = 8
50+
move(v) as X< 9> = 9
51+
move(v) as X<10> = 10
52+
move(v) as X<11> = 11
53+
move(v) as X<12> = 12
54+
move(v) as X<13> = 13
55+
move(v) as X<14> = 14
56+
move(v) as X<15> = 15
57+
move(v) as X<16> = 16
58+
move(v) as X<17> = 17
59+
move(v) as X<18> = 18
60+
move(v) as X<19> = 19
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
x + x = 4.000000
2+
x + x diff order 1 = 2.000000
3+
x + x diff order 2 = 0.000000
4+
x + x diff order 3 = 0.000000
5+
x + x diff order 4 = 0.000000
6+
x + x diff order 5 = 0.000000
7+
x + x diff order 6 = 0.000000
8+
0 - x = -2.000000
9+
0 - x diff order 1 = -1.000000
10+
0 - x diff order 2 = 0.000000
11+
0 - x diff order 3 = 0.000000
12+
0 - x diff order 4 = 0.000000
13+
0 - x diff order 5 = 0.000000
14+
0 - x diff order 6 = 0.000000
15+
x^7 = 128.000000
16+
x^7 diff order 1 = 448.000000
17+
x^7 diff order 2 = 1344.000000
18+
x^7 diff order 3 = 3360.000000
19+
x^7 diff order 4 = 6720.000000
20+
x^7 diff order 5 = 10080.000000
21+
x^7 diff order 6 = 10080.000000
22+
1/x = 0.500000
23+
1/x diff order 1 = -0.250000
24+
1/x diff order 2 = 0.250000
25+
1/x diff order 3 = -0.375000
26+
1/x diff order 4 = 0.750000
27+
1/x diff order 5 = -1.875000
28+
1/x diff order 6 = 5.625000
29+
sqrt(x) = 1.414214
30+
sqrt(x) diff order 1 = 0.353553
31+
sqrt(x) diff order 2 = -0.088388
32+
sqrt(x) diff order 3 = 0.066291
33+
sqrt(x) diff order 4 = -0.082864
34+
sqrt(x) diff order 5 = 0.145012
35+
sqrt(x) diff order 6 = -0.326277
36+
log(x) = 0.693147
37+
log(x) diff order 1 = 0.500000
38+
log(x) diff order 2 = -0.250000
39+
log(x) diff order 3 = 0.250000
40+
log(x) diff order 4 = -0.375000
41+
log(x) diff order 5 = 0.750000
42+
log(x) diff order 6 = -1.875000
43+
exp(x) = 7.389056
44+
exp(x) diff order 1 = 7.389056
45+
exp(x) diff order 2 = 7.389056
46+
exp(x) diff order 3 = 7.389056
47+
exp(x) diff order 4 = 7.389056
48+
exp(x) diff order 5 = 7.389056
49+
exp(x) diff order 6 = 7.389056
50+
sin(x) = 0.909297
51+
sin(x) diff order 1 = -0.416147
52+
sin(x) diff order 2 = -0.909297
53+
sin(x) diff order 3 = 0.416147
54+
sin(x) diff order 4 = 0.909297
55+
sin(x) diff order 5 = -0.416147
56+
sin(x) diff order 6 = -0.909297
57+
cos(x) = -0.416147
58+
cos(x) diff order 1 = -0.909297
59+
cos(x) diff order 2 = 0.416147
60+
cos(x) diff order 3 = 0.909297
61+
cos(x) diff order 4 = -0.416147
62+
cos(x) diff order 5 = -0.909297
63+
cos(x) diff order 6 = 0.416147
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
mixed-bounds-check.cpp2(9) int main(): Bounds safety violation: out of bounds access attempt detected - attempted access at index 5, [min,max] range is [0,4]
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
1
2+
44
3+
45
4+
46
5+
5
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
mixed-bounds-safety-with-assert.cpp2(11) void print_subrange(const auto:126&, cpp2::impl::in<int>, cpp2::impl::in<int>) [with auto:126 = std::vector<int>; cpp2::impl::in<int> = const int]: Bounds safety violation
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
In file included from mixed-bugfix-for-ufcs-non-local.cpp:6:
2+
../../../include/cpp2util.h:10059:1: error: lambda-expression in template parameter type
3+
../../../include/cpp2util.h:10096:59: note: in expansion of macro ‘CPP2_UFCS_’
4+
mixed-bugfix-for-ufcs-non-local.cpp2:13:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’
5+
mixed-bugfix-for-ufcs-non-local.cpp2:13:36: error: template argument 1 is invalid
6+
../../../include/cpp2util.h:10059:1: error: lambda-expression in template parameter type
7+
../../../include/cpp2util.h:10096:59: note: in expansion of macro ‘CPP2_UFCS_’
8+
mixed-bugfix-for-ufcs-non-local.cpp2:21:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’
9+
mixed-bugfix-for-ufcs-non-local.cpp2:21:36: error: template argument 1 is invalid
10+
../../../include/cpp2util.h:10059:1: error: lambda-expression in template parameter type
11+
../../../include/cpp2util.h:10096:59: note: in expansion of macro ‘CPP2_UFCS_’
12+
mixed-bugfix-for-ufcs-non-local.cpp2:31:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’
13+
mixed-bugfix-for-ufcs-non-local.cpp2:31:36: error: template argument 1 is invalid
14+
../../../include/cpp2util.h:10059:1: error: lambda-expression in template parameter type
15+
../../../include/cpp2util.h:10096:59: note: in expansion of macro ‘CPP2_UFCS_’
16+
mixed-bugfix-for-ufcs-non-local.cpp2:33:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’
17+
mixed-bugfix-for-ufcs-non-local.cpp2:33:36: error: template argument 1 is invalid
18+
../../../include/cpp2util.h:10059:1: error: lambda-expression in template parameter type
19+
../../../include/cpp2util.h:10096:59: note: in expansion of macro ‘CPP2_UFCS_’
20+
mixed-bugfix-for-ufcs-non-local.cpp2:21:12: note: in expansion of macro ‘CPP2_UFCS_NONLOCAL’
21+
mixed-bugfix-for-ufcs-non-local.cpp2:21:36: error: template argument 1 is invalid
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
hello
2+
2022
3+
hello-ish
4+
2022-ish

0 commit comments

Comments
 (0)