http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50982
--- Comment #28 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-11-05 13:56:43 UTC --- Just to be clear, as this bug report is quite misleading: once the initial problem was fixed the change is that _GLIBCXX_HAS_GTHREADS is being set now when it wasn't previously (for why that happens you'll need to look in the libstdc++-v3/config.log) That causes code to be included on AIX that was previously not used, the failures in include/mutex are not new or caused by Rainer's changes, that code was (apparently) never compiled on AIX previously. Everything from comment 7 onwards is due to the inclusion of code which has never been used on AIX before. Either the cause of the change to _GLIBCXX_HAS_GTHREADS should be reverted so that AIX doesn't use the C++ mutex code, making the compilation errors in that code disappear, or (I think this is the correct approach) the bug should be recategorised as libstdc++ and assigned to me to fix the libstdc++ code so it works on AIX. The latter option should mean AIX will get a working C++11 threading implementation, which presumably it previously didn't (which will mean we should adjust the relevant parts of the testsuite to use any required flags to run on AIX)