// RUN: not %target-swift-frontend %s -parse

// Distributed under the terms of the MIT license
// Test case submitted to project by https://github.com/practicalswift (practicalswift)
// Test case found by fuzzing

class v: p, m {
    o func s() -> String {
        return ""
    }
    func n() -> String {
        return ""
    }
}
func k<w l w: m, w: p>(t: w) {
    t.n()
}
a k<w> {
    s v(w, () -> ())
}
q
k)
func q<a>() -> (a, a -> a) -> a {
   s n s.v = {
}
 {
   a) {
        m  }
}
protocol q {
   class func v()
}
class s: q{  class func v {}
protocol u {
    r n()
}
class a: u {
    class func n() { }
}
(a() x u).y.n()
protocol a {
    class func k(k() {
        s.k()
    }
}
protocol m {
}
q p : m {
}
q v<n, E: m l n.v == E> {
}
class u<q : a
