// 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 c<i>() -> (i, i -> i) -> i {
k b k.i = {
}
{
i) {
k  }
}
protocol c {
}
class k: c{  class func i {
}
struct c<e> {
let h: [(e, () -> ())h
}
protocol a {
}
protocol h : a {
}
protocol k : a {
}
protocol g {
}
struct n : g {
}
func i<h : h, f : g m f.n == h> (g: f) {
}
func i<n : g m n.n = o) {
}
protocol k : h { func h
