reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1650 buf = "objc_sync_enter((id)"; 1653 ReplaceText(startLoc, lparenBuf-startBuf+1, buf); 1661 buf = ");\n"; 1663 buf += "/* @try scope begin */ \n{ struct _objc_exception_data {\n"; 1664 buf += "int buf[18/*32-bit i386*/];\n"; 1665 buf += "char *pointers[4];} _stack;\n"; 1666 buf += "id volatile _rethrow = 0;\n"; 1667 buf += "objc_exception_try_enter(&_stack);\n"; 1668 buf += "if (!_setjmp(_stack.buf)) /* @try block continue */\n"; 1669 ReplaceText(rparenLoc, 1, buf); 1675 buf = "}\nelse {\n"; 1676 buf += " _rethrow = objc_exception_extract(&_stack);\n"; 1677 buf += "}\n"; 1678 buf += "{ /* implicit finally clause */\n"; 1679 buf += " if (!_rethrow) objc_exception_try_exit(&_stack);\n"; 1699 buf += syncBuf; 1700 buf += "\n if (_rethrow) objc_exception_throw(_rethrow);\n"; 1701 buf += "}\n"; 1702 buf += "}"; 1704 ReplaceText(lastCurlyLoc, 1, buf);