array C_nextFree178 integer C_firstFree121 integer C_maxIndex130 array C_typeId163 integer C_firstFree121 = 0 integer C_maxIndex130 = 0 function initGlobals744() { } function main270() { initGlobals744(); init_test120(); } function config161() { } function init_test120() { local integer this440 local integer test_C_bar_result784 local integer this130 this_440 = new_D850(); if (C_typeId_163[this_440] == 0) { if (this_440 == 0) { error126("Nullpointer exception when calling C.bar"); } else { error126("Called C.bar on invalid object."); }; } else { }; this_130 = this_440; test_C_bar_result_784 = dispatch_C_test_C_foo154(this_130); if (test_C_bar_result_784 == 4) { testSuccess752(); } else { }; } IS_NATIVE function testSuccess752() { } function new_D850() returns integer { local integer this330 local integer this661 if (C_firstFree_121 == 0) { if (C_maxIndex_130 < 32768) { C_maxIndex_130 = (C_maxIndex_130 + 1); this_661 = C_maxIndex_130; C_typeId_163[this_661] = 2; } else { error126("Out of memory: Could not create D."); this_661 = 0; }; } else { C_firstFree_121 = (C_firstFree_121 - 1); this_661 = C_nextFree_178[C_firstFree_121]; C_typeId_163[this_661] = 2; }; this_330 = this_661; return this_330; } function error126(string msg143) { $debugPrint279((msg_143 + (" " + #getStackTrace()))); } function dispatch_C_test_C_foo154(integer this102) returns integer { local integer test_C_foo_result133 if (C_typeId_163[this_102] == 0) { if (this_102 == 0) { error126("Nullpointer exception when calling C.foo"); } else { error126("Called C.foo on invalid object."); }; } else { }; if (C_typeId_163[this_102] <= 1) { test_C_foo_result_133 = 3; } else { test_C_foo_result_133 = 4; }; return test_C_foo_result_133; }