Skip to content

Commit aac5aef

Browse files
committed
Fix more merge damage
1 parent d49bcb9 commit aac5aef

9 files changed

+3
-29
lines changed

lib/Sema/DerivedConformanceDifferentiable.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,6 @@ static ValueDecl *deriveDifferentiable_method(
346346
funcDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
347347
funcDecl->computeType();
348348
funcDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
349-
funcDecl->setValidationToChecked();
350349

351350
derived.addMembersToConformanceContext({funcDecl});
352351
C.addSynthesizedDecl(funcDecl);
@@ -614,7 +613,6 @@ getOrSynthesizeTangentVectorStruct(DerivedConformance &derived, Identifier id) {
614613
structDecl->addMember(newMember);
615614
structDecl->addMember(memberBinding);
616615
newMember->copyFormalAccessFrom(member, /*sourceIsParentContext*/ true);
617-
newMember->setValidationToChecked();
618616
newMember->setSetterAccess(member->getFormalAccess());
619617
C.addSynthesizedDecl(newMember);
620618
C.addSynthesizedDecl(memberBinding);
@@ -701,7 +699,6 @@ static void addAssociatedTypeAliasDecl(Identifier name,
701699
aliasDecl->setGenericSignature(sourceDC->getGenericSignatureOfContext());
702700
cast<IterableDeclContext>(sourceDC->getAsDecl())->addMember(aliasDecl);
703701
aliasDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
704-
aliasDecl->setValidationToChecked();
705702
aliasDecl->computeType();
706703
TC.validateDecl(aliasDecl);
707704
C.addSynthesizedDecl(aliasDecl);
@@ -848,7 +845,6 @@ deriveDifferentiable_TangentVectorStruct(DerivedConformance &derived) {
848845
aliasDecl->setUnderlyingType(selfType);
849846
aliasDecl->setImplicit();
850847
aliasDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
851-
aliasDecl->setValidationToChecked();
852848
aliasDecl->computeType();
853849
TC.validateDecl(aliasDecl);
854850
derived.addMembersToConformanceContext({aliasDecl});

lib/Sema/DerivedConformanceElementaryFunctions.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,6 @@ ElementaryFunction op) {
303303
operatorDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
304304
operatorDecl->computeType();
305305
operatorDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
306-
operatorDecl->setValidationToChecked();
307306

308307
derived.addMembersToConformanceContext({operatorDecl});
309308
C.addSynthesizedDecl(operatorDecl);

lib/Sema/DerivedConformanceRingMathProtocols.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,6 @@ static ValueDecl *deriveMathOperator(DerivedConformance &derived,
256256
operatorDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
257257
operatorDecl->computeType();
258258
operatorDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
259-
operatorDecl->setValidationToChecked();
260259

261260
derived.addMembersToConformanceContext({operatorDecl});
262261
C.addSynthesizedDecl(operatorDecl);

lib/Sema/DerivedConformanceTensorArrayProtocol.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,6 @@ deriveBodyTensorArrayProtocol_unpackTensorHandles(
109109
currAddressDecl->setImplicit();
110110
currAddressDecl->setHasNonPatternBindingInit(true);
111111
currAddressDecl->setInterfaceType(baseAddressType);
112-
currAddressDecl->setValidationToChecked();
113112

114113
Pattern *currAddressPat = new (C)
115114
NamedPattern(currAddressDecl, /*implicit*/ true);
@@ -245,7 +244,6 @@ static ValueDecl *deriveTensorArrayProtocol_method(
245244
funcDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
246245
funcDecl->computeType();
247246
funcDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
248-
funcDecl->setValidationToChecked();
249247

250248
derived.addMembersToConformanceContext({funcDecl});
251249
C.addSynthesizedDecl(funcDecl);
@@ -471,7 +469,6 @@ deriveBodyTensorArrayProtocol_init(AbstractFunctionDecl *funcDecl, void *) {
471469
currAddressDecl->setImplicit();
472470
currAddressDecl->setHasNonPatternBindingInit(true);
473471
currAddressDecl->setInterfaceType(baseAddressType);
474-
currAddressDecl->setValidationToChecked();
475472

476473
Pattern *currAddressPat = new (C)
477474
NamedPattern(currAddressDecl, /*implicit*/ true);
@@ -648,7 +645,6 @@ static ValueDecl
648645
initDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
649646
initDecl->computeType(AnyFunctionType::ExtInfo().withThrows(false));
650647
initDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
651-
initDecl->setValidationToChecked();
652648

653649
derived.addMembersToConformanceContext({initDecl});
654650
C.addSynthesizedDecl(initDecl);

lib/Sema/DerivedConformanceTensorGroup.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,6 @@ deriveBodyTensorGroup_init(AbstractFunctionDecl *funcDecl, void *) {
175175
currAddressDecl->setImplicit();
176176
currAddressDecl->setHasNonPatternBindingInit(true);
177177
currAddressDecl->setInterfaceType(baseAddressType);
178-
currAddressDecl->setValidationToChecked();
179178

180179
Pattern *currAddressPat = new (C)
181180
NamedPattern(currAddressDecl, /*implicit*/ true);
@@ -341,7 +340,6 @@ static ValueDecl *deriveTensorGroup_constructor(
341340
initDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
342341
initDecl->computeType(AnyFunctionType::ExtInfo().withThrows(false));
343342
initDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
344-
initDecl->setValidationToChecked();
345343

346344
derived.addMembersToConformanceContext({initDecl});
347345
C.addSynthesizedDecl(initDecl);

lib/Sema/DerivedConformanceVectorProtocol.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,6 @@ static ValueDecl *deriveVectorProtocol_method(
231231
funcDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
232232
funcDecl->computeType();
233233
funcDecl->copyFormalAccessFrom(nominal, /*sourceIsParentContext*/ true);
234-
funcDecl->setValidationToChecked();
235234

236235
derived.addMembersToConformanceContext({funcDecl});
237236
C.addSynthesizedDecl(funcDecl);

lib/Sema/DerivedConformances.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -577,7 +577,6 @@ DerivedConformance::declareDerivedPropertySetter(VarDecl *property,
577577
setterDecl->setGenericSignature(parentDC->getGenericSignatureOfContext());
578578
setterDecl->computeType();
579579
setterDecl->copyFormalAccessFrom(property);
580-
setterDecl->setValidationToChecked();
581580

582581
C.addSynthesizedDecl(setterDecl);
583582
return setterDecl;

lib/Sema/TypeCheckDecl.cpp

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4130,18 +4130,6 @@ void TypeChecker::validateDecl(ValueDecl *D) {
41304130
// TODO(TF-789): Figure out the proper way to typecheck these.
41314131
checkDeclDifferentiableAttributes(FD);
41324132

4133-
// Member functions need some special validation logic.
4134-
if (FD->getDeclContext()->isTypeContext()) {
4135-
if (FD->isOperator() && !isMemberOperator(FD, nullptr)) {
4136-
auto selfNominal = FD->getDeclContext()->getSelfNominalTypeDecl();
4137-
auto isProtocol = selfNominal && isa<ProtocolDecl>(selfNominal);
4138-
// We did not find 'Self'. Complain.
4139-
diagnose(FD, diag::operator_in_unrelated_type,
4140-
FD->getDeclContext()->getDeclaredInterfaceType(), isProtocol,
4141-
FD->getFullName());
4142-
}
4143-
}
4144-
41454133
// If the function is exported to C, it must be representable in (Obj-)C.
41464134
if (auto CDeclAttr = FD->getAttrs().getAttribute<swift::CDeclAttr>()) {
41474135
Optional<ForeignErrorConvention> errorConvention;

test/Syntax/Outputs/round_trip_parse_gen.swift.withkinds

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -586,7 +586,7 @@ func foo<FunctionSignature><ParameterClause>() </ParameterClause></FunctionSigna
586586
#"<StringSegment>abc</StringSegment>"#</StringLiteralExpr><StringLiteralExpr>
587587
#"<StringSegment>abc </StringSegment><ExpressionSegment>\#(<TupleExprElement><IdentifierExpr>foo</IdentifierExpr></TupleExprElement>)</ExpressionSegment><StringSegment></StringSegment>"#</StringLiteralExpr><StringLiteralExpr>
588588
##"<StringSegment>abc</StringSegment>"##</StringLiteralExpr><StringLiteralExpr>
589-
##"<StringSegment>abc </StringSegment><ExpressionSegment>\##(<TupleExprElement><IdentifierExpr>foo</IdentifierExpr></TupleExprElement>)</ExpressionSegment><StringSegment></StringSegment>"##</StringLiteralExpr>
589+
##"<StringSegment>abc </StringSegment><ExpressionSegment>\##(<TupleExprElement><IdentifierExpr>foo</IdentifierExpr></TupleExprElement>)</ExpressionSegment><StringSegment></StringSegment>"##</StringLiteralExpr><FunctionDecl><Attribute>
590590

591591
// SWIFT_ENABLE_TENSORFLOW
592592
@differentiable(<DifferentiableAttributeArguments><DifferentiableAttributeFuncSpecifier>jvp: <FunctionDeclName>foo<DeclNameArguments>(<DeclNameArgument>_:</DeclNameArgument><DeclNameArgument>_:</DeclNameArgument>)</DeclNameArguments></FunctionDeclName></DifferentiableAttributeFuncSpecifier></DifferentiableAttributeArguments>)</Attribute>
@@ -607,11 +607,11 @@ func bar<GenericParameterClause><<GenericParameter>T : <SimpleTypeIdentifier>Num
607607
@differentiating(<DifferentiatingAttributeArguments><FunctionDeclName>-</FunctionDeclName></DifferentiatingAttributeArguments>)</Attribute>
608608
func negateDerivative<FunctionSignature><ParameterClause>(<FunctionParameter>_ x: <SimpleTypeIdentifier>Float</SimpleTypeIdentifier></FunctionParameter>)</ParameterClause><ReturnClause>
609609
-> <TupleType>(<TupleTypeElement>value: <SimpleTypeIdentifier>Float</SimpleTypeIdentifier>, </TupleTypeElement><TupleTypeElement>pullback: <FunctionType>(<TupleTypeElement><SimpleTypeIdentifier>Float</SimpleTypeIdentifier></TupleTypeElement>) -> <SimpleTypeIdentifier>Float</SimpleTypeIdentifier></FunctionType></TupleTypeElement>) </TupleType></ReturnClause></FunctionSignature><CodeBlock>{<ReturnStmt>
610-
return <TupleExpr>(<TupleElement><PrefixOperatorExpr>-<IdentifierExpr>x</IdentifierExpr></PrefixOperatorExpr>, </TupleElement><TupleElement><ClosureExpr>{ <ClosureSignature><ClosureParam>v </ClosureParam>in </ClosureSignature><PrefixOperatorExpr>-<IdentifierExpr>v </IdentifierExpr></PrefixOperatorExpr>}</ClosureExpr></TupleElement>)</TupleExpr></ReturnStmt>
610+
return <TupleExpr>(<TupleExprElement><PrefixOperatorExpr>-<IdentifierExpr>x</IdentifierExpr></PrefixOperatorExpr>, </TupleExprElement><TupleExprElement><ClosureExpr>{ <ClosureSignature><ClosureParam>v </ClosureParam>in </ClosureSignature><PrefixOperatorExpr>-<IdentifierExpr>v </IdentifierExpr></PrefixOperatorExpr>}</ClosureExpr></TupleExprElement>)</TupleExpr></ReturnStmt>
611611
}</CodeBlock></FunctionDecl><FunctionDecl><Attribute>
612612

613613
@differentiating(<DifferentiatingAttributeArguments><FunctionDeclName>baz<DeclNameArguments>(<DeclNameArgument>label:</DeclNameArgument><DeclNameArgument>_:</DeclNameArgument>)</DeclNameArguments></FunctionDeclName></DifferentiatingAttributeArguments>)</Attribute>
614614
func bazDerivative<FunctionSignature><ParameterClause>(<FunctionParameter>_ x: <SimpleTypeIdentifier>Float</SimpleTypeIdentifier>, </FunctionParameter><FunctionParameter>y: <SimpleTypeIdentifier>Float</SimpleTypeIdentifier></FunctionParameter>)</ParameterClause><ReturnClause>
615615
-> <TupleType>(<TupleTypeElement>value: <SimpleTypeIdentifier>Float</SimpleTypeIdentifier>, </TupleTypeElement><TupleTypeElement>pullback: <FunctionType>(<TupleTypeElement><SimpleTypeIdentifier>Float</SimpleTypeIdentifier></TupleTypeElement>) -> <TupleType>(<TupleTypeElement><SimpleTypeIdentifier>Float</SimpleTypeIdentifier>, </TupleTypeElement><TupleTypeElement><SimpleTypeIdentifier>Float</SimpleTypeIdentifier></TupleTypeElement>)</TupleType></FunctionType></TupleTypeElement>) </TupleType></ReturnClause></FunctionSignature><CodeBlock>{<ReturnStmt>
616-
return <TupleExpr>(<TupleElement><IdentifierExpr>x</IdentifierExpr>, </TupleElement><TupleElement><ClosureExpr>{ <ClosureSignature><ClosureParam>v </ClosureParam>in </ClosureSignature><IdentifierExpr>v </IdentifierExpr>}</ClosureExpr></TupleElement>)</TupleExpr></ReturnStmt>
616+
return <TupleExpr>(<TupleExprElement><IdentifierExpr>x</IdentifierExpr>, </TupleExprElement><TupleExprElement><ClosureExpr>{ <ClosureSignature><ClosureParam>v </ClosureParam>in </ClosureSignature><IdentifierExpr>v </IdentifierExpr>}</ClosureExpr></TupleExprElement>)</TupleExpr></ReturnStmt>
617617
}</CodeBlock></FunctionDecl>

0 commit comments

Comments
 (0)