mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
39 lines
872 B
Swift
39 lines
872 B
Swift
// RUN: %target-typecheck-verify-swift
|
|
|
|
// rdar://problem/21496715
|
|
protocol P1 {
|
|
func f() // expected-note{{protocol requires function 'f()' with type '() -> ()'}}
|
|
}
|
|
|
|
protocol Q1 {}
|
|
|
|
extension P1 where Self : Q1 {
|
|
func f() {} // expected-note{{candidate would match if 'X1' conformed to 'Q1'}}
|
|
}
|
|
|
|
struct X1 : P1 {} // expected-error{{type 'X1' does not conform to protocol 'P1'}}
|
|
|
|
// rdar://problem/21153652
|
|
protocol P2 {
|
|
func f()
|
|
}
|
|
|
|
struct X2 : P2 {
|
|
func f() {}
|
|
}
|
|
|
|
extension P2 where Self : Comparable {
|
|
func f() {}
|
|
}
|
|
|
|
// rdar://problem/19423637
|
|
protocol P3 {
|
|
func f() // expected-note{{protocol requires function 'f()' with type '() -> ()'}}
|
|
}
|
|
|
|
extension P3 where Self : Equatable {
|
|
func f() {} // expected-note{{candidate would match if 'X3' conformed to 'Equatable'}}
|
|
}
|
|
|
|
struct X3 : P3 {} // expected-error{{type 'X3' does not conform to protocol 'P3'}}
|