thakis added a comment.

This also makes clang-tidy crash for fairly normal inputs, see below.



================
Comment at: clang-tools-extra/clang-tidy/misc/Homoglyph.cpp:84
+  if (const auto *ND = Result.Nodes.getNodeAs<NamedDecl>("nameddecl")) {
+    StringRef NDName = ND->getName();
+    auto &Mapped = Mapper[skeleton(NDName)];
----------------
This call is not correct, it's only valid for simple identifiers:

```
% cat t.cc
namespace ns { struct Foo {}; }
auto f = ns::Foo();
% ../llvm-build-2/bin/clang-tidy t.cc  -fix '--checks=-*,misc-homoglyph'  
-config={} --
argh Foo
Assertion failed: (Name.isIdentifier() && "Name is not a simple identifier"), 
function getName, file Decl.h, line 278.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and 
include the crash backtrace.
```

This crash breaks check-clangd in some build configs (t.cc is reduced form 
`clang-tools-extra/clangd/test/check.test`).


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D112916

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to