array A_nextFree975 integer A_firstFree198 integer A_maxIndex122 array A_typeId149 integer wurst_stack_depth202 array wurst_stack106 integer A_firstFree198 = 0 integer A_maxIndex122 = 0 integer wurst_stack_depth202 = 0 function initGlobals118() { } function main134() { initGlobals118(); init_test140("when calling init_test in abstract_class2, line 1"); } function config187() { } function init_test140(string __wurst_stackPos185) { local integer b403 wurst_stack_106[wurst_stack_depth_202] = __wurst_stackPos_185; wurst_stack_depth_202 = (wurst_stack_depth_202 + 1); b_403 = new_B142("when calling new_B in abstract_class2, line 11"); wurst_stack_106[wurst_stack_depth_202] = "when calling foo in abstract_class2, line 12"; wurst_stack_depth_202 = (wurst_stack_depth_202 + 1); if (A_typeId_149[b_403] == 0) { if (b_403 == 0) { error517("Nullpointer exception when calling A.foo", "when calling error in abstract_class2, line 5"); } else { error517("Called A.foo on invalid object.", "when calling error in abstract_class2, line 5"); }; } else { }; wurst_stack_depth_202 = (wurst_stack_depth_202 - 1); testSuccess100(); wurst_stack_depth_202 = (wurst_stack_depth_202 - 1); } IS_NATIVE function testSuccess100() { } function new_B142(string __wurst_stackPos942) returns integer { local integer this625 wurst_stack_106[wurst_stack_depth_202] = __wurst_stackPos_942; wurst_stack_depth_202 = (wurst_stack_depth_202 + 1); wurst_stack_106[wurst_stack_depth_202] = "when calling alloc_B in abstract_class2, line 6"; wurst_stack_depth_202 = (wurst_stack_depth_202 + 1); if (A_firstFree_198 == 0) { if (A_maxIndex_122 < 32768) { A_maxIndex_122 = (A_maxIndex_122 + 1); this_625 = A_maxIndex_122; A_typeId_149[this_625] = 2; } else { error517("Out of memory: Could not create B.", "when calling error in abstract_class2, line 6"); this_625 = 0; }; } else { A_firstFree_198 = (A_firstFree_198 - 1); this_625 = A_nextFree_975[A_firstFree_198]; A_typeId_149[this_625] = 2; }; wurst_stack_depth_202 = ((wurst_stack_depth_202 - 1) - 1); return this_625; } function error517(string msg135, string __wurst_stackPos303) { local integer stacktraceIndex103 local integer stacktraceLimit200 wurst_stack_106[wurst_stack_depth_202] = __wurst_stackPos_303; wurst_stack_depth_202 = (wurst_stack_depth_202 + 1); __wurst_stackPos_303 = ""; stacktraceIndex_103 = wurst_stack_depth_202; stacktraceLimit_200 = 0; loop { stacktraceIndex_103 = (stacktraceIndex_103 - 1); stacktraceLimit_200 = (stacktraceLimit_200 + 1); exitwhen ((stacktraceLimit_200 > 20) or (stacktraceIndex_103 < 0)); __wurst_stackPos_303 = (__wurst_stackPos_303 + (" " + wurst_stack_106[stacktraceIndex_103])); }; $debugPrint975((msg_135 + (" " + __wurst_stackPos_303))); wurst_stack_depth_202 = (wurst_stack_depth_202 - 1); }