[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / SemaObjC / protocol-lookup-2.m
blob90f6db0c84fa5959dafcd79495b8e4038e14d507
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 // expected-no-diagnostics
3 @interface NSObject @end
5 @protocol ProtocolA
7 + (id)classMethod;
8 - (id)instanceMethod;
10 @end
12 @protocol ProtocolB <ProtocolA>
14 @end
16 @interface Foo : NSObject <ProtocolB>
18 @end
20 @interface SubFoo : Foo
22 @end
24 @implementation SubFoo
26 + (id)method {
27   return [super classMethod];
30 - (id)method {
31   return [super instanceMethod];
34 @end
37 @protocol ProtC
38 -document;
39 @end
41 @interface I1 : NSObject
42 @end
44 @interface I1(cat)
45 -document;
46 @end
48 @interface I2 : NSObject
49 -document;
50 @end
52 @interface I2() <ProtC>
53 @end
55 @implementation I2
56 - document { return 0; }
57 @end