[PATCH] D73960: [clangd] Don't assert when completing a lambda variable inside the lambda.

Kadir Cetinkaya via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Feb 4 07:37:08 PST 2020


kadircet accepted this revision.
kadircet added a comment.
This revision is now accepted and ready to land.

thanks, lgtm!



================
Comment at: clang-tools-extra/clangd/CodeComplete.cpp:1007
     Result.Quality = Signal;
-    Result.IDForDoc =
-        Result.Signature.documentation.empty() && Candidate.getFunction()
-            ? clangd::getSymbolID(Candidate.getFunction())
-            : None;
+    if (Result.Signature.documentation.empty() && Candidate.getFunction()) {
+      // Computing USR caches linkage, which may change after code completion.
----------------
nit: maybe decrease # of `Candidate.getFunction`s via
```
if(!doc.empty())
  return Result;
if(const auto *FD = Candidate->getFunction()) {
....
}
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73960/new/

https://reviews.llvm.org/D73960





More information about the cfe-commits mailing list