{
qSwap(_mode, mode); // enter function code.
+ TryCleanup *tryCleanup = 0;
+
enterEnvironment(ast);
IR::Function *function = _module->newFunction(name);
if (_debugger)
qSwap(_exitBlock, exitBlock);
qSwap(_throwBlock, throwBlock);
qSwap(_returnAddress, returnAddress);
+ qSwap(_tryCleanup, tryCleanup);
for (FormalParameterList *it = formals; it; it = it->next) {
_function->RECEIVE(it->name.toString());
qSwap(_exitBlock, exitBlock);
qSwap(_throwBlock, throwBlock);
qSwap(_returnAddress, returnAddress);
+ qSwap(_tryCleanup, tryCleanup);
leaveEnvironment();