Fariborz Jahanian
461b7bb9e6
get rid of an unsued variable warning.
...
llvm-svn: 152146
2012-03-06 21:18:56 +00:00
Ted Kremenek
f7639e1b4a
Add new code migrator support for migrating existing Objective-C code to use
...
the new Objective-C NSArray/NSDictionary/NSNumber literal syntax.
This introduces a new library, libEdit, which provides a new way to support
migration of code that improves on the original ARC migrator. We now believe
that most of its functionality can be refactored into the existing libraries,
and thus this new library may shortly disappear.
llvm-svn: 152141
2012-03-06 20:06:33 +00:00
Argyrios Kyrtzidis
647dcd80f0
[preprocessor] Enhance PreprocessingRecord to keep track of locations of conditional directives.
...
Introduce PreprocessingRecord::rangeIntersectsConditionalDirective() which returns
true if a given range intersects with a conditional directive block.
llvm-svn: 152018
2012-03-05 05:48:17 +00:00
Dylan Noblesmith
c95d81924d
Basic: import IntrusiveRefCntPtr<> into clang namespace
...
The class name is long enough without the llvm:: added.
Also bring in RefCountedBase and RefCountedBaseVPTR.
llvm-svn: 150958
2012-02-20 14:00:23 +00:00
Argyrios Kyrtzidis
0d9e24b1db
Change Lexer::makeFileCharRange() to have it accept a CharSourceRange
...
instead of a SourceRange, and handle the case where the range is
a char (not token) range.
llvm-svn: 149677
2012-02-03 05:58:29 +00:00
Douglas Gregor
8992928274
Thread a TargetInfo through to the module map; we'll need it for
...
target-specific module requirements.
llvm-svn: 149224
2012-01-30 06:01:29 +00:00
Argyrios Kyrtzidis
abff5f1271
Improve Lexer::getImmediateMacroName to take into account inner macros
...
of macro arguments.
For "MAC1( MAC2(foo) )" and location of 'foo' token it would return
"MAC1" instead of "MAC2".
llvm-svn: 148704
2012-01-23 16:58:33 +00:00
Argyrios Kyrtzidis
85e7671b71
Enhance Lexer::makeFileCharRange to check for ranges inside a macro argument
...
expansion, in which case it returns a file range in the location where the
argument was spelled.
llvm-svn: 148551
2012-01-20 16:52:43 +00:00
Benjamin Kramer
704fe866b2
Silence set-but-unused warning.
...
llvm-svn: 148496
2012-01-19 21:12:23 +00:00
Argyrios Kyrtzidis
7838a2bffb
Introduce Lexer::getSourceText() that returns a string for the source
...
that the given source range encompasses.
llvm-svn: 148481
2012-01-19 15:59:19 +00:00
Argyrios Kyrtzidis
a99e02d019
Introduce Lexer::makeFileCharRange() that accepts a token source range
...
and returns a character range with file locations.
llvm-svn: 148480
2012-01-19 15:59:14 +00:00
Argyrios Kyrtzidis
1b07c344b4
For Lexer's isAt[Start/End]OfMacroExpansion add an out parameter for the macro
...
start/end location.
It is commonly needed after calling the function; with this way we avoid
recalculating it.
llvm-svn: 148479
2012-01-19 15:59:08 +00:00
Argyrios Kyrtzidis
d169911cc0
Add unit testing for Lexer.
...
llvm-svn: 148478
2012-01-19 15:59:01 +00:00