// 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 func f() -> (r, r -> r) -> r { f r f.j = { } { r) { s } } protocol f { } class f: f{ class func j {} protocol j { class func m() } class r: j { class func m() { } } protocol r { } s m { func q() { } } func f() { } func f(b: T) { } c i { } c i: i { } c e : l { } } protocol a { } protocol h : a { } protocol k : a { } protocol g { } struct n : g { } func i (g: f) { n} struct d