blob: 085751b2440c32d6d793c5b93ed7af193d90292d [file] [log] [blame]
// RUN: %target-swift-frontend -emit-sil %s
protocol SignalInterface {
associatedtype OutputValue
}
class Signal<OV>: SignalInterface {
typealias OutputValue = OV
}
extension Signal {
func foo<U>(_: U) -> SignalChannel<[U], Signal<Array<U>>>
where OutputValue == Optional<U> { return SignalChannel() }
}
struct SignalChannel<OutputValue, Output: Signal<OutputValue>> { }