array A_nextFree196 integer A_firstFree211 integer A_maxIndex158 array A_typeId876 array D_c436 integer wurst_stack_depth184 array wurst_stack133 integer A_firstFree211 = 0 integer A_maxIndex158 = 0 integer wurst_stack_depth184 = 0 function initGlobals835() { } function main895() { local integer d108 initGlobals835(); wurst_stack_133[wurst_stack_depth_184] = "when calling init_Test in OndestroyL.wurst, line 1"; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); d_108 = new_D405(0, "when calling new_D in OndestroyL.wurst, line 42"); wurst_stack_133[wurst_stack_depth_184] = "when calling dispatch_D_destroyD in OndestroyL.wurst, line 43"; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); if (A_typeId_876[d_108] == 0) { if (d_108 == 0) { error928("Nullpointer exception when calling D.D", "when calling error in OndestroyL.wurst, line 29"); } else { error928("Called D.D on invalid object.", "when calling error in OndestroyL.wurst, line 29"); }; } else { }; destroyD139(d_108, "when calling destroyD in OndestroyL.wurst, line 29"); wurst_stack_depth_184 = ((wurst_stack_depth_184 - 1) - 1); } function config201() { } IS_NATIVE function testSuccess493() { } function destroyD139(integer this155, string __wurst_stackPos166) { local integer this188 wurst_stack_133[wurst_stack_depth_184] = __wurst_stackPos_166; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); this_188 = this_155; loop { exitwhen (D_c_436[this_188] >= 4); D_c_436[this_188] = (D_c_436[this_188] + 1); }; testSuccess493(); wurst_stack_133[wurst_stack_depth_184] = "when calling dealloc_D in OndestroyL.wurst, line 35"; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); if (A_typeId_876[this_155] == 0) { error928("Double free: object of type D", "when calling error in OndestroyL.wurst, line 29"); } else { A_nextFree_196[A_firstFree_211] = this_155; A_firstFree_211 = (A_firstFree_211 + 1); A_typeId_876[this_155] = 0; }; wurst_stack_depth_184 = ((wurst_stack_depth_184 - 1) - 1); } function new_D405(integer i786, string __wurst_stackPos397) returns integer { local integer this160 wurst_stack_133[wurst_stack_depth_184] = __wurst_stackPos_397; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); wurst_stack_133[wurst_stack_depth_184] = "when calling alloc_D in OndestroyL.wurst, line 31"; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); if (A_firstFree_211 == 0) { if (A_maxIndex_158 < 32768) { A_maxIndex_158 = (A_maxIndex_158 + 1); this_160 = A_maxIndex_158; A_typeId_876[this_160] = 4; } else { error928("Out of memory: Could not create D.", "when calling error in OndestroyL.wurst, line 29"); this_160 = 0; }; } else { A_firstFree_211 = (A_firstFree_211 - 1); this_160 = A_nextFree_196[A_firstFree_211]; A_typeId_876[this_160] = 4; }; wurst_stack_depth_184 = (wurst_stack_depth_184 - 1); D_c_436[this_160] = i_786; wurst_stack_depth_184 = (wurst_stack_depth_184 - 1); return this_160; } function error928(string msg142, string __wurst_stackPos766) { local integer stacktraceIndex211 local integer stacktraceLimit180 wurst_stack_133[wurst_stack_depth_184] = __wurst_stackPos_766; wurst_stack_depth_184 = (wurst_stack_depth_184 + 1); __wurst_stackPos_766 = ""; stacktraceIndex_211 = wurst_stack_depth_184; stacktraceLimit_180 = 0; loop { stacktraceIndex_211 = (stacktraceIndex_211 - 1); stacktraceLimit_180 = (stacktraceLimit_180 + 1); exitwhen ((stacktraceLimit_180 > 20) or (stacktraceIndex_211 < 0)); __wurst_stackPos_766 = (__wurst_stackPos_766 + (" " + wurst_stack_133[stacktraceIndex_211])); }; $debugPrint127((msg_142 + (" " + __wurst_stackPos_766))); wurst_stack_depth_184 = (wurst_stack_depth_184 - 1); }