hanchenye-llvm-project/clang/lib/Frontend
Argyrios Kyrtzidis b6210dff97 [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses.
For each macro directive (define, undefine, visibility) have a separate object that gets chained
to the macro directive history. This has several benefits:

-No need to mutate a MacroDirective when there is a undefine/visibility directive. Stuff like
 PPMutationListener become unnecessary.
-No need to keep extra source locations for the undef/visibility locations for the define directive object
 (which is the majority of the directives)
-Much easier to hide/unhide a section in the macro directive history.
-Easier to track the effects of the directives across different submodules.

llvm-svn: 178037
2013-03-26 17:17:01 +00:00
..
ASTConsumers.cpp OpenMP threadprivate directive parsing and semantic analysis 2013-03-22 06:34:35 +00:00
ASTMerge.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
ASTUnit.cpp <rdar://problem/13363214> Eliminate race condition between module rebuild and the global module index. 2013-03-19 00:28:20 +00:00
CMakeLists.txt clang/lib: [CMake] Update tblgen'd dependencies. 2012-07-27 06:18:33 +00:00
CacheTokens.cpp Extend stat query APIs to explicitly specify if the query is for 2012-12-11 07:48:23 +00:00
ChainedDiagnosticConsumer.cpp Remove spurious mode marker from .cpp file. 2012-10-29 06:05:01 +00:00
ChainedIncludesSource.cpp <rdar://problem/13363214> Eliminate race condition between module rebuild and the global module index. 2013-03-19 00:28:20 +00:00
CompilerInstance.cpp [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
CompilerInvocation.cpp <rdar://problem/13434605> Periodically prune the module cache so that it does not grow forever. 2013-03-25 21:19:16 +00:00
CreateInvocationFromCommandLine.cpp Nuke SetUpBuildDumpLog. 2013-01-20 01:58:28 +00:00
DependencyFile.cpp For PPCallbacks::InclusionDirective() add a parameter for the module, whenever 2012-09-29 01:06:10 +00:00
DependencyGraph.cpp Remove useless 'llvm::' qualifier from names like StringRef and others that are 2013-01-12 19:30:44 +00:00
DiagnosticRenderer.cpp Remove useless 'llvm::' qualifier from names like StringRef and others that are 2013-01-12 19:30:44 +00:00
FrontendAction.cpp [frontend] Initialize the diagnostic client before loading an ast file. 2013-03-18 22:55:24 +00:00
FrontendActions.cpp [Modules] Resolve top-headers of modules lazily. 2013-03-13 21:13:43 +00:00
FrontendOptions.cpp remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports 2011-07-23 10:55:15 +00:00
HeaderIncludeGen.cpp Basic: import SmallString<> into clang namespace 2012-02-05 02:13:05 +00:00
InitHeaderSearch.cpp [Frontend] Factor AddUnmappedPath() out of AddPath() and simplify. 2013-01-30 01:06:03 +00:00
InitPreprocessor.cpp [frontend] Don't put a PCH/PTH filename into the set of includes in the preprocessor options; 2013-02-05 16:36:52 +00:00
LangStandards.cpp Remove unnecessary default cases in switches over enums. 2012-01-17 02:30:50 +00:00
LayoutOverrideSource.cpp Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. 2013-02-08 22:30:41 +00:00
LogDiagnosticPrinter.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
Makefile
MultiplexConsumer.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
PrintPreprocessedOutput.cpp [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
SerializedDiagnosticPrinter.cpp Teach serialized diagnostics about notes without locations. 2013-02-21 21:40:44 +00:00
TextDiagnostic.cpp Fix buffer underrun (invalid read) triggered during diagnostic rendering. The test would overflow when computing '0 - 1'. 2013-03-15 23:09:37 +00:00
TextDiagnosticBuffer.cpp Escape % in the TextDiagnosticBuffer so they aren't interpreted twice when fed into the diagnostic formatting machinery again. 2012-12-08 12:42:30 +00:00
TextDiagnosticPrinter.cpp Sort all of Clang's files under 'lib', and fix up the broken headers 2012-12-04 09:13:33 +00:00
VerifyDiagnosticConsumer.cpp Excise <cctype> from Clang (except clang-tblgen) in favor of CharInfo.h. 2013-02-08 22:30:41 +00:00
Warnings.cpp Remove -Wspellcheck and replace it with a diagnostic option. 2013-03-16 01:40:35 +00:00