// 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
import
h
}
func e<l {
enum e {
func e
j {
}
class l: j{  k() -> ())
}
func j<o : Boolean>(l: o) {
}
func p(l: Any, g: Any) -> (((Any, Any) -> Any) -> Any) {
return {
(p: (Any, Any) -> Any) -> Any in
func n<n : l,) {
}
n(e())
struct d<f : e, g: e where g.h == f.h> {{
}
struct B<T : A> {
}
protocol C {
ty    }
}
protocol a {
}
protocol h : a {
}
protocol k : a {
}
protocol g {
}
struct n : g {
}
func i<h : h, f : g m f.n == h> (g: f) {
}
func i<n : g m n.n = o) {
}
protoc {
}
protocol f {
protocol c : b { func b
class A {
class func a() -> String {
let d: String = {
}()
}
class d<c>: NSObject {
init(b: c) {
}
}
protocol A {
}
class C<D> {
init <A: A where A.B == D>(e: A.B) {
}
}
class A {
class func a {
return   static let d: String = {
}()
func x }
)  T}
protocol A {
}
struct B<T : A> {
lett D : C {
func g<T where T.E == F>(f: B<T>) {
}
}
struct d<f : e, g: e where g.h == f.h> {
col P {
}
}
}
i   struct c {
c a(b: Int0) {
}
class A {
class func a() -> Self {
return b(self.dy
