diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-09-01 17:04:32 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-09-01 17:04:32 +0000 |
commit | 7143aab97c6e849a5a5005b7853b8c7d5af008ed (patch) | |
tree | 1d717dfe03b6e8ad673920a17b021fb3faf6912d /lib/Lex/MacroInfo.cpp | |
parent | 8efcc0184a6dfe1ea799d3a6b9c1312ef1fac11d (diff) |
Modules hide macro definitions by default, so that silly things like
include guards don't show up as macro definitions in every translation
unit that imports a module. Macro definitions can, however, be
exported with the intentionally-ugly #__export_macro__
directive. Implement this feature by not even bothering to serialize
non-exported macros to a module, because clients of that module need
not (should not) know that these macros even exist.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138943 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Lex/MacroInfo.cpp')
-rw-r--r-- | lib/Lex/MacroInfo.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Lex/MacroInfo.cpp b/lib/Lex/MacroInfo.cpp index 9e682ce306..5a7af56398 100644 --- a/lib/Lex/MacroInfo.cpp +++ b/lib/Lex/MacroInfo.cpp @@ -21,6 +21,7 @@ MacroInfo::MacroInfo(SourceLocation DefLoc) : Location(DefLoc) { IsGNUVarargs = false; IsBuiltinMacro = false; IsFromAST = false; + ChangedAfterLoad = false; IsDisabled = false; IsUsed = false; IsAllowRedefinitionsWithoutWarning = false; @@ -40,6 +41,7 @@ MacroInfo::MacroInfo(const MacroInfo &MI, llvm::BumpPtrAllocator &PPAllocator) { IsGNUVarargs = MI.IsGNUVarargs; IsBuiltinMacro = MI.IsBuiltinMacro; IsFromAST = MI.IsFromAST; + ChangedAfterLoad = MI.ChangedAfterLoad; IsDisabled = MI.IsDisabled; IsUsed = MI.IsUsed; IsAllowRedefinitionsWithoutWarning = MI.IsAllowRedefinitionsWithoutWarning; |