23 int super_ext_private;
25 int super_ext_protected;
31 @interface Sub : Super {
42 - (void)method:(Sub *)sub with:(Other *)other {
43 sub->super_protected = 1;
44 other->other_public = 1;
47 void f(Sub *sub, Other *other) {
48 sub->super_protected = 1;
49 other->other_public = 1;
53 // RUN: c-index-test -code-completion-at=%s:43:8 -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-SUB %s
54 // RUN: c-index-test -code-completion-at=%s:48:8 -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-SUB %s
55 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText sub_private} (35)
56 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText sub_protected} (35)
57 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText sub_public} (35)
58 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_ext_private} (35) (inaccessible)
59 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_ext_protected} (35)
60 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_ext_public} (35)
61 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_private} (37) (inaccessible)
62 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_protected} (37)
63 // CHECK-SUB: ObjCIvarDecl:{ResultType int}{TypedText super_public} (37)
65 // RUN: c-index-test -code-completion-at=%s:44:10 -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-OTHER %s
66 // RUN: c-index-test -code-completion-at=%s:49:10 -fobjc-nonfragile-abi %s | FileCheck -check-prefix=CHECK-OTHER %s
67 // CHECK-OTHER: ObjCIvarDecl:{ResultType int}{TypedText other_private} (35) (inaccessible)
68 // CHECK-OTHER: ObjCIvarDecl:{ResultType int}{TypedText other_protected} (35) (inaccessible)
69 // CHECK-OTHER: ObjCIvarDecl:{ResultType int}{TypedText other_public} (35)