llvm-project/clang/lib/Serialization
Richard Smith 6c2b5a8ff0 [modules] Fix incorrect diagnostic mapping computation when a module changes
diagnostic settings using _Pragma within a macro.

The AST writer had previously been assuming that all diagnostic state
transitions would occur within a FileID corresponding to a file. When a
diagnostic state change occured within a macro, it was unable to form a
location for that state change and would instead corrupt the diagnostic state
of the "root" node (and thus that of the main compilation).

Also introduce a "#pragma clang __debug diag_mapping" debugging utility
that I added to track this issue down.

llvm-svn: 324695
2018-02-09 01:15:13 +00:00
..
ASTCommon.cpp Revert r314955: "Remove PendingBody mechanism for function and ObjC method deserialization." 2017-10-11 07:47:54 +00:00
ASTCommon.h Generalize "static data member instantiated" notification to cover variable templates too. 2017-12-05 01:31:47 +00:00
ASTReader.cpp [modules] Fix incorrect diagnostic mapping computation when a module changes 2018-02-09 01:15:13 +00:00
ASTReaderDecl.cpp Add support for attribute 'trivial_abi'. 2018-02-05 20:23:22 +00:00
ASTReaderInternals.h [Serialization] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-11-11 00:08:50 +00:00
ASTReaderStmt.cpp Track in the AST whether the operand to a UnaryOperator can overflow and then use that logic when evaluating constant expressions and emitting codegen. 2018-01-09 13:07:03 +00:00
ASTWriter.cpp [modules] Fix incorrect diagnostic mapping computation when a module changes 2018-02-09 01:15:13 +00:00
ASTWriterDecl.cpp Add support for attribute 'trivial_abi'. 2018-02-05 20:23:22 +00:00
ASTWriterStmt.cpp Track in the AST whether the operand to a UnaryOperator can overflow and then use that logic when evaluating constant expressions and emitting codegen. 2018-01-09 13:07:03 +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 Apply clang-tidy's performance-unnecessary-value-param to parts of clang. 2017-03-21 21:35:04 +00:00
GlobalModuleIndex.cpp [modules] Add ability to specify module name to module file mapping (reapply) 2017-08-31 06:26:43 +00:00
Module.cpp Modules: Simplify the ModuleFile constructor; likely NFC 2017-01-29 00:39:09 +00:00
ModuleFileExtension.cpp [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
ModuleManager.cpp [Serialization] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-11-11 00:08:50 +00:00
MultiOnDiskHashTable.h [Serialization] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2017-11-02 21:45:30 +00:00