This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGebbeb164c25a: [clang] Fix the location of UsingTypeLoc. (authored by hokein).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142125/new/ https://reviews.llvm.org/D142125 Files: clang-tools-extra/clangd/unittests/SelectionTests.cpp clang/lib/Sema/SemaType.cpp Index: clang/lib/Sema/SemaType.cpp =================================================================== --- clang/lib/Sema/SemaType.cpp +++ clang/lib/Sema/SemaType.cpp @@ -6256,6 +6256,9 @@ void VisitTagTypeLoc(TagTypeLoc TL) { TL.setNameLoc(DS.getTypeSpecTypeNameLoc()); } + void VisitUsingTypeLoc(UsingTypeLoc TL) { + TL.setNameLoc(DS.getTypeSpecTypeNameLoc()); + } void VisitAtomicTypeLoc(AtomicTypeLoc TL) { // An AtomicTypeLoc can come from either an _Atomic(...) type specifier // or an _Atomic qualifier. Index: clang-tools-extra/clangd/unittests/SelectionTests.cpp =================================================================== --- clang-tools-extra/clangd/unittests/SelectionTests.cpp +++ clang-tools-extra/clangd/unittests/SelectionTests.cpp @@ -520,6 +520,13 @@ )cpp", "TypedefTypeLoc"}, + {R"cpp( + namespace ns { class Foo {}; } + using ns::Foo; + class [[^Foo]] foo; + )cpp", + "UsingTypeLoc"}, + // lambda captured var-decl {R"cpp( void test(int bar) {
Index: clang/lib/Sema/SemaType.cpp =================================================================== --- clang/lib/Sema/SemaType.cpp +++ clang/lib/Sema/SemaType.cpp @@ -6256,6 +6256,9 @@ void VisitTagTypeLoc(TagTypeLoc TL) { TL.setNameLoc(DS.getTypeSpecTypeNameLoc()); } + void VisitUsingTypeLoc(UsingTypeLoc TL) { + TL.setNameLoc(DS.getTypeSpecTypeNameLoc()); + } void VisitAtomicTypeLoc(AtomicTypeLoc TL) { // An AtomicTypeLoc can come from either an _Atomic(...) type specifier // or an _Atomic qualifier. Index: clang-tools-extra/clangd/unittests/SelectionTests.cpp =================================================================== --- clang-tools-extra/clangd/unittests/SelectionTests.cpp +++ clang-tools-extra/clangd/unittests/SelectionTests.cpp @@ -520,6 +520,13 @@ )cpp", "TypedefTypeLoc"}, + {R"cpp( + namespace ns { class Foo {}; } + using ns::Foo; + class [[^Foo]] foo; + )cpp", + "UsingTypeLoc"}, + // lambda captured var-decl {R"cpp( void test(int bar) {
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits