hanchenye-llvm-project/clang/lib
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
..
ARCMigrate Add a hasExternalLinkage helper. No functionality change. 2013-03-07 02:00:27 +00:00
AST [ms-cxxabi] Mangle vector types 2013-03-26 16:56:59 +00:00
ASTMatchers Implements memoization for ancestor matching. 2013-03-14 16:33:21 +00:00
Analysis Remove the CFGElement "Invalid" state. 2013-02-23 00:29:34 +00:00
Basic <rdar://problem/13358795> Teach CMake to check Subversion version information at build time, not configure time. 2013-03-25 23:16:38 +00:00
CodeGen Fix uninitialized read of CalleeWithThisReturn. 2013-03-26 13:44:29 +00:00
Driver <rdar://problem/13434605> Periodically prune the module cache so that it does not grow forever. 2013-03-25 21:19:16 +00:00
Edit Include llvm::Optional in clang/Basic/LLVM.h 2013-02-20 22:23:23 +00:00
Format Better fix for r177725. 2013-03-22 16:55:40 +00:00
Frontend [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
FrontendTool use early returns to simplify and de-nest 2013-01-06 07:49:41 +00:00
Headers <rdar://problem/13479214> Make Clang's <stddef.h> robust against system headers defining size_t/ptrdiff_t/wchar_t. 2013-03-22 00:10:49 +00:00
Lex [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
Parse Implement special-case name lookup for inheriting constructors: member 2013-03-26 01:15:19 +00:00
Rewrite Add some assertions to appease the static analyzer. 2013-03-15 21:41:35 +00:00
Sema [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
Serialization [Preprocessor/Modules] Separate the macro directives kinds into their own MacroDirective's subclasses. 2013-03-26 17:17:01 +00:00
StaticAnalyzer [analyzer] Set concrete offset bindings to UnknownVal when processing symbolic offset binding, even if no bindings are present. 2013-03-25 20:43:24 +00:00
Tooling ClangTool output cleanup 2013-03-15 20:14:01 +00:00
CMakeLists.txt Initial version of formatting library. 2012-12-03 18:12:45 +00:00
Makefile Dont use/link ARCMT, StaticAnalyzer and Rewriter to clang when the user 2012-12-13 16:09:42 +00:00