// RUN: %target-swift-frontend %s -emit-ir

// https://github.com/apple/swift/issues/45216

protocol Foo {
    associatedtype A
    var value: A { get }
    init(_ v: A)
}
extension Foo {
    init<T>(pairing other: T)
        where
        T: Foo,
        Self.A == (T.A, T.A) // <-- Look at this, and then at the error below.
    {
        let otherValuePaired = (other.value, other.value)
        let v: A = otherValuePaired // <-- Error: Cannot convert value of
        self.init(v)                // type '(T.A, T.A)' to specified type 'Self.A'
    }
}
