blob: aba2c00bd6cf3d63753521bf156fd7f8b5eba65d [file] [log] [blame]
/* APPLE LOCAL file radar 3803157 */
/* Test implementaion of attributes on methods. */
/* { dg-do compile } */
@interface INTF
- (int) foo1: (int)arg1 __attribute__((deprecated));
- (int) foo: (int)arg1;
- (int) foo2: (int)arg1 __attribute__((deprecated)) __attribute__((unavailable)); /* { dg-error "" } */
@end
@implementation INTF
- (int) foo: (int)arg1 __attribute__((deprecated)){
/* { dg-warning "method attribute may be specified" "" { target *-*-* } 14 } */
return 10;
}
- (int) foo1: (int)arg1 {
return 10;
}
- (int) foo2: (int)arg1 __attribute__((deprecated)) {
/* { dg-warning "method attribute may be specified" "" { target *-*-* } 21 } */
return 10;
}
@end
int main()
{
INTF *p;
[p foo1:2]; /* { dg-warning "\\'foo1:\\' is deprecated" } */
[p foo2:2]; /* { dg-error "\\'foo2:\\' is unavailable" } */
return [p foo:1];
}