array C_nextFree121 integer C_firstFree347 integer C_maxIndex338 array C_typeId202 integer C_firstFree347 = 0 integer C_maxIndex338 = 0 function initGlobals184() { } function main949() { initGlobals184(); init_test515(); } function config412() { } function init_test515() { local integer e110 e_110 = new_E113(); if (C_typeId_202[e_110] == 0) { if (e_110 == 0) { error194("Nullpointer exception when calling D.bla"); } else { error194("Called D.bla on invalid object."); }; } else { }; if (dispatch_C_test_C_foo833(e_110) == 4) { testSuccess709(); } else { }; } IS_NATIVE function testSuccess709() { } function new_E113() returns integer { local integer this138 if (C_firstFree_347 == 0) { if (C_maxIndex_338 < 32768) { C_maxIndex_338 = (C_maxIndex_338 + 1); this_138 = C_maxIndex_338; C_typeId_202[this_138] = 3; } else { error194("Out of memory: Could not create E."); this_138 = 0; }; } else { C_firstFree_347 = (C_firstFree_347 - 1); this_138 = C_nextFree_121[C_firstFree_347]; C_typeId_202[this_138] = 3; }; return this_138; } function error194(string msg907) { $debugPrint852((msg_907 + (" " + #getStackTrace()))); } function dispatch_C_test_C_foo833(integer this892) returns integer { if (C_typeId_202[this_892] == 0) { if (this_892 == 0) { error194("Nullpointer exception when calling C.foo"); } else { error194("Called C.foo on invalid object."); }; } else { }; if (C_typeId_202[this_892] <= 2) { this_892 = 3; } else { this_892 = 4; }; return this_892; }