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

struct S<T {
class func f<T where g<f : B) -> {
b> {
protocol d where I) -> String {
class A {
}
}
deinit {
}
}
var b() -> S<I : A: C<T.e {
}
typealias F = .Type) {
}
class d<T! {
}
self.E == {
}
protocol C {
func g(T.c {
