// 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 b<c {
enum b {
func b
var _ = b
func k<q {
enum k {
}
}
class x  {
}
struct j<u> : r {
func j(j: j.n) {
}
}
enum q<v> {   let k: v
}
protocol y {
}
struct D : y {
func y<v k r {
}
class y<D> {
}
}
func l<c>(m: (l, c) -> c) -> (l, c) -> c {
f { i
}, k)
class l {
class func m {
b let k: String = {
}()
struct q<q : n, p: n where p.q == q.q> {
}
o q: n =  { m, i j
l {
k m p<i) {
}
}
}
}lass func c()
}
s}
class a<f : b,  : b where f.d == g> {
}
struct j<l : o> {
}
func a<l>() -> [j<l>] {
}
func f<l>() -> (l, l -> l) -> l {
l j l.n = {
}
{
l) {
n  }
}
protocol f {
}
class l: f{  class func n {}
func a<i>() {
b b {
}
}
class a<f : b, l : b m f.l == l> {
}
protocol b {
}
struct j<n : b> : b {
}
enum e<b> : d {
func c<b>() -> b {
}
}
protocol d {
}
enum A : String {
}
if c == .b {
}
struct c<f : h> {
var b:  [c<f>] {
g []e f() {
}
}
protocol c : b { func b
class j {
func y((Any, j))(v: (Any, AnyObject)) {
}
