From ed73cac647942fb08c052d466e054027a7790d63 Mon Sep 17 00:00:00 2001 From: Ryan Flynn Date: Tue, 21 Jul 2009 00:07:02 +0000 Subject: [PATCH] define __STDC_VERSION__ processor token for c94 llvm-svn: 76514 --- clang/lib/Frontend/InitPreprocessor.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/clang/lib/Frontend/InitPreprocessor.cpp b/clang/lib/Frontend/InitPreprocessor.cpp index e41dfdda07e9..3ab59315c8b1 100644 --- a/clang/lib/Frontend/InitPreprocessor.cpp +++ b/clang/lib/Frontend/InitPreprocessor.cpp @@ -247,10 +247,13 @@ static void InitializePredefinedMacros(const TargetInfo &TI, DefineBuiltinMacro(Buf, "__STDC__=1"); if (LangOpts.AsmPreprocessor) DefineBuiltinMacro(Buf, "__ASSEMBLER__=1"); - if (LangOpts.C99 && !LangOpts.CPlusPlus) - DefineBuiltinMacro(Buf, "__STDC_VERSION__=199901L"); - else if (0) // STDC94 ? - DefineBuiltinMacro(Buf, "__STDC_VERSION__=199409L"); + + if (!LangOpts.CPlusPlus) { + if (LangOpts.C99) + DefineBuiltinMacro(Buf, "__STDC_VERSION__=199901L"); + else if (!LangOpts.GNUMode && LangOpts.Digraphs) + DefineBuiltinMacro(Buf, "__STDC_VERSION__=199409L"); + } // Standard conforming mode? if (!LangOpts.GNUMode)