diff options
Diffstat (limited to 'gcc/testsuite/objc/execute/load-2.m')
-rw-r--r-- | gcc/testsuite/objc/execute/load-2.m | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gcc/testsuite/objc/execute/load-2.m b/gcc/testsuite/objc/execute/load-2.m new file mode 100644 index 000000000..eb9065836 --- /dev/null +++ b/gcc/testsuite/objc/execute/load-2.m @@ -0,0 +1,46 @@ +/* Contributed by Nicola Pero - Wed Jun 6 14:34:23 CEST 2001 */ +#include <objc/objc.h> + +/* Test that +load is automatically called before main is run; + on two different classes. */ + +static int static_variable1 = 0; +static int static_variable2 = 0; + +@interface TestClass1 +{ + Class isa; +} ++ (void) load; +@end + +@implementation TestClass1 ++ (void) load +{ + static_variable1 = 1; +} +@end + +@interface TestClass2 +{ + Class isa; +} ++ (void) load; +@end + +@implementation TestClass2 ++ (void) load +{ + static_variable2 = 1; +} +@end + +int main (void) +{ + if (static_variable1 != 1 || static_variable2 != 1) + { + abort (); + } + + return 0; +} |