@@ -111,6 +111,7 @@ namespace {
111111 void VisitOMPCapturedExprDecl (OMPCapturedExprDecl *D);
112112 void VisitTemplateTypeParmDecl (const TemplateTypeParmDecl *TTP);
113113 void VisitNonTypeTemplateParmDecl (const NonTypeTemplateParmDecl *NTTP);
114+ void VisitTemplateTemplateParmDecl (const TemplateTemplateParmDecl *);
114115 void VisitHLSLBufferDecl (HLSLBufferDecl *D);
115116
116117 void VisitOpenACCDeclareDecl (OpenACCDeclareDecl *D);
@@ -1189,12 +1190,7 @@ void DeclPrinter::printTemplateParameters(const TemplateParameterList *Params,
11891190 } else if (auto NTTP = dyn_cast<NonTypeTemplateParmDecl>(Param)) {
11901191 VisitNonTypeTemplateParmDecl (NTTP);
11911192 } else if (auto TTPD = dyn_cast<TemplateTemplateParmDecl>(Param)) {
1192- VisitTemplateDecl (TTPD);
1193- if (TTPD->hasDefaultArgument () && !TTPD->defaultArgumentWasInherited ()) {
1194- Out << " = " ;
1195- TTPD->getDefaultArgument ().getArgument ().print (Policy, Out,
1196- /* IncludeType=*/ false );
1197- }
1193+ VisitTemplateTemplateParmDecl (TTPD);
11981194 }
11991195 }
12001196
@@ -1920,6 +1916,16 @@ void DeclPrinter::VisitNonTypeTemplateParmDecl(
19201916 }
19211917}
19221918
1919+ void DeclPrinter::VisitTemplateTemplateParmDecl (
1920+ const TemplateTemplateParmDecl *TTPD) {
1921+ VisitTemplateDecl (TTPD);
1922+ if (TTPD->hasDefaultArgument () && !TTPD->defaultArgumentWasInherited ()) {
1923+ Out << " = " ;
1924+ TTPD->getDefaultArgument ().getArgument ().print (Policy, Out,
1925+ /* IncludeType=*/ false );
1926+ }
1927+ }
1928+
19231929void DeclPrinter::VisitOpenACCDeclareDecl (OpenACCDeclareDecl *D) {
19241930 if (!D->isInvalidDecl ()) {
19251931 Out << " #pragma acc declare" ;
0 commit comments