array C_nextFree682 integer C_firstFree187 integer C_maxIndex101 array C_typeId173 array SimpleFunc_nextFree180 integer SimpleFunc_firstFree131 integer SimpleFunc_maxIndex197 array SimpleFunc_typeId205 array C_y528 array this187 integer C_firstFree187 = 0 integer C_maxIndex101 = 0 integer SimpleFunc_firstFree131 = 0 integer SimpleFunc_maxIndex197 = 0 function initGlobals205() { } function main305() { local integer c169 initGlobals205(); new_C152(); c_169 = new_C152(); C_y_528[c_169] = 4; if (C_typeId_173[c_169] == 0) { if (c_169 == 0) { error147("Nullpointer exception when calling C.foo"); } else { error147("Called C.foo on invalid object."); }; } else { }; C_foo413(c_169); } function config605() { } IS_NATIVE function testSuccess165() { } function C_foo413(integer this220) { local integer this109 if (SimpleFunc_firstFree_131 == 0) { if (SimpleFunc_maxIndex_197 < 32768) { SimpleFunc_maxIndex_197 = (SimpleFunc_maxIndex_197 + 1); this_109 = SimpleFunc_maxIndex_197; SimpleFunc_typeId_205[this_109] = 3; } else { error147("Out of memory: Could not create SimpleFunc_bar_C_test."); this_109 = 0; }; } else { SimpleFunc_firstFree_131 = (SimpleFunc_firstFree_131 - 1); this_109 = SimpleFunc_nextFree_180[SimpleFunc_firstFree_131]; SimpleFunc_typeId_205[this_109] = 3; }; this_187[this_109] = this_220; if (C_typeId_173[this_220] == 0) { if (this_220 == 0) { error147("Nullpointer exception when calling C.bar"); } else { error147("Called C.bar on invalid object."); }; } else { }; if (dispatch_SimpleFunc_test_SimpleFunc_apply392(this_109) == 7) { testSuccess165(); } else { }; } function new_C152() returns integer { local integer this148 if (C_firstFree_187 == 0) { if (C_maxIndex_101 < 32768) { C_maxIndex_101 = (C_maxIndex_101 + 1); this_148 = C_maxIndex_101; C_typeId_173[this_148] = 1; } else { error147("Out of memory: Could not create C."); this_148 = 0; }; } else { C_firstFree_187 = (C_firstFree_187 - 1); this_148 = C_nextFree_682[C_firstFree_187]; C_typeId_173[this_148] = 1; }; return this_148; } function error147(string msg282) { $debugPrint208((msg_282 + (" " + #getStackTrace()))); } function dispatch_SimpleFunc_test_SimpleFunc_apply392(integer this144) returns integer { local integer this850 if (SimpleFunc_typeId_205[this_144] == 0) { if (this_144 == 0) { error147("Nullpointer exception when calling SimpleFunc.apply"); } else { error147("Called SimpleFunc.apply on invalid object."); }; } else { }; this_850 = this_187[this_144]; if (C_typeId_173[this_850] == 0) { if (this_850 == 0) { error147("Nullpointer exception when calling C.x"); } else { error147("Called C.x on invalid object."); }; } else { }; return (3 + C_y_528[this_187[this_144]]); }