[PATCH] D65928: [clangd] Added an early return from VisitMemberExpr in SemanticHighlighting if the MemberLoc is invalid.

Johan Vikström via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 8 04:57:04 PDT 2019


jvikstrom marked an inline comment as done.
jvikstrom added inline comments.


================
Comment at: clang-tools-extra/clangd/SemanticHighlighting.cpp:56
+    if (isa<CXXConversionDecl>(MD))
+      // If the member is a conversion operator the loc will be invalid. This
+      // causes the addToken function to emit a lot of error logs about trying
----------------
hokein wrote:
> Maybe just `The MemberLoc is invalid for C++ conversion operato , we don't attempt to add a token for an invalid location`?
> 
> 
> Does the location is always invalid? or just for builtin types? e.g.
> ```
> class Foo {};
> struct Bar {
>   explicit operator Foo*() const; // 1
>   explicit operator int() const; // 2
> };
> ```
Builtin types has nothing to do with it. It's invalid for every conversion operator. Will actually add a test just to make sure that everything else is still highlighted correctly.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D65928





More information about the cfe-commits mailing list