// 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 ts<edc>() -> (edc, edc -> edc) -> edc {
vu u vu.u = {
}
{
edc) {
qp  }
}
protocol ts {
}
func kj((po, c))(yx: (po, fe)) {
ml j vu = yx {
}
class kj<qp : c, u : c on qp.edc == u> : yx {
ed c {
}
func vu() -> qp {
}
o func vu() -> qp {
}
func yx<vu>() -> [c<vu>] {
}
protocol A {
}
struct cb : A {
}
struct C<gf, edc: A on gf.C == edc> {
}
protocol yx {
}
protocol kj : yx {
}
protocol c : yx {
}
protocol vu {
}
struct e : vu {
}
func u<u : kj, ut : vu on ut.ts == u> (hg: ut) {
}
func kj {
}
struct c<qp : kj> : kj
