| // 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 q<dc>() -> (dc, dc -> dc) -> dc { |
| t m t.w = { |
| } |
| { |
| dc) { |
| k } |
| } |
| protocol q { |
| } |
| protocol A { |
| func b(b: X.s) { |
| } |
| y(m: x) { |
| } |
| func v<t>() -> [dc<t>] { |
| } |
| class b<k : dc, w : dc where k.dc == w> : v { |
| } |
| class b<k, w> { |
| } |
| protocol dc { |
| } |
| class A: A { |
| } |
| class r : C { |
| } |
| func ^(v: q, o) -> o { |
| } |
| class v<q : b, dc : b where q.t == dc> { |
| } |
| protocol b { |
| } |
| struct dc<k : b> : b |