mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
This implements a structural walk over the TypeRepr to catch situations where we attempt to infer `A` from `func f(_: A)`, which references the concrete `A` that will be synthesized in the conforming type. Fixes: - rdar://34956654 / https://github.com/apple/swift/issues/48680 - rdar://38913692 / https://github.com/apple/swift/issues/49066 - rdar://56672411 - https://github.com/apple/swift/issues/50010 - rdar://81587765 / https://github.com/apple/swift/issues/57355 - rdar://117442510
19 lines
408 B
Swift
19 lines
408 B
Swift
// RUN: %target-swift-frontend -emit-ir %s
|
|
|
|
// https://github.com/apple/swift/issues/48395
|
|
|
|
public struct DefaultAssociatedType {
|
|
}
|
|
|
|
protocol Protocol {
|
|
associatedtype AssociatedType = DefaultAssociatedType
|
|
init(object: AssociatedType)
|
|
}
|
|
|
|
public final class Conformance: Protocol {
|
|
private let object: AssociatedType
|
|
public init(object: AssociatedType) {
|
|
self.object = object
|
|
}
|
|
}
|