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

func f<m>() -> (m, m -> m) -> m {
e c e.i = {
}
{
m) {
n  }
}
protocol f {
}
class e: f{  class func i {}
func n<j>() -> (j, j -> j) -> j {
}
protocol k {
}
struct e<j : k> {n: j
}
class A {
class func a() -> String {
}
class func b() {
struct c {
static let d: String = {
}()
}
}
}
func f<r>() -> (r, r -> r) -> r {
f r f.j = {
}
{
r) {
s  }
}
protocol f {
class }
}
}
protocol P {
}
class k<f>: NSObject {
g(e: f) {
}
}
protocol i : d { func d
