• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// RUN: %clang_cc1 -fsyntax-only -verify %s
2
3@protocol P0
4-bar;
5@end
6
7@interface A <P0>
8@end
9
10// Interface conforms to inherited protocol
11
12@interface B0 : A <P0>
13@end
14
15@implementation B0
16@end
17
18// Interface conforms to a protocol which extends another. The other
19// protocol is inherited, and extended methods are implemented.
20
21@protocol P1 <P0>
22-foo;
23@end
24
25@interface B1 : A <P1>
26@end
27
28@implementation B1
29-foo { return 0; };
30@end
31
32// Interface conforms to a protocol whose methods are provided by an
33// alternate inherited protocol.
34
35@protocol P2
36-bar;
37@end
38
39@interface B2 : A <P2>
40@end
41
42@implementation B2
43@end
44
45// Interface conforms to a protocol whose methods are provided by a base class.
46
47@interface A1
48-bar;
49@end
50
51@interface B3 : A1 <P2>
52@end
53
54@implementation B3
55@end
56
57