https://gcc.gnu.org/g:cab0305aea0ca591b032adf09e97acd5e34c9f10
commit r12-11046-gcab0305aea0ca591b032adf09e97acd5e34c9f10 Author: Jonathan Wakely <jwak...@redhat.com> Date: Wed Apr 16 18:38:03 2025 +0100 libstdc++: Add dg-options "-std=gnu++20" to backported tests These tests were backported from gcc-14 where the testsuite automatically adds -std=gnu++20 as needed. That doesn't happen on the older release branches, so an explicit dg-options directive is needed to ensure the tests are run by default. Otherwise they'll only be run when somebody uses a custom --target_board that includes -std=gnu++20. For 29_atomics/headers/stdatomic.h/115807.cc we need to compile with -std=gnu++23 instead. libstdc++-v3/ChangeLog: * testsuite/20_util/integer_sequence/112473.cc: Compile with -std=gnu++20. * testsuite/21_strings/char_traits/requirements/113200.cc: Likewise. * testsuite/23_containers/array/comparison_operators/106212.cc: Likewise. * testsuite/23_containers/span/117966.cc: Likewise. * testsuite/23_containers/vector/cons/113841.cc: Compile with -std=gnu++20. * testsuite/24_iterators/move_iterator/lwg3736.cc: Likewise. * testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc: Likewise. * testsuite/27_io/filesystem/iterators/lwg3480.cc: Likewise. * testsuite/29_atomics/headers/stdatomic.h/115807.cc: Compile with -std=gnu++23. * testsuite/std/ranges/subrange/lwg3589.cc: Likewise. * testsuite/std/time/month/2.cc: Likewise. * testsuite/std/time/weekday/2.cc: Likewise. (cherry picked from commit 4182fa87758d5a94c1f6d71f471842207e56f933) Diff: --- libstdc++-v3/testsuite/20_util/integer_sequence/112473.cc | 1 + libstdc++-v3/testsuite/21_strings/char_traits/requirements/113200.cc | 1 + .../testsuite/23_containers/array/comparison_operators/106212.cc | 2 +- libstdc++-v3/testsuite/23_containers/span/117966.cc | 2 +- libstdc++-v3/testsuite/23_containers/vector/cons/113841.cc | 1 + libstdc++-v3/testsuite/24_iterators/move_iterator/lwg3736.cc | 1 + .../testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc | 1 + libstdc++-v3/testsuite/27_io/filesystem/iterators/lwg3480.cc | 1 + libstdc++-v3/testsuite/29_atomics/headers/stdatomic.h/115807.cc | 1 + libstdc++-v3/testsuite/std/ranges/subrange/lwg3589.cc | 1 + libstdc++-v3/testsuite/std/time/month/2.cc | 1 + libstdc++-v3/testsuite/std/time/weekday/2.cc | 1 + 12 files changed, 12 insertions(+), 2 deletions(-) diff --git a/libstdc++-v3/testsuite/20_util/integer_sequence/112473.cc b/libstdc++-v3/testsuite/20_util/integer_sequence/112473.cc index 14abfbc8149d..1c8035c6b1e5 100644 --- a/libstdc++-v3/testsuite/20_util/integer_sequence/112473.cc +++ b/libstdc++-v3/testsuite/20_util/integer_sequence/112473.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } // PR libstdc++/112473 - integer_sequence accepts non-integer types diff --git a/libstdc++-v3/testsuite/21_strings/char_traits/requirements/113200.cc b/libstdc++-v3/testsuite/21_strings/char_traits/requirements/113200.cc index 0fe765d53bcc..6a1b03293efb 100644 --- a/libstdc++-v3/testsuite/21_strings/char_traits/requirements/113200.cc +++ b/libstdc++-v3/testsuite/21_strings/char_traits/requirements/113200.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } // PR libstdc++/113200 diff --git a/libstdc++-v3/testsuite/23_containers/array/comparison_operators/106212.cc b/libstdc++-v3/testsuite/23_containers/array/comparison_operators/106212.cc index f7b12bd04efd..d6d9bf464b2f 100644 --- a/libstdc++-v3/testsuite/23_containers/array/comparison_operators/106212.cc +++ b/libstdc++-v3/testsuite/23_containers/array/comparison_operators/106212.cc @@ -1,4 +1,4 @@ -// { dg-options "-D_GLIBCXX_DEBUG" } +// { dg-options "-D_GLIBCXX_DEBUG -std=gnu++20" } // { dg-do compile { target c++20 } } // Bug libstdc++/106212 - Code becomes non-constexpr with _GLIBCXX_DEBUG diff --git a/libstdc++-v3/testsuite/23_containers/span/117966.cc b/libstdc++-v3/testsuite/23_containers/span/117966.cc index 8bbb5ca1e079..cf30fcadd8f9 100644 --- a/libstdc++-v3/testsuite/23_containers/span/117966.cc +++ b/libstdc++-v3/testsuite/23_containers/span/117966.cc @@ -1,4 +1,4 @@ -// { dg-options "-D_GLIBCXX_DEBUG" } +// { dg-options "-D_GLIBCXX_DEBUG -std=gnu++20" } // { dg-do compile { target c++20 } } // Bug 117966 diff --git a/libstdc++-v3/testsuite/23_containers/vector/cons/113841.cc b/libstdc++-v3/testsuite/23_containers/vector/cons/113841.cc index a7721d27f796..9c9c7d2d1c42 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/cons/113841.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/cons/113841.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } #include <vector> diff --git a/libstdc++-v3/testsuite/24_iterators/move_iterator/lwg3736.cc b/libstdc++-v3/testsuite/24_iterators/move_iterator/lwg3736.cc index eaf791b30893..49fb686aa06d 100644 --- a/libstdc++-v3/testsuite/24_iterators/move_iterator/lwg3736.cc +++ b/libstdc++-v3/testsuite/24_iterators/move_iterator/lwg3736.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } // 3736. move_iterator missing disable_sized_sentinel_for specialization diff --git a/libstdc++-v3/testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc b/libstdc++-v3/testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc index d51ae1a3d50d..388a535b9040 100644 --- a/libstdc++-v3/testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc +++ b/libstdc++-v3/testsuite/25_algorithms/lexicographical_compare_three_way/113960.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do run { target c++20 } } // PR libstdc++/113960 diff --git a/libstdc++-v3/testsuite/27_io/filesystem/iterators/lwg3480.cc b/libstdc++-v3/testsuite/27_io/filesystem/iterators/lwg3480.cc index 15e0286fff6f..98e97a7775f3 100644 --- a/libstdc++-v3/testsuite/27_io/filesystem/iterators/lwg3480.cc +++ b/libstdc++-v3/testsuite/27_io/filesystem/iterators/lwg3480.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } // { dg-require-filesystem-ts "" } diff --git a/libstdc++-v3/testsuite/29_atomics/headers/stdatomic.h/115807.cc b/libstdc++-v3/testsuite/29_atomics/headers/stdatomic.h/115807.cc index 14f320fe8357..7f9d742838df 100644 --- a/libstdc++-v3/testsuite/29_atomics/headers/stdatomic.h/115807.cc +++ b/libstdc++-v3/testsuite/29_atomics/headers/stdatomic.h/115807.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++23" } // { dg-do compile { target c++23 } } #include <stdatomic.h> namespace other { diff --git a/libstdc++-v3/testsuite/std/ranges/subrange/lwg3589.cc b/libstdc++-v3/testsuite/std/ranges/subrange/lwg3589.cc index 1ccc52d81f8a..4447b3186ebd 100644 --- a/libstdc++-v3/testsuite/std/ranges/subrange/lwg3589.cc +++ b/libstdc++-v3/testsuite/std/ranges/subrange/lwg3589.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do compile { target c++20 } } // LWG 3589. The const lvalue reference overload of get for subrange does not diff --git a/libstdc++-v3/testsuite/std/time/month/2.cc b/libstdc++-v3/testsuite/std/time/month/2.cc index 3bcefa60003b..4ef0adfbce38 100644 --- a/libstdc++-v3/testsuite/std/time/month/2.cc +++ b/libstdc++-v3/testsuite/std/time/month/2.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do run { target c++20 } } // Class month [time.cal.month] diff --git a/libstdc++-v3/testsuite/std/time/weekday/2.cc b/libstdc++-v3/testsuite/std/time/weekday/2.cc index 924709321e5d..6980f78fbe1f 100644 --- a/libstdc++-v3/testsuite/std/time/weekday/2.cc +++ b/libstdc++-v3/testsuite/std/time/weekday/2.cc @@ -1,3 +1,4 @@ +// { dg-options "-std=gnu++20" } // { dg-do run { target c++20 } } // Class weekday [time.cal.wd]