57 lines · plain
1@class Foo;2@interface Bar3@property (retain) __attribute__((iboutletcollection(Foo))) Foo *prop;4@end5 6@interface I7-(id)prop __attribute__((annotate("anno")));8-(void)setProp:(id)p __attribute__((annotate("anno")));9@property (assign) id prop __attribute__((annotate("anno")));10@end11 12__attribute__((objc_protocol_requires_explicit_implementation))13@protocol P14@end15 16typedef id __attribute__((objc_independent_class)) T2;17id __attribute__((objc_precise_lifetime)) x;18struct __attribute__((objc_boxable)) S {19 int x;20};21 22__attribute__((objc_exception))23__attribute__((objc_root_class))24__attribute__((objc_subclassing_restricted))25__attribute__((objc_runtime_visible))26@interface J27-(id)a __attribute__((ns_returns_retained));28-(id)b __attribute__((ns_returns_not_retained));29-(id)c __attribute__((ns_returns_autoreleased));30-(id)d __attribute__((ns_consumes_self));31-(id)e __attribute__((objc_requires_super));32-(int *)f __attribute__((objc_returns_inner_pointer));33-(id)init __attribute__((objc_designated_initializer));34@end35 36// RUN: c-index-test -index-file %s | FileCheck %s37// CHECK: <attribute>: attribute(iboutletcollection)= [IBOutletCollection=ObjCInterface]38 39// CHECK: <attribute>: attribute(annotate)=anno40// CHECK: <getter>: kind: objc-instance-method | name: prop | {{.*}} <attribute>: attribute(annotate)=anno41// CHECK: <setter>: kind: objc-instance-method | name: setProp: | {{.*}} <attribute>: attribute(annotate)=anno42// CHECK: <attribute>: attribute(objc_protocol_requires_explicit_implementation)=43// CHECK: <attribute>: attribute(objc_independent_class)=44// CHECK: <attribute>: attribute(objc_precise_lifetime)=45// CHECK: <attribute>: attribute(objc_boxable)=46// CHECK: <attribute>: attribute(objc_exception)=47// CHECK: <attribute>: attribute(objc_root_class)=48// CHECK: <attribute>: attribute(objc_subclassing_restricted)=49// CHECK: <attribute>: attribute(objc_runtime_visible)=50// CHECK: <attribute>: attribute(ns_returns_retained)=51// CHECK: <attribute>: attribute(ns_returns_not_retained)=52// CHECK: <attribute>: attribute(ns_returns_autoreleased)=53// CHECK: <attribute>: attribute(ns_consumes_self)=54// CHECK: <attribute>: attribute(objc_requires_super)=55// CHECK: <attribute>: attribute(objc_returns_inner_pointer)=56// CHECK: <attribute>: attribute(objc_designated_initializer)=57