integer test_x859 array B_nextFree845 integer B_firstFree197 integer B_maxIndex903 array B_typeId615 integer wurst_stack_depth359 array wurst_stack825 integer test_x859 = 2 integer B_firstFree197 = 0 integer B_maxIndex903 = 0 integer wurst_stack_depth359 = 0 function initGlobals189() { } function main169() { initGlobals189(); wurst_stack_825[wurst_stack_depth_359] = "when calling init_test in ondestroy, line 1"; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); test_x_859 = 2; dispatch_A_destroyA366(new_A257("when calling new_A in ondestroy, line 11"), "when calling dispatch_A_destroyA in ondestroy, line 12"); if (test_x_859 == 6) { testSuccess791(); } else { }; wurst_stack_depth_359 = (wurst_stack_depth_359 - 1); } function config132() { } IS_NATIVE function testSuccess791() { } function new_A257(string __wurst_stackPos170) returns integer { local integer this587 wurst_stack_825[wurst_stack_depth_359] = __wurst_stackPos_170; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); wurst_stack_825[wurst_stack_depth_359] = "when calling alloc_A in ondestroy, line 7"; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); if (B_firstFree_197 == 0) { if (B_maxIndex_903 < 32768) { B_maxIndex_903 = (B_maxIndex_903 + 1); this_587 = B_maxIndex_903; B_typeId_615[this_587] = 2; } else { error144("Out of memory: Could not create A.", "when calling error in ondestroy, line 7"); this_587 = 0; }; } else { B_firstFree_197 = (B_firstFree_197 - 1); this_587 = B_nextFree_845[B_firstFree_197]; B_typeId_615[this_587] = 2; }; wurst_stack_depth_359 = ((wurst_stack_depth_359 - 1) - 1); return this_587; } function error144(string msg842, string __wurst_stackPos884) { local integer stacktraceIndex706 local integer stacktraceLimit152 wurst_stack_825[wurst_stack_depth_359] = __wurst_stackPos_884; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); __wurst_stackPos_884 = ""; stacktraceIndex_706 = wurst_stack_depth_359; stacktraceLimit_152 = 0; loop { stacktraceIndex_706 = (stacktraceIndex_706 - 1); stacktraceLimit_152 = (stacktraceLimit_152 + 1); exitwhen ((stacktraceLimit_152 > 20) or (stacktraceIndex_706 < 0)); __wurst_stackPos_884 = (__wurst_stackPos_884 + (" " + wurst_stack_825[stacktraceIndex_706])); }; $debugPrint120((msg_842 + (" " + __wurst_stackPos_884))); wurst_stack_depth_359 = (wurst_stack_depth_359 - 1); } function dispatch_A_destroyA366(integer this747, string __wurst_stackPos184) { wurst_stack_825[wurst_stack_depth_359] = __wurst_stackPos_184; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); if (B_typeId_615[this_747] == 0) { if (this_747 == 0) { error144("Nullpointer exception when calling A.A", "when calling error in ondestroy, line 7"); } else { error144("Called A.A on invalid object.", "when calling error in ondestroy, line 7"); }; } else { }; wurst_stack_825[wurst_stack_depth_359] = "when calling destroyA in ondestroy, line 7"; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); test_x_859 = ((test_x_859 + 1) * 2); wurst_stack_825[wurst_stack_depth_359] = "when calling dealloc_A in ondestroy, line 8"; wurst_stack_depth_359 = (wurst_stack_depth_359 + 1); if (B_typeId_615[this_747] == 0) { error144("Double free: object of type A", "when calling error in ondestroy, line 7"); } else { B_nextFree_845[B_firstFree_197] = this_747; B_firstFree_197 = (B_firstFree_197 + 1); B_typeId_615[this_747] = 0; }; wurst_stack_depth_359 = (((wurst_stack_depth_359 - 1) - 1) - 1); }