Lines Matching defs:Pattern
704 Sema::CheckPackExpansion(TypeSourceInfo *Pattern, SourceLocation EllipsisLoc,
707 QualType Result = CheckPackExpansion(Pattern->getType(),
708 Pattern->getTypeLoc().getSourceRange(),
714 TLB.pushFullCopy(Pattern->getTypeLoc());
721 QualType Sema::CheckPackExpansion(QualType Pattern, SourceRange PatternRange,
731 if (!Pattern->containsUnexpandedParameterPack() &&
732 !Pattern->getContainedDeducedType()) {
738 return Context.getPackExpansionType(Pattern, NumExpansions,
742 ExprResult Sema::ActOnPackExpansion(Expr *Pattern, SourceLocation EllipsisLoc) {
743 return CheckPackExpansion(Pattern, EllipsisLoc, std::nullopt);
746 ExprResult Sema::CheckPackExpansion(Expr *Pattern, SourceLocation EllipsisLoc,
748 if (!Pattern)
755 if (!Pattern->containsUnexpandedParameterPack()) {
757 << Pattern->getSourceRange();
758 CorrectDelayedTyposInExpr(Pattern);
764 PackExpansionExpr(Context.DependentTy, Pattern, EllipsisLoc, NumExpansions);
1021 QualType Pattern = cast<PackExpansionType>(T)->getPattern();
1023 CollectUnexpandedParameterPacksVisitor(Unexpanded).TraverseType(Pattern);
1298 TypeLoc Pattern = Expansion.getPatternLoc();
1305 TLB.pushFullCopy(Pattern);
1307 TLB.getTypeSourceInfo(Context, Pattern.getType());
1308 return TemplateArgumentLoc(TemplateArgument(Pattern.getType()),
1315 Expr *Pattern = Expansion->getPattern();
1318 return TemplateArgumentLoc(Pattern, Pattern);