Skip to content

Commit 1d726d5

Browse files
Appply lost changes in new visit.*decl.
Always use GetImportedOrCreateDecl for these.
1 parent a572a81 commit 1d726d5

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

clang/lib/AST/ASTImporter.cpp

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7573,7 +7573,13 @@ ExpectedDecl ASTNodeImporter::VisitRequiresExprBodyDecl(RequiresExprBodyDecl* D)
75737573
auto RequiresLoc = importChecked(Err, D->getLocation());
75747574
if (Err)
75757575
return std::move(Err);
7576-
return RequiresExprBodyDecl::Create(Importer.getToContext(), DC, RequiresLoc);
7576+
7577+
RequiresExprBodyDecl *To;
7578+
if (GetImportedOrCreateDecl(To, D, Importer.getToContext(), DC, RequiresLoc))
7579+
return To;
7580+
To->setLexicalDeclContext(LexicalDC);
7581+
LexicalDC->addDeclInternal(To);
7582+
return To;
75777583
}
75787584

75797585
ExpectedStmt ASTNodeImporter::VisitConceptSpecializationExpr(ConceptSpecializationExpr* E) {
@@ -7605,9 +7611,15 @@ ExpectedDecl ASTNodeImporter::VisitConceptDecl(ConceptDecl* D) {
76057611
if (Err)
76067612
return std::move(Err);
76077613

7608-
return ConceptDecl::Create(Importer.getToContext(), DC, LocationOrErr,
7614+
ConceptDecl *To;
7615+
if (GetImportedOrCreateDecl(To, D,
7616+
Importer.getToContext(), DC, LocationOrErr,
76097617
NameDeclOrErr, ToTemplateParameters,
7610-
ConstraintExpr);
7618+
ConstraintExpr))
7619+
return To;
7620+
To->setLexicalDeclContext(LexicalDC);
7621+
LexicalDC->addDeclInternal(To);
7622+
return To;
76117623
}
76127624

76137625
ExpectedDecl ASTNodeImporter::VisitImplicitConceptSpecializationDecl(ImplicitConceptSpecializationDecl* D) {
@@ -7620,8 +7632,13 @@ ExpectedDecl ASTNodeImporter::VisitImplicitConceptSpecializationDecl(ImplicitCon
76207632
SmallVector<TemplateArgument,2> ToArgs(D->getTemplateArguments().size());
76217633
if (Error Err = ImportTemplateArguments(D->getTemplateArguments(), ToArgs))
76227634
return std::move(Err);
7623-
return ImplicitConceptSpecializationDecl::Create(Importer.getToContext(), DC,
7624-
ToSL, ToArgs);
7635+
7636+
ImplicitConceptSpecializationDecl *To;
7637+
if (GetImportedOrCreateDecl(To, D, Importer.getToContext(), DC, ToSL, ToArgs))
7638+
return To;
7639+
To->setLexicalDeclContext(LexicalDC);
7640+
LexicalDC->addDeclInternal(To);
7641+
return To;
76257642
}
76267643

76277644
ExpectedStmt ASTNodeImporter::VisitSourceLocExpr(SourceLocExpr *E) {

0 commit comments

Comments
 (0)