clang-1/lib/Lex
Argyrios Kyrtzidis db81d38d9c [preprocessor] Handle correctly inclusion directives that have macro expansions, e.g
"#include MACRO(STUFF)".

-As an inclusion position for the included file, use the file location of the file where it
was included but *after* the macro expansions. We want the macro expansions to be considered
as before-in-translation-unit for everything in the included file.

-In the preprocessing record take into account that only inclusion directives can be encountered
as "out-of-order" (by comparing the start of the range which for inclusions is the hash location)
and use binary search if there is an extreme number of macro expansions in the include directive.

Fixes rdar://11111779

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153527 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-27 18:47:48 +00:00
..
CMakeLists.txt Update the CMake build for r146959's new files. 2011-12-20 08:42:15 +00:00
HeaderMap.cpp Basic: import SmallString<> into clang namespace 2012-02-05 02:13:05 +00:00
HeaderSearch.cpp Basic: import SmallString<> into clang namespace 2012-02-05 02:13:05 +00:00
Lexer.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
LiteralSupport.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
MacroArgs.cpp Basic: import SmallString<> into clang namespace 2012-02-05 02:13:05 +00:00
MacroArgs.h Fixed exapnsion range for # and ##. 2011-10-03 18:39:03 +00:00
MacroInfo.cpp For modules, all macros that aren't include guards are implicitly 2011-10-17 15:32:29 +00:00
Makefile BUILD_ARCHIVE is the default for libraries, no need to set it. 2010-07-18 00:14:47 +00:00
ModuleMap.cpp User-defined literals: reject string and character UDLs in all places where the 2012-03-06 03:21:47 +00:00
PPCaching.cpp Don't treat 'import' as a contextual keyword when we're in a caching lexer, or when modules are disabled. 2012-01-04 06:20:15 +00:00
PPCallbacks.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
PPDirectives.cpp [preprocessor] Handle correctly inclusion directives that have macro expansions, e.g 2012-03-27 18:47:48 +00:00
PPExpressions.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
PPLexerChange.cpp From Vassil Vassilev: 2012-03-16 10:40:17 +00:00
PPMacroExpansion.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
PTHLexer.cpp Basic: import OwningPtr<> into clang namespace 2012-02-05 02:12:40 +00:00
Pragma.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
PreprocessingRecord.cpp [preprocessor] Handle correctly inclusion directives that have macro expansions, e.g 2012-03-27 18:47:48 +00:00
Preprocessor.cpp From Vassil Vassilev: 2012-03-16 10:40:17 +00:00
PreprocessorLexer.cpp Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch 2011-12-20 02:48:34 +00:00
ScratchBuffer.cpp Rename SourceLocation::getFileLocWithOffset -> getLocWithOffset. 2011-09-19 20:40:19 +00:00
TokenConcatenation.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00
TokenLexer.cpp Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST). 2012-03-11 07:00:24 +00:00