// 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 d<c>: NSObject {
init(b: c) {
st-> (((i, i) -> i) -> i) {
b {
class A : NSManagedObject {
protocol A {
}
class C<D> {
init <A: A where A.B == D>(e: A.B) {
}
}
}
struct D : C {
func g<T where T.E == F>(f: B<T>) {
}
}
}
class A {
class func a() -> Stri>(e: A.B) {
}
}
import func g<T where T.E == F>(f: B<T>) {
}
}
d) {
}
struct c<d: Sequence, b where Optional<b> == d.Iterator.Element>
