diff options
Diffstat (limited to 'gcc/testsuite/objc/execute/formal_protocol-7.m')
-rw-r--r-- | gcc/testsuite/objc/execute/formal_protocol-7.m | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gcc/testsuite/objc/execute/formal_protocol-7.m b/gcc/testsuite/objc/execute/formal_protocol-7.m new file mode 100644 index 000000000..d15013a29 --- /dev/null +++ b/gcc/testsuite/objc/execute/formal_protocol-7.m @@ -0,0 +1,44 @@ +/* Contributed by Nicola Pero - Fri Mar 9 21:35:47 CET 2001 */ + +#include <stdlib.h> +#import "../../objc-obj-c++-shared/Protocol1.h" + +/* Test defining two protocols, one incorporating the other one. */ + +@protocol Configuring +- (void) configure; +@end + +@protocol Processing <Configuring> +- (void) process; +@end + +/* A class adopting the protocol */ +@interface Test : Object <Processing> +{ + BOOL didConfigure; + BOOL didProcess; +} +@end + +@implementation Test +- (void) configure +{ + didConfigure = YES; +} +- (void) process +{ + didProcess = YES; +} +@end + +int main (void) +{ + id <Processing> object = [Test new]; + + [object configure]; + [object process]; + + return 0; +} +#include "../../objc-obj-c++-shared/Object1-implementation.h" |