Jon, Attached is the libstdc++ only patch to remove the pointless const attribute from __pool<true>::_M_destroy_thread_key(void*).
https://gcc.gnu.org/ml/gcc/2017-08/msg00027.html I only belatedly now broke it out of the larger patch under review here: https://gcc.gnu.org/ml/gcc-patches/2017-08/msg00599.html Thanks Martin
libstdc++-v3/ChangeLog: PR c/81544 * include/ext/mt_allocator.h (_M_destroy_thread_key): Remove pointless attribute const. diff --git a/libstdc++-v3/include/ext/mt_allocator.h b/libstdc++-v3/include/ext/mt_allocator.h index effb13b..f349ff8 100644 --- a/libstdc++-v3/include/ext/mt_allocator.h +++ b/libstdc++-v3/include/ext/mt_allocator.h @@ -355,7 +355,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION } // XXX GLIBCXX_ABI Deprecated - _GLIBCXX_CONST void + void _M_destroy_thread_key(void*) throw (); size_t