================
@@ -3144,15 +3142,16 @@ InventTemplateParameter(TypeProcessingState &state,
QualType T,
}
}
if (!Invalid) {
- UsingShadowDecl *USD =
- TemplateId->Template.get().getAsUsingShadowDecl();
- TemplateDecl *CD = TemplateId->Template.get().getAsTemplateDecl();
+ TemplateName TN = TemplateId->Template.get();
+ UsingShadowDecl *USD = TN.getAsUsingShadowDecl();
+ TemplateDecl *CD = TN.getAsTemplateDecl();
S.AttachTypeConstraint(
D.getDeclSpec().getTypeSpecScope().getWithLocInContext(S.Context),
DeclarationNameInfo(DeclarationName(TemplateId->Name),
TemplateId->TemplateNameLoc),
- CD,
- /*FoundDecl=*/USD ? cast<NamedDecl>(USD) : CD,
+ TN,
+ /*FoundDecl=*/
+ USD ? cast<NamedDecl>(USD) : cast_if_present<NamedDecl>(CD),
----------------
cor3ntin wrote:
No, in the template parameter/pack indexing case, it _is_ null
https://github.com/llvm/llvm-project/pull/218738
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits