diff options
author | Sam McCall <sam.mccall@gmail.com> | 2018-02-09 14:42:01 +0000 |
---|---|---|
committer | Sam McCall <sam.mccall@gmail.com> | 2018-02-09 14:42:01 +0000 |
commit | 6003951c6679b04ae57935fa1500c59f2fb4383e (patch) | |
tree | f9b9dab8ed6916223c0fce3a73694e1c0fc376e3 /lldb/packages/Python/lldbsuite/test/functionalities/embedded_interpreter | |
parent | 991af7a5589347a99c42307a9cef89cb4009340f (diff) | |
download | bcm5719-llvm-6003951c6679b04ae57935fa1500c59f2fb4383e.tar.gz bcm5719-llvm-6003951c6679b04ae57935fa1500c59f2fb4383e.zip |
[clangd] Collect definitions when indexing.
Within a TU:
- as now, collect a declaration from the first occurrence of a symbol
(taking clang's canonical declaration)
- when we first see a definition occurrence, copy the symbol and add it
Across TUs/sources:
- mergeSymbol in Merge.h is responsible for combining matching Symbols.
This covers dynamic/static merges and cross-TU merges in the static index.
- it prefers declarations from Symbols that have a definition.
- GlobalSymbolBuilderMain is modified to use mergeSymbol as a reduce step.
Random cleanups (can be pulled out):
- SymbolFromYAML -> SymbolsFromYAML, new singular SymbolFromYAML added
- avoid uninit'd SymbolLocations. Add an idiomatic way to check "absent".
- CanonicalDeclaration (as well as Definition) are mapped as optional in YAML.
- added operator<< for Symbol & SymbolLocation, for debugging
Reviewers: ioeric, hokein
Subscribers: klimek, ilya-biryukov, jkorous-apple, cfe-commits
Differential Revision: https://reviews.llvm.org/D42942
llvm-svn: 324735
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/functionalities/embedded_interpreter')
0 files changed, 0 insertions, 0 deletions