array C_nextFree177 integer C_firstFree774 integer C_maxIndex140 array C_typeId113 integer C_firstFree774 = 0 integer C_maxIndex140 = 0 function initGlobals558() { } function main213() { initGlobals558(); init_test332(); } function config115() { } function init_test332() { local integer this207 this_207 = new_D685(); if (C_typeId_113[this_207] == 0) { if (this_207 == 0) { error203("Nullpointer exception when calling C.bar"); } else { error203("Called C.bar on invalid object."); }; } else { }; if (dispatch_C_test_C_foo652(this_207) == 4) { testSuccess192(); } else { }; } IS_NATIVE function testSuccess192() { } function new_D685() returns integer { local integer this110 if (C_firstFree_774 == 0) { if (C_maxIndex_140 < 32768) { C_maxIndex_140 = (C_maxIndex_140 + 1); this_110 = C_maxIndex_140; C_typeId_113[this_110] = 2; } else { error203("Out of memory: Could not create D."); this_110 = 0; }; } else { C_firstFree_774 = (C_firstFree_774 - 1); this_110 = C_nextFree_177[C_firstFree_774]; C_typeId_113[this_110] = 2; }; return this_110; } function error203(string msg157) { $debugPrint677((msg_157 + (" " + #getStackTrace()))); } function dispatch_C_test_C_foo652(integer this103) returns integer { if (C_typeId_113[this_103] == 0) { if (this_103 == 0) { error203("Nullpointer exception when calling C.foo"); } else { error203("Called C.foo on invalid object."); }; } else { }; if (C_typeId_113[this_103] <= 1) { this_103 = 3; } else { this_103 = 4; }; return this_103; }