// 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

protocol b {
    class func e()
}
struct c {
    var d: b.Type
    func e() {
        d.e()
    }
}
func e<k>() -> (k, k -> k) -> k {
   f j f.i = {
}
 {
   k) {
       n  }
}
m e {
   class func i()
}
class f: e{  class f = a
}
struct e : d {
  typealias f = b
}
func i<j : b, k : d where k.f == j> (n: k) {
}
func i<l : d where l.f = 0) {
}
l -> Any)   return $0
}
let succeeds: Int = 1, f1)
class A<T : A> {
}
class c {
    func b((Any, c))(a: (Any, AnyObj c() -> Str rn 
func e<T where Tj d.        h  }b
}
