For other tests that don't link to libatomic we use if-constexpr to limit which types we test e.g.
--- a/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc @@ -33,14 +33,17 @@ template<typename S> S aa{ va }; S bb{ vb }; std::atomic_ref<S> a{ aa }; - a.wait(bb); - std::thread t([&] + if constexpr (std::atomic_ref<S>::is_always_lock_free) { - a.store(bb); - a.notify_one(); - }); - a.wait(aa); - t.join(); + a.wait(bb); + std::thread t([&] + { + a.store(bb); + a.notify_one(); + }); + a.wait(aa); + t.join(); + } } int Alternatively we could add arm*-*-* to the targets in add_options_for_libatomic in testsuite/lib/dg-options.exp