array C_nextFree590 integer C_firstFree998 integer C_maxIndex143 array C_typeId131 array E_nextFree202 integer E_firstFree178 integer E_maxIndex101 array E_typeId192 integer C_firstFree998 = 0 integer C_maxIndex143 = 0 integer E_firstFree178 = 0 integer E_maxIndex101 = 0 function initGlobals185() { } function main112() { local integer e132 initGlobals185(); e_132 = new_E172(); dispatch_E_Test_E_A_test254(e_132); } function config174() { } IS_NATIVE function testSuccess753() { } function new_E172() returns integer { local integer this131 local integer this171 if (E_firstFree_178 == 0) { if (E_maxIndex_101 < 32768) { E_maxIndex_101 = (E_maxIndex_101 + 1); this_171 = E_maxIndex_101; E_typeId_192[this_171] = 3; } else { error181("Out of memory: Could not create E."); this_171 = 0; }; } else { E_firstFree_178 = (E_firstFree_178 - 1); this_171 = E_nextFree_202[E_firstFree_178]; E_typeId_192[this_171] = 3; }; this_131 = this_171; return this_131; } function new_D180() returns integer { local integer this154 local integer this141 if (C_firstFree_998 == 0) { if (C_maxIndex_143 < 32768) { C_maxIndex_143 = (C_maxIndex_143 + 1); this_141 = C_maxIndex_143; C_typeId_131[this_141] = 2; } else { error181("Out of memory: Could not create D."); this_141 = 0; }; } else { C_firstFree_998 = (C_firstFree_998 - 1); this_141 = C_nextFree_590[C_firstFree_998]; C_typeId_131[this_141] = 2; }; this_154 = this_141; return this_154; } function error181(string msg772) { $debugPrint196((msg_772 + (" " + #getStackTrace()))); } function dispatch_E_Test_E_A_test254(integer this114) { local integer this218 if (E_typeId_192[this_114] == 0) { if (this_114 == 0) { error181("Nullpointer exception when calling E.test"); } else { error181("Called E.test on invalid object."); }; } else { }; this_218 = new_D180(); if (C_typeId_131[this_218] == 0) { if (this_218 == 0) { error181("Nullpointer exception when calling D.foo"); } else { error181("Called D.foo on invalid object."); }; } else { }; testSuccess753(); }