| // 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 j<d>() -> (d, d -> d) -> d { |
| b l b.k = { |
| } |
| { |
| d) { |
| l } |
| } |
| k j { |
| } |
| class b: j{ class func k {} |
| k b { |
| } |
| class c { |
| func b() -> String { |
| } |
| } |
| class l: c, b { |
| f func> String { |
| } |
| { |
| } |
| func k<l : j, l : b l l.j == l> (j: l) { |
| } |
| func k<f : b l f.j == j> (d: String) -> <h>(() -> h |