• Home
  • History
  • Annotate
  • only in /external/clang/lib/Index/
History log of /external/clang/lib/Index/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ef8225444452a1486bd721f3285301fe84643b00 21-Jul-2014 Stephen Hines <srhines@google.com> Update Clang for rebase to r212749.

This also fixes a small issue with arm_neon.h not being generated always.

Includes a cherry-pick of:
r213450 - fixes mac-specific header issue
r213126 - removes a default -Bsymbolic on Android

Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
impleFormatContext.h
SRGeneration.cpp
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 29-May-2014 Stephen Hines <srhines@google.com> Update Clang for 3.5 rebase (r209713).

Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
ommentToXML.cpp
impleFormatContext.h
SRGeneration.cpp
651f13cea278ec967336033dd032faef0e9fc2ec 24-Apr-2014 Stephen Hines <srhines@google.com> Updated to Clang 3.5a.

Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
MakeLists.txt
ommentToXML.cpp
SRGeneration.cpp
d4315fe3c4c9684068564cb68f262d1a805329a4 13-Nov-2013 Dmitri Gribenko <gribozavr@gmail.com> libclang does not depend directly on clangFormat; but clangIndex does


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194611 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
86cfda2fcccc84e92fb7f27e85b58312440ca8de 13-Nov-2013 Dmitri Gribenko <gribozavr@gmail.com> Documentation parsing: move comment-to-XML conversion routines to libIndex


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@194610 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ommentToXML.cpp
impleFormatContext.h
e8458342d936c55b69806ea58d4a28bcb7c53d1a 21-Aug-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> Avoid using the 'index' namespace as scope.

This should fix the bogus ambiguous reference errors reported by gcc 4.2.1 that the FreeBSD bot is using.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188850 91177308-0d34-0410-b5e6-96231b3b80d8
SRGeneration.cpp
2845a6746f6320994675a9a413ecbe5252d4dc02 17-Aug-2013 Argyrios Kyrtzidis <akyrtzi@gmail.com> Rename libIDE to libIndex.

Per feedback from Chandler, it's better to have libraries with more specific functionality.
LibIndex will contain the indexing functionality of libclang, which includes USR generation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188601 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
akefile
SRGeneration.cpp
87e154c09bbb060a0620bc988d7723bee64fb79c 13-Apr-2012 Douglas Gregor <dgregor@apple.com> Remove the unused, unmaintained, incomplete 'Index' library.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154672 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
STVisitor.h
nalyzer.cpp
MakeLists.txt
eclReferenceMap.cpp
ntity.cpp
ntityImpl.h
lobalCallGraph.cpp
lobalSelector.cpp
andlers.cpp
ndexProvider.cpp
ndexer.cpp
akefile
rogram.cpp
rogramImpl.h
electorMap.cpp
4e4d08403ca5cfd4d558fa2936215d3a4e5a528d 11-Mar-2012 David Blaikie <dblaikie@gmail.com> Unify naming of LangOptions variable/get function across the Clang stack (Lex to AST).

The member variable is always "LangOpts" and the member function is always "getLangOpts".

Reviewed by Chris Lattner

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152536 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
067cc40308a9643400fd291fc8678c4a6785e90c 03-Mar-2012 Anna Zaks <ganna@apple.com> Unbreak the CMake builds following the CallGraph change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151952 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
190f6003cbc3b156a2c071ed1f89c31c72a3605b 02-Mar-2012 Anna Zaks <ganna@apple.com> [analyzer] Rename clang::CallGraph into clang::idx::CallGraph + rename
the corresponding files to avoid confusion.

This is a preparation to adding an AST-based call graph to Analysis. The
existing call graph works with indexer entries. We might be able to
refactor it to use the AST based graph in the future.

(Minimal testing here as the only example that uses the API has been
completely broken, does not compile.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151950 91177308-0d34-0410-b5e6-96231b3b80d8
allGraph.cpp
lobalCallGraph.cpp
3026348bd4c13a0f83b59839f64065e0fcbea253 20-Jan-2012 David Blaikie <dblaikie@gmail.com> More dead code removal (using -Wunreachable-code)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148577 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
561d3abc881033776ece385a01a510e1cbc1fa92 17-Jan-2012 David Blaikie <dblaikie@gmail.com> Remove unnecessary default cases in switches over enums.

This allows -Wswitch-enum to find switches that need updating when these enums are modified.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@148281 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
60ef308e51c71b760d7f598c1b763ceb7b768148 15-Dec-2011 Douglas Gregor <dgregor@apple.com> Replace all comparisons between ObjCInterfaceDecl pointers with calls
to declaresSameEntity(), as a baby step toward tracking forward
declarations of Objective-C classes precisely. Part of
<rdar://problem/10583531>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146618 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
b8989f27f116ff2400e92a52c067a69846119eb5 14-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> Change operator<< for raw_ostream and NamedDecl to take a reference instead of a pointer.

Passing a pointer was a bad idea as it collides with the overload for void*.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141971 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
eb2d1f1c88836bd5382e5d7aa8f6b85148a88b27 23-Sep-2011 David Blaikie <dblaikie@gmail.com> Removing a bunch of dead returns/breaks after llvm_unreachables.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140407 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
b219cfc4d75f0a03630b7c4509ef791b7e97b2c8 23-Sep-2011 David Blaikie <dblaikie@gmail.com> Switch assert(0/false) llvm_unreachable.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140367 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
5f9e272e632e951b1efe824cd16acb4d96077930 23-Jul-2011 Chris Lattner <sabre@nondot.org> remove unneeded llvm:: namespace qualifiers on some core types now that LLVM.h imports
them into the clang namespace.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135852 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
allGraph.cpp
ntity.cpp
lobalSelector.cpp
686775deca8b8685eb90801495880e3abdd844c2 20-Jul-2011 Chris Lattner <sabre@nondot.org> now that we have a centralized place to do so, add some using declarations for
some common llvm types: stringref and smallvector. This cleans up the codebase
quite a bit.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@135576 91177308-0d34-0410-b5e6-96231b3b80d8
ntityImpl.h
10620eb5164e31208fcbf0437cd79ae535ed0559 06-May-2011 Sean Hunt <scshunt@csclub.uwaterloo.ca> Modify some deleted function methods to better reflect reality:

- New isDefined() function checks for deletedness
- isThisDeclarationADefinition checks for deletedness
- New doesThisDeclarationHaveABody() does what
isThisDeclarationADefinition() used to do
- The IsDeleted bit is not propagated across redeclarations
- isDeleted() now checks the canoncial declaration
- New isDeletedAsWritten() does what it says on the tin.
- isUserProvided() now correct (thanks Richard!)

This fixes the bug that we weren't catching

void foo() = delete;
void foo() {}

as being a redefinition.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131013 91177308-0d34-0410-b5e6-96231b3b80d8
allGraph.cpp
ndexer.cpp
162e1c1b487352434552147967c3dd296ebee2f7 15-Apr-2011 Richard Smith <richard-llvm@metafoo.co.uk> Support for C++11 (non-template) alias declarations.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129567 91177308-0d34-0410-b5e6-96231b3b80d8
eclReferenceMap.cpp
fc8f0e14ad142ed811e90fbd9a30e419e301c717 15-Apr-2011 Chris Lattner <sabre@nondot.org> fix a bunch of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129559 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
7502c1d3ce8bb97bcc4f7bebef507040bd93b26f 13-Feb-2011 John McCall <rjmccall@apple.com> Give some convenient idiomatic accessors to Stmt::child_range and
Stmt::const_child_range, then make a bunch of places use them instead
of the individual iterator accessors.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125450 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
allGraph.cpp
886e1606c28e970bb288abf4dbc40feb16822a79 10-Feb-2011 NAKAMURA Takumi <geek4civic@gmail.com> CMake: LLVM_NO_RTTI must be obsolete now!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125275 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
b3decb6cea3b6ee09317ad59cbb41cca2dc83293 20-Sep-2010 Douglas Gregor <dgregor@apple.com> Fix CMake clangIndex library dependencies, from Logan Chien

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114336 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
560a921b85773ac7c2d1a7a4aec4682c822c5cb4 14-Sep-2010 Michael J. Spencer <bigcheesegs@gmail.com> Revert "CMake: Update to use standard CMake dependency tracking facilities instead"

This reverts commit r113631

Conflicts:

CMakeLists.txt
lib/CodeGen/CMakeLists.txt

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113817 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
5a7f34958ca6f2fa8a52e9921cf521cbb92ae070 10-Sep-2010 Michael J. Spencer <bigcheesegs@gmail.com> CMake: Update to use standard CMake dependency tracking facilities instead
of whatever we were using before...

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113631 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ec9bf475657e4fd7c8e920ff816a4e3cdb2ea213 09-Sep-2010 Douglas Gregor <dgregor@apple.com> Clean up CMake dependencies

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113489 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
bfae8bd6259460ae0668cad39c141504511d19b0 08-Sep-2010 Douglas Gregor <dgregor@apple.com> Clean up some of the CMake dependencies

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@113416 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
d931b086984257de68868a64a235c2b4b34003fb 26-Aug-2010 John McCall <rjmccall@apple.com> De-memberify the VarDecl and FunctionDecl StorageClass enums.
This lets us remove Sema.h's dependency on Expr.h and Decl.h.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112156 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
9a90d79eb496d9549e22104b2b006dfd43918183 19-Jul-2010 Douglas Gregor <dgregor@apple.com> Remove unused location-to-AST-node resolver. libclang's implementation supercedes it

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108708 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
esolveLocation.cpp
9638eef7e3b2ca30406c5d369a44aa49ff26b201 18-Jul-2010 Chris Lattner <sabre@nondot.org> BUILD_ARCHIVE is the default for libraries, no need to set it.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@108633 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
dc01a153f20be7121c4d3fdc17bb28ff4442231c 06-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Collect function definitions in the Indexer when indexing through the ASTs.
Add an API to get an Entity associated with a name in the global namespace.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107642 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ntityImpl.h
ndexer.cpp
6c47a9b9779216ef24526c064d5b6ab0db0b5009 06-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Local variables have no linkage, make invalid Entities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107630 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
8d26bb7249c76104f14d02454daa74cc5c462957 05-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Refrase comments.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107607 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
c8822e06d0420afb8e315ad82566d6c1173ad02f 05-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Although in C++ class name has external linkage, usually the definition of the
class is available in the same translation unit when it's needed. So we make
all of them invalid Entity.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107606 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
423030c9e73ac8c21b747dc019c192bc5041c848 05-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Make FieldDecl an invalid Entity since it has no linkage.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107605 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
139d0b39501404665b1b0ccaaaf5632c42419ebf 05-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Indexer: make FieldDecl an internal Entity.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107604 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
6d956dfcc79159808f46493dc5754971c76593aa 02-Jul-2010 Zhongxing Xu <xuzhongxing@gmail.com> Change CallGraph::Prog to be a reference. idx::Program means to be a global object to the Index library.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107461 91177308-0d34-0410-b5e6-96231b3b80d8
allGraph.cpp
f24f3d12c10d5f09b4831817d6b525fab9884110 08-Jun-2010 Daniel Dunbar <daniel@zuster.org> Simplify libIndex Makefile, which doesn't need to worry about altivec support.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105639 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
c4dec1c58eeb2ef46cdb64120eb6b819c6927afb 08-Jun-2010 Daniel Dunbar <daniel@zuster.org> Makefiles: Set Clang CPP compiler flags in a single location, instead of scattered throughout the project Makefiles.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105638 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
afed099bd2e759efd4bb63fdc525d3445f94cc13 08-Jun-2010 Daniel Dunbar <daniel@zuster.org> Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile.
- This eliminates most dependencies on how Clang is installed relative to LLVM.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
bd054dba8a3023821f2a0951b0fae05e3522a7c9 20-May-2010 Abramo Bagnara <abramo.bagnara@gmail.com> Renamed misleading getSourceRange -> getLocalSourceRange and getFullSourceRange -> getSourceRange for TypeLoc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@104220 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
esolveLocation.cpp
c12c5bba6ceb6acd4e51e7a0fc03257da9cfd44e 15-May-2010 John McCall <rjmccall@apple.com> Substantially alter the design of the Objective C type AST by introducing
ObjCObjectType, which is basically just a pair of
one of {primitive-id, primitive-Class, user-defined @class}
with
a list of protocols.
An ObjCObjectPointerType is therefore just a pointer which always points to
one of these types (possibly sugared). ObjCInterfaceType is now just a kind
of ObjCObjectType which happens to not carry any protocols.

Alter a rather large number of use sites to use ObjCObjectType instead of
ObjCInterfaceType. Store an ObjCInterfaceType as a pointer on the decl rather
than hashing them in a FoldingSet. Remove some number of methods that are no
longer used, at least after this patch.

By simplifying ObjCObjectPointerType, we are now able to easily remove and apply
pointers to Objective-C types, which is crucial for a certain kind of ObjC++
metaprogramming common in WebKit.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@103870 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
esolveLocation.cpp
04badcf84c8d504d8491c7c7e29b58f52cb16640 21-Apr-2010 Douglas Gregor <dgregor@apple.com> Overhaul the AST representation of Objective-C message send
expressions, to improve source-location information, clarify the
actual receiver of the message, and pave the way for proper C++
support. The ObjCMessageExpr node represents four different kinds of
message sends in a single AST node:

1) Send to a object instance described by an expression (e.g., [x method:5])
2) Send to a class described by the class name (e.g., [NSString method:5])
3) Send to a superclass class (e.g, [super method:5] in class method)
4) Send to a superclass instance (e.g., [super method:5] in instance method)

Previously these four cases where tangled together. Now, they have
more distinct representations. Specific changes:

1) Unchanged; the object instance is represented by an Expr*.

2) Previously stored the ObjCInterfaceDecl* referring to the class
receiving the message. Now stores a TypeSourceInfo* so that we know
how the class was spelled. This both maintains typedef information
and opens the door for more complicated C++ types (e.g., dependent
types). There was an alternative, unused representation of these
sends by naming the class via an IdentifierInfo *. In practice, we
either had an ObjCInterfaceDecl *, from which we would get the
IdentifierInfo *, or we fell into the case below...

3) Previously represented by a class message whose IdentifierInfo *
referred to "super". Sema and CodeGen would use isStr("super") to
determine if they had a send to super. Now represented as a
"class super" send, where we have both the location of the "super"
keyword and the ObjCInterfaceDecl* of the superclass we're
targetting (statically).

4) Previously represented by an instance message whose receiver is a
an ObjCSuperExpr, which Sema and CodeGen would check for via
isa<ObjCSuperExpr>(). Now represented as an "instance super" send,
where we have both the location of the "super" keyword and the
ObjCInterfaceDecl* of the superclass we're targetting
(statically). Note that ObjCSuperExpr only has one remaining use in
the AST, which is for "super.prop" references.

The new representation of ObjCMessageExpr is 2 pointers smaller than
the old one, since it combines more storage. It also eliminates a leak
when we loaded message-send expressions from a precompiled header. The
representation also feels much cleaner to me; comments welcome!

This patch attempts to maintain the same semantics we previously had
with Objective-C message sends. In several places, there are massive
changes that boil down to simply replacing a nested-if structure such
as:

if (message has a receiver expression) {
// instance message
if (isa<ObjCSuperExpr>(...)) {
// send to super
} else {
// send to an object
}
} else {
// class message
if (name->isStr("super")) {
// class send to super
} else {
// send to class
}
}

with a switch

switch (E->getReceiverKind()) {
case ObjCMessageExpr::SuperInstance: ...
case ObjCMessageExpr::Instance: ...
case ObjCMessageExpr::SuperClass: ...
case ObjCMessageExpr::Class:...
}

There are quite a few places (particularly in the checkers) where
send-to-super is effectively ignored. I've placed FIXMEs in most of
them, and attempted to address send-to-super in a reasonable way. This
could use some review.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101972 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
900fc6388e803868a34b9483510c345e9b49d7eb 17-Apr-2010 Benjamin Kramer <benny.kra@googlemail.com> Add raw_ostream operators to NamedDecl for convenience. Switch over all users of getNameAsString on a stream.

The next step is to print the name directly into the stream, avoiding a temporary std::string copy.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@101632 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
3352406820d133c78161e8d710f95b8ac152a1e7 12-Mar-2010 Jeffrey Yasskin <jyasskin@google.com> Allow users to set CPPFLAGS and CXXFLAGS on the make command line.

Tested: make CPPFLAGS=-m64 CXXFLAGS=-m64 -j8 && (cd tools/clang;make test)


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98399 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
2781deb126663ca1bd412044a1e66577585987b3 12-Mar-2010 Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> Cleanup using StringRef

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98339 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
lobalSelector.cpp
c2350e553b853ad00914faf23fa731e5fc4a8a5c 08-Mar-2010 Douglas Gregor <dgregor@apple.com> Extend ObjCMessageExpr for class method sends with the source location
of the class name.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97943 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
0bb46d285cb2bb0f582d0935f58f57a9be8bf2cd 24-Jan-2010 Chris Lattner <sabre@nondot.org> -fno-rtti is now the default.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94379 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
f2c87bd0368775927ead93e0dee3e4f3ca3f9a63 15-Jan-2010 Douglas Gregor <dgregor@apple.com> Add -cursor-at=file:line:column command line option to c-index-test,
to directly check the results of clang_getCursor(). Also, start
migrating some index-test tests over to c-index test [*] and some
grep-using tests over to FileCheck.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93537 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
3cdff236e23e68fa19ed0b69f79ab7eb04593d28 07-Dec-2009 Ted Kremenek <kremenek@apple.com> Add the BlockDecl to the DeclContext.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90808 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
a93c934af4fbf97cbe8e649d82e68ccacfe57c95 07-Dec-2009 John McCall <rjmccall@apple.com> DeclaratorInfo -> TypeSourceInfo. Makes an effort to rename associated variables,
but the results are imperfect.

For posterity, I did:

cat <<EOF > $cmdfile
s/DeclaratorInfo/TypeSourceInfo/g
s/DInfo/TInfo/g
s/TypeTypeSourceInfo/TypeSourceInfo/g
s/SourceTypeSourceInfo/TypeSourceInfo/g
EOF

find lib -name '*.cpp' -not -path 'lib/Parse/*' -exec sed -i '' -f $cmdfile '{}' \;
find lib -name '*.h' -exec sed -i '' -f $cmdfile '{}' \;
find include -name '*.h' -not -path 'include/clang/Parse/*' -not -path 'include/clang/Basic/*' -exec sed -i '' -f $cmdfile '{}' \;



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90743 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
esolveLocation.cpp
459cc2387e682d08af63eb30874eb919b801fb42 03-Dec-2009 Daniel Dunbar <daniel@zuster.org> Update CMake for CallGraph.cpp move.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90443 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
8fd57fea85ff7b4dc1895fbbdf73173feaa063b5 03-Dec-2009 Daniel Dunbar <daniel@zuster.org> Fix layering violation by moving Analysis/CallGraph to Index

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90424 91177308-0d34-0410-b5e6-96231b3b80d8
allGraph.cpp
85b4521e34dcd4a0a4a1f0819e1123128e5a3125 28-Nov-2009 Benjamin Kramer <benny.kra@googlemail.com> Remove remaining VISIBILITY_HIDDEN from anonymous namespaces.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90044 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
eclReferenceMap.cpp
esolveLocation.cpp
electorMap.cpp
1d5fdf3d3b5ea2640ebe8673814a0b6ab7cf5eb2 18-Nov-2009 Ted Kremenek <kremenek@apple.com> Add special clang_getCursor() support for @class. Handles <rdar://problem/7383421>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89183 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
6490ae5003226cae28f980648948bea8b21a8638 17-Nov-2009 Douglas Gregor <dgregor@apple.com> Silence some warnings produced by Clang, and add a missing header

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89051 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
5ab75172051a6d2ea71a80a79e81c65519fd3462 04-Nov-2009 John McCall <rjmccall@apple.com> Preserve type source information in sizeof/alignof expressions, and pass it
through to indexing.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86018 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
f96b524306ccfa623235d375deee79637bd38f29 28-Oct-2009 Steve Naroff <snaroff@apple.com> Remove _clang_initCXLookupHint() and _clang_getCursorWithHint(). Related to <rdar://problem/7310688>.

Localize the optimization to ResolveLocationInAST(). The last valid AST location is now stored with ASTUnit. There still isn't optimal, however it's an improvement (with a much cleaner API). Having the client manage an "hint" is error prone and complex.

I wanted to land the major changes before finishing up the optimizations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@85425 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
ba6a9bd384df475780be636ca45bcef5c5bbd19f 24-Oct-2009 John McCall <rjmccall@apple.com> Preserve type source information in TypedefDecls. Preserve it across
template instantiation. Preserve it through PCH. Show it off to the indexer.

I'm healthily ignoring the vector type cases because we don't have a sensible
TypeLoc implementation for them anyway.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84994 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
54e14c4db764c0636160d26c5bbf491637c83a76 23-Oct-2009 John McCall <rjmccall@apple.com> When building types from declarators, instead of building two types (one for
the DeclaratorInfo, one for semantic analysis), just build a single type whose
canonical type will reflect the semantic analysis (assuming the type is
well-formed, of course).

To make that work, make a few changes to the type system:
* allow the nominal pointee type of a reference type to be a (possibly sugared)
reference type. Also, preserve the original spelling of the reference type.
Both of these can be ignored on canonical reference types.
* Remove ObjCProtocolListType and preserve the associated source information on
the various ObjC TypeLocs. Preserve the spelling of protocol lists except in
the canonical form.
* Preserve some level of source type structure on parameter types, but
canonicalize on the canonical function type. This is still a WIP.

Drops code size, makes strides towards accurate source location representation,
slight (~1.7%) progression on Cocoa.h because of complexity drop.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84907 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
6a6de8b4fc944ca1bfa4e47c516d049a0d627b0e 21-Oct-2009 Steve Naroff <snaroff@apple.com> Extend clang_getCursor() to take a 'relativeDecl' argument (so speed up searching). Without a 'relativeDecl', the algorithm is n-squared. For example, running the following command on 'Large.m' takes hours without a 'relatvieDecl'.

snaroff% time ../../Debug/bin/c-index-test Large.ast all > Large.out
snaroff% cat Large.m
#import <Cocoa/Cocoa.h>
#import <QuickTime/QuickTime.h>
#import <OpenGL/OpenGL.h>

With a 'relativeDecl', it takes <30 seconds:-)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84760 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
e013d685c6689ac7ae103ee88acf573422d1ed6a 18-Oct-2009 Daniel Dunbar <daniel@zuster.org> Move clients to use IdentifierInfo::getNameStart() instead of getName()

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84436 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
lobalSelector.cpp
51bd803fbdade51d674598ed45da3d54190a656c 18-Oct-2009 John McCall <rjmccall@apple.com> 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.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84386 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
STVisitor.h
eclReferenceMap.cpp
esolveLocation.cpp
14ea5696417a8e8d244a07091284cdeba57c6d4d 09-Oct-2009 Douglas Gregor <dgregor@apple.com> Installation of Clang libraries and headers, from Axel Naumann!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83582 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
0c411806d540f7158bf12fee5c10f7de2647de76 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Pull TypeLocVisitor into its own header file.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83112 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
esolveLocation.cpp
b11688485a696a31136bb2e63fc8739c945178a3 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Keep track of type references in DeclReferenceMap.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83111 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
eclReferenceMap.cpp
09d8a957d3708d42fa26c1a024a36a4ae460d009 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> In ASTVisitor, call the correct base methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83110 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
5a70ea6c75e9caced85ec0aa1d4d60195bafc6cf 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Resolve a source location inside the return type of a functon.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83101 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
ef6cd6712cb5d6129c8d18893cca41396a479fb2 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Resolve a source location that is inside a type declarator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83098 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
f4526e3fd48248af78b3d59ec36a37bc055b326f 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Modify ASTLocation and apart from being a Decl or Stmt, allow it to also be:

-A NamedDecl reference
-A TypeLoc

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83095 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
nalyzer.cpp
esolveLocation.cpp
1ebd7405be6dbea497d5ec72ab15e65debb0d72e 29-Sep-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Add more const-goodness to ASTLocation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83087 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
1eb4433ac451dc16f4133a88af2d002ac26c58ef 09-Sep-2009 Mike Stump <mrs@apple.com> Remove tabs, and whitespace cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81346 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
nalyzer.cpp
eclReferenceMap.cpp
ntity.cpp
ntityImpl.h
lobalSelector.cpp
ndexer.cpp
rogramImpl.h
esolveLocation.cpp
7ebe97166a4d720a187ab08ba927027e0d32274c 23-Aug-2009 Douglas Gregor <dgregor@apple.com> Don't install Clang libraries.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79824 91177308-0d34-0410-b5e6-96231b3b80d8
akefile
8c4dc1ffd20a8fe90a90c7f471cd9842b981078e 31-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> For a CXXOperatorCallExpr, fix the order that StmtLocResolver uses to check subexpressions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77713 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
4b5acc5454330046cf651c7eef61d1cdfff87d99 30-Jul-2009 Ted Kremenek <kremenek@apple.com> Lexically order files.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77607 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ab5f3110e6e5bf084a8fc5d7705682d5d5d6b06e 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Fix Selector <-> GlobalSelector conversion.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77575 91177308-0d34-0410-b5e6-96231b3b80d8
lobalSelector.cpp
bebc467b2455fa35fec2258b5ae088759f1ee952 30-Jul-2009 Eli Friedman <eli.friedman@gmail.com> Fix gcc warning.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77555 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
19b732a5461f5023d2335773584ac9aaeb0af514 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77551 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
1e1684754d3e0d3b59e1d6e0b7879ae52f970acd 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Update CMake.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77548 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
87bcb504f6ea453c50e47beb850258ebe57e9248 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Support ObjC methods as Entities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77547 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ntityImpl.h
d88284b4386169bb165d70796953ef802f2e90a5 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Index the selectors and provide the translation units that contain them
through the IndexProvider.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77543 91177308-0d34-0410-b5e6-96231b3b80d8
ndexer.cpp
557b1d2535cda65f84fe6a802cf1eec3ccf734e0 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce SelectorMap whose purpose is to map selectors to objc methods and message exprs,
inside a particular ASTContext.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77541 91177308-0d34-0410-b5e6-96231b3b80d8
electorMap.cpp
ad6e5d12d0ec3a49157e7794ddc1baa575ca008b 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Find references inside blocks.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77540 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
STVisitor.h
81e84560c85c5d3727072f5b9e8bd2a963adf8e7 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Use helper class ASTVisitor to fully traverse an AST.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77539 91177308-0d34-0410-b5e6-96231b3b80d8
STVisitor.h
eclReferenceMap.cpp
27bd0dcb85cbb5dd3ca3fefc6369f34d6ccaa8b6 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce the GlobalSelector class in the Indexing library.

GlobalSelector is an ASTContext-independent way to refer to Objective C selectors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77538 91177308-0d34-0410-b5e6-96231b3b80d8
lobalSelector.cpp
rogramImpl.h
dc1792c78ac40a05c3ab00d4da5574ba03f19769 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Use an IdentifierTable for names used for Entities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77537 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ntityImpl.h
rogramImpl.h
7f4656eb6b60a7f3596fb26b9d5aed3731b3109e 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> -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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77536 91177308-0d34-0410-b5e6-96231b3b80d8
nalyzer.cpp
40c0e73be6b2508c33f802368080f6b369dc67bc 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce TULocation and TULocationHandler classes.

TULocation is like ASTLocation but also contains the TranslationUnit* that
the ASTLocation originated from.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77535 91177308-0d34-0410-b5e6-96231b3b80d8
andlers.cpp
52f1d4793588af6c5c09ab096818ff942bae3af6 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Modify the Indexer class so that it can return the TranslationUnit that internal
decls originated from.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77534 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ndexer.cpp
6dbbc0e20a648cb2a9d520f5a7a394a6c07d6c68 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Constify ASTLocation::print.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77532 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
94431b5b4ceca8831e1ed6d6f646b99052680a85 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce a helper template for the Handler classes and use it instead
of the iterator of the Indexer class.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77528 91177308-0d34-0410-b5e6-96231b3b80d8
ndexer.cpp
daf253d73d6a6248edc458587f4e88763e1e1583 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Add an assert.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77527 91177308-0d34-0410-b5e6-96231b3b80d8
ndexer.cpp
16d8bcf248f15d0479b3ccf40297f9ed107db3f1 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77526 91177308-0d34-0410-b5e6-96231b3b80d8
ndexer.cpp
rogram.cpp
77b4a79dd845fa93027f458049a7f71402006414 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Rename EntityHandler::HandleEntity to Handle.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77525 91177308-0d34-0410-b5e6-96231b3b80d8
ndexer.cpp
rogram.cpp
b17dc46c795d5eceeceb1424b96d63739d12a522 30-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> -Make IndexProvider an abstract interface for getting indexing information.
-Introduce Indexer as an IndexProvider implementation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77524 91177308-0d34-0410-b5e6-96231b3b80d8
andlers.cpp
ndexProvider.cpp
ndexer.cpp
rogram.cpp
6d8f56f4799042c897831318326d8be55a879cb8 24-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> Constify methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76939 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
f7856437cfcf49523d81ebe1fc2351e3284dedfa 23-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> constify methods.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76873 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
4c7c5a1d01d5e35aa6fb7724336c9506a88b6b62 21-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Remove the ASTContext parameter from Entity::getPrintableName().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76546 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ntityImpl.h
1f717270d0ef91918413a05d513474db7a9b4c3e 21-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Keep only canonical Decls in Entities.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76532 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
f7cf15ca3c9bee7c0348f549e7a8f0af32b5fa54 21-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76515 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
ntityImpl.h
ndexProvider.cpp
rogram.cpp
rogramImpl.h
80ede1d7148582b7647d7cbe09c86e3305976839 21-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Handle references from ObjCIvarRefExprs.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76507 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
eclReferenceMap.cpp
89021b0c71c53c88927b588431859a041bec2802 20-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> The children statements might be NULL. Check for this case in
isContainedInStatement().


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76408 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
dc50c64c13322dd81b10263cbb023fb1f7eae1fd 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce ASTLocation::getReferencedDecl(), for getting the declaration that the ASTLocation references.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76336 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
9b9685dc713679581b3953cd9ece0001b63f551f 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Handle invalid ASTLocations instead of asserting.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76335 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
21b01c7e481b9c243f98155f8ab0cf4302d25f2a 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> 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)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76296 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
b57a4fe73b8227c0dba651818b8495dfca61e530 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Move the functionality of ASTContext::getCanonicalDecl(), into a virtual method Decl::getCanonicalDecl().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76273 91177308-0d34-0410-b5e6-96231b3b80d8
eclReferenceMap.cpp
0df134715d75c62422502af0f5610885a5a4f472 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Resolve a location that is inside an ObjCMethodDecl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76272 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
cc1ccb74c8675a6379d9363433e843a8d78ccf5c 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Make ASTLocation accept a Stmt that is inside an ObjCMethodDecl.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76271 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
7e4fe3b60a1c1b1b04a22dde22bb89707a5032b7 18-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Search through all Decls that are DeclContexts.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76270 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
56aac3f6c2d23c68f527c8225c74d833e534a262 17-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> Rename Entity::getName() to Entity::getPrintableName() to make its purpose
more obvious.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76167 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
7f66bd28b5e9016f2f6f4ddc52e083352f90ed11 17-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> As suggested by Argyrios, revert r76159 and make "FindImmediateParent"
a public static method of ASTLocation.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76166 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
adfc8d14ce2e5611aa366cb9135fa20095b7d191 17-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> Relax the assertion in ASTLocation's ctor: if the decl is not the immediate
parent of the stmt, find the immediate parent for the stmt.

This is because sometimes we cannot get the immediate decl of the stmt when
creating the ASTLocation. We can only get a parent of the stmt.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76159 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
ada45428b6855bbffb9abd65fa77039a5259f6c2 17-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> If we are not doing a Debug build, no need for the debugging print methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76138 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
dc0b11ef5d3c48309bf0df4369234dc28bc21fb4 17-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Check whether the IdentifierInfo is null, before using it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76136 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
53363b26d2bd5ae7890957d7acabfd407bd362b7 15-Jul-2009 Zhongxing Xu <xuzhongxing@gmail.com> Add getName() method to Entity.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75740 91177308-0d34-0410-b5e6-96231b3b80d8
ntity.cpp
2e46aeef8bf51603dfb11e17fdbf9effe91fef01 14-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> In ResolveLocationInAST, handle locations that are inside TagDecl definitions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75594 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
9e6bc0657e3e1b6ec0462620b59d1441195bedc8 14-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> In DeclReferenceMap, map FieldDecls to the MemberExprs that reference them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75593 91177308-0d34-0410-b5e6-96231b3b80d8
eclReferenceMap.cpp
c3a6540f174ac61a884e452456cbad88b427a745 13-Jul-2009 Chris Lattner <sabre@nondot.org> fix file headers.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75437 91177308-0d34-0410-b5e6-96231b3b80d8
eclReferenceMap.cpp
ntity.cpp
ndexProvider.cpp
rogram.cpp
a6488a14be5638df11950579e3cd7c0ce82c4ffa 10-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Simplify a bit by using functions instead of checking enum values. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75221 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
bd2ab6e8f6ec16ca29e2479c8bc2a48a4eae7f07 07-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Refactor DeclLocResolver/StmtLocResolver into a more functional style by removing the search state
and by having their Visit* methods return the ASTLocation directly.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74887 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
0daea7a162bee39b1b1dd63b7bceccd3224a6a63 06-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Update CMake files.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74864 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
755c6b42154e7c2225d973babf84eb2587576bcd 06-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Some changes to ASTLocation's methods

-Change hasStmt() to isStmt()
-Add isDecl()
-Add getSourceRange()

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74862 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
818e15b89facfe0b62c8c22c18fde383a17455eb 06-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Move the 'ResolveLocationInAST' function from the Frontend library to the Index library.

Also, cut down its comments; more comments will be added to ASTLocation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74860 91177308-0d34-0410-b5e6-96231b3b80d8
esolveLocation.cpp
ccbcb70ee96cb67ed6c8b4142d050f3a6764edd7 06-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Move ASTLocation and DeclReferenceMap from the AST library to the Index library.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74859 91177308-0d34-0410-b5e6-96231b3b80d8
STLocation.cpp
eclReferenceMap.cpp
9eec4ed6ca0dcf098580da9146b97e0841556d12 06-Jul-2009 Argyrios Kyrtzidis <akyrtzi@gmail.com> Introduce the 'Index' library.

Its purpose is to provide the basic infrastructure for cross-translation-unit analysis like indexing, refactoring, etc.

Currently it is very "primitive" and with no type-names support. It can provide functionality like
"show me all references of this function from these translation units".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74802 91177308-0d34-0410-b5e6-96231b3b80d8
MakeLists.txt
ntity.cpp
ndexProvider.cpp
akefile
rogram.cpp
rogramImpl.h