aboutsummaryrefslogtreecommitdiff
path: root/lib/Serialization/ASTWriter.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2011-09-14 20:36:30 +0000
committerDouglas Gregor <dgregor@apple.com>2011-09-14 20:36:30 +0000
commit0c129afcfb7860b9e1ff29c34edeab17b770140b (patch)
tree2b3d8a0398c51003fd38791281e2bca807c97cfb /lib/Serialization/ASTWriter.cpp
parente2978e337520bab472fdfa7dfda839bafbf750e9 (diff)
Don't try to write a macro offset for an identifier that names a non-exported macro
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139728 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Serialization/ASTWriter.cpp')
-rw-r--r--lib/Serialization/ASTWriter.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Serialization/ASTWriter.cpp b/lib/Serialization/ASTWriter.cpp
index 28a69d4bdb..e2e1d2b2b5 100644
--- a/lib/Serialization/ASTWriter.cpp
+++ b/lib/Serialization/ASTWriter.cpp
@@ -2300,7 +2300,8 @@ public:
uint32_t Bits = 0;
bool hasMacroDefinition
= II->hasMacroDefinition() &&
- (Macro || (Macro = PP.getMacroInfo(II))) && !Macro->isBuiltinMacro();
+ (Macro || (Macro = PP.getMacroInfo(II))) && !Macro->isBuiltinMacro() &&
+ (!IsModule || Macro->isExported());
Bits = (uint32_t)II->getObjCOrBuiltinID();
Bits = (Bits << 1) | unsigned(hasMacroDefinition);
Bits = (Bits << 1) | unsigned(II->isExtensionToken());