array C_nextFree184 integer C_firstFree797 integer C_maxIndex128 array C_typeId185 integer C_firstFree797 = 0 integer C_maxIndex128 = 0 function initGlobals140() { C_firstFree_797 = 0; C_maxIndex_128 = 0; } function main170() { initGlobals140(); init_test113(); } function config128() { } function init_test113() { new_C115(); } IS_NATIVE function testSuccess892() { } function C_A_foo205(integer this720) { dispatch_C_test_C_A_bar714(this_720); } function C_A_bar171(integer this959) { testSuccess892(); } function C_init209(integer this136) { construct_C_A136(this_136); } function construct_C_A136(integer this174) { } function new_C115() returns integer { local integer this597 this_597 = alloc_C172(); construct_C133(this_597); return this_597; } function construct_C133(integer this343) { C_init209(this_343); dispatch_C_test_C_A_foo395(this_343); } function alloc_C172() returns integer { local integer this177 if (C_firstFree_797 == 0) { if (C_maxIndex_128 < 32768) { C_maxIndex_128 = (C_maxIndex_128 + 1); this_177 = C_maxIndex_128; C_typeId_185[this_177] = 1; } else { error360("Out of memory: Could not create C."); this_177 = 0; }; } else { C_firstFree_797 = (C_firstFree_797 - 1); this_177 = C_nextFree_184[C_firstFree_797]; C_typeId_185[this_177] = 1; }; return this_177; } function error360(string msg964) { $debugPrint281((msg_964 + (" " + #getStackTrace()))); } function dispatch_C_test_C_A_foo395(integer this489) { if (C_typeId_185[this_489] == 0) { if (this_489 == 0) { error360("Nullpointer exception when calling C.foo"); } else { error360("Called C.foo on invalid object."); }; } else { }; C_A_foo205(this_489); } function dispatch_C_test_C_A_bar714(integer this391) { if (C_typeId_185[this_391] == 0) { if (this_391 == 0) { error360("Nullpointer exception when calling C.bar"); } else { error360("Called C.bar on invalid object."); }; } else { }; C_A_bar171(this_391); }