array C_nextFree138 integer C_firstFree119 integer C_maxIndex980 array C_typeId167 array C_i184 integer wurst_stack_depth203 array wurst_stack181 integer C_firstFree119 = 0 integer C_maxIndex980 = 0 integer wurst_stack_depth203 = 0 function initGlobals115() { } function main456() { initGlobals115(); wurst_stack_181[wurst_stack_depth_203] = "when calling init_test in ondestroy, line 1"; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); dispatch_C_destroyC156(new_C248("when calling new_C in ondestroy, line 9"), "when calling dispatch_C_destroyC in ondestroy, line 9"); wurst_stack_depth_203 = (wurst_stack_depth_203 - 1); } function config107() { } IS_NATIVE function testSuccess741() { } function new_C248(string __wurst_stackPos435) returns integer { local integer this111 wurst_stack_181[wurst_stack_depth_203] = __wurst_stackPos_435; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); wurst_stack_181[wurst_stack_depth_203] = "when calling alloc_C in ondestroy, line 3"; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); if (C_firstFree_119 == 0) { if (C_maxIndex_980 < 32768) { C_maxIndex_980 = (C_maxIndex_980 + 1); this_111 = C_maxIndex_980; C_typeId_167[this_111] = 1; } else { error184("Out of memory: Could not create C.", "when calling error in ondestroy, line 3"); this_111 = 0; }; } else { C_firstFree_119 = (C_firstFree_119 - 1); this_111 = C_nextFree_138[C_firstFree_119]; C_typeId_167[this_111] = 1; }; wurst_stack_depth_203 = (wurst_stack_depth_203 - 1); C_i_184[this_111] = 3; wurst_stack_depth_203 = (wurst_stack_depth_203 - 1); return this_111; } function error184(string msg315, string __wurst_stackPos208) { local integer stacktraceIndex834 local integer stacktraceLimit166 wurst_stack_181[wurst_stack_depth_203] = __wurst_stackPos_208; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); __wurst_stackPos_208 = ""; stacktraceIndex_834 = wurst_stack_depth_203; stacktraceLimit_166 = 0; loop { stacktraceIndex_834 = (stacktraceIndex_834 - 1); stacktraceLimit_166 = (stacktraceLimit_166 + 1); exitwhen ((stacktraceLimit_166 > 20) or (stacktraceIndex_834 < 0)); __wurst_stackPos_208 = (__wurst_stackPos_208 + (" " + wurst_stack_181[stacktraceIndex_834])); }; $debugPrint116((msg_315 + (" " + __wurst_stackPos_208))); wurst_stack_depth_203 = (wurst_stack_depth_203 - 1); } function dispatch_C_destroyC156(integer this730, string __wurst_stackPos179) { wurst_stack_181[wurst_stack_depth_203] = __wurst_stackPos_179; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); if (C_typeId_167[this_730] == 0) { if (this_730 == 0) { error184("Nullpointer exception when calling C.C", "when calling error in ondestroy, line 3"); } else { error184("Called C.C on invalid object.", "when calling error in ondestroy, line 3"); }; } else { }; wurst_stack_181[wurst_stack_depth_203] = "when calling destroyC in ondestroy, line 3"; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); C_i_184[this_730] = (C_i_184[this_730] + 1); testSuccess741(); wurst_stack_181[wurst_stack_depth_203] = "when calling dealloc_C in ondestroy, line 5"; wurst_stack_depth_203 = (wurst_stack_depth_203 + 1); if (C_typeId_167[this_730] == 0) { error184("Double free: object of type C", "when calling error in ondestroy, line 3"); } else { C_nextFree_138[C_firstFree_119] = this_730; C_firstFree_119 = (C_firstFree_119 + 1); C_typeId_167[this_730] = 0; }; wurst_stack_depth_203 = (((wurst_stack_depth_203 - 1) - 1) - 1); }