Gardening: Migrate test suite to GH issues (file names): Generics

This commit is contained in:
Anthony Latsis
2022-09-18 01:36:29 +03:00
parent 0ab77fb849
commit ae35f150cd
32 changed files with 35 additions and 35 deletions

View File

@@ -2,13 +2,13 @@
// https://github.com/apple/swift/issues/49901 // https://github.com/apple/swift/issues/49901
// CHECK-LABEL: sr7353.(file).P@ // CHECK-LABEL: .P@
// CHECK-LABEL: <Self where Self == Self.[P]A.[Q]B, Self.[P]A : Q> // CHECK-LABEL: <Self where Self == Self.[P]A.[Q]B, Self.[P]A : Q>
protocol P { protocol P {
associatedtype A: Q where A.B == Self associatedtype A: Q where A.B == Self
} }
// CHECK-LABEL: sr7353.(file).Q@ // CHECK-LABEL: .Q@
// CHECK-LABEL: <Self where Self == Self.[Q]B.[P]A, Self.[Q]B : P, Self.[Q]B == Self.[Q]C> // CHECK-LABEL: <Self where Self == Self.[Q]B.[P]A, Self.[Q]B : P, Self.[Q]B == Self.[Q]C>
protocol Q { protocol Q {
associatedtype B: P where B.A == Self associatedtype B: P where B.A == Self

View File

@@ -1,5 +1,5 @@
// RUN: %empty-directory(%t) // RUN: %empty-directory(%t)
// RUN: %target-swift-frontend -emit-module %S/Inputs/sr8945-other.swift -emit-module-path %t/other.swiftmodule -module-name other // RUN: %target-swift-frontend -emit-module %S/Inputs/issue-51450-other.swift -emit-module-path %t/other.swiftmodule -module-name other
// RUN: %target-swift-frontend -emit-silgen %s -I%t -debug-generic-signatures 2>&1 | %FileCheck %s // RUN: %target-swift-frontend -emit-silgen %s -I%t -debug-generic-signatures 2>&1 | %FileCheck %s
// https://github.com/apple/swift/issues/51450 // https://github.com/apple/swift/issues/51450

View File

@@ -8,28 +8,28 @@ protocol Q {
associatedtype Assoc associatedtype Assoc
} }
// CHECK-LABEL: sr9595.(file).P1@ // CHECK-LABEL: .P1@
// CHECK-LABEL: Requirement signature: <Self where Self.[P1]T == Self.[P1]U.[P1]U, Self.[P1]U : P1, Self.[P1]U : Q, Self.[P1]U == Self.[P1]T.[P1]U, Self.[P1]U.[Q]Assoc : R> // CHECK-LABEL: Requirement signature: <Self where Self.[P1]T == Self.[P1]U.[P1]U, Self.[P1]U : P1, Self.[P1]U : Q, Self.[P1]U == Self.[P1]T.[P1]U, Self.[P1]U.[Q]Assoc : R>
protocol P1 { protocol P1 {
associatedtype T where T == U.U associatedtype T where T == U.U
associatedtype U : P1, Q where U.Assoc : R, U == T.U associatedtype U : P1, Q where U.Assoc : R, U == T.U
} }
// CHECK-LABEL: sr9595.(file).P2@ // CHECK-LABEL: .P2@
// CHECK-LABEL: Requirement signature: <Self where Self.[P2]T == Self.[P2]U.[P2]U, Self.[P2]U : P2, Self.[P2]U : Q, Self.[P2]U == Self.[P2]T.[P2]U, Self.[P2]U.[Q]Assoc : R> // CHECK-LABEL: Requirement signature: <Self where Self.[P2]T == Self.[P2]U.[P2]U, Self.[P2]U : P2, Self.[P2]U : Q, Self.[P2]U == Self.[P2]T.[P2]U, Self.[P2]U.[Q]Assoc : R>
protocol P2 { protocol P2 {
associatedtype T : P2 where T == U.U associatedtype T : P2 where T == U.U
associatedtype U : P2, Q where U.Assoc : R, U == T.U associatedtype U : P2, Q where U.Assoc : R, U == T.U
} }
// CHECK-LABEL: sr9595.(file).P3@ // CHECK-LABEL: .P3@
// CHECK-LABEL: Requirement signature: <Self where Self.[P3]T : Q, Self.[P3]T == Self.[P3]U.[P3]U, Self.[P3]U : P3, Self.[P3]U == Self.[P3]T.[P3]U, Self.[P3]T.[Q]Assoc : R> // CHECK-LABEL: Requirement signature: <Self where Self.[P3]T : Q, Self.[P3]T == Self.[P3]U.[P3]U, Self.[P3]U : P3, Self.[P3]U == Self.[P3]T.[P3]U, Self.[P3]T.[Q]Assoc : R>
protocol P3 { protocol P3 {
associatedtype T : Q where T.Assoc : R, T == U.U associatedtype T : Q where T.Assoc : R, T == U.U
associatedtype U : P3 where U == T.U associatedtype U : P3 where U == T.U
} }
// CHECK-LABEL: sr9595.(file).P4@ // CHECK-LABEL: .P4@
// CHECK-LABEL: Requirement signature: <Self where Self.[P4]T : Q, Self.[P4]T == Self.[P4]U.[P4]U, Self.[P4]U : P4, Self.[P4]U == Self.[P4]T.[P4]U, Self.[P4]T.[Q]Assoc : R> // CHECK-LABEL: Requirement signature: <Self where Self.[P4]T : Q, Self.[P4]T == Self.[P4]U.[P4]U, Self.[P4]U : P4, Self.[P4]U == Self.[P4]T.[P4]U, Self.[P4]T.[Q]Assoc : R>
protocol P4 { protocol P4 {
associatedtype T : P4, Q where T.Assoc : R, T == U.U associatedtype T : P4, Q where T.Assoc : R, T == U.U

View File

@@ -2,7 +2,7 @@
// https://github.com/apple/swift/issues/52838 // https://github.com/apple/swift/issues/52838
// CHECK: sr10438.(file).AuthenticationFlowStateMachine@ // CHECK-LABEL: .AuthenticationFlowStateMachine@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachine]FlowError.[AuthenticationFlowStateMachineFlowError]StateMachine, Self.[AuthenticationFlowStateMachine]FlowError : AuthenticationFlowStateMachineFlowError, Self.[AuthenticationFlowStateMachine]NonFinalState : AuthenticationFlowStateMachineNonFinalState, Self.[AuthenticationFlowStateMachine]StartState : AuthenticationFlowStateMachineStartState, Self.[AuthenticationFlowStateMachine]FlowError.[AuthenticationFlowStateMachineFlowError]StateMachine == Self.[AuthenticationFlowStateMachine]NonFinalState.[AuthenticationFlowStateMachineNonFinalState]StateMachine, Self.[AuthenticationFlowStateMachine]NonFinalState.[AuthenticationFlowStateMachineNonFinalState]StateMachine == Self.[AuthenticationFlowStateMachine]StartState.[AuthenticationFlowStateMachineStartState]StateMachine> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachine]FlowError.[AuthenticationFlowStateMachineFlowError]StateMachine, Self.[AuthenticationFlowStateMachine]FlowError : AuthenticationFlowStateMachineFlowError, Self.[AuthenticationFlowStateMachine]NonFinalState : AuthenticationFlowStateMachineNonFinalState, Self.[AuthenticationFlowStateMachine]StartState : AuthenticationFlowStateMachineStartState, Self.[AuthenticationFlowStateMachine]FlowError.[AuthenticationFlowStateMachineFlowError]StateMachine == Self.[AuthenticationFlowStateMachine]NonFinalState.[AuthenticationFlowStateMachineNonFinalState]StateMachine, Self.[AuthenticationFlowStateMachine]NonFinalState.[AuthenticationFlowStateMachineNonFinalState]StateMachine == Self.[AuthenticationFlowStateMachine]StartState.[AuthenticationFlowStateMachineStartState]StateMachine>
protocol AuthenticationFlowStateMachine { protocol AuthenticationFlowStateMachine {
associatedtype StartState: AuthenticationFlowStateMachineStartState where StartState.StateMachine == Self associatedtype StartState: AuthenticationFlowStateMachineStartState where StartState.StateMachine == Self
@@ -10,20 +10,20 @@ protocol AuthenticationFlowStateMachine {
associatedtype FlowError: AuthenticationFlowStateMachineFlowError where FlowError.StateMachine == Self associatedtype FlowError: AuthenticationFlowStateMachineFlowError where FlowError.StateMachine == Self
} }
// CHECK: sr10438.(file).AuthenticationFlowStateMachineFlowError@ // CHECK-LABEL: .AuthenticationFlowStateMachineFlowError@
// CHECK-NEXT: Requirement signature: <Self where Self : Error, Self == Self.[AuthenticationFlowStateMachineFlowError]StateMachine.[AuthenticationFlowStateMachine]FlowError, Self.[AuthenticationFlowStateMachineFlowError]StateMachine : AuthenticationFlowStateMachine> // CHECK-NEXT: Requirement signature: <Self where Self : Error, Self == Self.[AuthenticationFlowStateMachineFlowError]StateMachine.[AuthenticationFlowStateMachine]FlowError, Self.[AuthenticationFlowStateMachineFlowError]StateMachine : AuthenticationFlowStateMachine>
protocol AuthenticationFlowStateMachineFlowError: Error { protocol AuthenticationFlowStateMachineFlowError: Error {
associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.FlowError == Self associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.FlowError == Self
} }
// CHECK: sr10438.(file).AuthenticationFlowStateMachineStartState@ // CHECK-LABEL: .AuthenticationFlowStateMachineStartState@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachineStartState]StateMachine.[AuthenticationFlowStateMachine]StartState, Self.[AuthenticationFlowStateMachineStartState]StateMachine : AuthenticationFlowStateMachine> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachineStartState]StateMachine.[AuthenticationFlowStateMachine]StartState, Self.[AuthenticationFlowStateMachineStartState]StateMachine : AuthenticationFlowStateMachine>
protocol AuthenticationFlowStateMachineStartState { protocol AuthenticationFlowStateMachineStartState {
associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.StartState == Self associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.StartState == Self
var nonFinalState: StateMachine.NonFinalState { get } var nonFinalState: StateMachine.NonFinalState { get }
} }
// CHECK: sr10438.(file).AuthenticationFlowStateMachineNonFinalState@ // CHECK-LABEL: .AuthenticationFlowStateMachineNonFinalState@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachineNonFinalState]StateMachine.[AuthenticationFlowStateMachine]NonFinalState, Self.[AuthenticationFlowStateMachineNonFinalState]StateMachine : AuthenticationFlowStateMachine> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[AuthenticationFlowStateMachineNonFinalState]StateMachine.[AuthenticationFlowStateMachine]NonFinalState, Self.[AuthenticationFlowStateMachineNonFinalState]StateMachine : AuthenticationFlowStateMachine>
protocol AuthenticationFlowStateMachineNonFinalState { protocol AuthenticationFlowStateMachineNonFinalState {
associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.NonFinalState == Self associatedtype StateMachine: AuthenticationFlowStateMachine where StateMachine.NonFinalState == Self

View File

@@ -2,21 +2,21 @@
// https://github.com/apple/swift/issues/52932 // https://github.com/apple/swift/issues/52932
// CHECK: sr10532.(file).ScalarProtocol@ // CHECK-LABEL: .ScalarProtocol@
// CHECK-NEXT: Requirement signature: <Self where Self : ScalarMultiplicative, Self == Self.[ScalarMultiplicative]Scalar> // CHECK-NEXT: Requirement signature: <Self where Self : ScalarMultiplicative, Self == Self.[ScalarMultiplicative]Scalar>
public protocol ScalarProtocol: ScalarMultiplicative where Self == Scalar { } public protocol ScalarProtocol: ScalarMultiplicative where Self == Scalar { }
// CHECK: sr10532.(file).ScalarMultiplicative@ // CHECK-LABEL: .ScalarMultiplicative@
// CHECK-NEXT: Requirement signature: <Self where Self.[ScalarMultiplicative]Scalar : ScalarProtocol> // CHECK-NEXT: Requirement signature: <Self where Self.[ScalarMultiplicative]Scalar : ScalarProtocol>
public protocol ScalarMultiplicative { public protocol ScalarMultiplicative {
associatedtype Scalar : ScalarProtocol associatedtype Scalar : ScalarProtocol
} }
// CHECK: sr10532.(file).MapReduceArithmetic@ // CHECK-LABEL: .MapReduceArithmetic@
// CHECK-NEXT: Requirement signature: <Self where Self : Collection, Self : ScalarMultiplicative, Self.[Sequence]Element : ScalarMultiplicative, Self.[ScalarMultiplicative]Scalar == Self.[Sequence]Element.[ScalarMultiplicative]Scalar> // CHECK-NEXT: Requirement signature: <Self where Self : Collection, Self : ScalarMultiplicative, Self.[Sequence]Element : ScalarMultiplicative, Self.[ScalarMultiplicative]Scalar == Self.[Sequence]Element.[ScalarMultiplicative]Scalar>
public protocol MapReduceArithmetic : ScalarMultiplicative, Collection where Element : ScalarMultiplicative, Scalar == Element.Scalar { } public protocol MapReduceArithmetic : ScalarMultiplicative, Collection where Element : ScalarMultiplicative, Scalar == Element.Scalar { }
// CHECK: sr10532.(file).Tensor@ // CHECK-LABEL: .Tensor@
// CHECK-NEXT: Requirement signature: <Self where Self : MapReduceArithmetic, Self.[Sequence]Element : BinaryFloatingPoint, Self.[Sequence]Element == Self.[ScalarMultiplicative]Scalar> // CHECK-NEXT: Requirement signature: <Self where Self : MapReduceArithmetic, Self.[Sequence]Element : BinaryFloatingPoint, Self.[Sequence]Element == Self.[ScalarMultiplicative]Scalar>
public protocol Tensor : MapReduceArithmetic where Scalar : BinaryFloatingPoint, Element == Scalar { public protocol Tensor : MapReduceArithmetic where Scalar : BinaryFloatingPoint, Element == Scalar {
var magnitude: Scalar { get set } var magnitude: Scalar { get set }

View File

@@ -2,13 +2,13 @@
// https://github.com/apple/swift/issues/53142 // https://github.com/apple/swift/issues/53142
// CHECK: sr10752.(file).P@ // CHECK-LABEL: .P@
// CHECK-NEXT: Requirement signature: <Self where Self.[P]A : P, Self.[P]A == Self.[P]A.[P]A> // CHECK-NEXT: Requirement signature: <Self where Self.[P]A : P, Self.[P]A == Self.[P]A.[P]A>
protocol P { protocol P {
associatedtype A : P where A.A == A associatedtype A : P where A.A == A
} }
// CHECK: sr10752.(file).Q@ // CHECK-LABEL: .Q@
// CHECK-NEXT: Requirement signature: <Self where Self.[Q]A == Self.[Q]C.[P]A, Self.[Q]C : P> // CHECK-NEXT: Requirement signature: <Self where Self.[Q]A == Self.[Q]C.[P]A, Self.[Q]C : P>
protocol Q { protocol Q {
associatedtype A : P // expected-warning {{redundant conformance constraint 'Self.A' : 'P'}} associatedtype A : P // expected-warning {{redundant conformance constraint 'Self.A' : 'P'}}

View File

@@ -10,7 +10,7 @@ protocol P2 {
associatedtype C: P1 associatedtype C: P1
} }
// CHECK: sr11100.(file).Q@ // CHECK-LABEL: .Q@
// CHECK-NEXT: Requirement signature: <Self where Self.[Q]X == Self.[Q]X.[P1]A, Self.[Q]Y : P2, Self.[Q]X.[P1]A == Self.[Q]Y.[P2]C> // CHECK-NEXT: Requirement signature: <Self where Self.[Q]X == Self.[Q]X.[P1]A, Self.[Q]Y : P2, Self.[Q]X.[P1]A == Self.[Q]Y.[P2]C>
protocol Q { protocol Q {
associatedtype X associatedtype X

View File

@@ -2,29 +2,29 @@
// https://github.com/apple/swift/issues/54431 // https://github.com/apple/swift/issues/54431
// CHECK: sr11997.(file).A@ // CHECK-LABEL: .A@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[A]X.[B]Y, Self.[A]X : B> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[A]X.[B]Y, Self.[A]X : B>
protocol A { protocol A {
associatedtype X: B where X.Y == Self associatedtype X: B where X.Y == Self
} }
// CHECK: sr11997.(file).B@ // CHECK-LABEL: .B@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[B]Y.[A]X, Self.[B]Y : A> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[B]Y.[A]X, Self.[B]Y : A>
protocol B { protocol B {
associatedtype Y: A where Y.X == Self associatedtype Y: A where Y.X == Self
} }
// CHECK: sr11997.(file).AA@ // CHECK-LABEL: .AA@
// CHECK-NEXT: Requirement signature: <Self where Self : A, Self.[A]X : BB> // CHECK-NEXT: Requirement signature: <Self where Self : A, Self.[A]X : BB>
protocol AA: A where X: BB { } protocol AA: A where X: BB { }
// CHECK: sr11997.(file).BB@ // CHECK-LABEL: .BB@
// CHECK-NEXT: Requirement signature: <Self where Self : B, Self == Self.[BB]Z.[C]T, Self.[B]Y : AA, Self.[BB]Z : C> // CHECK-NEXT: Requirement signature: <Self where Self : B, Self == Self.[BB]Z.[C]T, Self.[B]Y : AA, Self.[BB]Z : C>
protocol BB: B where Y: AA { protocol BB: B where Y: AA {
associatedtype Z: C where Z.T == Self associatedtype Z: C where Z.T == Self
} }
// CHECK: sr11997.(file).C@ // CHECK-LABEL: .C@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[C]T.[BB]Z, Self.[C]T : BB> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[C]T.[BB]Z, Self.[C]T : BB>
protocol C { protocol C {
associatedtype T: BB where T.Z == Self associatedtype T: BB where T.Z == Self

View File

@@ -2,7 +2,7 @@
// https://github.com/apple/swift/issues/54555 // https://github.com/apple/swift/issues/54555
// CHECK: sr12120.(file).Swappable1@ // CHECK-LABEL: .Swappable1@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable1]Swapped.[Swappable1]Swapped, Self.[Swappable1]B == Self.[Swappable1]Swapped.[Swappable1]A, Self.[Swappable1]Swapped : Swappable1> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable1]Swapped.[Swappable1]Swapped, Self.[Swappable1]B == Self.[Swappable1]Swapped.[Swappable1]A, Self.[Swappable1]Swapped : Swappable1>
protocol Swappable1 { protocol Swappable1 {
associatedtype A associatedtype A
@@ -13,7 +13,7 @@ protocol Swappable1 {
Swapped.Swapped == Self Swapped.Swapped == Self
} }
// CHECK: sr12120.(file).Swappable2@ // CHECK-LABEL: .Swappable2@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable2]Swapped.[Swappable2]Swapped, Self.[Swappable2]B == Self.[Swappable2]Swapped.[Swappable2]A, Self.[Swappable2]Swapped : Swappable2> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable2]Swapped.[Swappable2]Swapped, Self.[Swappable2]B == Self.[Swappable2]Swapped.[Swappable2]A, Self.[Swappable2]Swapped : Swappable2>
protocol Swappable2 { protocol Swappable2 {
associatedtype A associatedtype A
@@ -23,7 +23,7 @@ protocol Swappable2 {
Swapped.Swapped == Self Swapped.Swapped == Self
} }
// CHECK: sr12120.(file).Swappable3@ // CHECK-LABEL: .Swappable3@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable3]Swapped.[Swappable3]Swapped, Self.[Swappable3]B == Self.[Swappable3]Swapped.[Swappable3]A, Self.[Swappable3]Swapped : Swappable3> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[Swappable3]Swapped.[Swappable3]Swapped, Self.[Swappable3]B == Self.[Swappable3]Swapped.[Swappable3]A, Self.[Swappable3]Swapped : Swappable3>
protocol Swappable3 { protocol Swappable3 {
associatedtype A associatedtype A

View File

@@ -2,7 +2,7 @@
// https://github.com/apple/swift/issues/55182 // https://github.com/apple/swift/issues/55182
// CHECK: sr12736.(file).ColorModel@ // CHECK-LABEL: .ColorModel@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[ColorModel]Float32Components.[ColorComponents]Model, Self.[ColorModel]Float32Components : ColorComponents> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[ColorModel]Float32Components.[ColorComponents]Model, Self.[ColorModel]Float32Components : ColorComponents>
public protocol ColorModel { public protocol ColorModel {
associatedtype Float32Components: ColorComponents where Float32Components.Model == Self associatedtype Float32Components: ColorComponents where Float32Components.Model == Self
@@ -16,7 +16,7 @@ public protocol ColorPixel {
associatedtype Model: ColorModel associatedtype Model: ColorModel
} }
// CHECK: sr12736.(file).P@ // CHECK-LABEL: .P@
// CHECK-NEXT: Requirement signature: <Self where Self.[P]A : ColorPixel, Self.[P]B : ColorPixel, Self.[P]A.[ColorPixel]Model == Self.[P]B.[ColorPixel]Model> // CHECK-NEXT: Requirement signature: <Self where Self.[P]A : ColorPixel, Self.[P]B : ColorPixel, Self.[P]A.[ColorPixel]Model == Self.[P]B.[ColorPixel]Model>
public protocol P { public protocol P {
associatedtype A: ColorPixel associatedtype A: ColorPixel

View File

@@ -2,7 +2,7 @@
// https://github.com/apple/swift/issues/56840 // https://github.com/apple/swift/issues/56840
// CHECK: sr14485.(file).P@ // CHECK-LABEL: .P@
// CHECK-NEXT: Requirement signature: <Self where Self.[P]Input == Self.[P]Output.[Numeric]Magnitude, Self.[P]Output : FixedWidthInteger, Self.[P]Output : SignedInteger> // CHECK-NEXT: Requirement signature: <Self where Self.[P]Input == Self.[P]Output.[Numeric]Magnitude, Self.[P]Output : FixedWidthInteger, Self.[P]Output : SignedInteger>
protocol P { protocol P {
// expected-warning@+2 {{redundant conformance constraint 'Self.Input' : 'FixedWidthInteger'}} // expected-warning@+2 {{redundant conformance constraint 'Self.Input' : 'FixedWidthInteger'}}

View File

@@ -15,7 +15,7 @@ public protocol MapReduceArithmetic: ScalarMultiplicative, Collection where Elem
public protocol Tensor: MapReduceArithmetic where Element == Scalar { public protocol Tensor: MapReduceArithmetic where Element == Scalar {
} }
// CHECK-LABEL: sr14580.(file).ColorModel@ // CHECK-LABEL: .ColorModel@
// CHECK-LABEL: Requirement signature: <Self where Self : Tensor, Self == Self.[ColorModel]Float16Components.[ColorComponents]Model, Self.[Sequence]Element == Double, Self.[ColorModel]Float16Components : ColorComponents, Self.[ColorModel]Float32Components : ColorComponents, Self.[ColorModel]Float16Components.[Sequence]Element == Double, Self.[ColorModel]Float16Components.[ColorComponents]Model == Self.[ColorModel]Float32Components.[ColorComponents]Model, Self.[ColorModel]Float32Components.[Sequence]Element == Double> // CHECK-LABEL: Requirement signature: <Self where Self : Tensor, Self == Self.[ColorModel]Float16Components.[ColorComponents]Model, Self.[Sequence]Element == Double, Self.[ColorModel]Float16Components : ColorComponents, Self.[ColorModel]Float32Components : ColorComponents, Self.[ColorModel]Float16Components.[Sequence]Element == Double, Self.[ColorModel]Float16Components.[ColorComponents]Model == Self.[ColorModel]Float32Components.[ColorComponents]Model, Self.[ColorModel]Float32Components.[Sequence]Element == Double>
public protocol ColorModel: Tensor where Scalar == Double { public protocol ColorModel: Tensor where Scalar == Double {
associatedtype Float16Components: ColorComponents where Float16Components.Model == Self, Float16Components.Scalar == Double associatedtype Float16Components: ColorComponents where Float16Components.Model == Self, Float16Components.Scalar == Double

View File

@@ -2,10 +2,10 @@
// https://github.com/apple/swift/issues/57339 // https://github.com/apple/swift/issues/57339
// CHECK: sr15009.(file).P@ // CHECK-LABEL: .P@
// CHECK-NEXT: Requirement signature: <Self where Self == Self.[P]A.[Q]B, Self.[P]A : Q> // CHECK-NEXT: Requirement signature: <Self where Self == Self.[P]A.[Q]B, Self.[P]A : Q>
protocol P { associatedtype A: Q where A.B == Self } protocol P { associatedtype A: Q where A.B == Self }
// CHECK: sr15009.(file).Q@ // CHECK-LABEL: .Q@
// CHECK-NEXT: Requirement signature: <Self where Self : CaseIterable, Self == Self.[Q]B.[P]A, Self.[Q]B : P> // CHECK-NEXT: Requirement signature: <Self where Self : CaseIterable, Self == Self.[Q]B.[P]A, Self.[Q]B : P>
protocol Q: CaseIterable { associatedtype B: P where B.A == Self } protocol Q: CaseIterable { associatedtype B: P where B.A == Self }

View File

@@ -2,20 +2,20 @@
// https://github.com/apple/swift/issues/58067 // https://github.com/apple/swift/issues/58067
// CHECK-LABEL: sr15790.(file).P1@ // CHECK-LABEL: .P1@
// CHECK-NEXT: Requirement signature: <Self where Self.[P1]X : P1, Self.[P1]X == Self.[P1]X.[P1]X> // CHECK-NEXT: Requirement signature: <Self where Self.[P1]X : P1, Self.[P1]X == Self.[P1]X.[P1]X>
public protocol P1 { public protocol P1 {
associatedtype X: P1 where X.X == X associatedtype X: P1 where X.X == X
} }
// CHECK-LABEL: sr15790.(file).P2@ // CHECK-LABEL: .P2@
// CHECK-NEXT: Requirement signature: <Self where Self : Collection, Self : P1, Self.[Sequence]Element : P1, Self.[P1]X == Self.[P2]Z.[P2]Y, Self.[P2]Y : P3, Self.[P2]Z : P2> // CHECK-NEXT: Requirement signature: <Self where Self : Collection, Self : P1, Self.[Sequence]Element : P1, Self.[P1]X == Self.[P2]Z.[P2]Y, Self.[P2]Y : P3, Self.[P2]Z : P2>
public protocol P2: Collection, P1 where Element: P1, X == Z.Y { public protocol P2: Collection, P1 where Element: P1, X == Z.Y {
associatedtype Y: P3 associatedtype Y: P3
associatedtype Z: P2 associatedtype Z: P2
} }
// CHECK-LABEL: sr15790.(file).P3@ // CHECK-LABEL: .P3@
// CHECK-NEXT: Requirement signature: <Self where Self : P2, Self.[P3]T : P2> // CHECK-NEXT: Requirement signature: <Self where Self : P2, Self.[P3]T : P2>
public protocol P3: P2 { public protocol P3: P2 {
associatedtype T: P2 associatedtype T: P2