// 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 {
protocol a {
typealias B : B
}
}
func c<T> (
b
