12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #include "test.h"
- #include "imageorder.h"
- int state = -1;
- int cstate = 0;
- static void c1(void) __attribute__((constructor));
- static void c1(void)
- {
- testassert(state == 1); // +load before C/C++
- testassert(cstate == 0);
- cstate = 1;
- }
- #if __clang__
- #pragma clang diagnostic push
- #pragma clang diagnostic ignored "-Wobjc-protocol-method-implementation"
- #endif
- @implementation Super (cat1)
- +(void) method {
- fail("+[Super(cat1) method] not replaced!");
- }
- +(void) method1 {
- state = 1;
- }
- +(void) load {
- testassert(state == 0);
- state = 1;
- }
- @end
- #if __clang__
- #pragma clang diagnostic pop
- #endif
- @implementation Super
- +(void) initialize { }
- +(void) method {
- fail("+[Super method] not replaced!");
- }
- +(void) method0 {
- state = 0;
- }
- +(void) load {
- testassert(state == -1);
- state = 0;
- }
- @end
|