Lines Matching refs:SemaRef
236 Sema &SemaRef, CodeSynthesisContext::SynthesisKind Kind, in InstantiatingTemplate() argument
240 : SemaRef(SemaRef) { in InstantiatingTemplate()
244 if (SemaRef.Diags.hasFatalErrorOccurred() && in InstantiatingTemplate()
245 SemaRef.hasUncompilableErrorOccurred()) { in InstantiatingTemplate()
260 SemaRef.pushCodeSynthesisContext(Inst); in InstantiatingTemplate()
263 !SemaRef.InstantiatingSpecializations in InstantiatingTemplate()
266 atTemplateBegin(SemaRef.TemplateInstCallbacks, SemaRef, Inst); in InstantiatingTemplate()
271 Sema &SemaRef, SourceLocation PointOfInstantiation, Decl *Entity, in InstantiatingTemplate() argument
273 : InstantiatingTemplate(SemaRef, in InstantiatingTemplate()
278 Sema &SemaRef, SourceLocation PointOfInstantiation, FunctionDecl *Entity, in InstantiatingTemplate() argument
281 SemaRef, CodeSynthesisContext::ExceptionSpecInstantiation, in InstantiatingTemplate()
285 Sema &SemaRef, SourceLocation PointOfInstantiation, TemplateParameter Param, in InstantiatingTemplate() argument
289 SemaRef, in InstantiatingTemplate()
295 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
300 : InstantiatingTemplate(SemaRef, Kind, PointOfInstantiation, in InstantiatingTemplate()
309 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
314 SemaRef, in InstantiatingTemplate()
320 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
325 SemaRef, in InstantiatingTemplate()
331 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
336 SemaRef, in InstantiatingTemplate()
342 Sema &SemaRef, SourceLocation PointOfInstantiation, ParmVarDecl *Param, in InstantiatingTemplate() argument
345 SemaRef, in InstantiatingTemplate()
351 Sema &SemaRef, SourceLocation PointOfInstantiation, NamedDecl *Template, in InstantiatingTemplate() argument
355 SemaRef, in InstantiatingTemplate()
361 Sema &SemaRef, SourceLocation PointOfInstantiation, NamedDecl *Template, in InstantiatingTemplate() argument
365 SemaRef, in InstantiatingTemplate()
371 Sema &SemaRef, SourceLocation PointOfInstantiation, TemplateDecl *Template, in InstantiatingTemplate() argument
375 SemaRef, CodeSynthesisContext::DefaultTemplateArgumentChecking, in InstantiatingTemplate()
380 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
384 SemaRef, CodeSynthesisContext::RequirementInstantiation, in InstantiatingTemplate()
390 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
394 SemaRef, CodeSynthesisContext::NestedRequirementConstraintsCheck, in InstantiatingTemplate()
400 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
404 SemaRef, CodeSynthesisContext::ConstraintsCheck, in InstantiatingTemplate()
409 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
413 SemaRef, CodeSynthesisContext::ConstraintSubstitution, in InstantiatingTemplate()
418 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
422 SemaRef, CodeSynthesisContext::ConstraintNormalization, in InstantiatingTemplate()
426 Sema &SemaRef, SourceLocation PointOfInstantiation, in InstantiatingTemplate() argument
430 SemaRef, CodeSynthesisContext::ParameterMappingSubstitution, in InstantiatingTemplate()
480 auto &Active = SemaRef.CodeSynthesisContexts.back(); in Clear()
482 SemaRef.InstantiatingSpecializations.erase( in Clear()
486 atTemplateEnd(SemaRef.TemplateInstCallbacks, SemaRef, in Clear()
487 SemaRef.CodeSynthesisContexts.back()); in Clear()
489 SemaRef.popCodeSynthesisContext(); in Clear()
497 assert(SemaRef.NonInstantiationEntries <= in CheckInstantiationDepth()
498 SemaRef.CodeSynthesisContexts.size()); in CheckInstantiationDepth()
499 if ((SemaRef.CodeSynthesisContexts.size() - in CheckInstantiationDepth()
500 SemaRef.NonInstantiationEntries) in CheckInstantiationDepth()
501 <= SemaRef.getLangOpts().InstantiationDepth) in CheckInstantiationDepth()
504 SemaRef.Diag(PointOfInstantiation, in CheckInstantiationDepth()
506 << SemaRef.getLangOpts().InstantiationDepth in CheckInstantiationDepth()
508 SemaRef.Diag(PointOfInstantiation, diag::note_template_recursion_depth) in CheckInstantiationDepth()
509 << SemaRef.getLangOpts().InstantiationDepth; in CheckInstantiationDepth()
920 TemplateInstantiator(Sema &SemaRef, in TemplateInstantiator() argument
924 : inherited(SemaRef), TemplateArgs(TemplateArgs), Loc(Loc), in TemplateInstantiator()
965 SemaRef.CurrentInstantiationScope->MakeInstantiatedLocalArgPack(Pack); in ExpandingFunctionParameterPack()
971 = SemaRef.CurrentInstantiationScope->getPartiallySubstitutedPack()){ in ForgetPartiallySubstitutedPack()
990 = SemaRef.CurrentInstantiationScope->getPartiallySubstitutedPack()){ in RememberPartiallySubstitutedPack()
1004 SemaRef.InstantiateAttrs(TemplateArgs, Old, New); in transformAttrs()
1009 SemaRef.CurrentInstantiationScope->MakeInstantiatedLocalArgPack(Old); in transformedLocalDecl()
1011 SemaRef.CurrentInstantiationScope->InstantiatedLocalPackArg( in transformedLocalDecl()
1034 SemaRef.CurrentInstantiationScope->InstantiatedLocal(Old, New); in transformedLocalDecl()
1039 SemaRef.PerformDependentDiagnostics(DC, TemplateArgs); in transformedLocalDecl()
1131 LocalInstantiationScope Scope(SemaRef, /*CombineWithOuterScope=*/true); in TransformLambdaExpr()
1136 LocalInstantiationScope Scope(SemaRef, /*CombineWithOuterScope=*/true); in TransformRequiresExpr()
1247 return SemaRef.FindInstantiatedDecl(Loc, cast<NamedDecl>(D), TemplateArgs); in TransformDecl()
1336 if (!SemaRef.isAcceptableTagRedeclaration(TD, Kind, /*isDefinition*/false, in RebuildElaboratedType()
1338 SemaRef.Diag(TagLocation, diag::err_use_with_wrong_tag) in RebuildElaboratedType()
1342 SemaRef.Diag(TD->getLocation(), diag::note_previous_use); in RebuildElaboratedType()
1466 QualType TargetType = SemaRef.SubstType(NTTP->getType(), TemplateArgs, in TransformTemplateParmRefExpr()
1472 QualType ExprType = TargetType.getNonLValueExprType(SemaRef.Context); in TransformTemplateParmRefExpr()
1476 return new (SemaRef.Context) SubstNonTypeTemplateParmPackExpr( in TransformTemplateParmRefExpr()
1515 T = parm->getExpansionType(SemaRef.ArgumentPackSubstitutionIndex); in transformNonTypeTemplateParmRef()
1520 return SemaRef.SubstType(T, TemplateArgs, loc, parm->getDeclName()); in transformNonTypeTemplateParmRef()
1562 result = SemaRef.BuildExpressionFromDeclTemplateArgument(arg, paramType, loc); in transformNonTypeTemplateParmRef()
1565 result = SemaRef.BuildExpressionFromIntegralTemplateArgument(arg, loc); in transformNonTypeTemplateParmRef()
1567 SemaRef.Context.hasSameType(result.get()->getType(), in transformNonTypeTemplateParmRef()
1575 return new (SemaRef.Context) SubstNonTypeTemplateParmExpr( in transformNonTypeTemplateParmRef()
1625 if (SemaRef.CheckTemplateArgument(E->getParameter(), SubstType, in TransformSubstNonTypeTemplateParmExpr()
1731 return SemaRef.BuildCXXDefaultArgExpr(E->getUsedLocation(), in TransformCXXDefaultArgExpr()
1743 LocalInstantiationScope Scope(SemaRef, /*CombineWithOuterScope=*/true); in TransformFunctionProtoType()
1754 SemaRef.SubstParmVarDecl(OldParm, TemplateArgs, indexAdjustment, in TransformFunctionTypeParam()
1756 if (NewParm && SemaRef.getLangOpts().OpenCL) in TransformFunctionTypeParam()
1757 SemaRef.deduceOpenCLAddressSpace(NewParm); in TransformFunctionTypeParam()
1912 Sema::SFINAETrap Trap(SemaRef); in TransformTypeRequirement()
1914 Sema::InstantiatingTemplate TypeInst(SemaRef, in TransformTypeRequirement()
1921 return RebuildTypeRequirement(createSubstDiag(SemaRef, Info, in TransformTypeRequirement()
1923 Req->getType()->getType().print(OS, SemaRef.getPrintingPolicy()); in TransformTypeRequirement()
1933 Sema::SFINAETrap Trap(SemaRef); in TransformExprRequirement()
1941 Sema::InstantiatingTemplate ExprInst(SemaRef, Req->getExpr()->getBeginLoc(), in TransformExprRequirement()
1948 TransExpr = createSubstDiag(SemaRef, Info, in TransformExprRequirement()
1951 SemaRef.getPrintingPolicy()); in TransformExprRequirement()
1966 Sema::InstantiatingTemplate TPLInst(SemaRef, OrigTPL->getTemplateLoc(), in TransformExprRequirement()
1973 TransRetReq.emplace(createSubstDiag(SemaRef, Info, in TransformExprRequirement()
1976 ->printPretty(OS, nullptr, SemaRef.getPrintingPolicy()); in TransformExprRequirement()
2004 Sema::InstantiatingTemplate ReqInst(SemaRef, in TransformNestedRequirement()
2013 SemaRef, Sema::ExpressionEvaluationContext::ConstantEvaluated); in TransformNestedRequirement()
2014 Sema::SFINAETrap Trap(SemaRef); in TransformNestedRequirement()
2015 Sema::InstantiatingTemplate ConstrInst(SemaRef, in TransformNestedRequirement()
2022 return RebuildNestedRequirement(createSubstDiag(SemaRef, Info, in TransformNestedRequirement()
2025 SemaRef.getPrintingPolicy()); in TransformNestedRequirement()