| #if defined(__BLOCKS__) && defined(__clang__) | |
| extern "C" void abort(void); | |
| class Test { | |
| public: | |
| int i; | |
| Test() : i(0) | |
| { | |
| } | |
| ~Test() | |
| { | |
| i = -1; | |
| } | |
| Test(const Test&r) | |
| { | |
| i = r.i; | |
| } | |
| void speak() const | |
| { | |
| if (i != 0) | |
| abort(); | |
| } | |
| }; | |
| #endif | |
| int main (int , char * const []) | |
| { | |
| #if defined(__BLOCKS__) && defined(__clang__) | |
| Test t; | |
| ^{ t.speak(); }(); | |
| #endif | |
| return 0; | |
| } |