summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-08-06 04:09:28 +0000
committerDouglas Gregor <dgregor@apple.com>2009-08-06 04:09:28 +0000
commit3f4d51bb04012d56417e8b362a558f809be802bd (patch)
tree33fd6f5f6ed6c06ded5442de5de14a9c3c517729 /clang/lib/Frontend
parentbdaaacad9a3f24fe67890f85fa2544db4b986eca (diff)
downloadbcm5719-llvm-3f4d51bb04012d56417e8b362a558f809be802bd.tar.gz
bcm5719-llvm-3f4d51bb04012d56417e8b362a558f809be802bd.zip
Predefine __cplusplus to the right value (199711L), except when in GNU mode.
llvm-svn: 78283
Diffstat (limited to 'clang/lib/Frontend')
-rw-r--r--clang/lib/Frontend/InitPreprocessor.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/lib/Frontend/InitPreprocessor.cpp b/clang/lib/Frontend/InitPreprocessor.cpp
index 3ab59315c8b..877c788a1fd 100644
--- a/clang/lib/Frontend/InitPreprocessor.cpp
+++ b/clang/lib/Frontend/InitPreprocessor.cpp
@@ -305,7 +305,13 @@ static void InitializePredefinedMacros(const TargetInfo &TI,
DefineBuiltinMacro(Buf, "__EXCEPTIONS=1");
DefineBuiltinMacro(Buf, "__GNUG__=4");
DefineBuiltinMacro(Buf, "__GXX_WEAK__=1");
- DefineBuiltinMacro(Buf, "__cplusplus=1");
+ if (LangOpts.GNUMode)
+ DefineBuiltinMacro(Buf, "__cplusplus=1");
+ else
+ // C++ [cpp.predefined]p1:
+ // The name_ _cplusplusis defined to the value199711Lwhen compiling a
+ // C++ translation unit.
+ DefineBuiltinMacro(Buf, "__cplusplus=199711L");
DefineBuiltinMacro(Buf, "__private_extern__=extern");
}
OpenPOWER on IntegriCloud