libcxx: Define __STDCPP_THREADS__ to 1, not to __cplusplus.
authorNico Weber <nicolasweber@gmx.de>
Tue, 30 Jul 2019 14:32:47 +0000 (14:32 +0000)
committerNico Weber <nicolasweber@gmx.de>
Tue, 30 Jul 2019 14:32:47 +0000 (14:32 +0000)
commit9aae539d4cfbf68a367360617cefc5a2c0389b6a
tree9cc90d4ccdd336b7a7bd0171abbe06786128b3ad
parent9ad716ed3998eb41033a59e60127669cd169b049
libcxx: Define __STDCPP_THREADS__ to 1, not to __cplusplus.

[cpp.predefined]p2:

   __STDCPP_THREADS__
    Defined, and has the value integer literal 1, if and only if a program
    can have more than one thread of execution .

Also define it only if it's not defined already, since it's supposed
to be defined by the compiler.

Also move it from thread to __config (which requires setting it only
if _LIBCPP_HAS_NO_THREADS is not defined).

Part of PR33230. The intent is to eventually make the compiler define
this instead.

llvm-svn: 367316
libcxx/include/__config
libcxx/include/thread
libcxx/test/std/thread/macro.pass.cpp