mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
121 lines
1.9 KiB
Swift
121 lines
1.9 KiB
Swift
// 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
|
|
protocol a {
|
|
class func c()
|
|
}
|
|
class b: a {
|
|
c T) {
|
|
}
|
|
f(true as Boolean)
|
|
func f() {
|
|
({})
|
|
}
|
|
import Foundation
|
|
class Foo<T>: 1)
|
|
func c<d {
|
|
enum c {
|
|
func e
|
|
var _ = e
|
|
}
|
|
}
|
|
struct c<d : Sequence> {
|
|
var b: d
|
|
}
|
|
func a<enum b {
|
|
case c
|
|
}
|
|
}
|
|
func String {\(with): \(g())" } i {}
|
|
struct A<T> {
|
|
let a: [(T, () -> ())] = []
|
|
}
|
|
f
|
|
e)
|
|
func f<g>() -> (g, g -> g) -> g {
|
|
d j d.i 1, a(2, 3)))
|
|
class a {
|
|
typealias b = b
|
|
}
|
|
func i(c: () -> ()) {
|
|
}
|
|
class a {
|
|
var _ = i() {
|
|
}
|
|
}
|
|
class a<f : b, g : b where f.d == g> {
|
|
}
|
|
protocol b {
|
|
typealias d
|
|
typealias e
|
|
}
|
|
struct c<h : b> : b {
|
|
typealias d = h
|
|
typealias e = a<c<h>, d>
|
|
}
|
|
func a(b: Int = 0) {
|
|
}
|
|
let c = a
|
|
c()
|
|
protocol A {
|
|
typealias B
|
|
}
|
|
class C<D> {
|
|
init <A: A where A.B == D>(e: A.B) {
|
|
}
|
|
}
|
|
func e<k>() -> (k, k -> k) -> k {
|
|
f j f.i = {
|
|
}
|
|
{
|
|
k) {
|
|
n }
|
|
}
|
|
m e {
|
|
class func i()
|
|
}
|
|
class f: e{ class func i {}
|
|
func n<i>() {
|
|
k k {
|
|
f j
|
|
}
|
|
-> T) -> String {
|
|
return { g in "\(with): \(g())" }
|
|
}
|
|
struct d<f : e, g: e where g.h == f.h> {
|
|
}
|
|
protocol e {
|
|
typealias h
|
|
}
|
|
protocol a : a {
|
|
}
|
|
func a<T>() -> (T, T -> T) -> T)!c : b { func b
|
|
protocol A {
|
|
typeal= D>(e: A.B) {
|
|
}
|
|
}
|
|
var x1 = 1
|
|
var f1: Int -> Int = {
|
|
return $0
|
|
}
|
|
let succee""
|
|
}
|
|
}
|
|
class C: B, A {
|
|
override func d() -> String {
|
|
return ""
|
|
}
|
|
func}
|
|
class c {
|
|
func b((Any, c))(Any, AnyObject
|
|
typealias b = b
|
|
}
|
|
struct A<T> {
|
|
let a: [(T, () -> ())] = []
|
|
}
|