array D_nextFree919 integer D_firstFree129 integer D_maxIndex212 array D_typeId520 array D_B_A_x163 integer D_firstFree129 = 0 integer D_maxIndex212 = 0 function initGlobals145() { D_firstFree_129 = 0; D_maxIndex_212 = 0; } function main100() { initGlobals145(); init_test871(); } function config153() { } function init_test871() { local integer d611 d_611 = new_D172(); dispatch_D_test_D_setX205(d_611, 4); if (dispatch_D_test_D_getX601(d_611) != 4) { testFail261("foo fail"); } else { }; testSuccess192(); } IS_NATIVE function testFail261(string msg226) { } IS_NATIVE function testSuccess192() { } function D_setX169(integer this194, integer x630) { D_B_A_setX194(this_194, x_630); } function D_B_A_setX194(integer this189, integer x201) { D_B_A_x_163[this_189] = x_201; } function D_getX204(integer this115) returns integer { return D_B_A_getX186(this_115); } function D_B_A_getX186(integer this201) returns integer { return D_B_A_x_163[this_201]; } function D_init129(integer this799) { construct_D_B144(this_799); construct_D_C132(this_799); } function construct_D_B144(integer this106) { construct_D_B_A155(this_106); } function construct_D_C132(integer this113) { construct_D_C_A211(this_113); } function construct_D_B_A155(integer this574) { } function construct_D_C_A211(integer this109) { } function new_D172() returns integer { local integer this790 this_790 = alloc_D178(); construct_D706(this_790); return this_790; } function construct_D706(integer this186) { D_init129(this_186); } function alloc_D178() returns integer { local integer this767 if (D_firstFree_129 == 0) { if (D_maxIndex_212 < 32768) { D_maxIndex_212 = (D_maxIndex_212 + 1); this_767 = D_maxIndex_212; D_typeId_520[this_767] = 1; } else { error158("Out of memory: Could not create D."); this_767 = 0; }; } else { D_firstFree_129 = (D_firstFree_129 - 1); this_767 = D_nextFree_919[D_firstFree_129]; D_typeId_520[this_767] = 1; }; return this_767; } function error158(string msg212) { $debugPrint108((msg_212 + (" " + #getStackTrace()))); } function dispatch_D_test_D_setX205(integer this109, integer x246) { if (D_typeId_520[this_109] == 0) { if (this_109 == 0) { error158("Nullpointer exception when calling D.setX"); } else { error158("Called D.setX on invalid object."); }; } else { }; D_setX169(this_109, x_246); } function dispatch_D_test_D_getX601(integer this476) returns integer { local integer test_D_getX_result154 if (D_typeId_520[this_476] == 0) { if (this_476 == 0) { error158("Nullpointer exception when calling D.getX"); } else { error158("Called D.getX on invalid object."); }; } else { }; test_D_getX_result_154 = D_getX204(this_476); return test_D_getX_result_154; }