array A_nextFree708 integer A_firstFree207 integer A_maxIndex174 array A_typeId247 array A_M_i190 integer A_firstFree207 = 0 integer A_maxIndex174 = 0 function initGlobals133() { } function main133() { initGlobals133(); init_Test109(); } function config162() { } function init_Test109() { local integer b101 b_101 = new_B177(); dispatch_A_Test_A_f191(b_101); dispatch_B_Test_B_g125(b_101); if (A_M_i_190[b_101] != 5) { testFail172("foo"); } else { }; testSuccess113(); } IS_NATIVE function testFail172(string message211) { } IS_NATIVE function testSuccess113() { } function new_B177() returns integer { local integer this532 if (A_firstFree_207 == 0) { if (A_maxIndex_174 < 32768) { A_maxIndex_174 = (A_maxIndex_174 + 1); this_532 = A_maxIndex_174; A_typeId_247[this_532] = 2; } else { error398("Out of memory: Could not create B."); this_532 = 0; }; } else { A_firstFree_207 = (A_firstFree_207 - 1); this_532 = A_nextFree_708[A_firstFree_207]; A_typeId_247[this_532] = 2; }; A_M_i_190[this_532] = 0; return this_532; } function error398(string msg759) { $debugPrint562((msg_759 + (" " + #getStackTrace()))); } function dispatch_A_Test_A_f191(integer this208) { if (A_typeId_247[this_208] == 0) { if (this_208 == 0) { error398("Nullpointer exception when calling A.f"); } else { error398("Called A.f on invalid object."); }; } else { }; A_M_i_190[this_208] = (A_M_i_190[this_208] + 1); A_M_i_190[this_208] = (A_M_i_190[this_208] + 1); } function dispatch_B_Test_B_g125(integer this872) { if (A_typeId_247[this_872] == 0) { if (this_872 == 0) { error398("Nullpointer exception when calling B.g"); } else { error398("Called B.g on invalid object."); }; } else { }; A_M_i_190[this_872] = (A_M_i_190[this_872] + 1); A_M_i_190[this_872] = (A_M_i_190[this_872] + 1); A_M_i_190[this_872] = (A_M_i_190[this_872] + 1); }