Re: [PATCH 2/2] libstdc++: Replace stacktrace effective target with feature test
Pushed to trunk. On Sat, 23 Mar 2024 at 00:22, Jonathan Wakely wrote: > > And this replaces an existing custom dg-require- directive with a use of > the new one that checks for a standard feature test macro. I didn't see > any other existing dg-require-xxx directives that can be replaced like > this. > > -- >8 -- > > Remove the dejagnu code for checking whether std::stacktrace is supported > and just use the new dg-require-cpp-feature-test directive to check for > __cpp_lib_stacktrace instead. > > libstdc++-v3/ChangeLog: > > * testsuite/19_diagnostics/stacktrace/current.cc: Check for > __cpp_lib_stacktrace instead of check for stacktrace ET. > * testsuite/19_diagnostics/stacktrace/entry.cc: Likewise. > * testsuite/19_diagnostics/stacktrace/hash.cc: Likewise. > * testsuite/19_diagnostics/stacktrace/output.cc: Likewise. > * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise. > * testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise. > * testsuite/19_diagnostics/stacktrace/version.cc: Likewise. > * testsuite/23_containers/vector/debug/assign4_backtrace_neg.cc: > Likewise. > * testsuite/lib/libstdc++.exp (check_effective_target_stacktrace): > Remove. > --- > .../testsuite/19_diagnostics/stacktrace/current.cc| 2 +- > libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc | 2 +- > libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc | 2 +- > .../testsuite/19_diagnostics/stacktrace/output.cc | 2 +- > .../testsuite/19_diagnostics/stacktrace/stacktrace.cc | 2 +- > .../testsuite/19_diagnostics/stacktrace/synopsis.cc | 2 +- > .../testsuite/19_diagnostics/stacktrace/version.cc| 2 +- > .../23_containers/vector/debug/assign4_backtrace_neg.cc | 2 +- > libstdc++-v3/testsuite/lib/libstdc++.exp | 8 > 9 files changed, 8 insertions(+), 16 deletions(-) > > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc > index a27836d27af..b1af5f74fb2 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc > @@ -1,6 +1,6 @@ > // { dg-options "-lstdc++exp" } > // { dg-do run { target c++23 } } > -// { dg-require-effective-target stacktrace } > +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } > > #include > #include > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc > index ab016d56400..bb348ebef8f 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc > @@ -1,6 +1,6 @@ > // { dg-options "-lstdc++exp" } > // { dg-do run { target c++23 } } > -// { dg-require-effective-target stacktrace } > +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } > > #include > #include "testsuite_hooks.h" > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc > index 21705098ff0..2176596ae5c 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc > @@ -1,6 +1,6 @@ > // { dg-options "-lstdc++exp" } > // { dg-do run { target c++23 } } > -// { dg-require-effective-target stacktrace } > +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } > > #include > #include > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc > index 67f1e0cebaf..e27aea1f508 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc > @@ -1,6 +1,6 @@ > // { dg-options "-lstdc++exp" } > // { dg-do run { target c++23 } } > -// { dg-require-effective-target stacktrace } > +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } > // { dg-add-options no_pch } > > #include > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc > index 5dfa76951df..070c4157471 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc > +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc > @@ -1,6 +1,6 @@ > // { dg-options "-lstdc++exp" } > // { dg-do run { target c++23 } } > -// { dg-require-effective-target stacktrace } > +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } > > #include > #include "testsuite_allocator.h" > diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc > b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc > index 9e775b86ac9..b99d382ec26 100644 > --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc > +++
[PATCH 2/2] libstdc++: Replace stacktrace effective target with feature test
And this replaces an existing custom dg-require- directive with a use of the new one that checks for a standard feature test macro. I didn't see any other existing dg-require-xxx directives that can be replaced like this. -- >8 -- Remove the dejagnu code for checking whether std::stacktrace is supported and just use the new dg-require-cpp-feature-test directive to check for __cpp_lib_stacktrace instead. libstdc++-v3/ChangeLog: * testsuite/19_diagnostics/stacktrace/current.cc: Check for __cpp_lib_stacktrace instead of check for stacktrace ET. * testsuite/19_diagnostics/stacktrace/entry.cc: Likewise. * testsuite/19_diagnostics/stacktrace/hash.cc: Likewise. * testsuite/19_diagnostics/stacktrace/output.cc: Likewise. * testsuite/19_diagnostics/stacktrace/stacktrace.cc: Likewise. * testsuite/19_diagnostics/stacktrace/synopsis.cc: Likewise. * testsuite/19_diagnostics/stacktrace/version.cc: Likewise. * testsuite/23_containers/vector/debug/assign4_backtrace_neg.cc: Likewise. * testsuite/lib/libstdc++.exp (check_effective_target_stacktrace): Remove. --- .../testsuite/19_diagnostics/stacktrace/current.cc| 2 +- libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc | 2 +- libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc | 2 +- .../testsuite/19_diagnostics/stacktrace/output.cc | 2 +- .../testsuite/19_diagnostics/stacktrace/stacktrace.cc | 2 +- .../testsuite/19_diagnostics/stacktrace/synopsis.cc | 2 +- .../testsuite/19_diagnostics/stacktrace/version.cc| 2 +- .../23_containers/vector/debug/assign4_backtrace_neg.cc | 2 +- libstdc++-v3/testsuite/lib/libstdc++.exp | 8 9 files changed, 8 insertions(+), 16 deletions(-) diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc index a27836d27af..b1af5f74fb2 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/current.cc @@ -1,6 +1,6 @@ // { dg-options "-lstdc++exp" } // { dg-do run { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } #include #include diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc index ab016d56400..bb348ebef8f 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/entry.cc @@ -1,6 +1,6 @@ // { dg-options "-lstdc++exp" } // { dg-do run { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } #include #include "testsuite_hooks.h" diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc index 21705098ff0..2176596ae5c 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/hash.cc @@ -1,6 +1,6 @@ // { dg-options "-lstdc++exp" } // { dg-do run { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } #include #include diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc index 67f1e0cebaf..e27aea1f508 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/output.cc @@ -1,6 +1,6 @@ // { dg-options "-lstdc++exp" } // { dg-do run { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } // { dg-add-options no_pch } #include diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc index 5dfa76951df..070c4157471 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/stacktrace.cc @@ -1,6 +1,6 @@ // { dg-options "-lstdc++exp" } // { dg-do run { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } #include #include "testsuite_allocator.h" diff --git a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc index 9e775b86ac9..b99d382ec26 100644 --- a/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc +++ b/libstdc++-v3/testsuite/19_diagnostics/stacktrace/synopsis.cc @@ -1,5 +1,5 @@ // { dg-do compile { target c++23 } } -// { dg-require-effective-target stacktrace } +// { dg-require-cpp-feature-test __cpp_lib_stacktrace } // { dg-require-normal-namespace "" } // { dg-add-options no_pch } diff