diff options
author | Ilya Biryukov <ibiryukov@google.com> | 2018-08-30 13:14:31 +0000 |
---|---|---|
committer | Ilya Biryukov <ibiryukov@google.com> | 2018-08-30 13:14:31 +0000 |
commit | 43c292c6d96d7595c7dcc8c2659dc5cf8b0ff4f8 (patch) | |
tree | 3a954d622f322b972ab5b6ddefcc994a94938fc5 /clang-tools-extra/clangd/CodeComplete.cpp | |
parent | e11f221786c9c70a0ccdfdfff454dc552abd9a21 (diff) | |
download | bcm5719-llvm-43c292c6d96d7595c7dcc8c2659dc5cf8b0ff4f8.tar.gz bcm5719-llvm-43c292c6d96d7595c7dcc8c2659dc5cf8b0ff4f8.zip |
[clangd] Report position of opening paren in singature help
Summary: Only accessible via the C++ API at the moment.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D51437
llvm-svn: 341065
Diffstat (limited to 'clang-tools-extra/clangd/CodeComplete.cpp')
-rw-r--r-- | clang-tools-extra/clangd/CodeComplete.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/clang-tools-extra/clangd/CodeComplete.cpp b/clang-tools-extra/clangd/CodeComplete.cpp index 65c415fbaca..e355a83328d 100644 --- a/clang-tools-extra/clangd/CodeComplete.cpp +++ b/clang-tools-extra/clangd/CodeComplete.cpp @@ -794,7 +794,17 @@ public: void ProcessOverloadCandidates(Sema &S, unsigned CurrentArg, OverloadCandidate *Candidates, - unsigned NumCandidates) override { + unsigned NumCandidates, + SourceLocation OpenParLoc) override { + assert(!OpenParLoc.isInvalid()); + SourceManager &SrcMgr = S.getSourceManager(); + OpenParLoc = SrcMgr.getFileLoc(OpenParLoc); + if (SrcMgr.isInMainFile(OpenParLoc)) + SigHelp.argListStart = sourceLocToPosition(SrcMgr, OpenParLoc); + else + elog("Location oustide main file in signature help: {0}", + OpenParLoc.printToString(SrcMgr)); + std::vector<ScoredSignature> ScoredSignatures; SigHelp.signatures.reserve(NumCandidates); ScoredSignatures.reserve(NumCandidates); |