array C_nextFree179 integer C_firstFree193 integer C_maxIndex103 array C_typeId687 integer wurst_stack_depth303 array wurst_stack213 integer C_firstFree193 = 0 integer C_maxIndex103 = 0 integer wurst_stack_depth303 = 0 function initGlobals165() { } function main428() { initGlobals165(); wurst_stack_213[wurst_stack_depth_303] = "when calling init_test in extends_override3, line 1"; wurst_stack_depth_303 = (wurst_stack_depth_303 + 1); if (dispatch_C_test_C_foo371(new_E116("when calling new_E in extends_override3, line 11"), "when calling foo in extends_override3, line 12") == 4) { testSuccess733(); } else { }; wurst_stack_depth_303 = (wurst_stack_depth_303 - 1); } function config353() { } IS_NATIVE function testSuccess733() { } function new_E116(string __wurst_stackPos990) returns integer { local integer this623 wurst_stack_213[wurst_stack_depth_303] = __wurst_stackPos_990; wurst_stack_depth_303 = (wurst_stack_depth_303 + 1); wurst_stack_213[wurst_stack_depth_303] = "when calling alloc_E in extends_override3, line 7"; wurst_stack_depth_303 = (wurst_stack_depth_303 + 1); if (C_firstFree_193 == 0) { if (C_maxIndex_103 < 32768) { C_maxIndex_103 = (C_maxIndex_103 + 1); this_623 = C_maxIndex_103; C_typeId_687[this_623] = 3; } else { error196("Out of memory: Could not create E.", "when calling error in extends_override3, line 7"); this_623 = 0; }; } else { C_firstFree_193 = (C_firstFree_193 - 1); this_623 = C_nextFree_179[C_firstFree_193]; C_typeId_687[this_623] = 3; }; wurst_stack_depth_303 = ((wurst_stack_depth_303 - 1) - 1); return this_623; } function error196(string msg163, string __wurst_stackPos909) { local integer stacktraceIndex649 local integer stacktraceLimit167 wurst_stack_213[wurst_stack_depth_303] = __wurst_stackPos_909; wurst_stack_depth_303 = (wurst_stack_depth_303 + 1); __wurst_stackPos_909 = ""; stacktraceIndex_649 = wurst_stack_depth_303; stacktraceLimit_167 = 0; loop { stacktraceIndex_649 = (stacktraceIndex_649 - 1); stacktraceLimit_167 = (stacktraceLimit_167 + 1); exitwhen ((stacktraceLimit_167 > 20) or (stacktraceIndex_649 < 0)); __wurst_stackPos_909 = (__wurst_stackPos_909 + (" " + wurst_stack_213[stacktraceIndex_649])); }; $debugPrint991((msg_163 + (" " + __wurst_stackPos_909))); wurst_stack_depth_303 = (wurst_stack_depth_303 - 1); } function dispatch_C_test_C_foo371(integer this472, string __wurst_stackPos178) returns integer { wurst_stack_213[wurst_stack_depth_303] = __wurst_stackPos_178; wurst_stack_depth_303 = (wurst_stack_depth_303 + 1); if (C_typeId_687[this_472] == 0) { if (this_472 == 0) { error196("Nullpointer exception when calling C.foo", "when calling error in extends_override3, line 4"); } else { error196("Called C.foo on invalid object.", "when calling error in extends_override3, line 4"); }; } else { }; if (C_typeId_687[this_472] <= 2) { this_472 = 3; } else { this_472 = 4; }; wurst_stack_depth_303 = (wurst_stack_depth_303 - 1); return this_472; }