mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Gardening: Migrate test suite to GH issues (file names): Generics
This commit is contained in:
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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 }
|
||||||
@@ -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'}}
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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
|
||||||
@@ -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'}}
|
||||||
@@ -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
|
||||||
@@ -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 }
|
||||||
@@ -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
|
||||||
Reference in New Issue
Block a user