I added a patch to https://bugs.llvm.org/show_bug.cgi?id=41578 that fixes it differently.
Apr 24 2019
Feb 13 2019
TBH, I don't think that's a question the committee even thought about when introducing feature-test macros?
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89345#c3 for what I've done in libstdc++
As it looks like libc++ isn't going to define the type for earlier dialects, libstdc++ doesn't either (which seems right anyway because the names aren't reserved prior to C++20).
Feb 7 2019
Jan 23 2019
You are right, it is not guaranteed per the standard, although it has worked before (at least on MSVC).
Jan 17 2019
I'd be happy to restrict this to > C++17 only (which is automatically the case when using G++ because there's no -fdestroying-delete to enable it, you only get it with -std=c++2a, -std=gnu++2a etc.)
Jan 16 2019
The simplest solution would be to change libstdc++'s <new> to:
May 9 2018
@chandlerc thanks for catching this.
Jan 23 2017
The __throw_xxx functions are not part of the public libstdc++ API and whatever Firefox is trying to do with them is not supported by libstdc++ and is undefined behaviour. Make it stop.