@@ -92,7 +92,7 @@ protocol HasAssocWithSuperClassConstraint {
9292}
9393protocol HasAssocWithCompositionConstraint {
9494 associatedtype AssocWithCompositionConstraint : MyClass & MyProtocol
95- subscript< T > ( idx: T ) -> AssocWithCompositionConstraint where T : Comparable { get }
95+ subscript( idx: Int ) -> AssocWithCompositionConstraint { get }
9696}
9797protocol HasAssocWithDefault {
9898 associatedtype AssocWithDefault = MyEnum
@@ -114,6 +114,10 @@ protocol HasAssocWithSameTypeConstraint where Self.AssocWithSameTypeConstraint =
114114 associatedtype AssocWithSameTypeConstraint
115115 func returnAssocWithSameTypeConstraint( ) -> AssocWithSameTypeConstraint
116116}
117+ protocol HasAssocWithConformanceConstraintGeneric {
118+ associatedtype AssocWithConformanceConstraintGeneric : MyProtocol
119+ func returnAssocWithConformanceConstraintGeneric< T> ( arg: T ) -> AssocWithConformanceConstraintGeneric
120+ }
117121
118122class TestClass :
119123 HasAssocPlain ,
@@ -124,18 +128,20 @@ class TestClass :
124128 HasAssocWithConstraintAndDefault ,
125129 HasAssocWithAnyObjectConstraint ,
126130 HasAssocWithConstraintOnProto ,
127- HasAssocWithSameTypeConstraint {
131+ HasAssocWithSameTypeConstraint ,
132+ HasAssocWithConformanceConstraintGeneric {
128133 #^OVERRIDE_TestClass^#
129134// OVERRIDE: Begin completions
130135// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocPlain() -> AssocPlain {|};
131136// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithConformanceConstraint(fn: (Int) -> Int) -> some MyProtocol {|};
132137// OVERRIDE-DAG: Decl[InstanceVar]/Super: var valAssocWithSuperClassConstraint: some MyClass;
133- // OVERRIDE-DAG: Decl[Subscript]/Super: subscript<T> (idx: T ) -> some MyClass & MyProtocol where T : Comparable {|};
138+ // OVERRIDE-DAG: Decl[Subscript]/Super: subscript(idx: Int ) -> some MyClass & MyProtocol {|};
134139// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithDefault() -> MyEnum {|};
135140// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithConstraintAndDefault() -> ConcreteMyProtocol {|};
136141// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithAnyObjectConstraint() -> some MyProtocol & AnyObject {|}
137142// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithConstraintOnProto() -> some MyProtocol {|}
138143// OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithSameTypeConstraint() -> AssocWithSameTypeConstraint {|}
144+ // OVERRIDE-DAG: Decl[InstanceMethod]/Super: func returnAssocWithConformanceConstraintGeneric<T>(arg: T) -> AssocWithConformanceConstraintGeneric {|}
139145// OVERRIDE: End completions
140146}
141147
@@ -148,7 +154,8 @@ struct TestStruct :
148154 HasAssocWithConstraintAndDefault ,
149155 HasAssocWithAnyObjectConstraint ,
150156 HasAssocWithConstraintOnProto ,
151- HasAssocWithSameTypeConstraint {
157+ HasAssocWithSameTypeConstraint ,
158+ HasAssocWithConformanceConstraintGeneric {
152159 #^OVERRIDE_TestStruct^#
153160}
154161
0 commit comments