https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100186
--- Comment #5 from David Edelsohn <dje at gcc dot gnu.org> ---
For example, in GCC 6:
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
/**
* @defgroup threads Threads
* @ingroup concurrency
*
* Classes for thread support.
* @{
*/
/// thread
class thread
{
If we are going to support bootstrap with releases of GCC back to GCC 6 or GCC
4.8, the source code cannot assume that std::thread exists.
However, it's probably reasonable to assume hardware_concurrency of 1 when
compiling in a mode without GTHREADS.