blob: 3a820f97ad8660d4b61c414b328c0a92a29067f9 [file] [log] [blame]
// 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 x<ji>: y {
init(u: ji) {
kj. y {
b r = ji: v -> v = {
}
ih y: v = { fe, b cb
}(u, n)
}
class y {
func kj<r where r: dc, r: y>(kj: r) {
}
func ed(x: b) -> <r>(() -> r) -> b {
}
class r {
func w((gf, r))(dc: (gf, fe)) {
}
}
func y(r: () -> ()) {
}
class dc {
kj _ = y() {
}
}
func dc<ed>() -> (ed, ed -> ed) -> ed {
kj w r ih<r : kj, w: kj fe w.n == r.n> {
}
w kj {
}
w r<ed> {
}
w n {
}
class kj {
func ih() -> dc {
}
}
class y: kj, n {
}
func b<fe {
b b {
}
}
}
class y<r : ed, u : ed where r.ed == u> : n {
}
class y<r, u> {
}
protocol ed {
}
protocol n {
}
protocol ed : y { func y