aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaCodeComplete.cpp
diff options
context:
space:
mode:
authorSam McCall <sam.mccall@gmail.com>2022-12-14 17:26:14 +0100
committerSam McCall <sam.mccall@gmail.com>2022-12-14 19:41:25 +0100
commitbd672e2fc03823e536866da6721b9f053cfd586b (patch)
tree817e99ed6a27d5b8edc5dab3bab68ab7905f6e88 /clang/lib/Sema/SemaCodeComplete.cpp
parent3e7dad22f111b9256e79dcb9cdb1c21ff0fd73dc (diff)
downloadllvm-bd672e2fc03823e536866da6721b9f053cfd586b.zip
llvm-bd672e2fc03823e536866da6721b9f053cfd586b.tar.gz
llvm-bd672e2fc03823e536866da6721b9f053cfd586b.tar.bz2
[CodeComplete] Provide designated-init completions in (const) reference context
Differential Revision: https://reviews.llvm.org/D140029
Diffstat (limited to 'clang/lib/Sema/SemaCodeComplete.cpp')
-rw-r--r--clang/lib/Sema/SemaCodeComplete.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp
index d18b0bd..0745677 100644
--- a/clang/lib/Sema/SemaCodeComplete.cpp
+++ b/clang/lib/Sema/SemaCodeComplete.cpp
@@ -5122,7 +5122,8 @@ static void AddRecordMembersCompletionResults(
// Returns the RecordDecl inside the BaseType, falling back to primary template
// in case of specializations. Since we might not have a decl for the
// instantiation/specialization yet, e.g. dependent code.
-static RecordDecl *getAsRecordDecl(const QualType BaseType) {
+static RecordDecl *getAsRecordDecl(QualType BaseType) {
+ BaseType = BaseType.getNonReferenceType();
if (auto *RD = BaseType->getAsRecordDecl()) {
if (const auto *CTSD =
llvm::dyn_cast<ClassTemplateSpecializationDecl>(RD)) {