src/plugins/thirdParty/LLVM/tools/clang/lib/Basic/Targets.cpp
/// DefineStd - Define a macro name and standard variants.  For example if
/// MacroName is "unix", then this will define "__unix", "__unix__", and "unix"
/// when in GNU mode.
Define a macro name and standard variants.
Define a macro name and standard variants .
static void DefineStd(MacroBuilder &Builder, StringRef MacroName,
                      const LangOptions &Opts) {
  assert(MacroName[0] != '_' && "Identifier should be in the user's namespace");
  if (Opts.GNUMode)
    Builder.defineMacro(MacroName);
  Builder.defineMacro("__" + MacroName);
  Builder.defineMacro("__" + MacroName + "__");
}
static void DefineStd ( MacroBuilder & Builder , StringRef MacroName , const LangOptions & Opts ) { assert ( MacroName [ 0 ] != ' ' && " " ) ; if ( Opts . GNUMode ) Builder . defineMacro ( MacroName ) ; Builder . defineMacro ( " " + MacroName ) ; Builder . defineMacro ( " " + MacroName + " " ) ; }
DefineStd - Define a macro name and standard variants.
DefineStd - Define a macro name and standard variants .
// If in GNU mode (e.g. -std=gnu99 but not -std=c99) define the raw identifier // in the user's namespace. // Define __unix. // Define __unix__.