https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114103
--- Comment #15 from dave.anglin at bell dot net --- On 2024-03-01 5:42 p.m., redi at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114103 > > Jonathan Wakely <redi at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Attachment #57540|0 |1 > is obsolete| | > > --- Comment #14 from Jonathan Wakely <redi at gcc dot gnu.org> --- > Created attachment 57591 > --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57591&action=edit > Do not define lock-free atomic aliases if not fully lock-free > > Here's all of that as a single (slightly cleaned up) patch. > With this change, lock_free_aliases.cc fails test for excess errors: Excess errors: /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:7: error: #error "Feature test macro for lock-free type aliases is missing in <atomic>" /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:19: error: 'atomic_signed_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:19: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:20: error: 'atomic_unsigned_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:20: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:25: error: 'atomic_signed_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:25: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:26: error: 'atomic_unsigned_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:26: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:29: error: 'atomic_signed_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:29: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:30: error: 'atomic_unsigned_lock_free' is not a member of 'std' /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:30: error: template argument 1 is invalid /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:33: error: 'std::atomic_signed_lock_free' has not been declared /home/dave/gnu/gcc/gcc/libstdc++-v3/testsuite/29_atomics/atomic/lock_free_aliases.cc:34: error: 'std::atomic_unsigned_lock_free' has not been declared This is with my posted cmath patch.