Skip to content

Commit 3558472

Browse files
Implement VisitSubstNonTypeTemplateParmPackExpr
1 parent 573ca36 commit 3558472

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

clang/lib/AST/ASTImporter.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -696,6 +696,8 @@ namespace clang {
696696
ExpectedStmt VisitCXXFoldExpr(CXXFoldExpr *E);
697697
ExpectedStmt VisitRequiresExpr(RequiresExpr* E);
698698
ExpectedStmt VisitConceptSpecializationExpr(ConceptSpecializationExpr* E);
699+
ExpectedStmt
700+
VisitSubstNonTypeTemplateParmPackExpr(SubstNonTypeTemplateParmPackExpr *E);
699701

700702
// Helper for chaining together multiple imports. If an error is detected,
701703
// subsequent imports will return default constructed nodes, so that failure
@@ -9273,6 +9275,21 @@ ASTNodeImporter::VisitConceptSpecializationExpr(ConceptSpecializationExpr *E) {
92739275
const_cast<ImplicitConceptSpecializationDecl *>(CSD), &Satisfaction);
92749276
}
92759277

9278+
ExpectedStmt ASTNodeImporter::VisitSubstNonTypeTemplateParmPackExpr(
9279+
SubstNonTypeTemplateParmPackExpr *E) {
9280+
Error Err = Error::success();
9281+
auto ToType = importChecked(Err, E->getType());
9282+
auto ToNameLoc = importChecked(Err, E->getParameterPackLocation());
9283+
auto ToArgPack = importChecked(Err, E->getArgumentPack());
9284+
auto ToAssociatedDecl = importChecked(Err, E->getAssociatedDecl());
9285+
if (Err)
9286+
return std::move(Err);
9287+
9288+
return new (Importer.getToContext()) SubstNonTypeTemplateParmPackExpr(
9289+
ToType, E->getValueKind(), ToNameLoc, ToArgPack, ToAssociatedDecl,
9290+
E->getIndex(), E->getFinal());
9291+
}
9292+
92769293
Error ASTNodeImporter::ImportOverriddenMethods(CXXMethodDecl *ToMethod,
92779294
CXXMethodDecl *FromMethod) {
92789295
Error ImportErrors = Error::success();

0 commit comments

Comments
 (0)