12345678910111213141516171819202122232425262728293031323334 |
- // TEST_CONFIG MEM=mrc
- // TEST_CRASHES
- // Test badPoolCompat also uses this file.
- /*
- TEST_RUN_OUTPUT
- objc\[\d+\]: [Ii]nvalid or prematurely-freed autorelease pool 0x[0-9a-fA-F]+\.?
- objc\[\d+\]: HALTED
- END
- */
- #include "test.h"
- int main()
- {
- void *outer = objc_autoreleasePoolPush();
- void *inner = objc_autoreleasePoolPush();
- objc_autoreleasePoolPop(outer);
- objc_autoreleasePoolPop(inner);
- #if !OLD
- fail("should have crashed already with new SDK");
- #else
- // should only warn once
- outer = objc_autoreleasePoolPush();
- inner = objc_autoreleasePoolPush();
- objc_autoreleasePoolPop(outer);
- objc_autoreleasePoolPop(inner);
- succeed(__FILE__);
- #endif
- }
|