mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
43 lines
1.6 KiB
Swift
43 lines
1.6 KiB
Swift
// ---------------------------------------------------------------------------
|
|
// Multiple explicit conformances to the same protocol
|
|
// ---------------------------------------------------------------------------
|
|
|
|
extension MFExplicit1 : P1 { }
|
|
|
|
struct MFExplicit2 : P1 { } // expected-note{{'MFExplicit2' declares conformance to protocol 'P1' here}}
|
|
|
|
// ---------------------------------------------------------------------------
|
|
// Multiple implicit conformances, with no ambiguities
|
|
// ---------------------------------------------------------------------------
|
|
|
|
struct MFMultipleImplicit1 : P2a { }
|
|
|
|
struct MFMultipleImplicit3 : P4 { }
|
|
|
|
struct MFMultipleImplicit4 : P4 { }
|
|
|
|
struct MFMultipleImplicit5 : P2a { }
|
|
|
|
// ---------------------------------------------------------------------------
|
|
// Explicit conformances conflicting with inherited conformances
|
|
// ---------------------------------------------------------------------------
|
|
|
|
class MFExplicitSub1 : ImplicitSuper1 { } // expected-note{{'MFExplicitSub1' inherits conformance to protocol 'P1' from superclass here}}
|
|
|
|
// ---------------------------------------------------------------------------
|
|
// Suppression of synthesized conformances
|
|
// ---------------------------------------------------------------------------
|
|
class MFSynthesizedClass2 { }
|
|
|
|
class MFSynthesizedClass3 : AnyObjectRefinement { }
|
|
|
|
class MFSynthesizedSubClass2 : MFSynthesizedClass2 { }
|
|
|
|
class MFSynthesizedSubClass3 : MFSynthesizedClass1 { }
|
|
|
|
extension MFSynthesizedSubClass4 : AnyObjectRefinement { }
|
|
|
|
enum MFSynthesizedEnum1 : Int { case a }
|
|
extension MFSynthesizedEnum2 : RawRepresentable { }
|
|
|