// This source file is part of the Swift.org open source project
// Copyright (c) 2014 - 2017 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors

// RUN: not %target-swift-frontend %s -typecheck
class a {
protocol b = b(Any) {
class func c<T) -> {
}
}
let t: U) -> {
}
var f : NSObject {
t: d = b() in return self.h = Swift.e = a<T) {
b: b {
class func e> {
}
func g() { c(c : P> {
}
}
var b() {
enum A : Range<T, T : T> U) -> Bool {
}
assert() {
if c {
i<U -> == c(f() -> {
}
class a : String)
}
}
protocol b {
struct S())
}
}
}
}
}
protocol a {
}
class a {
protocol c {
}
protocol a {
}
func c(T.b {
return ".Element>], e(m: A""a!
}
return { c()
}("
func a<S : a)
