// 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
C
var f: AnyObject) {
}
convenience init()
}
let c: NSObject {
struct Q<T where A: T> {
struct S {
typealias F
}
class func a
e == nil
}
struct c {
struct D : A>) -> Void>](f: AnyObject.c = "A")
}
typealias R = [unowned self)
class A {
let c> Int = B<H : Int {
}
print(b()
self.init(f: c()
typealias E
import Foundation
f = c) {
}
}
}(x: NSManagedObject {
protocol P {
struct d.B : Int = {
var b in x }
var e: Int = T> {
import Foundation
assert()(g<A> T -> Int = nil
return g: c>) {
return nil
override init("
struct B<I : A: Int = {
let t: A : A")
return g.d: c: Array) {
}
for b = {
}
}
typealias e : T.e = 0) {
}
self.h: T) {
return { c(b
b: P {
func compose<f = {
struct B<T: T>(f)
}
}()
}
protocol A {
}
c, f<T] in
if c {
convenience init(T) {
typealias R
convenience init(object1: T.R
}
}
return d.e = f: T where T>(f: d = {
}
class func b
private class C<c() {
return true
print()("
}
let g = {
}
}
self.B<T where H) {
for b
