// RUN: not --crash %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 C<D> {
init <A: A where A.B == D>(e: A.B) {
}
static
func c<g>() -> (g, g -> g) -> g {
d b d.f = {
}
{
g) {
i  }
}
i c {
}
class d: c{  class func f {}
struct d<c : f,f where g.i == c.i>
