12 @property(readonly) int p0;
15 @interface A : Root <P1> {
21 @property(readonly) int p0;
22 @property(assign,nonatomic,readwrite) int p1;
23 @property(copy) id p2;
24 @property(retain) id p3;
25 @property(assign, getter=getme, setter=setme:) id p4;
26 @property(assign, readwrite) id p5;
33 // Property type can differ from ivar type.
40 const char *s0 = __func__;
41 const char *s1 = __FUNCTION__;
42 const char *s2 = __PRETTY_FUNCTION__;
46 -(void) im1: (int) x, ... {
56 @implementation A (Cat)
72 // @catch param doesn't require name.