array I_nextFree404 integer I_firstFree181 integer I_maxIndex114 array I_typeId165 integer wurst_stack_depth156 array wurst_stack523 integer I_firstFree181 = 0 integer I_maxIndex114 = 0 integer wurst_stack_depth156 = 0 function initGlobals806() { } function main112() { initGlobals806(); init_test124("when calling init_test in testInterfaceDefaultImpl, line 1"); } function config186() { } function init_test124(string __wurst_stackPos463) { local integer i209 wurst_stack_523[wurst_stack_depth_156] = __wurst_stackPos_463; wurst_stack_depth_156 = (wurst_stack_depth_156 + 1); i_209 = new_C129("when calling new_C in testInterfaceDefaultImpl, line 8"); wurst_stack_523[wurst_stack_depth_156] = "when calling foo in testInterfaceDefaultImpl, line 9"; wurst_stack_depth_156 = (wurst_stack_depth_156 + 1); if (I_typeId_165[i_209] == 0) { if (i_209 == 0) { error230("Nullpointer exception when calling I.foo", "when calling error in testInterfaceDefaultImpl, line 4"); } else { error230("Called I.foo on invalid object.", "when calling error in testInterfaceDefaultImpl, line 4"); }; } else { }; wurst_stack_depth_156 = (wurst_stack_depth_156 - 1); testSuccess610(); wurst_stack_depth_156 = (wurst_stack_depth_156 - 1); } IS_NATIVE function testSuccess610() { } function new_C129(string __wurst_stackPos205) returns integer { local integer this201 wurst_stack_523[wurst_stack_depth_156] = __wurst_stackPos_205; wurst_stack_depth_156 = (wurst_stack_depth_156 + 1); wurst_stack_523[wurst_stack_depth_156] = "when calling alloc_C in testInterfaceDefaultImpl, line 6"; wurst_stack_depth_156 = (wurst_stack_depth_156 + 1); if (I_firstFree_181 == 0) { if (I_maxIndex_114 < 32768) { I_maxIndex_114 = (I_maxIndex_114 + 1); this_201 = I_maxIndex_114; I_typeId_165[this_201] = 2; } else { error230("Out of memory: Could not create C.", "when calling error in testInterfaceDefaultImpl, line 6"); this_201 = 0; }; } else { I_firstFree_181 = (I_firstFree_181 - 1); this_201 = I_nextFree_404[I_firstFree_181]; I_typeId_165[this_201] = 2; }; wurst_stack_depth_156 = ((wurst_stack_depth_156 - 1) - 1); return this_201; } function error230(string msg161, string __wurst_stackPos853) { local integer stacktraceIndex147 local integer stacktraceLimit412 wurst_stack_523[wurst_stack_depth_156] = __wurst_stackPos_853; wurst_stack_depth_156 = (wurst_stack_depth_156 + 1); __wurst_stackPos_853 = ""; stacktraceIndex_147 = wurst_stack_depth_156; stacktraceLimit_412 = 0; loop { stacktraceIndex_147 = (stacktraceIndex_147 - 1); stacktraceLimit_412 = (stacktraceLimit_412 + 1); exitwhen ((stacktraceLimit_412 > 20) or (stacktraceIndex_147 < 0)); __wurst_stackPos_853 = (__wurst_stackPos_853 + (" " + wurst_stack_523[stacktraceIndex_147])); }; $debugPrint392((msg_161 + (" " + __wurst_stackPos_853))); wurst_stack_depth_156 = (wurst_stack_depth_156 - 1); }