array C_nextFree111 integer C_firstFree399 integer C_maxIndex105 array C_typeId706 integer C_firstFree399 = 0 integer C_maxIndex105 = 0 function initGlobals165() { } function main800() { initGlobals165(); init_test346(); } function config626() { } function init_test346() { local integer this405 this_405 = new_D324(); if (C_typeId_706[this_405] == 0) { if (this_405 == 0) { error214("Nullpointer exception when calling C.bar"); } else { error214("Called C.bar on invalid object."); }; } else { }; if (dispatch_C_test_C_foo340(this_405) == 4) { testSuccess170(); } else { }; } IS_NATIVE function testSuccess170() { } function new_D324() returns integer { local integer this148 if (C_firstFree_399 == 0) { if (C_maxIndex_105 < 32768) { C_maxIndex_105 = (C_maxIndex_105 + 1); this_148 = C_maxIndex_105; C_typeId_706[this_148] = 2; } else { error214("Out of memory: Could not create D."); this_148 = 0; }; } else { C_firstFree_399 = (C_firstFree_399 - 1); this_148 = C_nextFree_111[C_firstFree_399]; C_typeId_706[this_148] = 2; }; return this_148; } function error214(string msg114) { $debugPrint198((msg_114 + (" " + #getStackTrace()))); } function dispatch_C_test_C_foo340(integer this166) returns integer { if (C_typeId_706[this_166] == 0) { if (this_166 == 0) { error214("Nullpointer exception when calling C.foo"); } else { error214("Called C.foo on invalid object."); }; } else { }; if (C_typeId_706[this_166] <= 1) { this_166 = 3; } else { this_166 = 4; }; return this_166; }