URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [objc.dg/] [attributes/] [class-attribute-1.m] - Rev 754
Go to most recent revision | Compare with Previous | Blame | View Log
/* { dg-do compile } */ /* Test deprecate attribute with an @interface declaration. */ #include <objc/objc.h> __attribute__ ((deprecated)) @interface DeprecatedClass { Class isa; } + (id) classObject; + (id) new; @end @implementation DeprecatedClass + (id) classObject { return self; } + (id) new { return nil; } @end @interface DeprecatedClass (Category) @end /* { dg-warning "is deprecated" } */ @interface Subclass : DeprecatedClass @end /* { dg-warning "is deprecated" } */ DeprecatedClass *object; /* { dg-warning "is deprecated" } */ int function (DeprecatedClass *object) /* { dg-warning "is deprecated" } */ { /* Note how the following deprecation warning is generated by "DeprecatedClass *", not by "[DeprecatedClass ...]. */ DeprecatedClass *x = [DeprecatedClass new]; /* { dg-warning "is deprecated" } */ if (x == object) return 0; else return 1; } id function2 (void) { return DeprecatedClass.classObject; /* { dg-warning "is deprecated" } */ } @interface NormalClass { Class isa; DeprecatedClass *object; /* { dg-warning "is deprecated" } */ } - (DeprecatedClass *)method; /* { dg-warning "is deprecated" } */ @end @implementation NormalClass - (DeprecatedClass *)method /* { dg-warning "is deprecated" } */ { return nil; } @end
Go to most recent revision | Compare with Previous | Blame | View Log