[Solaris] Only define _REENTRANT if -pthread
authorRainer Orth <ro@gcc.gnu.org>
Tue, 15 May 2018 11:36:00 +0000 (11:36 +0000)
committerRainer Orth <ro@gcc.gnu.org>
Tue, 15 May 2018 11:36:00 +0000 (11:36 +0000)
When looking at lib/Basic/Targets/OSTargets.h, I noticed that _REENTRANT is defined
unconditionally on Solaris, unlike all other targets and what either Studio cc (only define
it with -mt) or gcc (only define it with -pthread) do.

This patch follows that lead.

Differential Revision: https://reviews.llvm.org/D41241

llvm-svn: 332343

clang/lib/Basic/Targets/OSTargets.h

index a669a27..18239a2 100644 (file)
@@ -551,7 +551,8 @@ protected:
     Builder.defineMacro("_LARGEFILE_SOURCE");
     Builder.defineMacro("_LARGEFILE64_SOURCE");
     Builder.defineMacro("__EXTENSIONS__");
-    Builder.defineMacro("_REENTRANT");
+    if (Opts.POSIXThreads)
+      Builder.defineMacro("_REENTRANT");
     if (this->HasFloat128)
       Builder.defineMacro("__FLOAT128__");
   }