summaryrefslogtreecommitdiffstats
path: root/clang/tools/libclang/IndexBody.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [libclang] Separate the underlying indexing functionality of libclang and ↵Argyrios Kyrtzidis2016-02-121-224/+0
| | | | | | | | introduce it into the clangIndex library. It is a general goodness for libclang itself to mostly be a wrapper of functionality provided by the libraries. llvm-svn: 260760
* [libclang] indexing: make sure to not visit init-list expressions twice.Argyrios Kyrtzidis2016-02-091-11/+58
| | | | llvm-svn: 260255
* Teach RAV to pass its DataRecursionQueue to derived classes if they ask for it,Richard Smith2015-11-241-2/+3
| | | | | | | | to allow them to explicitly opt into data recursion despite having overridden Traverse*Stmt or Traverse*Expr. Use this to reintroduce data recursion to the one place that lost it when DataRecursiveASTVisitor was removed. llvm-svn: 254041
* Remove DataRecursiveASTVisitor; it no longer serves any purpose, since it's ↵Richard Smith2015-11-241-3/+3
| | | | | | just an alias for RecursiveASTVisitor. llvm-svn: 253949
* Objective-C. revert patch for rdar://17554063.Fariborz Jahanian2014-10-281-6/+0
| | | | llvm-svn: 220812
* [C++11] Support for capturing of variable length arrays in lambda expression.Alexey Bataev2014-08-281-1/+1
| | | | | | Differential Revision: http://reviews.llvm.org/D4368 llvm-svn: 216649
* Objective-C ARC. First patch toward generating new APIsFariborz Jahanian2014-08-061-0/+6
| | | | | | | for Objective-C's array and dictionary literals. rdar://17554063. This is wip. llvm-svn: 214983
* [C++11] Use 'nullptr'. Tools edition.Craig Topper2014-06-081-1/+1
| | | | llvm-svn: 210422
* RAV reunification: merge Lambda body visitation to DRAVAlp Toker2014-05-201-5/+5
| | | | llvm-svn: 209246
* Decouple ExprCXX.h and DeclCXX.h and clean up includes a bit.Benjamin Kramer2014-05-101-1/+1
| | | | | | | Required pulling LambdaExpr::Capture into its own header. No functionality change. llvm-svn: 208470
* Move tools/libclang/RecursiveASTVisitor.h -> ↵Argyrios Kyrtzidis2013-12-201-3/+3
| | | | | | | | include/clang/AST/DataRecursiveASTVisitor.h This is to make it available so the static analyzer can use it. llvm-svn: 197766
* First pass of semantic analysis for init-captures: check the initializer, buildRichard Smith2013-05-161-1/+3
| | | | | | | | | | | | | a FieldDecl from it, and propagate both into the closure type and the LambdaExpr. You can't do much useful with them yet -- you can't use them within the body of the lambda, because we don't have a representation for "the this of the lambda, not the this of the enclosing context". We also don't have support or a representation for a nested capture of an init-capture yet, which was intended to work despite not being allowed by the current standard wording. llvm-svn: 181985
* Have the RecursiveASTVisitor traverse the type source info of an objc class ↵Argyrios Kyrtzidis2013-05-061-3/+0
| | | | | | message. llvm-svn: 181237
* Basic support for Microsoft property declarations andJohn McCall2013-04-161-0/+6
| | | | | | | | references thereto. Patch by Tong Shen! llvm-svn: 179585
* Sort #include lines for tools/...Chandler Carruth2012-12-041-1/+0
| | | | | | Completely automated with sort_includes.py llvm-svn: 169240
* [libclang] Do index 'extern' declarations inside functions.Argyrios Kyrtzidis2012-09-101-1/+13
| | | | | | rdar://12257073 llvm-svn: 163563
* [libclang/AST] Index references of protocols in "@protocol(...)" syntax.Argyrios Kyrtzidis2012-05-161-0/+6
| | | | | | | | | To do that, keep track of the location of the protocol id in the ObjCProtocolExpr AST node. rdar://11190837 llvm-svn: 156890
* [libclang] Put the RecursiveASTVisitor in libclang in a cxindex namespace.Argyrios Kyrtzidis2012-05-071-1/+1
| | | | llvm-svn: 156331
* Un-revert r156142, "[libclang] Bring back ↵Argyrios Kyrtzidis2012-05-071-0/+6
| | | | | | | | BodyIndexer::TraverseCXXOperatorCallExpr". It was reverted on r156253. llvm-svn: 156330
* [libclang] Use a copy of the data-recursive RecursiveASTVisitor inside libclang.Argyrios Kyrtzidis2012-05-071-1/+1
| | | | | | | | | | This is temporary until we settle on how to make the main RecursiveASTVisitor safe. There are some modifications on the original version, to avoid extreme memory usage when compiling for release. rdar://11179167 llvm-svn: 156329
* Revert r156142, "[libclang] Bring back ↵NAKAMURA Takumi2012-05-061-6/+0
| | | | | | | | BodyIndexer::TraverseCXXOperatorCallExpr which" It caused test/Index/index-many-call-ops.cpp to fail in stage2 c-index-test on selfhosting i686-cygwin and x86_64-linux since r156229 (Reverting making RecursiveASTVisitor data recursive). llvm-svn: 156253
* [libclang] Bring back BodyIndexer::TraverseCXXOperatorCallExpr whichArgyrios Kyrtzidis2012-05-041-0/+6
| | | | | | | was removed in r155969 to address a deficiency of RecursiveASTVisitor prior to recent changes on it. llvm-svn: 156142
* Unrevert r155951, reverted in r155962, with two changes:Richard Smith2012-05-021-6/+0
| | | | | | | | | * Work around build failures due to gcc 4.2 bugs. * Remove BodyIndexer::TraverseCXXOperatorCallExpr, which was not being called prior to this change, and whose presence disables a RecursiveASTVisitor stack space optimization after this change. llvm-svn: 155969
* Implements boxed expressions for Objective-C. <rdar://problem/10194391>Patrick Beard2012-04-191-3/+3
| | | | llvm-svn: 155082
* And libclang cursor/indexing support for new Objective-C ↵Ted Kremenek2012-03-061-9/+25
| | | | | | NSArray/NSDictionary/NSNumber literals. llvm-svn: 152138
* [libclang] Index the field references of a designated initializer, ↵Argyrios Kyrtzidis2012-02-221-0/+11
| | | | | | rdar://10906206 llvm-svn: 151118
* Fix typo in r150549.Richard Smith2012-02-151-3/+3
| | | | llvm-svn: 150555
* Implement indexing support for lambdas in libclang (both kinds), asDouglas Gregor2012-02-151-0/+11
| | | | | | | well as improving the RecursiveASTVisitor's walk of lambda expressions. llvm-svn: 150549
* [libclang] Indexing: only index implicit template instantiations via an ↵Argyrios Kyrtzidis2012-02-141-1/+1
| | | | | | opt-in indexing option. llvm-svn: 150517
* [libclang] For CXXOperatorCallExprs, give a valid source location to the ↵Argyrios Kyrtzidis2012-02-081-0/+6
| | | | | | | | | | DeclRefExpr that is referencing the member function, so we can index the referenced function. Fixes rdar://10762375&10324915 & http://llvm.org/PR11192 llvm-svn: 150033
* [libclang] Index namespaces in C++ qualified lookup of members, rdar://10732798Argyrios Kyrtzidis2012-01-231-0/+5
| | | | llvm-svn: 148706
* [libclang] Add CXIndexOpt_IndexFunctionLocalSymbols indexing option to indicateArgyrios Kyrtzidis2012-01-141-0/+6
| | | | | | that one wants indexing callbacks for function-local symbols as well. llvm-svn: 148160
* Add IsImplicit field in ObjCMessageExpr that is true when the messageArgyrios Kyrtzidis2012-01-121-11/+3
| | | | | | | | | | was constructed, e.g. for a property access. This allows the selector identifier locations machinery for ObjCMessageExpr to function correctly, in that there are not real locations to handle/report for such a message. llvm-svn: 148013
* [libclang] Indexing API: Fix indexing of missed references.Argyrios Kyrtzidis2011-12-131-17/+29
| | | | | | rdar://10567864&10567916 llvm-svn: 146497
* [libclang] Indexing API: Support C++ symbols.Argyrios Kyrtzidis2011-11-221-0/+6
| | | | llvm-svn: 145058
* [libclang] Indexing API:Argyrios Kyrtzidis2011-11-181-4/+17
| | | | | | | | | -For indexDeclaration, also pass the declaration attributes as an array of cursors. -Rename CXIndexOpt_OneRefPerFile -> CXIndexOpt_SuppressRedundantRefs, and only pass a reference if a declaration/definition does not exist in the file. -Other fixes. llvm-svn: 144942
* [libclang] Indexing API: make sure we do not try to index local declarations.Argyrios Kyrtzidis2011-11-161-21/+4
| | | | llvm-svn: 144764
* [libclang] Index implicit property references.Argyrios Kyrtzidis2011-10-181-0/+15
| | | | llvm-svn: 142355
* [libclang] Index method references.Argyrios Kyrtzidis2011-10-181-0/+6
| | | | llvm-svn: 142353
* [libclang] Introduce a new high level API for indexing clients that assumesArgyrios Kyrtzidis2011-10-171-0/+72
more of the work involved in indexing a translation unit and simplifies client implementations. Only C/ObjC for now, C++ (and comments) to come. llvm-svn: 142233
OpenPOWER on IntegriCloud