[Bug libstdc++/105934] [9/10/11/12/13 Regression] C++11 pointer versions of atomic_fetch_add missing because of P0558
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Jun 13 09:54:14 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105934
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Somewhat related:
The MSVC testsuite has an example using atomic_store<Base> that fails with
libstdc++:
https://github.com/microsoft/STL/blob/main/tests/std/tests/Dev11_1066589_shared_ptr_atomic_deadlock/test.cpp
atomic_store<Base>(shared_ptr<Base>, shared_ptr<Derived>) gives an error
outside the immediate context, because the typename atomic<T>::value_type
parameter causes instantiation of atomic<shared_ptr<Base>> which is ill-formed.
I think MSVC has some workaround for this, which deviates from what P0558 did.
More information about the Gcc-bugs
mailing list