array C_nextFree203 integer C_firstFree649 integer C_maxIndex192 array C_typeId160 integer C_firstFree649 = 0 integer C_maxIndex192 = 0 function initGlobals551() { } function main141() { initGlobals551(); init_test162(); } function config958() { } function init_test162() { if (dispatch_C_test_C_A_getBar881(new_C711()) != 3) { testFail174("fail"); } else { }; testSuccess179(); } IS_NATIVE function testFail174(string msg642) { } IS_NATIVE function testSuccess179() { } function C_getFoo187(integer this200) returns integer { return 2; } function C_A_getBar212(integer this969) returns integer { return (dispatch_C_test_C_getFoo719(this_969) + 1); } function C_init142(integer this189) { construct_C_A344(this_189); } function construct_C_A344(integer this520) { } function new_C711() returns integer { local integer this473 this_473 = alloc_C148(); construct_C212(this_473); return this_473; } function construct_C212(integer this143) { C_init142(this_143); } function alloc_C148() returns integer { local integer this517 if (C_firstFree_649 == 0) { if (C_maxIndex_192 < 32768) { C_maxIndex_192 = (C_maxIndex_192 + 1); this_517 = C_maxIndex_192; C_typeId_160[this_517] = 1; } else { error113("Out of memory: Could not create C."); this_517 = 0; }; } else { C_firstFree_649 = (C_firstFree_649 - 1); this_517 = C_nextFree_203[C_firstFree_649]; C_typeId_160[this_517] = 1; }; return this_517; } function error113(string msg179) { $debugPrint409((msg_179 + (" " + #getStackTrace()))); } function dispatch_C_test_C_getFoo719(integer this175) returns integer { if (C_typeId_160[this_175] == 0) { if (this_175 == 0) { error113("Nullpointer exception when calling C.getFoo"); } else { error113("Called C.getFoo on invalid object."); }; } else { }; return C_getFoo187(this_175); } function dispatch_C_test_C_A_getBar881(integer this168) returns integer { if (C_typeId_160[this_168] == 0) { if (this_168 == 0) { error113("Nullpointer exception when calling C.getBar"); } else { error113("Called C.getBar on invalid object."); }; } else { }; return C_A_getBar212(this_168); }