Alex Lorenz
d65b3e4212
[index] 'using namespace' declarations in functions should record
...
the reference to the namespace
rdar://32323190
llvm-svn: 303555
2017-05-22 14:39:39 +00:00
Argyrios Kyrtzidis
11d704839f
[index] Fix forward declarations interfering with USR generation of external source symbols
...
Patch by Nathan Hawes.
https://reviews.llvm.org/D33346
llvm-svn: 303484
2017-05-20 04:11:33 +00:00
Argyrios Kyrtzidis
b4b85f2033
[index] If the 'external_source_symbol' attribute indicates 'Swift' as the language then report it accordingly
...
llvm-svn: 301183
2017-04-24 14:52:00 +00:00
Alex Lorenz
f6071c34a5
[index] Record class template specializations using a new 'SpecializationOf'
...
relationship
rdar://31603531
Differential Revision: https://reviews.llvm.org/D32010
llvm-svn: 300832
2017-04-20 10:43:22 +00:00
Argyrios Kyrtzidis
a9876cafe2
[index] When indexing system headers make sure to report important reference relations
...
Even if we exclude plain reference occurrences, we should include relation-based references, like the 'base' one.
rdar://31010737
llvm-svn: 298622
2017-03-23 16:34:47 +00:00
Argyrios Kyrtzidis
a9706998f2
[index] Mark categories of test classes with the 'UnitTest' symbol property as well.
...
llvm-svn: 297133
2017-03-07 09:38:08 +00:00
Argyrios Kyrtzidis
6d1a15b2d4
[index] Add 'Parameter' symbol kind and 'Local' symbol property to distinguish function-local symbols
...
Parameters have a 'child' relation to their function/method.
Also add an option '-include-locals' to 'c-index-test core' to enable indexing of function-local symbols.
Original patch from Nathan Hawes with some changes by me.
https://reviews.llvm.org/D30304
llvm-svn: 296282
2017-02-26 05:37:56 +00:00
Argyrios Kyrtzidis
2a89c8594d
[index] Introduce symbol subkinds to mark an accessor getter or setter.
...
llvm-svn: 291707
2017-01-11 21:42:48 +00:00
Argyrios Kyrtzidis
de0f50886f
[index] Add 'IBTypeOf' relation for ObjC methods marked with IBAction and properties with IBOutletCollection.
...
llvm-svn: 291703
2017-01-11 21:01:07 +00:00
Argyrios Kyrtzidis
df60aa83a3
[index] Add 'contained-by' relation between references and their lexical container.
...
llvm-svn: 291700
2017-01-11 20:51:10 +00:00
Argyrios Kyrtzidis
e24f5e204b
[index] Introduce SymbolSubKind for reporting language-specific details.
...
Initially reports if a constructor symbol is a copy or move constructor.
llvm-svn: 291409
2017-01-08 23:21:35 +00:00
Argyrios Kyrtzidis
db4698352e
[index] Rename SymbolSubKind -> SymbolProperty, NFC.
...
This better reflects what it represents.
llvm-svn: 286680
2016-11-11 23:49:55 +00:00
Argyrios Kyrtzidis
f42032abde
[index] Add SymbolSubKind for the GKInspectable annotation.
...
llvm-svn: 286518
2016-11-10 23:27:11 +00:00
Argyrios Kyrtzidis
9d8ab72a69
[index] Handle properly C++14's template variables.
...
- Infer the right symbol kind.
- Provide a templated USR, similar to how we handle class templates.
rdar://28980398
llvm-svn: 286154
2016-11-07 21:20:15 +00:00
Argyrios Kyrtzidis
3e5b61f7da
[index] Make sure to mark class template symbols as having 'generic' sub-kind.
...
llvm-svn: 286153
2016-11-07 21:20:08 +00:00
Argyrios Kyrtzidis
806faaf42b
[index] Fixes for locations and relations in Objective C categories and getters/setters
...
- Add entries for protocols on categories
- Add relation between categories and class they extend
- Add relation between getters/setters and their corresponding property
- Use category name location as the location of category decls/defs if it has one
llvm-svn: 285120
2016-10-25 21:11:22 +00:00
Argyrios Kyrtzidis
0642a21f1d
[index] Add SymbolSubKinds for ObjC IB annotations.
...
llvm-svn: 267118
2016-04-22 07:21:16 +00:00
Argyrios Kyrtzidis
f30c8c621f
[index] Add a SymbolSubKind for an ObjC unit test.
...
llvm-svn: 267117
2016-04-22 07:21:10 +00:00
Argyrios Kyrtzidis
f2142cbca8
[index] Change SymbolCXXTemplateKind to a 'SymbolSubKinds' bitset.
...
This provides a more general and flexible way to annotate special symbols.
llvm-svn: 267116
2016-04-22 07:21:04 +00:00
Ben Langmuir
443913f4d6
[index] Remove redundancy between symbol kind and language
...
Condense the ObjCKIND and CXXKIND options into just KIND, since the
language was already specified on a per-symbol basis and this
information was redundant. This only changes the internal
representation; naturally the libclang interface remains the same.
llvm-svn: 264423
2016-03-25 17:01:59 +00:00
Argyrios Kyrtzidis
113387e08e
[index] Print and test module import references.
...
llvm-svn: 262208
2016-02-29 07:56:07 +00:00
Argyrios Kyrtzidis
a8b51c1e20
[index] Add a caller relation for a call reference.
...
llvm-svn: 262207
2016-02-29 07:56:00 +00:00
Argyrios Kyrtzidis
d97ec18fe4
[index] Use ',' to separate symbol roles when printing.
...
llvm-svn: 262205
2016-02-29 07:55:51 +00:00
Argyrios Kyrtzidis
d571908445
[AST/index] Introduce an option 'SuppressTemplateArgsInCXXConstructors' in printing policy.
...
Enable it for USRs and names when indexing.
Forward references can have different template argument names; including them
makes USRs and names unstable, since the name depends on whether we saw a forward reference or not.
llvm-svn: 260866
2016-02-15 01:32:36 +00:00
Saleem Abdulrasool
9b0ac33457
silence -Wreturn-type warnings
...
These codepaths would generate warnings with GCC on linux even though the switch
was covered. Add llvm_unreachable markers to indicate that the switch should be
covered. NFC.
llvm-svn: 260865
2016-02-15 00:36:52 +00:00
Argyrios Kyrtzidis
6fdcb9c590
[index] Enhance c-index-test tool and have it link and test the clangIndex library directly.
...
llvm-svn: 260842
2016-02-14 06:39:11 +00:00
Argyrios Kyrtzidis
f4fb85b1c7
[libclang] Separate the underlying indexing functionality of libclang and 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
2016-02-12 23:10:59 +00:00