Daniel Dunbar
2c422dc9ca
Move clients to use IdentifierInfo::getNameStart() instead of getName()
...
llvm-svn: 84436
2009-10-18 20:26:12 +00:00
John McCall
1700197e65
Clone the full Type hierarchy into the TypeLoc hierarchy. Normalize
...
TypeLoc class names to be $(Type classname)Loc. Rewrite the visitor.
Provide skeleton implementations for all the new TypeLocs.
Handle all cases in PCH. Handle a few more cases when inserting
location information in SemaType.
It should be extremely straightforward to add new location information
to existing TypeLoc objects now.
llvm-svn: 84386
2009-10-18 01:05:36 +00:00
Douglas Gregor
01249503fe
Installation of Clang libraries and headers, from Axel Naumann!
...
llvm-svn: 83582
2009-10-08 22:15:31 +00:00
Argyrios Kyrtzidis
8da9ce6328
Pull TypeLocVisitor into its own header file.
...
llvm-svn: 83112
2009-09-29 21:27:32 +00:00
Argyrios Kyrtzidis
4361bc1b43
Keep track of type references in DeclReferenceMap.
...
llvm-svn: 83111
2009-09-29 21:26:53 +00:00
Argyrios Kyrtzidis
9c28a3d13c
In ASTVisitor, call the correct base methods.
...
llvm-svn: 83110
2009-09-29 21:26:35 +00:00
Argyrios Kyrtzidis
f881301d3a
Resolve a source location inside the return type of a functon.
...
llvm-svn: 83101
2009-09-29 19:58:16 +00:00
Argyrios Kyrtzidis
05677cae08
Resolve a source location that is inside a type declarator.
...
llvm-svn: 83098
2009-09-29 19:45:41 +00:00
Argyrios Kyrtzidis
4cbe85904c
Modify ASTLocation and apart from being a Decl or Stmt, allow it to also be:
...
-A NamedDecl reference
-A TypeLoc
llvm-svn: 83095
2009-09-29 19:44:27 +00:00
Argyrios Kyrtzidis
81aba1fe53
Add more const-goodness to ASTLocation.
...
llvm-svn: 83087
2009-09-29 19:39:53 +00:00
Mike Stump
11289f4280
Remove tabs, and whitespace cleanups.
...
llvm-svn: 81346
2009-09-09 15:08:12 +00:00
Douglas Gregor
76d8c5725f
Don't install Clang libraries.
...
llvm-svn: 79824
2009-08-23 05:02:18 +00:00
Argyrios Kyrtzidis
260a4703a9
For a CXXOperatorCallExpr, fix the order that StmtLocResolver uses to check subexpressions.
...
llvm-svn: 77713
2009-07-31 19:02:11 +00:00
Ted Kremenek
118cef36b8
Lexically order files.
...
llvm-svn: 77607
2009-07-30 17:41:23 +00:00
Argyrios Kyrtzidis
fc2ed30ab8
Fix Selector <-> GlobalSelector conversion.
...
llvm-svn: 77575
2009-07-30 03:42:08 +00:00
Eli Friedman
13ddd8514f
Fix gcc warning.
...
llvm-svn: 77555
2009-07-30 00:11:31 +00:00
Argyrios Kyrtzidis
bd92767014
Add support for ObjC message expressions, in the Analyzer:
...
-Accept an ObjC method and find all message expressions that this method may respond to.
-Accept an ObjC message expression and find all methods that may respond to it.
llvm-svn: 77551
2009-07-30 00:03:55 +00:00
Argyrios Kyrtzidis
ce60c5ea60
Update CMake.
...
llvm-svn: 77548
2009-07-30 00:02:19 +00:00
Argyrios Kyrtzidis
2eff90515f
Support ObjC methods as Entities.
...
llvm-svn: 77547
2009-07-29 23:41:46 +00:00
Argyrios Kyrtzidis
d70a92139f
Index the selectors and provide the translation units that contain them
...
through the IndexProvider.
llvm-svn: 77543
2009-07-29 23:41:18 +00:00
Argyrios Kyrtzidis
b8470e4f75
Introduce SelectorMap whose purpose is to map selectors to objc methods and message exprs,
...
inside a particular ASTContext.
llvm-svn: 77541
2009-07-29 23:40:58 +00:00
Argyrios Kyrtzidis
34be01b9f4
Find references inside blocks.
...
llvm-svn: 77540
2009-07-29 23:40:48 +00:00
Argyrios Kyrtzidis
c3deb79049
Use helper class ASTVisitor to fully traverse an AST.
...
llvm-svn: 77539
2009-07-29 23:40:39 +00:00
Argyrios Kyrtzidis
d219a9a763
Introduce the GlobalSelector class in the Indexing library.
...
GlobalSelector is an ASTContext-independent way to refer to Objective C selectors.
llvm-svn: 77538
2009-07-29 23:40:32 +00:00
Argyrios Kyrtzidis
ca8a0e24cb
Use an IdentifierTable for names used for Entities.
...
llvm-svn: 77537
2009-07-29 23:40:21 +00:00
Argyrios Kyrtzidis
91d3df0b53
-Introduce the idx::Analyzer class used for getting indexing information, like finding
...
references of a declaration across translation units.
-Modify the index-test tool to use it.
llvm-svn: 77536
2009-07-29 23:40:14 +00:00
Argyrios Kyrtzidis
a82e8848ee
Introduce TULocation and TULocationHandler classes.
...
TULocation is like ASTLocation but also contains the TranslationUnit* that
the ASTLocation originated from.
llvm-svn: 77535
2009-07-29 23:40:02 +00:00
Argyrios Kyrtzidis
af79296645
Modify the Indexer class so that it can return the TranslationUnit that internal
...
decls originated from.
llvm-svn: 77534
2009-07-29 23:39:52 +00:00
Argyrios Kyrtzidis
bc6c64de44
Constify ASTLocation::print.
...
llvm-svn: 77532
2009-07-29 23:39:35 +00:00
Argyrios Kyrtzidis
f1a0fd852f
Introduce a helper template for the Handler classes and use it instead
...
of the iterator of the Indexer class.
llvm-svn: 77528
2009-07-29 23:39:03 +00:00
Argyrios Kyrtzidis
d3e037ff89
Add an assert.
...
llvm-svn: 77527
2009-07-29 23:38:51 +00:00
Argyrios Kyrtzidis
14df96c730
Accept Handler objects in parameters as references.
...
Reinforces that they shouldn't be null and it's a bit more natural when
they are passed as stack objects.
llvm-svn: 77526
2009-07-29 23:38:45 +00:00
Argyrios Kyrtzidis
9ddd99ade7
Rename EntityHandler::HandleEntity to Handle.
...
llvm-svn: 77525
2009-07-29 23:38:35 +00:00
Argyrios Kyrtzidis
dd9ee4aa04
-Make IndexProvider an abstract interface for getting indexing information.
...
-Introduce Indexer as an IndexProvider implementation.
llvm-svn: 77524
2009-07-29 23:38:21 +00:00
Zhongxing Xu
6c82313375
Constify methods.
...
llvm-svn: 76939
2009-07-24 03:38:27 +00:00
Zhongxing Xu
fdd52922c2
constify methods.
...
llvm-svn: 76873
2009-07-23 08:32:25 +00:00
Argyrios Kyrtzidis
8274ad5281
Remove the ASTContext parameter from Entity::getPrintableName().
...
llvm-svn: 76546
2009-07-21 07:52:21 +00:00
Argyrios Kyrtzidis
3b4e2a7621
Keep only canonical Decls in Entities.
...
llvm-svn: 76532
2009-07-21 02:10:32 +00:00
Argyrios Kyrtzidis
05ac8276cf
Change the semantics for Entity.
...
Entity can now refer to declarations that are not visible outside the translation unit.
It is a wrapper of a pointer union, it's either a Decl* for declarations that don't
"cross" translation units, or an EntityImpl* which is associated with the specific "visible" Decl.
Included is a test case for handling fields across translation units.
llvm-svn: 76515
2009-07-21 00:07:06 +00:00
Argyrios Kyrtzidis
b78139f74d
Handle references from ObjCIvarRefExprs.
...
llvm-svn: 76507
2009-07-21 00:05:38 +00:00
Zhongxing Xu
34e0370502
The children statements might be NULL. Check for this case in
...
isContainedInStatement().
llvm-svn: 76408
2009-07-20 08:28:49 +00:00
Argyrios Kyrtzidis
d6bf03c272
Introduce ASTLocation::getReferencedDecl(), for getting the declaration that the ASTLocation references.
...
llvm-svn: 76336
2009-07-18 21:17:58 +00:00
Argyrios Kyrtzidis
fb63b0a317
Handle invalid ASTLocations instead of asserting.
...
llvm-svn: 76335
2009-07-18 21:17:43 +00:00
Argyrios Kyrtzidis
194a9d8e73
Remove StmtLocResolver::VisitObjCIvarRefExpr, it was only there to avoid returning an implicit 'self' instead of the ivar.
...
Since implicit 'self' no longer has a source location, it's not needed. (plus we also want to check for a 'self' that is visible in source code)
llvm-svn: 76296
2009-07-18 08:49:56 +00:00
Argyrios Kyrtzidis
5614aef776
Move the functionality of ASTContext::getCanonicalDecl(), into a virtual method Decl::getCanonicalDecl().
...
llvm-svn: 76273
2009-07-18 00:34:07 +00:00
Argyrios Kyrtzidis
e842bd16ce
Resolve a location that is inside an ObjCMethodDecl.
...
llvm-svn: 76272
2009-07-18 00:33:52 +00:00
Argyrios Kyrtzidis
38d83defbe
Make ASTLocation accept a Stmt that is inside an ObjCMethodDecl.
...
llvm-svn: 76271
2009-07-18 00:33:46 +00:00
Argyrios Kyrtzidis
340f8af489
Search through all Decls that are DeclContexts.
...
llvm-svn: 76270
2009-07-18 00:33:40 +00:00
Zhongxing Xu
9d05213899
Rename Entity::getName() to Entity::getPrintableName() to make its purpose
...
more obvious.
llvm-svn: 76167
2009-07-17 07:49:44 +00:00
Zhongxing Xu
3436f58e40
As suggested by Argyrios, revert r76159 and make "FindImmediateParent"
...
a public static method of ASTLocation.
llvm-svn: 76166
2009-07-17 07:36:20 +00:00