llvm-project/clang-tools-extra/clangd
Eric Liu 77d1811e96 [clangd] Avoid indexing decls associated with friend decls.
Summary:
These decls are sometime used as the canonical declarations (e.g. for go-to-def),
which seems to be bad.

- friend decls that are not definitions should be ignored for indexing purposes
- this means they should never be selected as canonical decl
- if the friend decl is the only decl, then the symbol should not be indexed

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: mgorny, klimek, ilya-biryukov, MaskRay, jkorous, cfe-commits

Differential Revision: https://reviews.llvm.org/D47623

llvm-svn: 333885
2018-06-04 11:31:55 +00:00
..
clients/clangd-vscode [clangd] Bump v0.0.6 for vscode-clangd. 2018-04-09 15:37:09 +00:00
fuzzer [clangd-fuzzer] Update ClangdLSPServer constructor call. 2018-03-09 23:02:22 +00:00
global-symbol-builder [clangd] Enable parsing of non-doxygen comments in global-symbol-builder 2018-05-30 10:43:00 +00:00
index [clangd] Avoid indexing decls associated with friend decls. 2018-06-04 11:31:55 +00:00
tool [clangd] Minor cleanup 2018-05-29 11:50:51 +00:00
AST.cpp Fix up after clang r331155. 2018-04-30 05:26:07 +00:00
AST.h [clangd] clang-format the source code. NFC 2018-05-30 12:41:19 +00:00
CMakeLists.txt Reland "[clangd] Adapt file migration in r332720" 2018-06-04 09:04:28 +00:00
ClangdLSPServer.cpp [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00
ClangdLSPServer.h [clangd] Implementation of workspace/symbol request 2018-04-23 20:00:52 +00:00
ClangdServer.cpp [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00
ClangdServer.h [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00
ClangdUnit.cpp [clangd] Compute better estimates for memory usage of the AST 2018-06-01 14:44:57 +00:00
ClangdUnit.h [clangd] Keep only a limited number of idle ASTs in memory 2018-06-01 10:08:43 +00:00
CodeComplete.cpp [clangd] Avoid inserting new #include when declaration is present in the main file. 2018-05-30 09:03:39 +00:00
CodeComplete.h [clangd] Retrieve minimally formatted comment text in completion. 2018-05-16 12:32:44 +00:00
CodeCompletionStrings.cpp [clangd] Workaround the comments crash, reenable the test. 2018-05-28 09:54:51 +00:00
CodeCompletionStrings.h [clangd] Serve comments for headers decls from dynamic index only 2018-05-24 14:49:23 +00:00
CompileArgsCache.cpp [clangd] Fixed the file comment of new file. NFC 2018-01-25 14:30:46 +00:00
CompileArgsCache.h [clangd] Added forgotten files 2018-01-25 14:29:29 +00:00
Compiler.cpp [clangd] Log all ignored diagnostics. 2018-02-12 12:48:51 +00:00
Compiler.h [clangd] Log all ignored diagnostics. 2018-02-12 12:48:51 +00:00
Context.cpp [clangd] Address FIXME and fix comment 2018-02-25 07:21:16 +00:00
Context.h [clangd] Fix Context::derive to actually call the right method. 2018-04-23 15:27:42 +00:00
Diagnostics.cpp [clangd] synthesize fix message when the diagnostic doesn't provide one. 2018-04-03 17:35:57 +00:00
Diagnostics.h [clangd] Prune some dead declarations. No functionality change. 2018-04-23 14:58:18 +00:00
DraftStore.cpp [clangd] Support incremental document syncing 2018-03-26 14:41:40 +00:00
DraftStore.h [clangd] Support incremental document syncing 2018-03-26 14:41:40 +00:00
FindSymbols.cpp [clangd] Implementation of workspace/symbol request 2018-04-23 20:00:52 +00:00
FindSymbols.h [clangd] Implementation of workspace/symbol request 2018-04-23 20:00:52 +00:00
Function.h [clangd] Remove Tagged and some related APIs from ClangdServer. 2018-03-12 23:22:35 +00:00
FuzzyMatch.cpp [clangd] Fix unintentionally loose fuzzy matching, and the tests masking it. 2018-03-05 17:34:33 +00:00
FuzzyMatch.h [clangd] Fix unintentionally loose fuzzy matching, and the tests masking it. 2018-03-05 17:34:33 +00:00
GlobalCompilationDatabase.cpp Parse .h files as objective-c++ if we don't have a compile command. 2018-04-20 11:35:17 +00:00
GlobalCompilationDatabase.h Parse .h files as objective-c++ if we don't have a compile command. 2018-04-20 11:35:17 +00:00
Headers.cpp [clangd] Populate #include insertions as additional edits in completion items. 2018-05-15 15:29:32 +00:00
Headers.h Reland "[clangd] Adapt file migration in r332720" 2018-06-04 09:04:28 +00:00
JSONExpr.cpp [clangd] Fix repeated word typo. NFC 2018-03-29 20:03:16 +00:00
JSONExpr.h [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00
JSONRPCDispatcher.cpp [clangd][tests] Fix delimiter handling 2018-04-23 15:58:42 +00:00
JSONRPCDispatcher.h [clangd] Support simpler JSON-RPC stream parsing for lit tests. 2018-02-06 10:47:30 +00:00
Logger.cpp [clangd] Pass Context implicitly using TLS. 2018-01-31 13:40:48 +00:00
Logger.h [clangd] Pass Context implicitly using TLS. 2018-01-31 13:40:48 +00:00
Path.h Restored r303067 and fixed failing test. 2017-05-16 09:38:59 +00:00
Protocol.cpp PrintEscapedString -> printEscapedString 2018-05-31 17:36:31 +00:00
Protocol.h [clangd] Populate #include insertions as additional edits in completion items. 2018-05-15 15:29:32 +00:00
ProtocolHandlers.cpp [clangd] Implementation of workspace/symbol request 2018-04-23 20:00:52 +00:00
ProtocolHandlers.h [clangd] Implementation of workspace/symbol request 2018-04-23 20:00:52 +00:00
Quality.cpp Silence a truncation warning; NFC. 2018-05-18 13:18:41 +00:00
Quality.h [clangd] clang-format the source code. NFC 2018-05-30 12:41:19 +00:00
SourceCode.cpp [clangd] Move helpers that convert Replacements to TextEdits to SourceCode.h 2018-05-11 12:12:08 +00:00
SourceCode.h [clangd] Move helpers that convert Replacements to TextEdits to SourceCode.h 2018-05-11 12:12:08 +00:00
TUScheduler.cpp [clangd] Compute better estimates for memory usage of the AST 2018-06-01 14:44:57 +00:00
TUScheduler.h [clangd] Keep only a limited number of idle ASTs in memory 2018-06-01 10:08:43 +00:00
Threading.cpp [clangd] Debounce streams of updates. 2018-03-02 08:56:37 +00:00
Threading.h [clangd] Debounce streams of updates. 2018-03-02 08:56:37 +00:00
Trace.cpp [clangd] Tracing: name worker threads, and enforce naming scheduled async tasks 2018-02-19 09:56:28 +00:00
Trace.h [clangd] clang-format the source code. NFC 2018-05-30 12:41:19 +00:00
URI.cpp [clangd] Allow using customized include path in URI. 2018-04-09 15:09:44 +00:00
URI.h [clangd] clang-format the source code. NFC 2018-05-30 12:41:19 +00:00
XRefs.cpp [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00
XRefs.h [clangd] Hover should return null when not hovering over anything. 2018-06-04 10:37:16 +00:00