Skip to content

Commit 4cbd256

Browse files
committed
Add missing changes
1 parent 659cf5b commit 4cbd256

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

clang/lib/Sema/SemaTemplate.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2790,15 +2790,16 @@ NamedDecl *transformTemplateParameter(Sema &SemaRef, DeclContext *DC,
27902790
//
27912791
// The return result is expected to be the require-clause for the synthesized
27922792
// alias deduction guide.
2793-
Expr *transformRequireClause(Sema &SemaRef, FunctionTemplateDecl *F,
2794-
TypeAliasTemplateDecl *AliasTemplate,
2795-
ArrayRef<DeducedTemplateArgument> DeduceResults,
2796-
Expr *IsDeducible) {
2793+
Expr *
2794+
buildAssociatedConstraints(Sema &SemaRef, FunctionTemplateDecl *F,
2795+
TypeAliasTemplateDecl *AliasTemplate,
2796+
ArrayRef<DeducedTemplateArgument> DeduceResults,
2797+
Expr *IsDeducible) {
27972798
Expr *RC = F->getTemplateParameters()->getRequiresClause();
27982799
if (!RC)
27992800
return IsDeducible;
28002801

2801-
auto &Context = SemaRef.Context;
2802+
ASTContext &Context = SemaRef.Context;
28022803
LocalInstantiationScope Scope(SemaRef);
28032804

28042805
// In the clang AST, constraint nodes are deliberately not instantiated unless
@@ -2915,7 +2916,6 @@ Expr *transformRequireClause(Sema &SemaRef, FunctionTemplateDecl *F,
29152916
BinaryOperatorKind::BO_LAnd, E.get(), IsDeducible);
29162917
if (Conjunction.isInvalid())
29172918
return nullptr;
2918-
Conjunction.getAs<Expr>()->dump();
29192919
return Conjunction.getAs<Expr>();
29202920
}
29212921
// Build the is_deducible constraint for the alias deduction guides.
@@ -2926,7 +2926,7 @@ Expr *buildIsDeducibleConstraint(Sema &SemaRef,
29262926
TypeAliasTemplateDecl *AliasTemplate,
29272927
QualType ReturnType,
29282928
SmallVector<NamedDecl *> TemplateParams) {
2929-
auto &Context = SemaRef.Context;
2929+
ASTContext &Context = SemaRef.Context;
29302930
// Constraint AST nodes must use uninstantiated depth.
29312931
if (auto *PrimaryTemplate =
29322932
AliasTemplate->getInstantiatedFromMemberTemplate()) {
@@ -3182,8 +3182,8 @@ BuildDeductionGuideForTypeAlias(Sema &SemaRef,
31823182

31833183
Expr *IsDeducible = buildIsDeducibleConstraint(
31843184
SemaRef, AliasTemplate, FPrime->getReturnType(), FPrimeTemplateParams);
3185-
Expr *RequiresClause = transformRequireClause(SemaRef, F, AliasTemplate,
3186-
DeduceResults, IsDeducible);
3185+
Expr *RequiresClause = buildAssociatedConstraints(
3186+
SemaRef, F, AliasTemplate, DeduceResults, IsDeducible);
31873187

31883188
// FIXME: implement the is_deducible constraint per C++
31893189
// [over.match.class.deduct]p3.3:

clang/test/AST/ast-dump-ctad-alias.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Out2<double>::AInner t(1.0);
2424
// Verify that the require-clause of alias deduction guide is transformed correctly:
2525
// - Occurrence T should be replaced with `int`;
2626
// - Occurrence V should be replaced with the Y with depth 1
27-
// - Depth of cccurrence Y in the __is_deducible constraint should be 1
27+
// - Depth of occurrence Y in the __is_deducible constraint should be 1
2828
//
2929
// CHECK: | `-FunctionTemplateDecl {{.*}} <deduction guide for AInner>
3030
// CHECK-NEXT: | |-TemplateTypeParmDecl {{.*}} typename depth 0 index 0 Y

0 commit comments

Comments
 (0)