array A_nextFree860 integer A_firstFree504 integer A_maxIndex111 array A_typeId614 array A_M_i117 integer wurst_stack_depth934 array wurst_stack573 integer A_firstFree504 = 0 integer A_maxIndex111 = 0 integer wurst_stack_depth934 = 0 function initGlobals177() { } function main556() { initGlobals177(); init_Test111("when calling init_Test in modulesInSubclasses, line 1"); } function config850() { } function init_Test111(string __wurst_stackPos182) { local integer b116 wurst_stack_573[wurst_stack_depth_934] = __wurst_stackPos_182; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); b_116 = new_B490("when calling new_B in modulesInSubclasses, line 17"); wurst_stack_573[wurst_stack_depth_934] = "when calling f in modulesInSubclasses, line 19"; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); if (A_typeId_614[b_116] == 0) { if (b_116 == 0) { error291("Nullpointer exception when calling A.f", "when calling error in modulesInSubclasses, line 8"); } else { error291("Called A.f on invalid object.", "when calling error in modulesInSubclasses, line 8"); }; } else { }; A_M_i_117[b_116] = (A_M_i_117[b_116] + 1); A_M_i_117[b_116] = (A_M_i_117[b_116] + 1); wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); wurst_stack_573[wurst_stack_depth_934] = "when calling g in modulesInSubclasses, line 20"; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); if (A_typeId_614[b_116] == 0) { if (b_116 == 0) { error291("Nullpointer exception when calling B.g", "when calling error in modulesInSubclasses, line 12"); } else { error291("Called B.g on invalid object.", "when calling error in modulesInSubclasses, line 12"); }; } else { }; A_M_i_117[b_116] = (A_M_i_117[b_116] + 1); A_M_i_117[b_116] = (A_M_i_117[b_116] + 1); A_M_i_117[b_116] = (A_M_i_117[b_116] + 1); wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); if (A_M_i_117[b_116] != 5) { testFail469("foo"); } else { }; testSuccess174(); wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); } IS_NATIVE function testFail469(string message132) { } IS_NATIVE function testSuccess174() { } function new_B490(string __wurst_stackPos169) returns integer { local integer this815 wurst_stack_573[wurst_stack_depth_934] = __wurst_stackPos_169; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); wurst_stack_573[wurst_stack_depth_934] = "when calling alloc_B in modulesInSubclasses, line 11"; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); if (A_firstFree_504 == 0) { if (A_maxIndex_111 < 32768) { A_maxIndex_111 = (A_maxIndex_111 + 1); this_815 = A_maxIndex_111; A_typeId_614[this_815] = 2; } else { error291("Out of memory: Could not create B.", "when calling error in modulesInSubclasses, line 11"); this_815 = 0; }; } else { A_firstFree_504 = (A_firstFree_504 - 1); this_815 = A_nextFree_860[A_firstFree_504]; A_typeId_614[this_815] = 2; }; wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); A_M_i_117[this_815] = 0; wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); return this_815; } function error291(string msg709, string __wurst_stackPos148) { local integer stacktraceIndex192 local integer stacktraceLimit193 wurst_stack_573[wurst_stack_depth_934] = __wurst_stackPos_148; wurst_stack_depth_934 = (wurst_stack_depth_934 + 1); __wurst_stackPos_148 = ""; stacktraceIndex_192 = wurst_stack_depth_934; stacktraceLimit_193 = 0; loop { stacktraceIndex_192 = (stacktraceIndex_192 - 1); stacktraceLimit_193 = (stacktraceLimit_193 + 1); exitwhen ((stacktraceLimit_193 > 20) or (stacktraceIndex_192 < 0)); __wurst_stackPos_148 = (__wurst_stackPos_148 + (" " + wurst_stack_573[stacktraceIndex_192])); }; $debugPrint203((msg_709 + (" " + __wurst_stackPos_148))); wurst_stack_depth_934 = (wurst_stack_depth_934 - 1); }