On 04/19/2017 07:07 PM, Jonathan Wakely wrote:
I know it's a bit late, but I'd like to propose deprecating the libstdc++ extension that allows arithmetic on std::atomic<void*>. Currently we make it behave like arithmetic on void*, which is also a GNU extension (https://gcc.gnu.org/onlinedocs/gcc/Pointer-Arith.html). We also allow arithmetic on types such as std::atomic<void(*)()> which is probably not useful (PR 69769).
Why is it acceptable to have the extension for built-in types, but not for library types wrapping them? Why be inconsistent about this?
Thanks, Florian