array A_nextFree132 integer A_firstFree178 integer A_maxIndex964 array A_typeId202 array B_nextFree855 integer B_firstFree111 integer B_maxIndex353 array B_typeId418 integer wurst_stack_depth159 array wurst_stack224 integer A_firstFree178 = 0 integer A_maxIndex964 = 0 integer B_firstFree111 = 0 integer B_maxIndex353 = 0 integer wurst_stack_depth159 = 0 function initGlobals200() { } function main164() { initGlobals200(); wurst_stack_224[wurst_stack_depth_159] = "when calling init_test in testInnerClass_module, line 1"; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); if (dispatch_A_test_A_M_bar187(new_A167("when calling new_A in testInnerClass_module, line 13"), "when calling bar in testInnerClass_module, line 13") == 42) { testSuccess207(); } else { }; wurst_stack_depth_159 = (wurst_stack_depth_159 - 1); } function config190() { } IS_NATIVE function testSuccess207() { } function new_A167(string __wurst_stackPos688) returns integer { local integer this743 wurst_stack_224[wurst_stack_depth_159] = __wurst_stackPos_688; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); wurst_stack_224[wurst_stack_depth_159] = "when calling alloc_A in testInnerClass_module, line 10"; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); if (A_firstFree_178 == 0) { if (A_maxIndex_964 < 32768) { A_maxIndex_964 = (A_maxIndex_964 + 1); this_743 = A_maxIndex_964; A_typeId_202[this_743] = 1; } else { error107("Out of memory: Could not create A.", "when calling error in testInnerClass_module, line 10"); this_743 = 0; }; } else { A_firstFree_178 = (A_firstFree_178 - 1); this_743 = A_nextFree_132[A_firstFree_178]; A_typeId_202[this_743] = 1; }; wurst_stack_depth_159 = ((wurst_stack_depth_159 - 1) - 1); return this_743; } function new_B140(string __wurst_stackPos204) returns integer { local integer this177 wurst_stack_224[wurst_stack_depth_159] = __wurst_stackPos_204; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); wurst_stack_224[wurst_stack_depth_159] = "when calling alloc_B in testInnerClass_module, line 4"; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); if (B_firstFree_111 == 0) { if (B_maxIndex_353 < 32768) { B_maxIndex_353 = (B_maxIndex_353 + 1); this_177 = B_maxIndex_353; B_typeId_418[this_177] = 2; } else { error107("Out of memory: Could not create B.", "when calling error in testInnerClass_module, line 4"); this_177 = 0; }; } else { B_firstFree_111 = (B_firstFree_111 - 1); this_177 = B_nextFree_855[B_firstFree_111]; B_typeId_418[this_177] = 2; }; wurst_stack_depth_159 = ((wurst_stack_depth_159 - 1) - 1); return this_177; } function error107(string msg124, string __wurst_stackPos207) { local integer stacktraceIndex492 local integer stacktraceLimit104 wurst_stack_224[wurst_stack_depth_159] = __wurst_stackPos_207; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); __wurst_stackPos_207 = ""; stacktraceIndex_492 = wurst_stack_depth_159; stacktraceLimit_104 = 0; loop { stacktraceIndex_492 = (stacktraceIndex_492 - 1); stacktraceLimit_104 = (stacktraceLimit_104 + 1); exitwhen ((stacktraceLimit_104 > 20) or (stacktraceIndex_492 < 0)); __wurst_stackPos_207 = (__wurst_stackPos_207 + (" " + wurst_stack_224[stacktraceIndex_492])); }; $debugPrint106((msg_124 + (" " + __wurst_stackPos_207))); wurst_stack_depth_159 = (wurst_stack_depth_159 - 1); } function dispatch_A_test_A_M_bar187(integer this995, string __wurst_stackPos212) returns integer { wurst_stack_224[wurst_stack_depth_159] = __wurst_stackPos_212; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); if (A_typeId_202[this_995] == 0) { if (this_995 == 0) { error107("Nullpointer exception when calling A.bar", "when calling error in testInnerClass_module, line 7"); } else { error107("Called A.bar on invalid object.", "when calling error in testInnerClass_module, line 7"); }; } else { }; wurst_stack_224[wurst_stack_depth_159] = "when calling bar in testInnerClass_module, line 7"; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); this_995 = new_B140("when calling new_B in testInnerClass_module, line 8"); wurst_stack_224[wurst_stack_depth_159] = "when calling foo in testInnerClass_module, line 9"; wurst_stack_depth_159 = (wurst_stack_depth_159 + 1); if (B_typeId_418[this_995] == 0) { if (this_995 == 0) { error107("Nullpointer exception when calling B.foo", "when calling error in testInnerClass_module, line 5"); } else { error107("Called B.foo on invalid object.", "when calling error in testInnerClass_module, line 5"); }; } else { }; wurst_stack_depth_159 = (((wurst_stack_depth_159 - 1) - 1) - 1); return 42; }