llvm-project/clang/lib/Serialization
Manman Ren 33d8029589 PCH + module: make sure we write out macros associated with builtin identifiers.
When we import a module that defines a builtin identifier from prefix header and
precompile the prefix header, the macro information related to the identifier
is lost.

If we don't precompile the prefix header, the source file can still see the
macro information. The reason is that we write out the identifier in the pch
but not the macro information since the macro is not defined locally.

This is related to r251565. In that commit, if we read a builtin identifier from
a module that wasn't "interesting" to that module, we will still write it out to
a PCH that imports that module.

The fix is to write exported module macros for PCH as well.

rdar://24666630

Differential Revision: http://reviews.llvm.org/D20383

llvm-svn: 271310
2016-05-31 18:19:32 +00:00
..
ASTCommon.cpp Enable support for __float128 in Clang and enable it on pertinent platforms 2016-05-09 08:52:33 +00:00
ASTCommon.h [OPENMP] Parsing and Sema support for 'omp declare target' directive 2016-04-06 11:38:59 +00:00
ASTReader.cpp Update identifiers as needed when loading macros from serialized ASTs. 2016-05-14 06:24:14 +00:00
ASTReaderDecl.cpp PR27754: CXXRecordDecl::data() needs to perform an update even if it's called 2016-05-17 22:44:15 +00:00
ASTReaderInternals.h Re-commit r246497 (and dependent changes r246524 and r246521), reverted in 2015-09-01 20:35:42 +00:00
ASTReaderStmt.cpp [OpenMP] Parsing and sema support for the from clause 2016-05-26 17:49:04 +00:00
ASTWriter.cpp PCH + module: make sure we write out macros associated with builtin identifiers. 2016-05-31 18:19:32 +00:00
ASTWriterDecl.cpp Reland r267691 fixing PR27535. 2016-04-28 14:13:28 +00:00
ASTWriterStmt.cpp [OpenMP] Parsing and sema support for the from clause 2016-05-26 17:49:04 +00:00
CMakeLists.txt Introduce module file extensions to piggy-back data onto module files. 2015-11-03 18:33:07 +00:00
GeneratePCH.cpp Introduce module file extensions to piggy-back data onto module files. 2015-11-03 18:33:07 +00:00
GlobalModuleIndex.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 19:38:18 +00:00
Module.cpp [modules] Remove CXX_BASE_SPECIFIERS_OFFSETS table. Instead of storing an ID of 2016-04-14 00:29:55 +00:00
ModuleFileExtension.cpp Introduce module file extensions to piggy-back data onto module files. 2015-11-03 18:33:07 +00:00
ModuleManager.cpp Fix use-after-free in ModuleManager 2015-10-21 23:12:45 +00:00
MultiOnDiskHashTable.h Roll-back r250822. 2015-10-20 13:23:58 +00:00