diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2022-02-11 21:17:05 +0000 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2022-02-11 21:41:43 +0000 |
commit | b02247346ea7e403d706b9ccabf9078c060adb9e (patch) | |
tree | a184770b98cdb4a3dccec0195d1f8a386620e0b4 | |
parent | 9355a8c35883b5125851bb9b4169a1a1cd8e343f (diff) | |
download | gcc-b02247346ea7e403d706b9ccabf9078c060adb9e.zip gcc-b02247346ea7e403d706b9ccabf9078c060adb9e.tar.gz gcc-b02247346ea7e403d706b9ccabf9078c060adb9e.tar.bz2 |
libstdc++: Fix test failures at -O0
libstdc++-v3/ChangeLog:
* testsuite/20_util/monotonic_buffer_resource/allocate.cc:
Ignore -Walloc-larger-than warning.
* testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
Likewise.
* testsuite/29_atomics/atomic/cons/user_pod.cc: Compile with -O1
to avoid linker error for __atomic_is_lock_free.
3 files changed, 7 insertions, 0 deletions
diff --git a/libstdc++-v3/testsuite/20_util/monotonic_buffer_resource/allocate.cc b/libstdc++-v3/testsuite/20_util/monotonic_buffer_resource/allocate.cc index 015c1a9..e7a0e97 100644 --- a/libstdc++-v3/testsuite/20_util/monotonic_buffer_resource/allocate.cc +++ b/libstdc++-v3/testsuite/20_util/monotonic_buffer_resource/allocate.cc @@ -238,8 +238,11 @@ test07() std::pmr::monotonic_buffer_resource mbr(&cr); try { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Walloc-size-larger-than=" // Try to allocate a ridiculous size: void* p = mbr.allocate(std::size_t(-2), 1); +#pragma GCC diagnostic pop // Should not reach here! VERIFY( !"attempt to allocate SIZE_MAX-1 should not have succeeded" ); throw p; diff --git a/libstdc++-v3/testsuite/20_util/unsynchronized_pool_resource/allocate.cc b/libstdc++-v3/testsuite/20_util/unsynchronized_pool_resource/allocate.cc index c81344a..25e5ce6 100644 --- a/libstdc++-v3/testsuite/20_util/unsynchronized_pool_resource/allocate.cc +++ b/libstdc++-v3/testsuite/20_util/unsynchronized_pool_resource/allocate.cc @@ -281,10 +281,13 @@ test07() std::pmr::unsynchronized_pool_resource upr(&cr); try { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Walloc-size-larger-than=" // Try to allocate a ridiculous size (and use a large extended alignment // so that careful_resource::do_allocate can distinguish this allocation // from any required for the pool resource's internal data structures): void* p = upr.allocate(std::size_t(-2), 1024); +#pragma GCC distinguish pop // Should not reach here! VERIFY( !"attempt to allocate SIZE_MAX-1 should not have succeeded" ); throw p; diff --git a/libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc b/libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc index c538ff3..285b420 100644 --- a/libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc +++ b/libstdc++-v3/testsuite/29_atomics/atomic/cons/user_pod.cc @@ -1,3 +1,4 @@ +// { dg-options "-O1" } // { dg-do link { target c++11 } } // Copyright (C) 2009-2022 Free Software Foundation, Inc. |