-rewrite-objc and protocol

Following Objective C program:

@class C;
@protocol P
@end
@interface I
- (C <P> *) m;
@end
@implementation I
- (C <P> *) m;
{
  return 0;
}
@end

gets rewritten as:

static C<P> * _I_I_m(I * self, SEL _cmd) {
  return 0;
}

which seems clearly wrong. Protocols are not templates.

Following Objective C program:

@class C;
@protocol P
@end
@interface I
- (C <P> *) m;
@end
@implementation I
- (C <P> *) m;
{
return 0;
}
@end

gets rewritten as:

static C<P> * _I_I_m(I * self, SEL _cmd) {
return 0;
}

which seems clearly wrong. Protocols are not templates.

Yes. Please file a bug report.

- fariborz