https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81266
--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> --- Author: redi Date: Sat May 11 11:38:51 2019 New Revision: 271095 URL: https://gcc.gnu.org/viewcvs?rev=271095&root=gcc&view=rev Log: PR libstdc++/81266 fix std::thread::native_handle_type test The test uses remove_pointer because in most cases native_handle_type is a pointer to the actual type that the C++ class contains. However, for std::thread, native_handle_type is the same type as the type contained in std::thread, and so remove_pointer is not needed. On targets where pthread_t is a pointer type remove_pointer<native_handle_type> is not a no-op, instead it transforms pthread_t and causes the test to fail. The fix is to not apply remove_pointer when testing std::thread. Backport from mainline 2019-05-10 Jonathan Wakely <jwak...@redhat.com> PR libstdc++/81266 * testsuite/util/thread/all.h: Do not use remove_pointer for std::thread::native_handle_type. Modified: branches/gcc-8-branch/libstdc++-v3/ChangeLog branches/gcc-8-branch/libstdc++-v3/testsuite/util/thread/all.h