/* This C file is generated by NIT to compile module compiling_global. */
#include "compiling_global._sep.h"
-val_t compiling_global___GlobalCompilerVisitor___program(val_t p0){
- struct {struct stack_frame_t me;} fra;
- val_t REGB0;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_compiling_global;
- fra.me.line = 25;
- fra.me.meth = LOCATE_compiling_global___GlobalCompilerVisitor___program;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- REGB0 = TAG_Bool(ATTR_compiling_global___GlobalCompilerVisitor____program(fra.me.REG[0])!=NIT_NULL);
- /* ./compiling//compiling_global.nit:25 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- fprintf(stderr, "Uninitialized attribute %s", "_program");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 25);
- nit_exit(1);
- }
- fra.me.REG[0] = ATTR_compiling_global___GlobalCompilerVisitor____program(fra.me.REG[0]);
- stack_frame_head = fra.me.prev;
- return fra.me.REG[0];
-}
-void compiling_global___GlobalCompilerVisitor___init(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
- int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_GlobalCompilerVisitor].i;
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t tmp;
- if (init_table[itpos0]) return;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_compiling_global;
- fra.me.line = 27;
- fra.me.meth = LOCATE_compiling_global___GlobalCompilerVisitor___init;
- fra.me.has_broke = 0;
- fra.me.REG_size = 5;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[2] = NIT_NULL;
- fra.me.REG[3] = NIT_NULL;
- fra.me.REG[4] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- fra.me.REG[2] = p2;
- fra.me.REG[3] = p3;
- fra.me.REG[4] = fra.me.REG[0];
- /* ./compiling//compiling_global.nit:29 */
- CALL_compiling_base___CompilerVisitor___init(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1], fra.me.REG[2], init_table);
- /* ./compiling//compiling_global.nit:30 */
- ATTR_compiling_global___GlobalCompilerVisitor____program(fra.me.REG[4]) = fra.me.REG[3];
- stack_frame_head = fra.me.prev;
- init_table[itpos0] = 1;
- return;
-}
void compiling_global___Program___compile_tables_to_c(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
val_t REGB0;
+ val_t REGB1;
val_t tmp;
- static val_t once_value_3; /* Once value */
static val_t once_value_4; /* Once value */
static val_t once_value_5; /* Once value */
static val_t once_value_6; /* Once value */
- static val_t once_value_7; /* Once value */
+ static val_t once_value_7; /* Once value */
static val_t once_value_8; /* Once value */
static val_t once_value_9; /* Once value */
- static val_t once_value_11; /* Once value */
+ static val_t once_value_10; /* Once value */
+ static val_t once_value_12; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 35;
+ fra.me.line = 24;
fra.me.meth = LOCATE_compiling_global___Program___compile_tables_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 7;
+ fra.me.REG_size = 8;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
fra.me.REG[5] = NIT_NULL;
fra.me.REG[6] = NIT_NULL;
+ fra.me.REG[7] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- fra.me.REG[2] = CALL_program___Program___module(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:27 */
+ fra.me.REG[2] = CALL_program___Program___main_module(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[2] = CALL_abstractmetamodel___MMModule___mhe(fra.me.REG[2])(fra.me.REG[2]);
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:38 */
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 38);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 27);
}
fra.me.REG[2] = CALL_partial_order___PartialOrderElement___greaters_and_self(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:39 */
- CALL_compiling_global___MMModule___compile_local_table_to_c(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- } else {
- /* ./compiling//compiling_global.nit:38 */
- goto label1;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
- }
- label1: while(0);
- fra.me.REG[2] = CALL_program___Program___module(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMModule___local_classes(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:42 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:43 */
- CALL_compiling_global___MMLocalClass___compile_tables_to_c(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- } else {
- /* ./compiling//compiling_global.nit:42 */
- goto label2;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
- }
- label2: while(0);
- /* ./compiling//compiling_global.nit:45 */
- if (!once_value_3) {
+ CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_compiling_global___Program___compile_tables_to_c_1));
+ CALL_program___Program___with_each_live_local_classes(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_compiling_global___Program___compile_tables_to_c_2));
+ /* ./compiling//compiling_global.nit:36 */
+ if (!once_value_4) {
fra.me.REG[2] = BOX_NativeString("classtable_t TAG2VFT[4] = {NULL");
REGB0 = TAG_Int(31);
fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_3 = fra.me.REG[2];
- register_static_object(&once_value_3);
- } else fra.me.REG[2] = once_value_3;
+ once_value_4 = fra.me.REG[2];
+ register_static_object(&once_value_4);
+ } else fra.me.REG[2] = once_value_4;
+ fra.me.REG[2] = fra.me.REG[2];
fra.me.REG[2] = NEW_Buffer_string___Buffer___from(fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:37 */
REGB0 = TAG_Int(3);
fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:46 */
- if (!once_value_4) {
+ if (!once_value_5) {
fra.me.REG[4] = BOX_NativeString("Int");
REGB0 = TAG_Int(3);
fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_4 = fra.me.REG[4];
- register_static_object(&once_value_4);
- } else fra.me.REG[4] = once_value_4;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- if (!once_value_5) {
- fra.me.REG[4] = BOX_NativeString("Char");
- REGB0 = TAG_Int(4);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
once_value_5 = fra.me.REG[4];
register_static_object(&once_value_5);
} else fra.me.REG[4] = once_value_5;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_6) {
- fra.me.REG[4] = BOX_NativeString("Bool");
+ fra.me.REG[4] = BOX_NativeString("Char");
REGB0 = TAG_Int(4);
fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
once_value_6 = fra.me.REG[4];
register_static_object(&once_value_6);
} else fra.me.REG[4] = once_value_6;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_abstract_collection___Collection___iterator(fra.me.REG[3])(fra.me.REG[3]);
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ if (!once_value_7) {
+ fra.me.REG[4] = BOX_NativeString("Bool");
+ REGB0 = TAG_Int(4);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_7 = fra.me.REG[4];
+ register_static_object(&once_value_7);
+ } else fra.me.REG[4] = once_value_7;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB0 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[4] = ATTR_array___Array____items(fra.me.REG[3]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[3])(fra.me.REG[3]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[4] = CALL_abstract_collection___Iterator___item(fra.me.REG[3])(fra.me.REG[3]);
- fra.me.REG[5] = CALL_program___Program___module(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_symbol___String___to_symbol(fra.me.REG[4])(fra.me.REG[4]);
- REGB0 = CALL_abstractmetamodel___MMModule___has_global_class_named(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:47 */
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Int(3);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:48 */
- if (!once_value_7) {
- fra.me.REG[5] = BOX_NativeString(", (const classtable_t)VFT_");
- REGB0 = TAG_Int(26);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_7 = fra.me.REG[5];
- register_static_object(&once_value_7);
- } else fra.me.REG[5] = once_value_7;
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- array___Array___add(fra.me.REG[6], fra.me.REG[4]);
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB1)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[5] = ((Nit_NativeArray)fra.me.REG[4])->val[UNTAG_Int(REGB0)];
+ /* ./compiling//compiling_global.nit:38 */
+ fra.me.REG[6] = CALL_program___Program___main_module(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[7] = CALL_symbol___String___to_symbol(fra.me.REG[5])(fra.me.REG[5]);
+ REGB1 = CALL_abstractmetamodel___MMModule___has_global_class_named(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
+ if (UNTAG_Bool(REGB1)) {
+ /* ./compiling//compiling_global.nit:39 */
+ REGB1 = TAG_Int(3);
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB1);
if (!once_value_8) {
- fra.me.REG[4] = BOX_NativeString("");
- REGB0 = TAG_Int(0);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_8 = fra.me.REG[4];
+ fra.me.REG[6] = BOX_NativeString(", (const classtable_t)VFT_");
+ REGB1 = TAG_Int(26);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB1);
+ once_value_8 = fra.me.REG[6];
register_static_object(&once_value_8);
- } else fra.me.REG[4] = once_value_8;
- array___Array___add(fra.me.REG[6], fra.me.REG[4]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
- } else {
- /* ./compiling//compiling_global.nit:50 */
+ } else fra.me.REG[6] = once_value_8;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]);
if (!once_value_9) {
- fra.me.REG[6] = BOX_NativeString(", NULL");
- REGB0 = TAG_Int(6);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_9 = fra.me.REG[6];
+ fra.me.REG[5] = BOX_NativeString("");
+ REGB1 = TAG_Int(0);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
+ once_value_9 = fra.me.REG[5];
register_static_object(&once_value_9);
- } else fra.me.REG[6] = once_value_9;
- CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
+ } else fra.me.REG[5] = once_value_9;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
+ } else {
+ /* ./compiling//compiling_global.nit:41 */
+ if (!once_value_10) {
+ fra.me.REG[7] = BOX_NativeString(", NULL");
+ REGB1 = TAG_Int(6);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB1);
+ once_value_10 = fra.me.REG[7];
+ register_static_object(&once_value_10);
+ } else fra.me.REG[7] = once_value_10;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
}
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB0 = REGB1;
} else {
- /* ./compiling//compiling_global.nit:46 */
- goto label10;
+ /* ./../lib/standard//collection//array.nit:237 */
+ goto label11;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[3])(fra.me.REG[3]);
}
- label10: while(0);
- /* ./compiling//compiling_global.nit:53 */
- if (!once_value_11) {
- fra.me.REG[3] = BOX_NativeString("};");
+ label11: while(0);
+ /* ./compiling//compiling_global.nit:44 */
+ if (!once_value_12) {
+ fra.me.REG[0] = BOX_NativeString("};");
REGB0 = TAG_Int(2);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_11 = fra.me.REG[3];
- register_static_object(&once_value_11);
- } else fra.me.REG[3] = once_value_11;
- CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_12 = fra.me.REG[0];
+ register_static_object(&once_value_12);
+ } else fra.me.REG[0] = once_value_12;
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___Sequence___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:45 */
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:54 */
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
stack_frame_head = fra.me.prev;
return;
}
+ void OC_compiling_global___Program___compile_tables_to_c_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+ struct {struct stack_frame_t me;} fra;
+ fun_t CREG[1];
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_compiling_global___Program___compile_tables_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.closure_ctx = closctx_param;
+ fra.me.closure_funs = CREG;
+ fra.me.REG[0] = p0;
+ CREG[0] = clos_fun0;
+ /* ./compiling//compiling_global.nit:28 */
+ CALL_compiling_global___MMModule___compile_local_table_to_c(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
+ stack_frame_head = fra.me.prev;
+ return;
+ }
+ void OC_compiling_global___Program___compile_tables_to_c_2(struct stack_frame_t *closctx, val_t p0){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t tmp;
+ /* ./compiling//compiling_global.nit:31 */
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 31;
+ fra.me.meth = LOCATE_compiling_global___Program___compile_tables_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./compiling//compiling_global.nit:32 */
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = CALL_abstractmetamodel___MMGlobalClass___is_abstract(fra.me.REG[1])(fra.me.REG[1]);
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Bool(true);
+ } else {
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
+ REGB1 = CALL_abstractmetamodel___MMGlobalClass___is_interface(fra.me.REG[1])(fra.me.REG[1]);
+ REGB0 = REGB1;
+ }
+ if (UNTAG_Bool(REGB0)) {
+ goto label3;
+ }
+ /* ./compiling//compiling_global.nit:33 */
+ CALL_compiling_global___MMLocalClass___compile_tables_to_c(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
+ label3: while(0);
+ stack_frame_head = fra.me.prev;
+ return;
+ }
void compiling_global___Program___compile_main_part(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
val_t REGB0;
val_t REGB1;
val_t tmp;
static val_t once_value_10; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 57;
+ fra.me.line = 48;
fra.me.meth = LOCATE_compiling_global___Program___compile_main_part;
fra.me.has_broke = 0;
- fra.me.REG_size = 4;
+ fra.me.REG_size = 3;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
- fra.me.REG[3] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:60 */
+ /* ./compiling//compiling_global.nit:51 */
if (!once_value_1) {
- fra.me.REG[3] = BOX_NativeString("int main(int argc, char **argv) {");
+ fra.me.REG[2] = BOX_NativeString("int main(int argc, char **argv) {");
REGB0 = TAG_Int(33);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_1 = fra.me.REG[3];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_1 = fra.me.REG[2];
register_static_object(&once_value_1);
- } else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_1;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:61 */
+ /* ./compiling//compiling_global.nit:52 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:62 */
+ /* ./compiling//compiling_global.nit:53 */
if (!once_value_2) {
- fra.me.REG[3] = BOX_NativeString("prepare_signals();");
+ fra.me.REG[2] = BOX_NativeString("prepare_signals();");
REGB0 = TAG_Int(18);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_2 = fra.me.REG[3];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_2 = fra.me.REG[2];
register_static_object(&once_value_2);
- } else fra.me.REG[3] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_2;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:63 */
+ /* ./compiling//compiling_global.nit:54 */
if (!once_value_3) {
- fra.me.REG[3] = BOX_NativeString("glob_argc = argc; glob_argv = argv;");
+ fra.me.REG[2] = BOX_NativeString("glob_argc = argc; glob_argv = argv;");
REGB0 = TAG_Int(35);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_3 = fra.me.REG[3];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_3 = fra.me.REG[2];
register_static_object(&once_value_3);
- } else fra.me.REG[3] = once_value_3;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_3;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- fra.me.REG[2] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:55 */
+ fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[2] = CALL_program___Program___main_method(fra.me.REG[2])(fra.me.REG[2]);
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:64 */
if (UNTAG_Bool(REGB0)) {
} else {
REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
}
}
if (UNTAG_Bool(REGB0)) {
- /* ./compiling//compiling_global.nit:65 */
+ /* ./compiling//compiling_global.nit:56 */
if (!once_value_4) {
fra.me.REG[2] = BOX_NativeString("No main");
REGB0 = TAG_Int(7);
once_value_4 = fra.me.REG[2];
register_static_object(&once_value_4);
} else fra.me.REG[2] = once_value_4;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_file___Object___print(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
} else {
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:67 */
+ /* ./compiling//compiling_global.nit:58 */
if (!once_value_5) {
- fra.me.REG[0] = BOX_NativeString("G_sys = NEW_Sys();");
+ fra.me.REG[2] = BOX_NativeString("G_sys = NEW_Sys();");
REGB0 = TAG_Int(18);
- fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
- once_value_5 = fra.me.REG[0];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_5 = fra.me.REG[2];
register_static_object(&once_value_5);
- } else fra.me.REG[0] = once_value_5;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[2] = once_value_5;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:68 */
+ /* ./compiling//compiling_global.nit:59 */
if (!once_value_6) {
- fra.me.REG[0] = BOX_NativeString("register_static_object(&G_sys);");
+ fra.me.REG[2] = BOX_NativeString("register_static_object(&G_sys);");
REGB0 = TAG_Int(31);
- fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
- once_value_6 = fra.me.REG[0];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_6 = fra.me.REG[2];
register_static_object(&once_value_6);
- } else fra.me.REG[0] = once_value_6;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[2] = once_value_6;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:60 */
REGB0 = TAG_Int(3);
- fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:69 */
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_7) {
- fra.me.REG[3] = BOX_NativeString("");
+ fra.me.REG[0] = BOX_NativeString("");
REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_7 = fra.me.REG[3];
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_7 = fra.me.REG[0];
register_static_object(&once_value_7);
- } else fra.me.REG[3] = once_value_7;
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
- fra.me.REG[3] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[3] = CALL_program___Program___main_method(fra.me.REG[3])(fra.me.REG[3]);
- REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+ } else fra.me.REG[0] = once_value_7;
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[0] = CALL_program___Program___main_method(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 69);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 60);
}
- fra.me.REG[3] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
+ fra.me.REG[0] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_8) {
- fra.me.REG[3] = BOX_NativeString("(G_sys);");
+ fra.me.REG[0] = BOX_NativeString("(G_sys);");
REGB0 = TAG_Int(8);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_8 = fra.me.REG[3];
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_8 = fra.me.REG[0];
register_static_object(&once_value_8);
- } else fra.me.REG[3] = once_value_8;
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
- fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[0] = once_value_8;
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
}
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:71 */
+ /* ./compiling//compiling_global.nit:62 */
if (!once_value_9) {
- fra.me.REG[0] = BOX_NativeString("return 0;");
+ fra.me.REG[2] = BOX_NativeString("return 0;");
REGB0 = TAG_Int(9);
- fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
- once_value_9 = fra.me.REG[0];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_9 = fra.me.REG[2];
register_static_object(&once_value_9);
- } else fra.me.REG[0] = once_value_9;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[2] = once_value_9;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:72 */
+ /* ./compiling//compiling_global.nit:63 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:73 */
+ /* ./compiling//compiling_global.nit:64 */
if (!once_value_10) {
- fra.me.REG[0] = BOX_NativeString("}");
+ fra.me.REG[2] = BOX_NativeString("}");
REGB0 = TAG_Int(1);
- fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
- once_value_10 = fra.me.REG[0];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_10 = fra.me.REG[2];
register_static_object(&once_value_10);
- } else fra.me.REG[0] = once_value_10;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[2] = once_value_10;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
stack_frame_head = fra.me.prev;
return;
}
void compiling_global___MMModule___declare_class_tables_to_c(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
- val_t REGB0;
- val_t REGB1;
+ struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 78;
+ fra.me.line = 69;
fra.me.meth = LOCATE_compiling_global___MMModule___declare_class_tables_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 5;
+ fra.me.REG_size = 3;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
- fra.me.REG[3] = NIT_NULL;
- fra.me.REG[4] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
+ /* ./compiling//compiling_global.nit:72 */
fra.me.REG[2] = CALL_abstractmetamodel___MMModule___local_classes(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:81 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
+ CALL_abstract_collection___Collection___iterate(fra.me.REG[2])(fra.me.REG[2], (&(fra.me)), ((fun_t)OC_compiling_global___MMModule___declare_class_tables_to_c_1));
+ stack_frame_head = fra.me.prev;
+ return;
+}
+ void OC_compiling_global___MMModule___declare_class_tables_to_c_1(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+ struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ fun_t CREG[1];
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_compiling_global___MMModule___declare_class_tables_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 2;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.closure_ctx = closctx_param;
+ fra.me.closure_funs = CREG;
+ fra.me.REG[0] = p0;
+ CREG[0] = clos_fun0;
+ /* ./compiling//compiling_global.nit:73 */
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[1] = CALL_abstractmetamodel___MMGlobalClass___mmmodule(fra.me.REG[1])(fra.me.REG[1]);
+ REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[1],closctx->REG[0]));
if (UNTAG_Bool(REGB0)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[3])(fra.me.REG[3]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMGlobalClass___module(fra.me.REG[4])(fra.me.REG[4]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[4],fra.me.REG[0]));
- /* ./compiling//compiling_global.nit:82 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./compiling//compiling_global.nit:83 */
- CALL_compiling_global___MMLocalClass___declare_tables_to_c(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1]);
- }
} else {
- /* ./compiling//compiling_global.nit:81 */
- goto label1;
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[1])(fra.me.REG[1], closctx->REG[0]);
+ REGB0 = REGB1;
+ }
+ if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:74 */
+ CALL_compiling_global___MMLocalClass___declare_tables_to_c(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1]);
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
+ stack_frame_head = fra.me.prev;
+ return;
}
- label1: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
void compiling_global___MMModule___compile_mod_to_c(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
val_t REGB0;
val_t REGB1;
+ val_t REGB2;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_2; /* Once value */
static val_t once_value_7; /* Once value */
static val_t once_value_8; /* Once value */
static val_t once_value_9; /* Once value */
- static val_t once_value_12; /* Once value */
- static val_t once_value_13; /* Once value */
- static val_t once_value_15; /* Once value */
- static val_t once_value_16; /* Once value */
- static val_t once_value_17; /* Once value */
- static val_t once_value_18; /* Once value */
- static val_t once_value_19; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 88;
+ fra.me.line = 79;
fra.me.meth = LOCATE_compiling_global___MMModule___compile_mod_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 9;
+ fra.me.REG_size = 8;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[5] = NIT_NULL;
fra.me.REG[6] = NIT_NULL;
fra.me.REG[7] = NIT_NULL;
- fra.me.REG[8] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:82 */
REGB0 = TAG_Int(3);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:91 */
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[4] = BOX_NativeString("extern const char *LOCATE_");
+ fra.me.REG[3] = BOX_NativeString("extern const char *LOCATE_");
REGB0 = TAG_Int(26);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_1 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
- } else fra.me.REG[4] = once_value_1;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ } else fra.me.REG[3] = once_value_1;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_2) {
- fra.me.REG[4] = BOX_NativeString(";");
+ fra.me.REG[3] = BOX_NativeString(";");
REGB0 = TAG_Int(1);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_2 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_2 = fra.me.REG[3];
register_static_object(&once_value_2);
- } else fra.me.REG[4] = once_value_2;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[3] = once_value_2;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___tc(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = CALL_compiling_base___ToolContext___global(fra.me.REG[2])(fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:83 */
+ fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[2] = CALL_program___Program___tc(fra.me.REG[2])(fra.me.REG[2]);
+ REGB0 = CALL_program___ToolContext___use_SFT_optimization(fra.me.REG[2])(fra.me.REG[2]);
REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- /* ./compiling//compiling_global.nit:92 */
if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:84 */
REGB0 = TAG_Int(3);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:93 */
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_3) {
- fra.me.REG[4] = BOX_NativeString("extern const int SFT_");
+ fra.me.REG[3] = BOX_NativeString("extern const int SFT_");
REGB0 = TAG_Int(21);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_3 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_3 = fra.me.REG[3];
register_static_object(&once_value_3);
- } else fra.me.REG[4] = once_value_3;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ } else fra.me.REG[3] = once_value_3;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_4) {
- fra.me.REG[4] = BOX_NativeString("[];");
+ fra.me.REG[3] = BOX_NativeString("[];");
REGB0 = TAG_Int(3);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_4 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_4 = fra.me.REG[3];
register_static_object(&once_value_4);
- } else fra.me.REG[4] = once_value_4;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[3] = once_value_4;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
}
+ /* ./compiling//compiling_global.nit:86 */
REGB0 = TAG_Int(0);
+ /* ./compiling//compiling_global.nit:87 */
fra.me.REG[2] = CALL_table_computation___MMModule___local_table(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:96 */
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[3] = ATTR_array___Array____items(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___tc(fra.me.REG[1])(fra.me.REG[1]);
- REGB1 = CALL_compiling_base___ToolContext___global(fra.me.REG[4])(fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:98 */
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Int(3);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:99 */
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB2 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[4] = ((Nit_NativeArray)fra.me.REG[3])->val[UNTAG_Int(REGB1)];
+ /* ./compiling//compiling_global.nit:89 */
+ fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[5] = CALL_program___Program___tc(fra.me.REG[5])(fra.me.REG[5]);
+ REGB2 = CALL_program___ToolContext___use_SFT_optimization(fra.me.REG[5])(fra.me.REG[5]);
+ if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:90 */
+ REGB2 = TAG_Int(3);
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_5) {
- fra.me.REG[5] = BOX_NativeString("");
- REGB1 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_5 = fra.me.REG[5];
+ fra.me.REG[6] = BOX_NativeString("");
+ REGB2 = TAG_Int(0);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_5 = fra.me.REG[6];
register_static_object(&once_value_5);
- } else fra.me.REG[5] = once_value_5;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[5] = CALL_compiling_global___ModuleTableElt___value(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[6] = once_value_5;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ fra.me.REG[6] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[6] = CALL_compiling_global___ModuleTableElt___value(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
if (!once_value_6) {
- fra.me.REG[5] = BOX_NativeString("");
- REGB1 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_6 = fra.me.REG[5];
+ fra.me.REG[6] = BOX_NativeString("");
+ REGB2 = TAG_Int(0);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_6 = fra.me.REG[6];
register_static_object(&once_value_6);
- } else fra.me.REG[5] = once_value_6;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ } else fra.me.REG[6] = once_value_6;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
} else {
- REGB1 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:101 */
+ /* ./compiling//compiling_global.nit:92 */
+ REGB2 = TAG_Int(5);
+ fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_7) {
- fra.me.REG[6] = BOX_NativeString("SFT_");
- REGB1 = TAG_Int(4);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB1);
- once_value_7 = fra.me.REG[6];
+ fra.me.REG[7] = BOX_NativeString("SFT_");
+ REGB2 = TAG_Int(4);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_7 = fra.me.REG[7];
register_static_object(&once_value_7);
- } else fra.me.REG[6] = once_value_7;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
+ } else fra.me.REG[7] = once_value_7;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
+ fra.me.REG[7] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
if (!once_value_8) {
- fra.me.REG[6] = BOX_NativeString("[");
- REGB1 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB1);
- once_value_8 = fra.me.REG[6];
+ fra.me.REG[7] = BOX_NativeString("[");
+ REGB2 = TAG_Int(1);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_8 = fra.me.REG[7];
register_static_object(&once_value_8);
- } else fra.me.REG[6] = once_value_8;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
+ } else fra.me.REG[7] = once_value_8;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
+ fra.me.REG[7] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
if (!once_value_9) {
- fra.me.REG[6] = BOX_NativeString("]");
- REGB1 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB1);
- once_value_9 = fra.me.REG[6];
+ fra.me.REG[7] = BOX_NativeString("]");
+ REGB2 = TAG_Int(1);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_9 = fra.me.REG[7];
register_static_object(&once_value_9);
- } else fra.me.REG[6] = once_value_9;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[4] = fra.me.REG[5];
- REGB1 = TAG_Int(1);
- REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
- REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:102 */
+ } else fra.me.REG[7] = once_value_9;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
+ fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
+ fra.me.REG[5] = fra.me.REG[6];
+ /* ./compiling//compiling_global.nit:93 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+ /* ./compiling//compiling_global.nit:93 */
+ REGB0 = REGB2;
}
- /* ./compiling//compiling_global.nit:104 */
- CALL_compiling_global___AbsTableElt___compile_macros(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:95 */
+ CALL_compiling_global___AbsTableElt___compile_macros(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1], fra.me.REG[5]);
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = REGB2;
} else {
- /* ./compiling//compiling_global.nit:96 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label10;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
}
label10: while(0);
+ /* ./compiling//compiling_global.nit:97 */
fra.me.REG[0] = CALL_abstractmetamodel___MMModule___local_classes(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_abstract_collection___Collection___iterator(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:106 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], (&(fra.me)), ((fun_t)OC_compiling_global___MMModule___compile_mod_to_c_11));
+ stack_frame_head = fra.me.prev;
+ return;
+}
+ void OC_compiling_global___MMModule___compile_mod_to_c_11(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+ struct {struct stack_frame_t me;} fra;
+ val_t REGB0;
+ fun_t CREG[1];
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_compiling_global___MMModule___compile_mod_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.closure_ctx = closctx_param;
+ fra.me.closure_funs = CREG;
+ fra.me.REG[0] = p0;
+ CREG[0] = clos_fun0;
+ closctx->REG[0] = fra.me.REG[0];
+ /* ./compiling//compiling_global.nit:98 */
+ REGB0 = TAG_Bool(VAL_ISA(closctx->REG[0], COLOR_MMConcreteClass, ID_MMConcreteClass)) /*cast MMConcreteClass*/;
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
if (UNTAG_Bool(REGB0)) {
- fra.me.REG[2] = CALL_abstract_collection___Iterator___item(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[2], COLOR_MMConcreteClass, ID_MMConcreteClass)) /*cast MMConcreteClass*/;
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- /* ./compiling//compiling_global.nit:107 */
+ goto label12;
+ }
+ /* ./compiling//compiling_global.nit:99 */
+ fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___global_properties(closctx->REG[0])(closctx->REG[0]);
+ CALL_abstract_collection___Collection___iterate(fra.me.REG[0])(fra.me.REG[0], closctx, ((fun_t)OC_compiling_global___MMModule___compile_mod_to_c_13));
+ label12: while(0);
+ stack_frame_head = fra.me.prev;
+ return;
+ }
+ void OC_compiling_global___MMModule___compile_mod_to_c_13(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
+ val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
+ val_t REGB3;
+ fun_t CREG[1];
+ val_t tmp;
+ static val_t once_value_14; /* Once value */
+ static val_t once_value_15; /* Once value */
+ static val_t once_value_17; /* Once value */
+ static val_t once_value_18; /* Once value */
+ static val_t once_value_19; /* Once value */
+ static val_t once_value_20; /* Once value */
+ static val_t once_value_21; /* Once value */
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_compiling_global___MMModule___compile_mod_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 4;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[3] = NIT_NULL;
+ fra.me.closure_ctx = closctx_param;
+ fra.me.closure_funs = CREG;
+ fra.me.REG[0] = p0;
+ CREG[0] = clos_fun0;
+ /* ./compiling//compiling_global.nit:100 */
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalClass_____bra(closctx->REG[0])(closctx->REG[0], fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:101 */
+ fra.me.REG[2] = CALL_abstractmetamodel___MMLocalProperty___local_class(fra.me.REG[1])(fra.me.REG[1]);
+ REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[2],closctx->REG[0]));
if (UNTAG_Bool(REGB0)) {
- goto label11;
+ } else {
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], closctx->REG[0]);
+ REGB0 = REGB1;
}
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[4] = CALL_abstract_collection___Collection___iterator(fra.me.REG[4])(fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:108 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[4])(fra.me.REG[4]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[4])(fra.me.REG[4]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalProperty___local_class(fra.me.REG[5])(fra.me.REG[5]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[6],fra.me.REG[2]));
- /* ./compiling//compiling_global.nit:110 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[5], COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
- } else {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./compiling//compiling_global.nit:111 */
- CALL_compiling_global___MMMethod___compile_property_to_c(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1]);
- }
- REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init_for(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:113 */
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[3] = NEW_Array_array___Array___init();
- REGB0 = TAG_Int(0);
- fra.me.REG[6] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[5])(fra.me.REG[5]);
- REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- /* ./compiling//compiling_global.nit:116 */
- if (UNTAG_Bool(REGB1)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 116);
- nit_exit(1);
- }
- REGB1 = CALL_static_type___MMSignature___arity(fra.me.REG[6])(fra.me.REG[6]);
- fra.me.REG[6] = NEW_Range_range___Range___without_last(REGB0, REGB1);
- fra.me.REG[6] = CALL_abstract_collection___Collection___iterator(fra.me.REG[6])(fra.me.REG[6]);
- while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[6])(fra.me.REG[6]);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = CALL_abstract_collection___Iterator___item(fra.me.REG[6])(fra.me.REG[6]);
- REGB0 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:117 */
- if (!once_value_12) {
- fra.me.REG[8] = BOX_NativeString("val_t p");
- REGB0 = TAG_Int(7);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB0);
- once_value_12 = fra.me.REG[8];
- register_static_object(&once_value_12);
- } else fra.me.REG[8] = once_value_12;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- fra.me.REG[8] = CALL_string___Object___to_s(REGB1)(REGB1);
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- if (!once_value_13) {
- fra.me.REG[8] = BOX_NativeString("");
- REGB1 = TAG_Int(0);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB1);
- once_value_13 = fra.me.REG[8];
- register_static_object(&once_value_13);
- } else fra.me.REG[8] = once_value_13;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[3], fra.me.REG[7]);
- } else {
- /* ./compiling//compiling_global.nit:116 */
- goto label14;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[6])(fra.me.REG[6]);
- }
- label14: while(0);
- REGB1 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB1);
- REGB1 = TAG_Int(7);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:119 */
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
+ } else {
+ REGB1 = TAG_Bool(false);
+ REGB0 = REGB1;
+ }
+ if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:102 */
+ CALL_compiling_global___MMMethod___compile_property_to_c(fra.me.REG[1])(fra.me.REG[1], closctx->REG[1]);
+ }
+ /* ./compiling//compiling_global.nit:104 */
+ REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init_for(fra.me.REG[0])(fra.me.REG[0], closctx->REG[0]);
+ if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:106 */
+ fra.me.REG[0] = NEW_Array_array___Array___init();
+ /* ./compiling//compiling_global.nit:107 */
+ REGB0 = TAG_Int(0);
+ fra.me.REG[2] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[1])(fra.me.REG[1]);
+ REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 107);
+ }
+ REGB1 = CALL_static_type___MMSignature___arity(fra.me.REG[2])(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:332 */
+ while(1) {
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//kernel.nit:332 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:107 */
+ REGB2 = REGB0;
+ /* ./compiling//compiling_global.nit:108 */
+ REGB3 = TAG_Int(3);
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB3);
+ if (!once_value_14) {
+ fra.me.REG[3] = BOX_NativeString("val_t p");
+ REGB3 = TAG_Int(7);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB3);
+ once_value_14 = fra.me.REG[3];
+ register_static_object(&once_value_14);
+ } else fra.me.REG[3] = once_value_14;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_string___Object___to_s(REGB2)(REGB2);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_15) {
- fra.me.REG[8] = BOX_NativeString("val_t NEW_");
- REGB1 = TAG_Int(10);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB1);
- once_value_15 = fra.me.REG[8];
+ fra.me.REG[3] = BOX_NativeString("");
+ REGB2 = TAG_Int(0);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
+ once_value_15 = fra.me.REG[3];
register_static_object(&once_value_15);
- } else fra.me.REG[8] = once_value_15;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- fra.me.REG[8] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- if (!once_value_16) {
- fra.me.REG[8] = BOX_NativeString("_");
- REGB1 = TAG_Int(1);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB1);
- once_value_16 = fra.me.REG[8];
- register_static_object(&once_value_16);
- } else fra.me.REG[8] = once_value_16;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMGlobalProperty___intro(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
- if (!once_value_17) {
- fra.me.REG[5] = BOX_NativeString("(");
- REGB1 = TAG_Int(1);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_17 = fra.me.REG[5];
- register_static_object(&once_value_17);
- } else fra.me.REG[5] = once_value_17;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
- if (!once_value_18) {
- fra.me.REG[5] = BOX_NativeString(", ");
- REGB1 = TAG_Int(2);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_18 = fra.me.REG[5];
- register_static_object(&once_value_18);
- } else fra.me.REG[5] = once_value_18;
- fra.me.REG[5] = CALL_string___Collection___join(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
- if (!once_value_19) {
- fra.me.REG[5] = BOX_NativeString(");");
- REGB1 = TAG_Int(2);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_19 = fra.me.REG[5];
- register_static_object(&once_value_19);
- } else fra.me.REG[5] = once_value_19;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ } else fra.me.REG[3] = once_value_15;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:334 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+ /* ./../lib/standard//kernel.nit:334 */
+ REGB0 = REGB2;
+ } else {
+ /* ./../lib/standard//kernel.nit:332 */
+ goto label16;
}
- } else {
- /* ./compiling//compiling_global.nit:108 */
- goto label20;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[4])(fra.me.REG[4]);
+ label16: while(0);
+ /* ./compiling//compiling_global.nit:110 */
+ REGB0 = TAG_Int(7);
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_17) {
+ fra.me.REG[3] = BOX_NativeString("val_t NEW_");
+ REGB0 = TAG_Int(10);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_17 = fra.me.REG[3];
+ register_static_object(&once_value_17);
+ } else fra.me.REG[3] = once_value_17;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_string___Object___to_s(closctx->REG[0])(closctx->REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ if (!once_value_18) {
+ fra.me.REG[3] = BOX_NativeString("_");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_18 = fra.me.REG[3];
+ register_static_object(&once_value_18);
+ } else fra.me.REG[3] = once_value_18;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[1] = CALL_abstractmetamodel___MMGlobalProperty___intro(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[1] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[1])(fra.me.REG[1]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ if (!once_value_19) {
+ fra.me.REG[1] = BOX_NativeString("(");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
+ once_value_19 = fra.me.REG[1];
+ register_static_object(&once_value_19);
+ } else fra.me.REG[1] = once_value_19;
+ fra.me.REG[1] = fra.me.REG[1];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ if (!once_value_20) {
+ fra.me.REG[1] = BOX_NativeString(", ");
+ REGB0 = TAG_Int(2);
+ fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
+ once_value_20 = fra.me.REG[1];
+ register_static_object(&once_value_20);
+ } else fra.me.REG[1] = once_value_20;
+ fra.me.REG[1] = fra.me.REG[1];
+ fra.me.REG[1] = CALL_string___Collection___join(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ if (!once_value_21) {
+ fra.me.REG[1] = BOX_NativeString(");");
+ REGB0 = TAG_Int(2);
+ fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
+ once_value_21 = fra.me.REG[1];
+ register_static_object(&once_value_21);
+ } else fra.me.REG[1] = once_value_21;
+ fra.me.REG[1] = fra.me.REG[1];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
+ CALL_compiling_base___CompilerVisitor___add_decl(closctx->REG[1])(closctx->REG[1], fra.me.REG[2]);
}
- label20: while(0);
- label11: while(0);
- } else {
- /* ./compiling//compiling_global.nit:106 */
- goto label21;
+ stack_frame_head = fra.me.prev;
+ return;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[0])(fra.me.REG[0]);
- }
- label21: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
void compiling_global___MMModule___compile_local_table_to_c(val_t p0, val_t p1){
struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
val_t REGB0;
static val_t once_value_10; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 125;
+ fra.me.line = 116;
fra.me.meth = LOCATE_compiling_global___MMModule___compile_local_table_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 5;
fra.me.REG[4] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:119 */
REGB0 = TAG_Int(5);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:128 */
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[4] = BOX_NativeString("const char *LOCATE_");
+ fra.me.REG[3] = BOX_NativeString("const char *LOCATE_");
REGB0 = TAG_Int(19);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_1 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
- } else fra.me.REG[4] = once_value_1;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ } else fra.me.REG[3] = once_value_1;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_2) {
- fra.me.REG[4] = BOX_NativeString(" = \"");
+ fra.me.REG[3] = BOX_NativeString(" = \"");
REGB0 = TAG_Int(4);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_2 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_2 = fra.me.REG[3];
register_static_object(&once_value_2);
- } else fra.me.REG[4] = once_value_2;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMModule___location(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_location___Location___file(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ } else fra.me.REG[3] = once_value_2;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMModule___location(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_location___Location___file(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_3) {
- fra.me.REG[4] = BOX_NativeString("\";");
+ fra.me.REG[3] = BOX_NativeString("\";");
REGB0 = TAG_Int(2);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_3 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_3 = fra.me.REG[3];
register_static_object(&once_value_3);
- } else fra.me.REG[4] = once_value_3;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[3] = once_value_3;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___tc(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = CALL_compiling_base___ToolContext___global(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:130 */
+ /* ./compiling//compiling_global.nit:121 */
+ fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[2] = CALL_program___Program___tc(fra.me.REG[2])(fra.me.REG[2]);
+ REGB0 = CALL_program___ToolContext___use_SFT_optimization(fra.me.REG[2])(fra.me.REG[2]);
if (UNTAG_Bool(REGB0)) {
REGB0 = TAG_Bool(true);
} else {
REGB0 = REGB1;
}
if (UNTAG_Bool(REGB0)) {
- /* ./compiling//compiling_global.nit:131 */
+ /* ./compiling//compiling_global.nit:122 */
goto label4;
}
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:125 */
REGB0 = TAG_Int(5);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:134 */
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_5) {
- fra.me.REG[4] = BOX_NativeString("const int SFT_");
+ fra.me.REG[3] = BOX_NativeString("const int SFT_");
REGB0 = TAG_Int(14);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_5 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_5 = fra.me.REG[3];
register_static_object(&once_value_5);
- } else fra.me.REG[4] = once_value_5;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ } else fra.me.REG[3] = once_value_5;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMModule___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_6) {
- fra.me.REG[4] = BOX_NativeString("[");
+ fra.me.REG[3] = BOX_NativeString("[");
REGB0 = TAG_Int(1);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_6 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_6 = fra.me.REG[3];
register_static_object(&once_value_6);
- } else fra.me.REG[4] = once_value_6;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[4] = CALL_table_computation___MMModule___local_table(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL);
+ } else fra.me.REG[3] = once_value_6;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_table_computation___MMModule___local_table(fra.me.REG[0])(fra.me.REG[0]);
/* ./../lib/standard//collection//array.nit:23 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
if (UNTAG_Bool(REGB0)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
- REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]);
- fra.me.REG[4] = CALL_string___Object___to_s(REGB0)(REGB0);
- /* ./compiling//compiling_global.nit:134 */
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:125 */
+ fra.me.REG[3] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_7) {
- fra.me.REG[4] = BOX_NativeString("] = {");
+ fra.me.REG[3] = BOX_NativeString("] = {");
REGB0 = TAG_Int(5);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_7 = fra.me.REG[4];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_7 = fra.me.REG[3];
register_static_object(&once_value_7);
- } else fra.me.REG[4] = once_value_7;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[3] = once_value_7;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:135 */
+ /* ./compiling//compiling_global.nit:126 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:127 */
fra.me.REG[0] = CALL_table_computation___MMModule___local_table(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_abstract_collection___Collection___iterator(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:136 */
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB0 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[2] = ATTR_array___Array____items(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[0])(fra.me.REG[0]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[2] = CALL_abstract_collection___Iterator___item(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- fra.me.REG[4] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[4] = CALL_compiling_global___ModuleTableElt___value(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:137 */
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB1)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[3] = ((Nit_NativeArray)fra.me.REG[2])->val[UNTAG_Int(REGB0)];
+ /* ./compiling//compiling_global.nit:128 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[4] = CALL_compiling_global___ModuleTableElt___value(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_8) {
- fra.me.REG[2] = BOX_NativeString(",");
- REGB0 = TAG_Int(1);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_8 = fra.me.REG[2];
+ fra.me.REG[3] = BOX_NativeString(",");
+ REGB1 = TAG_Int(1);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB1);
+ once_value_8 = fra.me.REG[3];
register_static_object(&once_value_8);
- } else fra.me.REG[2] = once_value_8;
- fra.me.REG[2] = CALL_string___String_____plus(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
+ } else fra.me.REG[3] = once_value_8;
+ fra.me.REG[3] = fra.me.REG[3];
+ fra.me.REG[3] = CALL_string___String_____plus(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB0 = REGB1;
} else {
- /* ./compiling//compiling_global.nit:136 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label9;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[0])(fra.me.REG[0]);
}
label9: while(0);
- /* ./compiling//compiling_global.nit:139 */
+ /* ./compiling//compiling_global.nit:130 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = TAG_Int(0);
- fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:140 */
+ /* ./compiling//compiling_global.nit:131 */
if (!once_value_10) {
- fra.me.REG[3] = BOX_NativeString("};");
+ fra.me.REG[2] = BOX_NativeString("};");
REGB0 = TAG_Int(2);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_10 = fra.me.REG[3];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_10 = fra.me.REG[2];
register_static_object(&once_value_10);
- } else fra.me.REG[3] = once_value_10;
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ } else fra.me.REG[2] = once_value_10;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
label4: while(0);
stack_frame_head = fra.me.prev;
return;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 147;
+ fra.me.line = 138;
fra.me.meth = LOCATE_compiling_global___AbsTableElt___compile_macros;
fra.me.has_broke = 0;
fra.me.REG_size = 0;
- /* ./compiling//compiling_global.nit:147 */
- fprintf(stderr, "Deferred method called");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 147);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:138 */
+ nit_abort("Deferred method called", NULL, LOCATE_compiling_global, 138);
stack_frame_head = fra.me.prev;
return;
}
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 152;
+ fra.me.line = 143;
fra.me.meth = LOCATE_compiling_global___TableElt___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 0;
- /* ./compiling//compiling_global.nit:152 */
- fprintf(stderr, "Deferred method called");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 152);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:143 */
+ nit_abort("Deferred method called", NULL, LOCATE_compiling_global, 143);
stack_frame_head = fra.me.prev;
return NIT_NULL;
}
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 157;
+ fra.me.line = 148;
fra.me.meth = LOCATE_compiling_global___ModuleTableElt___value;
fra.me.has_broke = 0;
fra.me.REG_size = 0;
- /* ./compiling//compiling_global.nit:157 */
- fprintf(stderr, "Deferred method called");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 157);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:148 */
+ nit_abort("Deferred method called", NULL, LOCATE_compiling_global, 148);
stack_frame_head = fra.me.prev;
return NIT_NULL;
}
-void compiling_global___ModuleTableEltGroup___compile_macros(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- static val_t once_value_1; /* Once value */
- static val_t once_value_2; /* Once value */
- static val_t once_value_3; /* Once value */
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_compiling_global;
- fra.me.line = 163;
- fra.me.meth = LOCATE_compiling_global___ModuleTableEltGroup___compile_macros;
- fra.me.has_broke = 0;
- fra.me.REG_size = 6;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[2] = NIT_NULL;
- fra.me.REG[3] = NIT_NULL;
- fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- fra.me.REG[2] = p2;
- REGB0 = TAG_Int(0);
- fra.me.REG[0] = CALL_table_computation___ModuleTableEltGroup___elements(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_abstract_collection___Collection___iterator(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:166 */
- while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[0])(fra.me.REG[0]);
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[3] = CALL_abstract_collection___Iterator___item(fra.me.REG[0])(fra.me.REG[0]);
- REGB1 = TAG_Int(5);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:167 */
- if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("");
- REGB1 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_1 = fra.me.REG[5];
- register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
- if (!once_value_2) {
- fra.me.REG[5] = BOX_NativeString(" + ");
- REGB1 = TAG_Int(3);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_2 = fra.me.REG[5];
- register_static_object(&once_value_2);
- } else fra.me.REG[5] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[5] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- if (!once_value_3) {
- fra.me.REG[5] = BOX_NativeString("");
- REGB1 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB1);
- once_value_3 = fra.me.REG[5];
- register_static_object(&once_value_3);
- } else fra.me.REG[5] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- CALL_compiling_global___AbsTableElt___compile_macros(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1], fra.me.REG[4]);
- REGB1 = TAG_Int(1);
- REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
- REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:168 */
- } else {
- /* ./compiling//compiling_global.nit:166 */
- goto label4;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[0])(fra.me.REG[0]);
- }
- label4: while(0);
- stack_frame_head = fra.me.prev;
- return;
-}
val_t compiling_global___ModuleTableEltGroup___value(val_t p0, val_t p1){
struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
val_t REGB0;
static val_t once_value_2; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 162;
+ fra.me.line = 153;
fra.me.meth = LOCATE_compiling_global___ModuleTableEltGroup___value;
fra.me.has_broke = 0;
fra.me.REG_size = 4;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
+ /* ./compiling//compiling_global.nit:153 */
REGB0 = TAG_Int(3);
fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:162 */
if (!once_value_1) {
fra.me.REG[3] = BOX_NativeString("");
REGB0 = TAG_Int(0);
once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
} else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[0] = CALL_table_computation___ModuleTableEltGroup___elements(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstract_collection___Collection___first(fra.me.REG[0])(fra.me.REG[0]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString(" /* Group of ? */");
REGB0 = TAG_Int(17);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
goto label3;
label3: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[2];
}
-void compiling_global___TableEltMeth___compile_macros(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+void compiling_global___ModuleTableEltGroup___compile_macros(val_t p0, val_t p1, val_t p2){
+ struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
val_t REGB0;
+ val_t REGB1;
+ val_t REGB2;
val_t tmp;
- static val_t once_value_1; /* Once value */
- static val_t once_value_2; /* Once value */
- static val_t once_value_3; /* Once value */
- static val_t once_value_4; /* Once value */
+ static val_t once_value_1; /* Once value */
+ static val_t once_value_2; /* Once value */
+ static val_t once_value_3; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 174;
- fra.me.meth = LOCATE_compiling_global___TableEltMeth___compile_macros;
+ fra.me.line = 154;
+ fra.me.meth = LOCATE_compiling_global___ModuleTableEltGroup___compile_macros;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 7;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
fra.me.REG[5] = NIT_NULL;
+ fra.me.REG[6] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:156 */
REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:157 */
+ fra.me.REG[0] = CALL_table_computation___ModuleTableEltGroup___elements(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[3] = ATTR_array___Array____items(fra.me.REG[0]);
+ /* ./../lib/standard//collection//array.nit:237 */
+ while(1) {
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[0])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[0]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB2 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[4] = ((Nit_NativeArray)fra.me.REG[3])->val[UNTAG_Int(REGB1)];
+ /* ./compiling//compiling_global.nit:158 */
+ REGB2 = TAG_Int(5);
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
+ if (!once_value_1) {
+ fra.me.REG[6] = BOX_NativeString("");
+ REGB2 = TAG_Int(0);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_1 = fra.me.REG[6];
+ register_static_object(&once_value_1);
+ } else fra.me.REG[6] = once_value_1;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[2]);
+ if (!once_value_2) {
+ fra.me.REG[6] = BOX_NativeString(" + ");
+ REGB2 = TAG_Int(3);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_2 = fra.me.REG[6];
+ register_static_object(&once_value_2);
+ } else fra.me.REG[6] = once_value_2;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ fra.me.REG[6] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ if (!once_value_3) {
+ fra.me.REG[6] = BOX_NativeString("");
+ REGB2 = TAG_Int(0);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_3 = fra.me.REG[6];
+ register_static_object(&once_value_3);
+ } else fra.me.REG[6] = once_value_3;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_compiling_global___AbsTableElt___compile_macros(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:159 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+ /* ./compiling//compiling_global.nit:159 */
+ REGB0 = REGB2;
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = REGB2;
+ } else {
+ /* ./../lib/standard//collection//array.nit:237 */
+ goto label4;
+ }
+ }
+ label4: while(0);
+ stack_frame_head = fra.me.prev;
+ return;
+}
+void compiling_global___TableEltMeth___compile_macros(val_t p0, val_t p1, val_t p2){
+ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
+ val_t REGB0;
+ val_t tmp;
+ static val_t once_value_1; /* Once value */
+ static val_t once_value_2; /* Once value */
+ static val_t once_value_3; /* Once value */
+ static val_t once_value_4; /* Once value */
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 165;
+ fra.me.meth = LOCATE_compiling_global___TableEltMeth___compile_macros;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 5;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[3] = NIT_NULL;
+ fra.me.REG[4] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ fra.me.REG[1] = p1;
+ fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:167 */
+ fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[0] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:168 */
REGB0 = TAG_Int(7);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:177 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("#define ");
+ fra.me.REG[4] = BOX_NativeString("#define ");
REGB0 = TAG_Int(8);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_1 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_base___MMGlobalProperty___meth_call(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_compiling_base___MMGlobalProperty___meth_call(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_2) {
- fra.me.REG[5] = BOX_NativeString("(recv) ((");
+ fra.me.REG[4] = BOX_NativeString("(recv) ((");
REGB0 = TAG_Int(9);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_2 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_2 = fra.me.REG[4];
register_static_object(&once_value_2);
- } else fra.me.REG[5] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_2;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[0] = CALL_abstractmetamodel___MMGlobalProperty___intro(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_3) {
fra.me.REG[0] = BOX_NativeString("_t)CALL((recv), (");
REGB0 = TAG_Int(17);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_4) {
fra.me.REG[2] = BOX_NativeString(")))");
REGB0 = TAG_Int(3);
once_value_4 = fra.me.REG[2];
register_static_object(&once_value_4);
} else fra.me.REG[2] = once_value_4;
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
stack_frame_head = fra.me.prev;
return;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 180;
+ fra.me.line = 171;
fra.me.meth = LOCATE_compiling_global___TableEltMeth___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 3;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:173 */
fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:174 */
fra.me.REG[0] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:183 */
goto label1;
label1: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[0];
}
void compiling_global___TableEltSuper___compile_macros(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
val_t REGB0;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_4; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 188;
+ fra.me.line = 179;
fra.me.meth = LOCATE_compiling_global___TableEltSuper___compile_macros;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 5;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:181 */
fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:182 */
REGB0 = TAG_Int(7);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:191 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("#define ");
+ fra.me.REG[4] = BOX_NativeString("#define ");
REGB0 = TAG_Int(8);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_1 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_base___MMLocalProperty___super_meth_call(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_compiling_base___MMLocalProperty___super_meth_call(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_2) {
- fra.me.REG[5] = BOX_NativeString("(recv) ((");
+ fra.me.REG[4] = BOX_NativeString("(recv) ((");
REGB0 = TAG_Int(9);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_2 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_2 = fra.me.REG[4];
register_static_object(&once_value_2);
- } else fra.me.REG[5] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_2;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[0] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_3) {
fra.me.REG[0] = BOX_NativeString("_t)CALL((recv), (");
REGB0 = TAG_Int(17);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_4) {
fra.me.REG[2] = BOX_NativeString(")))");
REGB0 = TAG_Int(3);
once_value_4 = fra.me.REG[2];
register_static_object(&once_value_4);
} else fra.me.REG[2] = once_value_4;
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
stack_frame_head = fra.me.prev;
return;
}
val_t compiling_global___TableEltSuper___compile_to_c(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
val_t REGB0;
val_t REGB1;
val_t REGB2;
+ val_t REGB3;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 194;
+ fra.me.line = 185;
fra.me.meth = LOCATE_compiling_global___TableEltSuper___compile_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 7;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
fra.me.REG[5] = NIT_NULL;
+ fra.me.REG[6] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:187 */
fra.me.REG[1] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[1] = CALL_abstractmetamodel___MMLocalProperty___local_class(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:188 */
fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:189 */
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___che(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[3] = CALL_partial_order___PartialOrderElement___linear_extension(fra.me.REG[3])(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:190 */
REGB0 = TAG_Bool(false);
- fra.me.REG[3] = CALL_abstract_collection___Collection___iterator(fra.me.REG[3])(fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:200 */
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[4] = ATTR_array___Array____items(fra.me.REG[3]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[3])(fra.me.REG[3]);
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[4] = CALL_abstract_collection___Iterator___item(fra.me.REG[3])(fra.me.REG[3]);
- REGB1 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[4],fra.me.REG[1]));
- /* ./compiling//compiling_global.nit:202 */
- if (UNTAG_Bool(REGB1)) {
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[5] = ((Nit_NativeArray)fra.me.REG[4])->val[UNTAG_Int(REGB1)];
+ /* ./compiling//compiling_global.nit:193 */
+ REGB2 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[5],fra.me.REG[1]));
+ if (UNTAG_Bool(REGB2)) {
} else {
- REGB2 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1]);
- REGB1 = REGB2;
+ REGB3 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1]);
+ REGB2 = REGB3;
}
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(true);
- REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:203 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:194 */
+ REGB2 = TAG_Bool(true);
+ REGB0 = REGB2;
} else {
- /* ./compiling//compiling_global.nit:204 */
+ /* ./compiling//compiling_global.nit:195 */
if (UNTAG_Bool(REGB0)) {
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___che(fra.me.REG[2])(fra.me.REG[2]);
- REGB1 = CALL_partial_order___PartialOrderElement_____l(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]);
+ fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___che(fra.me.REG[2])(fra.me.REG[2]);
+ REGB2 = CALL_partial_order___PartialOrderElement_____l(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[5]);
} else {
- REGB2 = TAG_Bool(false);
- REGB1 = REGB2;
+ REGB3 = TAG_Bool(false);
+ REGB2 = REGB3;
}
- if (UNTAG_Bool(REGB1)) {
- REGB1 = CALL_abstractmetamodel___MMLocalClass___has_global_property(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:205 */
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
- fra.me.REG[4] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[4])(fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:207 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:196 */
+ REGB2 = CALL_abstractmetamodel___MMLocalClass___has_global_property(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+ if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:198 */
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
+ fra.me.REG[5] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[5])(fra.me.REG[5]);
goto label1;
}
}
}
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = REGB2;
} else {
- /* ./compiling//compiling_global.nit:200 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label2;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[3])(fra.me.REG[3]);
}
label2: while(0);
- /* ./compiling//compiling_global.nit:211 */
- fprintf(stderr, "Aborted");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 211);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:202 */
+ nit_abort("Aborted", NULL, LOCATE_compiling_global, 202);
label1: while(0);
stack_frame_head = fra.me.prev;
- return fra.me.REG[4];
+ return fra.me.REG[5];
}
void compiling_global___TableEltAttr___compile_macros(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
val_t REGB0;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_3; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 216;
+ fra.me.line = 207;
fra.me.meth = LOCATE_compiling_global___TableEltAttr___compile_macros;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 5;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:209 */
fra.me.REG[0] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:210 */
REGB0 = TAG_Int(5);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:219 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("#define ");
+ fra.me.REG[4] = BOX_NativeString("#define ");
REGB0 = TAG_Int(8);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_1 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[0] = CALL_compiling_base___MMGlobalProperty___attr_access(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString("(recv) ATTR(recv, (");
REGB0 = TAG_Int(19);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_3) {
fra.me.REG[2] = BOX_NativeString("))");
REGB0 = TAG_Int(2);
once_value_3 = fra.me.REG[2];
register_static_object(&once_value_3);
} else fra.me.REG[2] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
stack_frame_head = fra.me.prev;
return;
static val_t once_value_4; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 222;
+ fra.me.line = 213;
fra.me.meth = LOCATE_compiling_global___TableEltAttr___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 6;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:215 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:216 */
fra.me.REG[3] = CALL_table_computation___TableEltProp___property(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[3])(fra.me.REG[3]);
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:217 */
REGB0 = TAG_Int(7);
fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:226 */
if (!once_value_1) {
fra.me.REG[5] = BOX_NativeString("/* ");
REGB0 = TAG_Int(3);
once_value_1 = fra.me.REG[5];
register_static_object(&once_value_1);
} else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString(": Attribute ");
REGB0 = TAG_Int(12);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
if (!once_value_3) {
fra.me.REG[2] = BOX_NativeString("::");
REGB0 = TAG_Int(2);
once_value_3 = fra.me.REG[2];
register_static_object(&once_value_3);
} else fra.me.REG[2] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
if (!once_value_4) {
fra.me.REG[3] = BOX_NativeString(" */");
REGB0 = TAG_Int(3);
once_value_4 = fra.me.REG[3];
register_static_object(&once_value_4);
} else fra.me.REG[3] = once_value_4;
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
goto label5;
label5: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[4];
}
+val_t compiling_global___AbsTableEltClass___symbol(val_t p0){
+ struct {struct stack_frame_t me;} fra;
+ val_t tmp;
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 222;
+ fra.me.meth = LOCATE_compiling_global___AbsTableEltClass___symbol;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 0;
+ /* ./compiling//compiling_global.nit:222 */
+ nit_abort("Deferred method called", NULL, LOCATE_compiling_global, 222);
+ stack_frame_head = fra.me.prev;
+ return NIT_NULL;
+}
void compiling_global___AbsTableEltClass___compile_macros(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
val_t REGB0;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_3; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 234;
+ fra.me.line = 225;
fra.me.meth = LOCATE_compiling_global___AbsTableEltClass___compile_macros;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 5;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:227 */
REGB0 = TAG_Int(5);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:236 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("#define ");
+ fra.me.REG[4] = BOX_NativeString("#define ");
REGB0 = TAG_Int(8);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_1 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[0] = CALL_compiling_global___AbsTableEltClass___symbol(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString(" (");
REGB0 = TAG_Int(2);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[0]);
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_3) {
fra.me.REG[2] = BOX_NativeString(")");
REGB0 = TAG_Int(1);
once_value_3 = fra.me.REG[2];
register_static_object(&once_value_3);
} else fra.me.REG[2] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[2]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
stack_frame_head = fra.me.prev;
return;
}
-val_t compiling_global___AbsTableEltClass___symbol(val_t p0){
+val_t compiling_global___TableEltClassId___symbol(val_t p0){
struct {struct stack_frame_t me;} fra;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 231;
- fra.me.meth = LOCATE_compiling_global___AbsTableEltClass___symbol;
+ fra.me.line = 232;
+ fra.me.meth = LOCATE_compiling_global___TableEltClassId___symbol;
fra.me.has_broke = 0;
- fra.me.REG_size = 0;
- /* ./compiling//compiling_global.nit:231 */
- fprintf(stderr, "Deferred method called");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 231);
- nit_exit(1);
+ fra.me.REG_size = 1;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[0] = p0;
+ /* ./compiling//compiling_global.nit:232 */
+ fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___id_id(fra.me.REG[0])(fra.me.REG[0]);
+ goto label1;
+ label1: while(0);
stack_frame_head = fra.me.prev;
- return NIT_NULL;
+ return fra.me.REG[0];
}
val_t compiling_global___TableEltClassId___value(val_t p0, val_t p1){
struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
static val_t once_value_3; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 243;
+ fra.me.line = 234;
fra.me.meth = LOCATE_compiling_global___TableEltClassId___value;
fra.me.has_broke = 0;
fra.me.REG_size = 4;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
+ /* ./compiling//compiling_global.nit:236 */
REGB0 = TAG_Int(5);
fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:245 */
if (!once_value_1) {
fra.me.REG[3] = BOX_NativeString("");
REGB0 = TAG_Int(0);
once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
} else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[1] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[3] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[3])(fra.me.REG[3]);
fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 245);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 236);
}
REGB0 = CALL_table_computation___CompiledClass___id(fra.me.REG[3])(fra.me.REG[3]);
fra.me.REG[3] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
if (!once_value_2) {
fra.me.REG[3] = BOX_NativeString(" /* Id of ");
REGB0 = TAG_Int(10);
once_value_2 = fra.me.REG[3];
register_static_object(&once_value_2);
} else fra.me.REG[3] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_3) {
fra.me.REG[0] = BOX_NativeString(" */");
REGB0 = TAG_Int(3);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
goto label4;
label4: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[2];
}
-val_t compiling_global___TableEltClassId___symbol(val_t p0){
+val_t compiling_global___TableEltClassInitTable___symbol(val_t p0){
struct {struct stack_frame_t me;} fra;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
fra.me.line = 241;
- fra.me.meth = LOCATE_compiling_global___TableEltClassId___symbol;
+ fra.me.meth = LOCATE_compiling_global___TableEltClassInitTable___symbol;
fra.me.has_broke = 0;
fra.me.REG_size = 1;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[0] = p0;
+ /* ./compiling//compiling_global.nit:241 */
fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___id_id(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:241 */
+ fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___init_table_pos_id(fra.me.REG[0])(fra.me.REG[0]);
goto label1;
label1: while(0);
stack_frame_head = fra.me.prev;
static val_t once_value_7; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 252;
+ fra.me.line = 243;
fra.me.meth = LOCATE_compiling_global___TableEltClassInitTable___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 7;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:245 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:246 */
fra.me.REG[3] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[4] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[4])(fra.me.REG[4]);
fra.me.REG[4] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:247 */
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___cshe(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[3] = CALL_partial_order___PartialOrderElement___reverse_linear_extension(fra.me.REG[3])(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:248 */
REGB0 = TAG_Int(0);
- /* ./compiling//compiling_global.nit:258 */
+ /* ./compiling//compiling_global.nit:249 */
while(1) {
+ /* ./../lib/standard//collection//array.nit:243 */
fra.me.REG[5] = fra.me.REG[3];
REGB1 = REGB0;
+ /* ./../lib/standard//collection//array.nit:245 */
REGB2 = TAG_Int(0);
+ /* ./../lib/standard//kernel.nit:213 */
REGB2 = TAG_Bool(UNTAG_Int(REGB1)>=UNTAG_Int(REGB2));
- /* ./../lib/standard//collection//array.nit:233 */
+ /* ./../lib/standard//collection//array.nit:245 */
if (UNTAG_Bool(REGB2)) {
REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[5])!=NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 233);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 245);
}
REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[5]);
+ /* ./../lib/standard//kernel.nit:212 */
REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
- /* ./../lib/standard//collection//array.nit:233 */
} else {
+ /* ./../lib/standard//collection//array.nit:245 */
REGB3 = TAG_Bool(false);
REGB2 = REGB3;
}
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Assert %s failed", "'index'");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 233);
- nit_exit(1);
+ nit_abort("Assert %s failed", "'index'", LOCATE_array, 245);
}
+ /* ./../lib/standard//collection//array.nit:246 */
fra.me.REG[5] = ATTR_array___Array____items(fra.me.REG[5]);
REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- /* ./../lib/standard//collection//array.nit:234 */
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 234);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_array, 246);
}
+ /* ./../lib/standard//collection//array.nit:654 */
fra.me.REG[5] = ((Nit_NativeArray)fra.me.REG[5])->val[UNTAG_Int(REGB1)];
- /* ./../lib/standard//collection//array.nit:234 */
+ /* ./../lib/standard//collection//array.nit:246 */
goto label1;
label1: while(0);
+ /* ./compiling//compiling_global.nit:249 */
REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- /* ./compiling//compiling_global.nit:258 */
if (UNTAG_Bool(REGB1)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 258);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 249);
}
fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[5])(fra.me.REG[5]);
fra.me.REG[6] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
}
REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
if (UNTAG_Bool(REGB1)) {
+ /* ./compiling//compiling_global.nit:250 */
REGB1 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
+ /* ./compiling//compiling_global.nit:250 */
REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:259 */
} else {
- /* ./compiling//compiling_global.nit:258 */
+ /* ./compiling//compiling_global.nit:249 */
goto label2;
}
}
label2: while(0);
+ /* ./compiling//compiling_global.nit:252 */
REGB1 = TAG_Int(9);
fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:261 */
if (!once_value_3) {
fra.me.REG[6] = BOX_NativeString("");
REGB1 = TAG_Int(0);
once_value_3 = fra.me.REG[6];
register_static_object(&once_value_3);
} else fra.me.REG[6] = once_value_3;
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
fra.me.REG[6] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
if (!once_value_4) {
fra.me.REG[6] = BOX_NativeString(" /* ");
REGB0 = TAG_Int(4);
once_value_4 = fra.me.REG[6];
register_static_object(&once_value_4);
} else fra.me.REG[6] = once_value_4;
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_5) {
fra.me.REG[0] = BOX_NativeString(": ");
REGB0 = TAG_Int(2);
once_value_5 = fra.me.REG[0];
register_static_object(&once_value_5);
} else fra.me.REG[0] = once_value_5;
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_6) {
fra.me.REG[2] = BOX_NativeString(" < ");
REGB0 = TAG_Int(3);
once_value_6 = fra.me.REG[2];
register_static_object(&once_value_6);
} else fra.me.REG[2] = once_value_6;
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
fra.me.REG[4] = CALL_table_computation___CompiledClass___local_class(fra.me.REG[4])(fra.me.REG[4]);
fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_7) {
fra.me.REG[4] = BOX_NativeString(": superclass init_table position */");
REGB0 = TAG_Int(35);
once_value_7 = fra.me.REG[4];
register_static_object(&once_value_7);
} else fra.me.REG[4] = once_value_7;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
goto label8;
label8: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[3];
}
-val_t compiling_global___TableEltClassInitTable___symbol(val_t p0){
+val_t compiling_global___TableEltClassColor___symbol(val_t p0){
struct {struct stack_frame_t me;} fra;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 250;
- fra.me.meth = LOCATE_compiling_global___TableEltClassInitTable___symbol;
+ fra.me.line = 257;
+ fra.me.meth = LOCATE_compiling_global___TableEltClassColor___symbol;
fra.me.has_broke = 0;
fra.me.REG_size = 1;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[0] = p0;
+ /* ./compiling//compiling_global.nit:257 */
fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___init_table_pos_id(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:250 */
+ fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___color_id(fra.me.REG[0])(fra.me.REG[0]);
goto label1;
label1: while(0);
stack_frame_head = fra.me.prev;
return fra.me.REG[0];
}
-val_t compiling_global___TableEltClassColor___compile_to_c(val_t p0, val_t p1, val_t p2){
- struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
+val_t compiling_global___TableEltClassColor___value(val_t p0, val_t p1){
+ struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
val_t REGB0;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_2; /* Once value */
static val_t once_value_3; /* Once value */
- static val_t once_value_4; /* Once value */
- static val_t once_value_5; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 273;
- fra.me.meth = LOCATE_compiling_global___TableEltClassColor___compile_to_c;
+ fra.me.line = 259;
+ fra.me.meth = LOCATE_compiling_global___TableEltClassColor___value;
fra.me.has_broke = 0;
- fra.me.REG_size = 6;
+ fra.me.REG_size = 4;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
- fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[3] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[4] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[4])(fra.me.REG[4]);
- fra.me.REG[4] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- REGB0 = TAG_Int(9);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:277 */
+ /* ./compiling//compiling_global.nit:261 */
+ REGB0 = TAG_Int(5);
+ fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[5] = BOX_NativeString("");
+ fra.me.REG[3] = BOX_NativeString("");
REGB0 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_1 = fra.me.REG[5];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
- } else fra.me.REG[5] = once_value_1;
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
- REGB0 = CALL_table_computation___CompiledClass___id(fra.me.REG[4])(fra.me.REG[4]);
- fra.me.REG[5] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
- if (!once_value_2) {
- fra.me.REG[5] = BOX_NativeString(" /* ");
- REGB0 = TAG_Int(4);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_2 = fra.me.REG[5];
- register_static_object(&once_value_2);
- } else fra.me.REG[5] = once_value_2;
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
+ } else fra.me.REG[3] = once_value_1;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ fra.me.REG[1] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ if (!once_value_2) {
+ fra.me.REG[1] = BOX_NativeString(" /* Color of ");
+ REGB0 = TAG_Int(13);
+ fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
+ once_value_2 = fra.me.REG[1];
+ register_static_object(&once_value_2);
+ } else fra.me.REG[1] = once_value_2;
+ fra.me.REG[1] = fra.me.REG[1];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1]);
+ fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_3) {
- fra.me.REG[0] = BOX_NativeString(": ");
- REGB0 = TAG_Int(2);
+ fra.me.REG[0] = BOX_NativeString(" */");
+ REGB0 = TAG_Int(3);
fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
- if (!once_value_4) {
- fra.me.REG[2] = BOX_NativeString(" < ");
- REGB0 = TAG_Int(3);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_4 = fra.me.REG[2];
- register_static_object(&once_value_4);
- } else fra.me.REG[2] = once_value_4;
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
- fra.me.REG[4] = CALL_table_computation___CompiledClass___local_class(fra.me.REG[4])(fra.me.REG[4]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- if (!once_value_5) {
- fra.me.REG[4] = BOX_NativeString(": superclass typecheck marker */");
- REGB0 = TAG_Int(32);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_5 = fra.me.REG[4];
- register_static_object(&once_value_5);
- } else fra.me.REG[4] = once_value_5;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- goto label6;
- label6: while(0);
- stack_frame_head = fra.me.prev;
- return fra.me.REG[3];
-}
-val_t compiling_global___TableEltClassColor___symbol(val_t p0){
- struct {struct stack_frame_t me;} fra;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_compiling_global;
- fra.me.line = 266;
- fra.me.meth = LOCATE_compiling_global___TableEltClassColor___symbol;
- fra.me.has_broke = 0;
- fra.me.REG_size = 1;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_compiling_base___MMGlobalClass___color_id(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:266 */
- goto label1;
- label1: while(0);
+ goto label4;
+ label4: while(0);
stack_frame_head = fra.me.prev;
- return fra.me.REG[0];
+ return fra.me.REG[2];
}
-val_t compiling_global___TableEltClassColor___value(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
+val_t compiling_global___TableEltClassColor___compile_to_c(val_t p0, val_t p1, val_t p2){
+ struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
val_t REGB0;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_2; /* Once value */
static val_t once_value_3; /* Once value */
+ static val_t once_value_4; /* Once value */
+ static val_t once_value_5; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 268;
- fra.me.meth = LOCATE_compiling_global___TableEltClassColor___value;
+ fra.me.line = 264;
+ fra.me.meth = LOCATE_compiling_global___TableEltClassColor___compile_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 4;
+ fra.me.REG_size = 6;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
+ fra.me.REG[4] = NIT_NULL;
+ fra.me.REG[5] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- REGB0 = TAG_Int(5);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:270 */
+ fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:266 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:267 */
+ fra.me.REG[3] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[4] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[4])(fra.me.REG[4]);
+ fra.me.REG[4] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:268 */
+ REGB0 = TAG_Int(9);
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_1) {
- fra.me.REG[3] = BOX_NativeString("");
+ fra.me.REG[5] = BOX_NativeString("");
REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_1 = fra.me.REG[3];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_1 = fra.me.REG[5];
register_static_object(&once_value_1);
- } else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
- fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
- fra.me.REG[1] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[1]);
+ } else fra.me.REG[5] = once_value_1;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
+ REGB0 = CALL_table_computation___CompiledClass___id(fra.me.REG[4])(fra.me.REG[4]);
+ fra.me.REG[5] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
if (!once_value_2) {
- fra.me.REG[1] = BOX_NativeString(" /* Color of ");
- REGB0 = TAG_Int(13);
- fra.me.REG[1] = NEW_String_string___String___with_native(fra.me.REG[1], REGB0);
- once_value_2 = fra.me.REG[1];
+ fra.me.REG[5] = BOX_NativeString(" /* ");
+ REGB0 = TAG_Int(4);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_2 = fra.me.REG[5];
register_static_object(&once_value_2);
- } else fra.me.REG[1] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[1]);
- fra.me.REG[0] = CALL_table_computation___AbsTableEltClass___local_class(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ } else fra.me.REG[5] = once_value_2;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[5]);
+ fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
+ REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_3) {
- fra.me.REG[0] = BOX_NativeString(" */");
- REGB0 = TAG_Int(3);
+ fra.me.REG[0] = BOX_NativeString(": ");
+ REGB0 = TAG_Int(2);
fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- goto label4;
- label4: while(0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ if (!once_value_4) {
+ fra.me.REG[2] = BOX_NativeString(" < ");
+ REGB0 = TAG_Int(3);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_4 = fra.me.REG[2];
+ register_static_object(&once_value_4);
+ } else fra.me.REG[2] = once_value_4;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[4] = CALL_table_computation___CompiledClass___local_class(fra.me.REG[4])(fra.me.REG[4]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ if (!once_value_5) {
+ fra.me.REG[4] = BOX_NativeString(": superclass typecheck marker */");
+ REGB0 = TAG_Int(32);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_5 = fra.me.REG[4];
+ register_static_object(&once_value_5);
+ } else fra.me.REG[4] = once_value_5;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ goto label6;
+ label6: while(0);
stack_frame_head = fra.me.prev;
- return fra.me.REG[2];
+ return fra.me.REG[3];
}
val_t compiling_global___TableEltComposite___compile_to_c(val_t p0, val_t p1, val_t p2){
struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
val_t tmp;
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 282;
+ fra.me.line = 273;
fra.me.meth = LOCATE_compiling_global___TableEltComposite___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 3;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- /* ./compiling//compiling_global.nit:282 */
- fprintf(stderr, "Aborted");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 282);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:273 */
+ nit_abort("Aborted", NULL, LOCATE_compiling_global, 273);
stack_frame_head = fra.me.prev;
return NIT_NULL;
}
static val_t once_value_3; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 286;
+ fra.me.line = 277;
fra.me.meth = LOCATE_compiling_global___TableEltClassSelfId___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 5;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:279 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:280 */
REGB0 = TAG_Int(5);
fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:289 */
if (!once_value_1) {
fra.me.REG[4] = BOX_NativeString("");
REGB0 = TAG_Int(0);
once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
} else fra.me.REG[4] = once_value_1;
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
fra.me.REG[4] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 289);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 280);
}
REGB0 = CALL_table_computation___CompiledClass___id(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[2] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
if (!once_value_2) {
fra.me.REG[2] = BOX_NativeString(" /* ");
REGB0 = TAG_Int(4);
once_value_2 = fra.me.REG[2];
register_static_object(&once_value_2);
} else fra.me.REG[2] = once_value_2;
- array___Array___add(fra.me.REG[3], fra.me.REG[2]);
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
if (!once_value_3) {
fra.me.REG[0] = BOX_NativeString(": Identity */");
REGB0 = TAG_Int(13);
once_value_3 = fra.me.REG[0];
register_static_object(&once_value_3);
} else fra.me.REG[0] = once_value_3;
- array___Array___add(fra.me.REG[3], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
goto label4;
label4: while(0);
static val_t once_value_5; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 294;
+ fra.me.line = 285;
fra.me.meth = LOCATE_compiling_global___TableEltClassObjectSize___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 5;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
+ /* ./compiling//compiling_global.nit:287 */
REGB0 = TAG_Int(0);
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:288 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:289 */
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:298 */
if (!once_value_1) {
fra.me.REG[4] = BOX_NativeString("NativeArray");
REGB1 = TAG_Int(11);
once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
} else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
fra.me.REG[4] = CALL_symbol___String___to_symbol(fra.me.REG[4])(fra.me.REG[4]);
REGB1 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[4]));
if (UNTAG_Bool(REGB1)) {
REGB1 = REGB2;
}
if (UNTAG_Bool(REGB1)) {
+ /* ./compiling//compiling_global.nit:290 */
REGB1 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:216 */
REGB1 = TAG_Int(-UNTAG_Int(REGB1));
+ /* ./compiling//compiling_global.nit:290 */
REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:299 */
} else {
+ /* ./compiling//compiling_global.nit:292 */
fra.me.REG[4] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:293 */
fra.me.REG[2] = CALL_table_computation___CompiledClass___instance_table(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:303 */
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB1 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[4] = ATTR_array___Array____items(fra.me.REG[2]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[4] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- REGB1 = TAG_Int(1);
- REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
- REGB0 = REGB1;
- /* ./compiling//compiling_global.nit:304 */
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB2 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB2)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[3] = ((Nit_NativeArray)fra.me.REG[4])->val[UNTAG_Int(REGB1)];
+ /* ./compiling//compiling_global.nit:295 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
+ /* ./compiling//compiling_global.nit:295 */
+ REGB0 = REGB2;
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB2 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB2));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = REGB2;
} else {
- /* ./compiling//compiling_global.nit:303 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label2;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
}
label2: while(0);
}
+ /* ./compiling//compiling_global.nit:298 */
REGB1 = TAG_Int(5);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB1);
- /* ./compiling//compiling_global.nit:307 */
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB1);
if (!once_value_3) {
- fra.me.REG[4] = BOX_NativeString("");
+ fra.me.REG[2] = BOX_NativeString("");
REGB1 = TAG_Int(0);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB1);
- once_value_3 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB1);
+ once_value_3 = fra.me.REG[2];
register_static_object(&once_value_3);
- } else fra.me.REG[4] = once_value_3;
- array___Array___add(fra.me.REG[2], fra.me.REG[4]);
- fra.me.REG[4] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[4]);
+ } else fra.me.REG[2] = once_value_3;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[2] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
if (!once_value_4) {
- fra.me.REG[4] = BOX_NativeString(" /* ");
+ fra.me.REG[2] = BOX_NativeString(" /* ");
REGB0 = TAG_Int(4);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_4 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_4 = fra.me.REG[2];
register_static_object(&once_value_4);
- } else fra.me.REG[4] = once_value_4;
- array___Array___add(fra.me.REG[2], fra.me.REG[4]);
+ } else fra.me.REG[2] = once_value_4;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
if (!once_value_5) {
fra.me.REG[0] = BOX_NativeString(": Object size (-1 if a NativeArray)*/");
REGB0 = TAG_Int(37);
once_value_5 = fra.me.REG[0];
register_static_object(&once_value_5);
} else fra.me.REG[0] = once_value_5;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
goto label6;
label6: while(0);
stack_frame_head = fra.me.prev;
- return fra.me.REG[2];
+ return fra.me.REG[4];
}
val_t compiling_global___TableEltObjectId___compile_to_c(val_t p0, val_t p1, val_t p2){
struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
static val_t once_value_2; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 312;
+ fra.me.line = 303;
fra.me.meth = LOCATE_compiling_global___TableEltObjectId___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 4;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:305 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:306 */
REGB0 = TAG_Int(3);
fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:315 */
if (!once_value_1) {
fra.me.REG[3] = BOX_NativeString("/* ");
REGB0 = TAG_Int(3);
once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
} else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString(": Object_id */");
REGB0 = TAG_Int(14);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
goto label3;
label3: while(0);
static val_t once_value_2; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 320;
+ fra.me.line = 311;
fra.me.meth = LOCATE_compiling_global___TableEltVftPointer___compile_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 4;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
fra.me.REG[2] = p2;
- fra.me.REG[1] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:313 */
+ fra.me.REG[1] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:314 */
REGB0 = TAG_Int(3);
fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:323 */
if (!once_value_1) {
fra.me.REG[3] = BOX_NativeString("/* ");
REGB0 = TAG_Int(3);
once_value_1 = fra.me.REG[3];
register_static_object(&once_value_1);
} else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
fra.me.REG[1] = CALL_table_computation___Program___table_information(fra.me.REG[1])(fra.me.REG[1]);
REGB0 = CALL_table_computation___ColorContext___color(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
if (!once_value_2) {
fra.me.REG[0] = BOX_NativeString(": Pointer to the classtable */");
REGB0 = TAG_Int(30);
once_value_2 = fra.me.REG[0];
register_static_object(&once_value_2);
} else fra.me.REG[0] = once_value_2;
- array___Array___add(fra.me.REG[2], fra.me.REG[0]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
goto label3;
label3: while(0);
return fra.me.REG[2];
}
void compiling_global___MMLocalClass___declare_tables_to_c(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
val_t REGB0;
val_t REGB1;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_2; /* Once value */
static val_t once_value_3; /* Once value */
- static val_t once_value_4; /* Once value */
+ static val_t once_value_4; /* Once value */
static val_t once_value_5; /* Once value */
- static val_t once_value_6; /* Once value */
- static val_t once_value_7; /* Once value */
- static val_t once_value_8; /* Once value */
- static val_t once_value_9; /* Once value */
- static val_t once_value_10; /* Once value */
- static val_t once_value_11; /* Once value */
- static val_t once_value_12; /* Once value */
- static val_t once_value_13; /* Once value */
- static val_t once_value_14; /* Once value */
- static val_t once_value_15; /* Once value */
- static val_t once_value_16; /* Once value */
+ static val_t once_value_6; /* Once value */
+ static val_t once_value_7; /* Once value */
+ static val_t once_value_8; /* Once value */
+ static val_t once_value_9; /* Once value */
+ static val_t once_value_10; /* Once value */
+ static val_t once_value_11; /* Once value */
+ static val_t once_value_12; /* Once value */
+ static val_t once_value_13; /* Once value */
+ static val_t once_value_14; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 339;
+ fra.me.line = 321;
fra.me.meth = LOCATE_compiling_global___MMLocalClass___declare_tables_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 7;
+ fra.me.REG_size = 6;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[3] = NIT_NULL;
fra.me.REG[4] = NIT_NULL;
fra.me.REG[5] = NIT_NULL;
- fra.me.REG[6] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- REGB0 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:342 */
+ /* ./compiling//compiling_global.nit:324 */
if (!once_value_1) {
- fra.me.REG[3] = BOX_NativeString("");
+ fra.me.REG[2] = BOX_NativeString("");
REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_1 = fra.me.REG[3];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_1 = fra.me.REG[2];
register_static_object(&once_value_1);
- } else fra.me.REG[3] = once_value_1;
- array___Array___add(fra.me.REG[2], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_1;
+ fra.me.REG[2] = fra.me.REG[2];
CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:325 */
fra.me.REG[2] = CALL_primitive_info___MMLocalClass___primitive_info(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:326 */
REGB0 = TAG_Int(3);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:344 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_2) {
- fra.me.REG[5] = BOX_NativeString("extern const classtable_elt_t VFT_");
+ fra.me.REG[4] = BOX_NativeString("extern const classtable_elt_t VFT_");
REGB0 = TAG_Int(34);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_2 = fra.me.REG[5];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_2 = fra.me.REG[4];
register_static_object(&once_value_2);
- } else fra.me.REG[5] = once_value_2;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[4] = once_value_2;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
if (!once_value_3) {
- fra.me.REG[5] = BOX_NativeString("[];");
+ fra.me.REG[4] = BOX_NativeString("[];");
REGB0 = TAG_Int(3);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
- once_value_3 = fra.me.REG[5];
- register_static_object(&once_value_3);
- } else fra.me.REG[5] = once_value_3;
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- array___Array___add(fra.me.REG[3], fra.me.REG[4]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:345 */
- if (!once_value_4) {
- fra.me.REG[4] = BOX_NativeString("NativeArray");
- REGB0 = TAG_Int(11);
fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_4 = fra.me.REG[4];
- register_static_object(&once_value_4);
- } else fra.me.REG[4] = once_value_4;
- fra.me.REG[4] = CALL_symbol___String___to_symbol(fra.me.REG[4])(fra.me.REG[4]);
- REGB0 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[3],fra.me.REG[4]));
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Int(0);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:346 */
- if (!once_value_5) {
- fra.me.REG[3] = BOX_NativeString("val_t NEW_NativeArray(size_t length, size_t size);");
- REGB0 = TAG_Int(50);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_5 = fra.me.REG[3];
- register_static_object(&once_value_5);
- } else fra.me.REG[3] = once_value_5;
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- } else {
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:347 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:349 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 349);
- nit_exit(1);
- }
- REGB0 = CALL_primitive_info___PrimitiveInfo___tagged(fra.me.REG[2])(fra.me.REG[2]);
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:350 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 350);
- nit_exit(1);
- }
- fra.me.REG[2] = CALL_primitive_info___PrimitiveInfo___cname(fra.me.REG[2])(fra.me.REG[2]);
- REGB0 = TAG_Int(3);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:351 */
- if (!once_value_6) {
- fra.me.REG[3] = BOX_NativeString("struct TBOX_");
- REGB0 = TAG_Int(12);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_6 = fra.me.REG[3];
- register_static_object(&once_value_6);
- } else fra.me.REG[3] = once_value_6;
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
- fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
- if (!once_value_7) {
- fra.me.REG[3] = BOX_NativeString("");
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
- once_value_7 = fra.me.REG[3];
- register_static_object(&once_value_7);
- } else fra.me.REG[3] = once_value_7;
- array___Array___add(fra.me.REG[4], fra.me.REG[3]);
- fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- REGB0 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:352 */
- if (!once_value_8) {
- fra.me.REG[6] = BOX_NativeString("");
- REGB0 = TAG_Int(0);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_8 = fra.me.REG[6];
- register_static_object(&once_value_8);
- } else fra.me.REG[6] = once_value_8;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- if (!once_value_9) {
- fra.me.REG[6] = BOX_NativeString(" { const classtable_elt_t * vft; bigint object_id; ");
- REGB0 = TAG_Int(51);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_9 = fra.me.REG[6];
- register_static_object(&once_value_9);
- } else fra.me.REG[6] = once_value_9;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[2]);
- if (!once_value_10) {
- fra.me.REG[6] = BOX_NativeString(" val;};");
- REGB0 = TAG_Int(7);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_10 = fra.me.REG[6];
- register_static_object(&once_value_10);
- } else fra.me.REG[6] = once_value_10;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- REGB0 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:353 */
- if (!once_value_11) {
- fra.me.REG[6] = BOX_NativeString("val_t BOX_");
- REGB0 = TAG_Int(10);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_11 = fra.me.REG[6];
- register_static_object(&once_value_11);
- } else fra.me.REG[6] = once_value_11;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- if (!once_value_12) {
- fra.me.REG[6] = BOX_NativeString("(");
- REGB0 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_12 = fra.me.REG[6];
- register_static_object(&once_value_12);
- } else fra.me.REG[6] = once_value_12;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[2]);
- if (!once_value_13) {
- fra.me.REG[2] = BOX_NativeString(" val);");
- REGB0 = TAG_Int(6);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_13 = fra.me.REG[2];
- register_static_object(&once_value_13);
- } else fra.me.REG[2] = once_value_13;
- array___Array___add(fra.me.REG[5], fra.me.REG[2]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- REGB0 = TAG_Int(0);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
- REGB0 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:354 */
- if (!once_value_14) {
- fra.me.REG[2] = BOX_NativeString("#define UNBOX_");
- REGB0 = TAG_Int(14);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_14 = fra.me.REG[2];
- register_static_object(&once_value_14);
- } else fra.me.REG[2] = once_value_14;
- array___Array___add(fra.me.REG[5], fra.me.REG[2]);
- fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[5], fra.me.REG[0]);
- if (!once_value_15) {
- fra.me.REG[0] = BOX_NativeString("(x) (((");
- REGB0 = TAG_Int(7);
- fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
- once_value_15 = fra.me.REG[0];
- register_static_object(&once_value_15);
- } else fra.me.REG[0] = once_value_15;
- array___Array___add(fra.me.REG[5], fra.me.REG[0]);
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- if (!once_value_16) {
- fra.me.REG[4] = BOX_NativeString(" *)(VAL2OBJ(x)))->val)");
- REGB0 = TAG_Int(22);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_16 = fra.me.REG[4];
- register_static_object(&once_value_16);
- } else fra.me.REG[4] = once_value_16;
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[3], fra.me.REG[5]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
- }
- }
- }
- stack_frame_head = fra.me.prev;
- return;
-}
-void compiling_global___MMLocalClass___generate_allocation_iroutines(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[7];} fra;
- val_t REGB0;
- val_t REGB1;
- val_t tmp;
- fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
- fra.me.file = LOCATE_compiling_global;
- fra.me.line = 358;
- fra.me.meth = LOCATE_compiling_global___MMLocalClass___generate_allocation_iroutines;
- fra.me.has_broke = 0;
- fra.me.REG_size = 8;
- fra.me.REG[0] = NIT_NULL;
- fra.me.REG[1] = NIT_NULL;
- fra.me.REG[2] = NIT_NULL;
- fra.me.REG[3] = NIT_NULL;
- fra.me.REG[4] = NIT_NULL;
- fra.me.REG[5] = NIT_NULL;
- fra.me.REG[6] = NIT_NULL;
- fra.me.REG[7] = NIT_NULL;
- fra.me.REG[0] = p0;
- fra.me.REG[1] = p1;
- fra.me.REG[1] = CALL_table_computation___Program___compiled_classes(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- fra.me.REG[2] = CALL_primitive_info___MMLocalClass___primitive_info(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:364 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[2] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = NEW_IRegister_icode_base___IRegister___init(fra.me.REG[2]);
- REGB0 = TAG_Int(1);
- fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:368 */
- array___Array___add(fra.me.REG[1], fra.me.REG[2]);
- fra.me.REG[3] = NEW_IRoutine_icode_base___IRoutine___init(fra.me.REG[1], NIT_NULL);
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___module(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = NEW_ICodeBuilder_icode_builder___ICodeBuilder___init(fra.me.REG[4], fra.me.REG[3]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[5] = CALL_abstract_collection___Collection___iterator(fra.me.REG[5])(fra.me.REG[5]);
- /* ./compiling//compiling_global.nit:372 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[5])(fra.me.REG[5]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[6] = CALL_abstract_collection___Iterator___item(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6]);
- fra.me.REG[7] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[6])(fra.me.REG[6]);
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- /* ./compiling//compiling_global.nit:374 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 374);
- nit_exit(1);
- }
- fra.me.REG[7] = CALL_static_type___MMSignature___return_type(fra.me.REG[7])(fra.me.REG[7]);
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[6], COLOR_MMAttribute, ID_MMAttribute)) /*cast MMAttribute*/;
- /* ./compiling//compiling_global.nit:375 */
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- } else {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[7] = CALL_icode_base___MMAttribute___iroutine(fra.me.REG[6])(fra.me.REG[6]);
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- /* ./compiling//compiling_global.nit:377 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- if (UNTAG_Bool(REGB0)) {
- goto label1;
- }
- fra.me.REG[7] = CALL_icode_tools___ICodeBuilder___inline_routine(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7], fra.me.REG[1], NIT_NULL);
- REGB0 = TAG_Bool((fra.me.REG[7]!=NIT_NULL) && VAL_ISA(fra.me.REG[7], COLOR_IRegister, ID_IRegister)) /*cast IRegister*/;
- /* ./compiling//compiling_global.nit:379 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- fprintf(stderr, "Cast failed");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 379);
- nit_exit(1);
- }
- fra.me.REG[7] = NEW_IAttrWrite_icode_base___IAttrWrite___init(fra.me.REG[6], fra.me.REG[2], fra.me.REG[7]);
- /* ./compiling//compiling_global.nit:380 */
- CALL_icode_builder___ICodeBuilder___stmt(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[7]);
- }
- label1: while(0);
- } else {
- /* ./compiling//compiling_global.nit:372 */
- goto label2;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[5])(fra.me.REG[5]);
- }
- label2: while(0);
- /* ./compiling//compiling_global.nit:384 */
- ATTR_compiling_global___MMLocalClass____init_var_iroutine(fra.me.REG[0]) = fra.me.REG[3];
- fra.me.REG[3] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[3] = NEW_IRegister_icode_base___IRegister___init(fra.me.REG[3]);
- REGB0 = TAG_Int(1);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:389 */
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
- fra.me.REG[5] = NEW_IRoutine_icode_base___IRoutine___init(fra.me.REG[5], NIT_NULL);
- fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___module(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = NEW_ICodeBuilder_icode_builder___ICodeBuilder___init(fra.me.REG[4], fra.me.REG[5]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:392 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[2])(fra.me.REG[2]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[1] = CALL_abstract_collection___Iterator___item(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[1] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
- fra.me.REG[7] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- /* ./compiling//compiling_global.nit:394 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 394);
- nit_exit(1);
- }
- fra.me.REG[7] = CALL_static_type___MMSignature___return_type(fra.me.REG[7])(fra.me.REG[7]);
- REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[1], COLOR_MMAttribute, ID_MMAttribute)) /*cast MMAttribute*/;
- /* ./compiling//compiling_global.nit:395 */
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- } else {
- REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- } else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[7])(fra.me.REG[7], NIT_NULL);
- REGB0 = REGB1;
- }
- }
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- } else {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 395);
- nit_exit(1);
- }
- REGB0 = CALL_static_type___MMType___is_nullable(fra.me.REG[7])(fra.me.REG[7]);
- REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
- } else {
- REGB1 = TAG_Bool(false);
- REGB0 = REGB1;
- }
- if (UNTAG_Bool(REGB0)) {
- /* ./compiling//compiling_global.nit:396 */
- CALL_icode_builder___ICodeBuilder___add_attr_check(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1], fra.me.REG[3]);
- }
- } else {
- /* ./compiling//compiling_global.nit:392 */
- goto label3;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[2])(fra.me.REG[2]);
+ once_value_3 = fra.me.REG[4];
+ register_static_object(&once_value_3);
+ } else fra.me.REG[4] = once_value_3;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:327 */
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Bool(false);
+ REGB0 = REGB1;
+ } else {
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
+ REGB0 = REGB1;
}
- label3: while(0);
- /* ./compiling//compiling_global.nit:400 */
- ATTR_compiling_global___MMLocalClass____checknew_iroutine(fra.me.REG[0]) = fra.me.REG[5];
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___cshe(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[5] = CALL_partial_order___PartialOrderElement___greaters(fra.me.REG[5])(fra.me.REG[5]);
- REGB0 = CALL_abstract_collection___Collection___length(fra.me.REG[5])(fra.me.REG[5]);
- REGB1 = TAG_Int(1);
- REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[5] = CALL_abstract_collection___Collection___iterator(fra.me.REG[5])(fra.me.REG[5]);
- /* ./compiling//compiling_global.nit:405 */
- while(1) {
- REGB1 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[5])(fra.me.REG[5]);
- if (UNTAG_Bool(REGB1)) {
- fra.me.REG[2] = CALL_abstract_collection___Iterator___item(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
- fra.me.REG[3] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[2])(fra.me.REG[2]);
- REGB1 = CALL_abstractmetamodel___MMGlobalProperty___is_init_for(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
- REGB1 = TAG_Bool(!UNTAG_Bool(REGB1));
- /* ./compiling//compiling_global.nit:408 */
- if (UNTAG_Bool(REGB1)) {
- goto label4;
- }
- REGB1 = TAG_Bool(VAL_ISA(fra.me.REG[2], COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
- /* ./compiling//compiling_global.nit:409 */
- if (UNTAG_Bool(REGB1)) {
- } else {
- fprintf(stderr, "Assert failed");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 409);
- nit_exit(1);
- }
- fra.me.REG[3] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[3] = NEW_IRegister_icode_base___IRegister___init(fra.me.REG[3]);
- fra.me.REG[4] = NEW_Array_array___Array___init();
- REGB1 = TAG_Int(0);
- fra.me.REG[1] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[2])(fra.me.REG[2]);
- REGB0 = TAG_Bool(fra.me.REG[1]==NIT_NULL);
- /* ./compiling//compiling_global.nit:413 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 413);
- nit_exit(1);
- }
- REGB0 = CALL_static_type___MMSignature___arity(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[1] = NEW_Range_range___Range___without_last(REGB1, REGB0);
- fra.me.REG[1] = CALL_abstract_collection___Collection___iterator(fra.me.REG[1])(fra.me.REG[1]);
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[1])(fra.me.REG[1]);
- if (UNTAG_Bool(REGB0)) {
- REGB0 = CALL_abstract_collection___Iterator___item(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[7] = CALL_static_type___MMLocalProperty___signature(fra.me.REG[2])(fra.me.REG[2]);
- REGB1 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 413);
- nit_exit(1);
- }
- fra.me.REG[7] = CALL_static_type___MMSignature_____bra(fra.me.REG[7])(fra.me.REG[7], REGB0);
- fra.me.REG[7] = NEW_IRegister_icode_base___IRegister___init(fra.me.REG[7]);
- array___Array___add(fra.me.REG[4], fra.me.REG[7]);
- } else {
- goto label5;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[1])(fra.me.REG[1]);
- }
- label5: while(0);
- fra.me.REG[1] = NEW_IRoutine_icode_base___IRoutine___init(fra.me.REG[4], fra.me.REG[3]);
- fra.me.REG[7] = CALL_icode_base___MMMethod___iroutine(fra.me.REG[2])(fra.me.REG[2]);
- REGB0 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
- /* ./compiling//compiling_global.nit:415 */
- if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 415);
- nit_exit(1);
- }
- fra.me.REG[7] = CALL_icode_base___IRoutine___location(fra.me.REG[7])(fra.me.REG[7]);
- CALL_icode_base___IRoutine___location__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___module(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[7] = NEW_ICodeBuilder_icode_builder___ICodeBuilder___init(fra.me.REG[7], fra.me.REG[1]);
- fra.me.REG[6] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = NEW_IAllocateInstance_icode_base___IAllocateInstance___init(fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:419 */
- CALL_icode_base___ICode___result__eq(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:420 */
- CALL_icode_builder___ICodeBuilder___stmt(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
- REGB0 = TAG_Int(1);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:421 */
- array___Array___add(fra.me.REG[6], fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:422 */
- CALL_abstract_collection___SimpleCollection___add_all(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]);
- fra.me.REG[4] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[4] = NEW_IInitAttributes_icode_base___IInitAttributes___init(fra.me.REG[4], fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:424 */
- CALL_icode_builder___ICodeBuilder___stmt(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[4]);
- fra.me.REG[6] = NEW_IStaticCall_icode_base___IStaticCall___init(fra.me.REG[2], fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:425 */
- CALL_icode_builder___ICodeBuilder___stmt(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
- fra.me.REG[6] = CALL_static_type___MMLocalClass___get_type(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[3] = NEW_ICheckInstance_icode_base___ICheckInstance___init(fra.me.REG[6], fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:426 */
- CALL_icode_builder___ICodeBuilder___stmt(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
- REGB0 = TAG_Bool(ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0])!=NIT_NULL);
- /* ./compiling//compiling_global.nit:428 */
- if (UNTAG_Bool(REGB0)) {
- } else {
- fprintf(stderr, "Uninitialized attribute %s", "_new_instance_iroutine");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 428);
- nit_exit(1);
- }
- fra.me.REG[3] = ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0]);
- CALL_abstract_collection___Map_____braeq(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2], fra.me.REG[1]);
- label4: while(0);
- } else {
- /* ./compiling//compiling_global.nit:405 */
- goto label6;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[5])(fra.me.REG[5]);
+ }
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ if (UNTAG_Bool(REGB0)) {
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 327);
}
- label6: while(0);
+ REGB0 = CALL_primitive_info___PrimitiveInfo___tagged(fra.me.REG[2])(fra.me.REG[2]);
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ } else {
+ REGB1 = TAG_Bool(false);
+ REGB0 = REGB1;
+ }
+ if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:328 */
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 328);
+ }
+ fra.me.REG[2] = CALL_primitive_info___PrimitiveInfo___cname(fra.me.REG[2])(fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:329 */
+ REGB0 = TAG_Int(3);
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_4) {
+ fra.me.REG[4] = BOX_NativeString("struct TBOX_");
+ REGB0 = TAG_Int(12);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_4 = fra.me.REG[4];
+ register_static_object(&once_value_4);
+ } else fra.me.REG[4] = once_value_4;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ if (!once_value_5) {
+ fra.me.REG[4] = BOX_NativeString("");
+ REGB0 = TAG_Int(0);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_5 = fra.me.REG[4];
+ register_static_object(&once_value_5);
+ } else fra.me.REG[4] = once_value_5;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:330 */
+ REGB0 = TAG_Int(5);
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_6) {
+ fra.me.REG[5] = BOX_NativeString("");
+ REGB0 = TAG_Int(0);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_6 = fra.me.REG[5];
+ register_static_object(&once_value_6);
+ } else fra.me.REG[5] = once_value_6;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
+ if (!once_value_7) {
+ fra.me.REG[5] = BOX_NativeString(" { const classtable_elt_t * vft; bigint object_id; ");
+ REGB0 = TAG_Int(51);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_7 = fra.me.REG[5];
+ register_static_object(&once_value_7);
+ } else fra.me.REG[5] = once_value_7;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ if (!once_value_8) {
+ fra.me.REG[5] = BOX_NativeString(" val;};");
+ REGB0 = TAG_Int(7);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_8 = fra.me.REG[5];
+ register_static_object(&once_value_8);
+ } else fra.me.REG[5] = once_value_8;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:331 */
+ REGB0 = TAG_Int(5);
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_9) {
+ fra.me.REG[5] = BOX_NativeString("val_t BOX_");
+ REGB0 = TAG_Int(10);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_9 = fra.me.REG[5];
+ register_static_object(&once_value_9);
+ } else fra.me.REG[5] = once_value_9;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ if (!once_value_10) {
+ fra.me.REG[5] = BOX_NativeString("(");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB0);
+ once_value_10 = fra.me.REG[5];
+ register_static_object(&once_value_10);
+ } else fra.me.REG[5] = once_value_10;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ if (!once_value_11) {
+ fra.me.REG[2] = BOX_NativeString(" val);");
+ REGB0 = TAG_Int(6);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_11 = fra.me.REG[2];
+ register_static_object(&once_value_11);
+ } else fra.me.REG[2] = once_value_11;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:332 */
+ REGB0 = TAG_Int(5);
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_12) {
+ fra.me.REG[2] = BOX_NativeString("#define UNBOX_");
+ REGB0 = TAG_Int(14);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_12 = fra.me.REG[2];
+ register_static_object(&once_value_12);
+ } else fra.me.REG[2] = once_value_12;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[2]);
+ fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+ if (!once_value_13) {
+ fra.me.REG[0] = BOX_NativeString("(x) (((");
+ REGB0 = TAG_Int(7);
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_13 = fra.me.REG[0];
+ register_static_object(&once_value_13);
+ } else fra.me.REG[0] = once_value_13;
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
+ if (!once_value_14) {
+ fra.me.REG[3] = BOX_NativeString(" *)(VAL2OBJ(x)))->val)");
+ REGB0 = TAG_Int(22);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_14 = fra.me.REG[3];
+ register_static_object(&once_value_14);
+ } else fra.me.REG[3] = once_value_14;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[3]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
}
stack_frame_head = fra.me.prev;
return;
}
void compiling_global___MMLocalClass___compile_tables_to_c(val_t p0, val_t p1){
- struct {struct stack_frame_t me; val_t MORE_REG[9];} fra;
+ struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
val_t REGB0;
val_t REGB1;
val_t REGB2;
+ val_t REGB3;
val_t tmp;
static val_t once_value_1; /* Once value */
static val_t once_value_2; /* Once value */
static val_t once_value_48; /* Once value */
static val_t once_value_49; /* Once value */
static val_t once_value_50; /* Once value */
- static val_t once_value_52; /* Once value */
- static val_t once_value_53; /* Once value */
- static val_t once_value_54; /* Once value */
- static val_t once_value_55; /* Once value */
- static val_t once_value_56; /* Once value */
- static val_t once_value_57; /* Once value */
- static val_t once_value_58; /* Once value */
- static val_t once_value_59; /* Once value */
- static val_t once_value_60; /* Once value */
static val_t once_value_62; /* Once value */
static val_t once_value_63; /* Once value */
static val_t once_value_64; /* Once value */
static val_t once_value_77; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 433;
+ fra.me.line = 336;
fra.me.meth = LOCATE_compiling_global___MMLocalClass___compile_tables_to_c;
fra.me.has_broke = 0;
- fra.me.REG_size = 10;
+ fra.me.REG_size = 9;
fra.me.REG[0] = NIT_NULL;
fra.me.REG[1] = NIT_NULL;
fra.me.REG[2] = NIT_NULL;
fra.me.REG[6] = NIT_NULL;
fra.me.REG[7] = NIT_NULL;
fra.me.REG[8] = NIT_NULL;
- fra.me.REG[9] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
- fra.me.REG[2] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:339 */
+ fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[2] = CALL_table_computation___Program___compiled_classes(fra.me.REG[2])(fra.me.REG[2]);
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[3] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:340 */
fra.me.REG[2] = CALL_table_computation___CompiledClass___class_table(fra.me.REG[3])(fra.me.REG[3]);
- REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
/* ./../lib/standard//collection//array.nit:23 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
if (UNTAG_Bool(REGB0)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
- fra.me.REG[4] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:342 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[4] = CALL_table_computation___Program___table_information(fra.me.REG[4])(fra.me.REG[4]);
REGB1 = CALL_table_computation___TableInformation___max_class_table_length(fra.me.REG[4])(fra.me.REG[4]);
- REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
/* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:214 */
REGB2 = TAG_Bool(UNTAG_Int(REGB1)>UNTAG_Int(REGB2));
- /* ./compiling//compiling_global.nit:439 */
+ /* ./compiling//compiling_global.nit:342 */
if (UNTAG_Bool(REGB2)) {
- fra.me.REG[4] = CALL_compiling_global___GlobalCompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:343 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___program(fra.me.REG[1])(fra.me.REG[1]);
fra.me.REG[4] = CALL_table_computation___Program___table_information(fra.me.REG[4])(fra.me.REG[4]);
REGB2 = CALL_table_computation___TableInformation___max_class_table_length(fra.me.REG[4])(fra.me.REG[4]);
REGB0 = REGB2;
- /* ./compiling//compiling_global.nit:440 */
}
- REGB2 = TAG_Int(0);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
+ /* ./compiling//compiling_global.nit:346 */
REGB2 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:443 */
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_1) {
- fra.me.REG[6] = BOX_NativeString("const classtable_elt_t VFT_");
+ fra.me.REG[5] = BOX_NativeString("const classtable_elt_t VFT_");
REGB2 = TAG_Int(27);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_1 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_1 = fra.me.REG[5];
register_static_object(&once_value_1);
- } else fra.me.REG[6] = once_value_1;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
+ } else fra.me.REG[5] = once_value_1;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
if (!once_value_2) {
- fra.me.REG[6] = BOX_NativeString("[");
+ fra.me.REG[5] = BOX_NativeString("[");
REGB2 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_2 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_2 = fra.me.REG[5];
register_static_object(&once_value_2);
- } else fra.me.REG[6] = once_value_2;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
+ } else fra.me.REG[5] = once_value_2;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
if (!once_value_3) {
- fra.me.REG[6] = BOX_NativeString("] = {");
+ fra.me.REG[5] = BOX_NativeString("] = {");
REGB2 = TAG_Int(5);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_3 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_3 = fra.me.REG[5];
register_static_object(&once_value_3);
- } else fra.me.REG[6] = once_value_3;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[4], fra.me.REG[5]);
+ } else fra.me.REG[5] = once_value_3;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:444 */
+ /* ./compiling//compiling_global.nit:347 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[4] = CALL_abstract_collection___Collection___iterator(fra.me.REG[2])(fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:445 */
+ /* ./../lib/standard//collection//array.nit:231 */
+ fra.me.REG[4] = fra.me.REG[2];
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB2 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[5] = ATTR_array___Array____items(fra.me.REG[4]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB2 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[4])(fra.me.REG[4]);
- if (UNTAG_Bool(REGB2)) {
- fra.me.REG[5] = CALL_abstract_collection___Iterator___item(fra.me.REG[4])(fra.me.REG[4]);
- REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- /* ./compiling//compiling_global.nit:446 */
- if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB1 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB1 = ATTR_array___AbstractArrayRead____length(fra.me.REG[4]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB1 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB1)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[6] = ((Nit_NativeArray)fra.me.REG[5])->val[UNTAG_Int(REGB2)];
+ /* ./compiling//compiling_global.nit:349 */
+ REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
} else {
- REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB1)) {
- REGB1 = TAG_Bool(false);
- REGB2 = REGB1;
+ REGB3 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
+ if (UNTAG_Bool(REGB3)) {
+ REGB3 = TAG_Bool(false);
+ REGB1 = REGB3;
} else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], NIT_NULL);
- REGB2 = REGB1;
+ REGB3 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
+ REGB1 = REGB3;
}
}
- if (UNTAG_Bool(REGB2)) {
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:447 */
+ if (UNTAG_Bool(REGB1)) {
+ /* ./compiling//compiling_global.nit:350 */
if (!once_value_4) {
fra.me.REG[7] = BOX_NativeString("{0} /* Class Hole :( */,");
- REGB2 = TAG_Int(24);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ REGB1 = TAG_Int(24);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB1);
once_value_4 = fra.me.REG[7];
register_static_object(&once_value_4);
} else fra.me.REG[7] = once_value_4;
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
} else {
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- REGB2 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:449 */
+ /* ./compiling//compiling_global.nit:352 */
+ REGB1 = TAG_Int(3);
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB1);
if (!once_value_5) {
fra.me.REG[8] = BOX_NativeString("{(bigint) ");
- REGB2 = TAG_Int(10);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB2);
+ REGB1 = TAG_Int(10);
+ fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB1);
once_value_5 = fra.me.REG[8];
register_static_object(&once_value_5);
} else fra.me.REG[8] = once_value_5;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 449);
- nit_exit(1);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
+ REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 352);
}
- fra.me.REG[5] = CALL_compiling_global___TableElt___compile_to_c(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[0]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ fra.me.REG[6] = CALL_compiling_global___TableElt___compile_to_c(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[1], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
if (!once_value_6) {
- fra.me.REG[5] = BOX_NativeString("},");
- REGB2 = TAG_Int(2);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_6 = fra.me.REG[5];
+ fra.me.REG[6] = BOX_NativeString("},");
+ REGB1 = TAG_Int(2);
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB1);
+ once_value_6 = fra.me.REG[6];
register_static_object(&once_value_6);
- } else fra.me.REG[5] = once_value_6;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[6] = once_value_6;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
}
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB1 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB1 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB1));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = REGB1;
} else {
- /* ./compiling//compiling_global.nit:445 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label7;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[4])(fra.me.REG[4]);
}
label7: while(0);
- REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
/* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:214 */
REGB2 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB2));
- /* ./compiling//compiling_global.nit:452 */
+ /* ./compiling//compiling_global.nit:355 */
if (UNTAG_Bool(REGB2)) {
- REGB2 = TAG_Int(0);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:453 */
+ /* ./compiling//compiling_global.nit:356 */
if (!once_value_8) {
- fra.me.REG[6] = BOX_NativeString("{0},");
+ fra.me.REG[5] = BOX_NativeString("{0},");
REGB2 = TAG_Int(4);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_8 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_8 = fra.me.REG[5];
register_static_object(&once_value_8);
- } else fra.me.REG[6] = once_value_8;
- REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
+ } else fra.me.REG[5] = once_value_8;
+ fra.me.REG[5] = fra.me.REG[5];
/* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[2]);
+ /* ./../lib/standard//kernel.nit:217 */
REGB2 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB2));
- fra.me.REG[6] = CALL_string___String_____star(fra.me.REG[6])(fra.me.REG[6], REGB2);
- /* ./compiling//compiling_global.nit:453 */
- array___Array___add(fra.me.REG[4], fra.me.REG[6]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:356 */
+ fra.me.REG[5] = CALL_string___String_____star(fra.me.REG[5])(fra.me.REG[5], REGB2);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
}
- /* ./compiling//compiling_global.nit:455 */
+ /* ./compiling//compiling_global.nit:358 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:456 */
+ /* ./compiling//compiling_global.nit:359 */
if (!once_value_9) {
- fra.me.REG[6] = BOX_NativeString("};");
+ fra.me.REG[5] = BOX_NativeString("};");
REGB2 = TAG_Int(2);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_9 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_9 = fra.me.REG[5];
register_static_object(&once_value_9);
- } else fra.me.REG[6] = once_value_9;
- array___Array___add(fra.me.REG[4], fra.me.REG[6]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ } else fra.me.REG[5] = once_value_9;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:360 */
fra.me.REG[3] = CALL_table_computation___CompiledClass___instance_table(fra.me.REG[3])(fra.me.REG[3]);
- fra.me.REG[4] = CALL_abstract_collection___Collection___iterator(fra.me.REG[3])(fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:458 */
+ /* ./../lib/standard//collection//array.nit:231 */
+ fra.me.REG[5] = fra.me.REG[3];
+ /* ./../lib/standard//collection//array.nit:234 */
+ REGB2 = TAG_Int(0);
+ /* ./../lib/standard//collection//array.nit:235 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[5])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 235);
+ }
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[5]);
+ /* ./../lib/standard//collection//array.nit:236 */
+ fra.me.REG[2] = ATTR_array___Array____items(fra.me.REG[5]);
+ /* ./../lib/standard//collection//array.nit:237 */
while(1) {
- REGB2 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[4])(fra.me.REG[4]);
- if (UNTAG_Bool(REGB2)) {
- fra.me.REG[6] = CALL_abstract_collection___Iterator___item(fra.me.REG[4])(fra.me.REG[4]);
- REGB2 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- /* ./compiling//compiling_global.nit:459 */
- if (UNTAG_Bool(REGB2)) {
+ /* ./../lib/standard//collection//array.nit:23 */
+ REGB0 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[5])!=NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
+ }
+ REGB0 = ATTR_array___AbstractArrayRead____length(fra.me.REG[5]);
+ /* ./../lib/standard//kernel.nit:212 */
+ REGB0 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB0));
+ /* ./../lib/standard//collection//array.nit:237 */
+ if (UNTAG_Bool(REGB0)) {
+ /* ./../lib/standard//collection//array.nit:238 */
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_array, 238);
+ }
+ /* ./../lib/standard//collection//array.nit:654 */
+ fra.me.REG[4] = ((Nit_NativeArray)fra.me.REG[2])->val[UNTAG_Int(REGB2)];
+ /* ./compiling//compiling_global.nit:362 */
+ REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
} else {
- REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Bool(false);
- REGB2 = REGB0;
+ REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB1)) {
+ REGB1 = TAG_Bool(false);
+ REGB0 = REGB1;
} else {
- REGB0 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
- REGB2 = REGB0;
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+ REGB0 = REGB1;
}
}
- if (UNTAG_Bool(REGB2)) {
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:460 */
+ if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:363 */
if (!once_value_10) {
fra.me.REG[7] = BOX_NativeString("/* Instance Hole :( */");
- REGB2 = TAG_Int(22);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ REGB0 = TAG_Int(22);
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB0);
once_value_10 = fra.me.REG[7];
register_static_object(&once_value_10);
} else fra.me.REG[7] = once_value_10;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
} else {
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- REGB2 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- /* ./compiling//compiling_global.nit:462 */
- if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 462);
- nit_exit(1);
+ /* ./compiling//compiling_global.nit:365 */
+ REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 365);
}
- fra.me.REG[6] = CALL_compiling_global___TableElt___compile_to_c(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[1], fra.me.REG[0]);
- array___Array___add(fra.me.REG[2], fra.me.REG[6]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ fra.me.REG[4] = CALL_compiling_global___TableElt___compile_to_c(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1], fra.me.REG[0]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
}
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB0 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
+ REGB0 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB0));
+ /* ./../lib/standard//collection//array.nit:239 */
+ REGB2 = REGB0;
} else {
- /* ./compiling//compiling_global.nit:458 */
+ /* ./../lib/standard//collection//array.nit:237 */
goto label11;
}
- CALL_abstract_collection___Iterator___next(fra.me.REG[4])(fra.me.REG[4]);
}
label11: while(0);
- fra.me.REG[4] = CALL_primitive_info___MMLocalClass___primitive_info(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:467 */
+ /* ./compiling//compiling_global.nit:369 */
+ fra.me.REG[2] = CALL_primitive_info___MMLocalClass___primitive_info(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:370 */
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
if (!once_value_12) {
- fra.me.REG[6] = BOX_NativeString("NativeArray");
+ fra.me.REG[4] = BOX_NativeString("NativeArray");
REGB2 = TAG_Int(11);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_12 = fra.me.REG[6];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_12 = fra.me.REG[4];
register_static_object(&once_value_12);
- } else fra.me.REG[6] = once_value_12;
- fra.me.REG[6] = CALL_symbol___String___to_symbol(fra.me.REG[6])(fra.me.REG[6]);
- REGB2 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[2],fra.me.REG[6]));
+ } else fra.me.REG[4] = once_value_12;
+ fra.me.REG[4] = fra.me.REG[4];
+ fra.me.REG[4] = CALL_symbol___String___to_symbol(fra.me.REG[4])(fra.me.REG[4]);
+ REGB2 = TAG_Bool(IS_EQUAL_OO(fra.me.REG[5],fra.me.REG[4]));
if (UNTAG_Bool(REGB2)) {
} else {
- REGB0 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[6]);
+ REGB0 = CALL_kernel___Object_____eqeq(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]);
REGB2 = REGB0;
}
if (UNTAG_Bool(REGB2)) {
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:468 */
+ /* ./compiling//compiling_global.nit:371 */
if (!once_value_13) {
- fra.me.REG[2] = BOX_NativeString("val_t NEW_NativeArray(size_t length, size_t size) {");
+ fra.me.REG[4] = BOX_NativeString("val_t NEW_NativeArray(size_t length, size_t size) {");
REGB2 = TAG_Int(51);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_13 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_13 = fra.me.REG[4];
register_static_object(&once_value_13);
- } else fra.me.REG[2] = once_value_13;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:469 */
+ } else fra.me.REG[4] = once_value_13;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:372 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:470 */
+ /* ./compiling//compiling_global.nit:373 */
if (!once_value_14) {
- fra.me.REG[2] = BOX_NativeString("Nit_NativeArray array;");
+ fra.me.REG[4] = BOX_NativeString("Nit_NativeArray array;");
REGB2 = TAG_Int(22);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_14 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_14 = fra.me.REG[4];
register_static_object(&once_value_14);
- } else fra.me.REG[2] = once_value_14;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:471 */
+ } else fra.me.REG[4] = once_value_14;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:374 */
if (!once_value_15) {
- fra.me.REG[2] = BOX_NativeString("array = (Nit_NativeArray)alloc(sizeof(struct Nit_NativeArray) + ((length - 1) * size));");
+ fra.me.REG[4] = BOX_NativeString("array = (Nit_NativeArray)alloc(sizeof(struct Nit_NativeArray) + ((length - 1) * size));");
REGB2 = TAG_Int(87);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_15 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_15 = fra.me.REG[4];
register_static_object(&once_value_15);
- } else fra.me.REG[2] = once_value_15;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
+ } else fra.me.REG[4] = once_value_15;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:375 */
REGB2 = TAG_Int(3);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:472 */
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_16) {
- fra.me.REG[7] = BOX_NativeString("array->vft = (classtable_elt_t*)VFT_");
+ fra.me.REG[5] = BOX_NativeString("array->vft = (classtable_elt_t*)VFT_");
REGB2 = TAG_Int(36);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_16 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_16 = fra.me.REG[5];
register_static_object(&once_value_16);
- } else fra.me.REG[7] = once_value_16;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
+ } else fra.me.REG[5] = once_value_16;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
if (!once_value_17) {
- fra.me.REG[7] = BOX_NativeString(";");
+ fra.me.REG[5] = BOX_NativeString(";");
REGB2 = TAG_Int(1);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_17 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_17 = fra.me.REG[5];
register_static_object(&once_value_17);
- } else fra.me.REG[7] = once_value_17;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:473 */
+ } else fra.me.REG[5] = once_value_17;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:376 */
if (!once_value_18) {
- fra.me.REG[2] = BOX_NativeString("array->object_id = object_id_counter;");
+ fra.me.REG[4] = BOX_NativeString("array->object_id = object_id_counter;");
REGB2 = TAG_Int(37);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_18 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_18 = fra.me.REG[4];
register_static_object(&once_value_18);
- } else fra.me.REG[2] = once_value_18;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:474 */
+ } else fra.me.REG[4] = once_value_18;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:377 */
if (!once_value_19) {
- fra.me.REG[2] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
+ fra.me.REG[4] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
REGB2 = TAG_Int(42);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_19 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_19 = fra.me.REG[4];
register_static_object(&once_value_19);
- } else fra.me.REG[2] = once_value_19;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:475 */
+ } else fra.me.REG[4] = once_value_19;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:378 */
if (!once_value_20) {
- fra.me.REG[2] = BOX_NativeString("array->size = length;");
+ fra.me.REG[4] = BOX_NativeString("array->size = length;");
REGB2 = TAG_Int(21);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_20 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_20 = fra.me.REG[4];
register_static_object(&once_value_20);
- } else fra.me.REG[2] = once_value_20;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:476 */
+ } else fra.me.REG[4] = once_value_20;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:379 */
if (!once_value_21) {
- fra.me.REG[2] = BOX_NativeString("return OBJ2VAL(array);");
+ fra.me.REG[4] = BOX_NativeString("return OBJ2VAL(array);");
REGB2 = TAG_Int(22);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_21 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_21 = fra.me.REG[4];
register_static_object(&once_value_21);
- } else fra.me.REG[2] = once_value_21;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:477 */
+ } else fra.me.REG[4] = once_value_21;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:380 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:478 */
+ /* ./compiling//compiling_global.nit:381 */
if (!once_value_22) {
- fra.me.REG[2] = BOX_NativeString("}");
+ fra.me.REG[4] = BOX_NativeString("}");
REGB2 = TAG_Int(1);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_22 = fra.me.REG[2];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_22 = fra.me.REG[4];
register_static_object(&once_value_22);
- } else fra.me.REG[2] = once_value_22;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ } else fra.me.REG[4] = once_value_22;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
} else {
- REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- /* ./compiling//compiling_global.nit:479 */
+ /* ./compiling//compiling_global.nit:382 */
+ REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
if (UNTAG_Bool(REGB0)) {
REGB0 = TAG_Bool(false);
REGB2 = REGB0;
} else {
- REGB0 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+ REGB0 = CALL_kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
REGB2 = REGB0;
}
}
if (UNTAG_Bool(REGB2)) {
+ /* ./compiling//compiling_global.nit:385 */
REGB2 = TAG_Int(3);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:482 */
+ fra.me.REG[4] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_23) {
- fra.me.REG[2] = BOX_NativeString("INIT_ATTRIBUTES__");
+ fra.me.REG[5] = BOX_NativeString("INIT_ATTRIBUTES__");
REGB2 = TAG_Int(17);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_23 = fra.me.REG[2];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_23 = fra.me.REG[5];
register_static_object(&once_value_23);
- } else fra.me.REG[2] = once_value_23;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
+ } else fra.me.REG[5] = once_value_23;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
if (!once_value_24) {
- fra.me.REG[2] = BOX_NativeString("");
+ fra.me.REG[5] = BOX_NativeString("");
REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
- once_value_24 = fra.me.REG[2];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_24 = fra.me.REG[5];
register_static_object(&once_value_24);
- } else fra.me.REG[2] = once_value_24;
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- fra.me.REG[2] = ATTR_compiling_global___MMLocalClass____init_var_iroutine(fra.me.REG[0]);
+ } else fra.me.REG[5] = once_value_24;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[5]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:386 */
+ fra.me.REG[5] = CALL_program___MMLocalClass___init_var_iroutine(fra.me.REG[0])(fra.me.REG[0]);
REGB2 = TAG_Int(3);
fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:483 */
if (!once_value_25) {
- fra.me.REG[5] = BOX_NativeString("init var of ");
+ fra.me.REG[6] = BOX_NativeString("init var of ");
REGB2 = TAG_Int(12);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_25 = fra.me.REG[5];
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_25 = fra.me.REG[6];
register_static_object(&once_value_25);
- } else fra.me.REG[5] = once_value_25;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[6] = once_value_25;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
+ fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
if (!once_value_26) {
- fra.me.REG[5] = BOX_NativeString("");
+ fra.me.REG[6] = BOX_NativeString("");
REGB2 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_26 = fra.me.REG[5];
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
+ once_value_26 = fra.me.REG[6];
register_static_object(&once_value_26);
- } else fra.me.REG[5] = once_value_26;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[6] = once_value_26;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 483);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 386);
}
- fra.me.REG[7] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1], fra.me.REG[6], fra.me.REG[7], NIT_NULL, NIT_NULL);
- fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[5] = NEW_CContext_compiling_base___CContext___init();
- /* ./compiling//compiling_global.nit:485 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- fra.me.REG[5] = ATTR_compiling_global___MMLocalClass____init_var_iroutine(fra.me.REG[0]);
- REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- /* ./compiling//compiling_global.nit:486 */
+ fra.me.REG[7] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[4], fra.me.REG[7], NIT_NULL, NIT_NULL);
+ /* ./compiling//compiling_global.nit:387 */
+ fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___decl_writer(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:388 */
+ fra.me.REG[6] = CALL_compiling_base___CompilerVisitor___writer(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[6] = CALL_compiling_writer___Writer___sub(fra.me.REG[6])(fra.me.REG[6]);
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ /* ./compiling//compiling_global.nit:389 */
+ fra.me.REG[6] = CALL_program___MMLocalClass___init_var_iroutine(fra.me.REG[0])(fra.me.REG[0]);
+ REGB2 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 486);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 389);
}
- CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[6], fra.me.REG[7]);
- fra.me.REG[7] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- /* ./compiling//compiling_global.nit:487 */
- CALL_compiling_base___CContext___append(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[7]);
- /* ./compiling//compiling_global.nit:488 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:489 */
+ CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[1], fra.me.REG[4], fra.me.REG[7]);
+ /* ./compiling//compiling_global.nit:390 */
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:391 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:490 */
+ /* ./compiling//compiling_global.nit:392 */
if (!once_value_27) {
- fra.me.REG[7] = BOX_NativeString("}");
+ fra.me.REG[5] = BOX_NativeString("}");
REGB2 = TAG_Int(1);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_27 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_27 = fra.me.REG[5];
register_static_object(&once_value_27);
- } else fra.me.REG[7] = once_value_27;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
+ } else fra.me.REG[5] = once_value_27;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:396 */
REGB2 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:494 */
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_28) {
- fra.me.REG[6] = BOX_NativeString("val_t NEW_");
+ fra.me.REG[7] = BOX_NativeString("val_t NEW_");
REGB2 = TAG_Int(10);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_28 = fra.me.REG[6];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_28 = fra.me.REG[7];
register_static_object(&once_value_28);
- } else fra.me.REG[6] = once_value_28;
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
+ } else fra.me.REG[7] = once_value_28;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
+ fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
if (!once_value_29) {
- fra.me.REG[6] = BOX_NativeString("(void);");
+ fra.me.REG[7] = BOX_NativeString("(void);");
REGB2 = TAG_Int(7);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_29 = fra.me.REG[6];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_29 = fra.me.REG[7];
register_static_object(&once_value_29);
- } else fra.me.REG[6] = once_value_29;
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
+ } else fra.me.REG[7] = once_value_29;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:397 */
REGB2 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:495 */
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_30) {
- fra.me.REG[6] = BOX_NativeString("val_t NEW_");
+ fra.me.REG[7] = BOX_NativeString("val_t NEW_");
REGB2 = TAG_Int(10);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_30 = fra.me.REG[6];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_30 = fra.me.REG[7];
register_static_object(&once_value_30);
- } else fra.me.REG[6] = once_value_30;
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
+ } else fra.me.REG[7] = once_value_30;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
+ fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
if (!once_value_31) {
- fra.me.REG[6] = BOX_NativeString("(void)");
+ fra.me.REG[7] = BOX_NativeString("(void)");
REGB2 = TAG_Int(6);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_31 = fra.me.REG[6];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_31 = fra.me.REG[7];
register_static_object(&once_value_31);
- } else fra.me.REG[6] = once_value_31;
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:496 */
+ } else fra.me.REG[7] = once_value_31;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:398 */
if (!once_value_32) {
- fra.me.REG[7] = BOX_NativeString("{");
+ fra.me.REG[5] = BOX_NativeString("{");
REGB2 = TAG_Int(1);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_32 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_32 = fra.me.REG[5];
register_static_object(&once_value_32);
- } else fra.me.REG[7] = once_value_32;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:497 */
+ } else fra.me.REG[5] = once_value_32;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:399 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:498 */
+ /* ./compiling//compiling_global.nit:400 */
if (!once_value_33) {
- fra.me.REG[7] = BOX_NativeString("obj_t obj;");
+ fra.me.REG[5] = BOX_NativeString("obj_t obj;");
REGB2 = TAG_Int(10);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_33 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_33 = fra.me.REG[5];
register_static_object(&once_value_33);
- } else fra.me.REG[7] = once_value_33;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
+ } else fra.me.REG[5] = once_value_33;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:401 */
REGB2 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:499 */
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_34) {
- fra.me.REG[6] = BOX_NativeString("obj = alloc(sizeof(val_t) * ");
+ fra.me.REG[7] = BOX_NativeString("obj = alloc(sizeof(val_t) * ");
REGB2 = TAG_Int(28);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_34 = fra.me.REG[6];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_34 = fra.me.REG[7];
register_static_object(&once_value_34);
- } else fra.me.REG[6] = once_value_34;
- array___Array___add(fra.me.REG[7], fra.me.REG[6]);
- REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
+ } else fra.me.REG[7] = once_value_34;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[7]);
/* ./../lib/standard//collection//array.nit:23 */
+ REGB2 = TAG_Bool(ATTR_array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
if (UNTAG_Bool(REGB2)) {
} else {
- fprintf(stderr, "Uninitialized attribute %s", "_length");
- fprintf(stderr, " (%s:%d)\n", LOCATE_array, 23);
- nit_exit(1);
+ nit_abort("Uninitialized attribute %s", "_length", LOCATE_array, 23);
}
REGB2 = ATTR_array___AbstractArrayRead____length(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:401 */
fra.me.REG[3] = CALL_string___Object___to_s(REGB2)(REGB2);
- /* ./compiling//compiling_global.nit:499 */
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
if (!once_value_35) {
fra.me.REG[3] = BOX_NativeString(");");
REGB2 = TAG_Int(2);
once_value_35 = fra.me.REG[3];
register_static_object(&once_value_35);
} else fra.me.REG[3] = once_value_35;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:402 */
REGB2 = TAG_Int(3);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:500 */
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_36) {
fra.me.REG[3] = BOX_NativeString("obj->vft = (classtable_elt_t*)VFT_");
REGB2 = TAG_Int(34);
once_value_36 = fra.me.REG[3];
register_static_object(&once_value_36);
} else fra.me.REG[3] = once_value_36;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
if (!once_value_37) {
fra.me.REG[3] = BOX_NativeString(";");
REGB2 = TAG_Int(1);
once_value_37 = fra.me.REG[3];
register_static_object(&once_value_37);
} else fra.me.REG[3] = once_value_37;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:501 */
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:403 */
if (!once_value_38) {
- fra.me.REG[7] = BOX_NativeString("obj[1].object_id = object_id_counter;");
+ fra.me.REG[5] = BOX_NativeString("obj[1].object_id = object_id_counter;");
REGB2 = TAG_Int(37);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_38 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_38 = fra.me.REG[5];
register_static_object(&once_value_38);
- } else fra.me.REG[7] = once_value_38;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:502 */
+ } else fra.me.REG[5] = once_value_38;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:404 */
if (!once_value_39) {
- fra.me.REG[7] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
+ fra.me.REG[5] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
REGB2 = TAG_Int(42);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_39 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_39 = fra.me.REG[5];
register_static_object(&once_value_39);
- } else fra.me.REG[7] = once_value_39;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:503 */
+ } else fra.me.REG[5] = once_value_39;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:405 */
if (!once_value_40) {
- fra.me.REG[7] = BOX_NativeString("return OBJ2VAL(obj);");
+ fra.me.REG[5] = BOX_NativeString("return OBJ2VAL(obj);");
REGB2 = TAG_Int(20);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_40 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_40 = fra.me.REG[5];
register_static_object(&once_value_40);
- } else fra.me.REG[7] = once_value_40;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
- /* ./compiling//compiling_global.nit:504 */
+ } else fra.me.REG[5] = once_value_40;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:406 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:505 */
+ /* ./compiling//compiling_global.nit:407 */
if (!once_value_41) {
- fra.me.REG[7] = BOX_NativeString("}");
+ fra.me.REG[5] = BOX_NativeString("}");
REGB2 = TAG_Int(1);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_41 = fra.me.REG[7];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_41 = fra.me.REG[5];
register_static_object(&once_value_41);
- } else fra.me.REG[7] = once_value_41;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ } else fra.me.REG[5] = once_value_41;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:411 */
REGB2 = TAG_Int(3);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:509 */
+ fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_42) {
- fra.me.REG[7] = BOX_NativeString("CHECKNEW_");
+ fra.me.REG[3] = BOX_NativeString("CHECKNEW_");
REGB2 = TAG_Int(9);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_42 = fra.me.REG[7];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
+ once_value_42 = fra.me.REG[3];
register_static_object(&once_value_42);
- } else fra.me.REG[7] = once_value_42;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
+ } else fra.me.REG[3] = once_value_42;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
if (!once_value_43) {
- fra.me.REG[7] = BOX_NativeString("");
+ fra.me.REG[3] = BOX_NativeString("");
REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
- once_value_43 = fra.me.REG[7];
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
+ once_value_43 = fra.me.REG[3];
register_static_object(&once_value_43);
- } else fra.me.REG[7] = once_value_43;
- array___Array___add(fra.me.REG[2], fra.me.REG[7]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[7] = ATTR_compiling_global___MMLocalClass____checknew_iroutine(fra.me.REG[0]);
+ } else fra.me.REG[3] = once_value_43;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:412 */
+ fra.me.REG[3] = CALL_program___MMLocalClass___checknew_iroutine(fra.me.REG[0])(fra.me.REG[0]);
REGB2 = TAG_Int(3);
- fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:510 */
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_44) {
- fra.me.REG[6] = BOX_NativeString("check new ");
+ fra.me.REG[4] = BOX_NativeString("check new ");
REGB2 = TAG_Int(10);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_44 = fra.me.REG[6];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_44 = fra.me.REG[4];
register_static_object(&once_value_44);
- } else fra.me.REG[6] = once_value_44;
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
+ } else fra.me.REG[4] = once_value_44;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[4] = CALL_string___Object___to_s(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[4]);
if (!once_value_45) {
- fra.me.REG[6] = BOX_NativeString("");
+ fra.me.REG[4] = BOX_NativeString("");
REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_45 = fra.me.REG[6];
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
+ once_value_45 = fra.me.REG[4];
register_static_object(&once_value_45);
- } else fra.me.REG[6] = once_value_45;
- array___Array___add(fra.me.REG[3], fra.me.REG[6]);
- fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- REGB2 = TAG_Bool(fra.me.REG[7]==NIT_NULL);
+ } else fra.me.REG[4] = once_value_45;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[4]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ REGB2 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 510);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 412);
}
- fra.me.REG[3] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[1], fra.me.REG[2], fra.me.REG[3], NIT_NULL, NIT_NULL);
- fra.me.REG[7] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[6] = NEW_CContext_compiling_base___CContext___init();
- /* ./compiling//compiling_global.nit:512 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- fra.me.REG[6] = ATTR_compiling_global___MMLocalClass____checknew_iroutine(fra.me.REG[0]);
- REGB2 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
- /* ./compiling//compiling_global.nit:513 */
+ fra.me.REG[7] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[1], fra.me.REG[5], fra.me.REG[7], NIT_NULL, NIT_NULL);
+ /* ./compiling//compiling_global.nit:413 */
+ fra.me.REG[3] = CALL_compiling_base___CompilerVisitor___decl_writer(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:414 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___writer(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[4] = CALL_compiling_writer___Writer___sub(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:415 */
+ fra.me.REG[4] = CALL_program___MMLocalClass___checknew_iroutine(fra.me.REG[0])(fra.me.REG[0]);
+ REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 513);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 415);
}
- CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[1], fra.me.REG[2], fra.me.REG[3]);
- fra.me.REG[3] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- /* ./compiling//compiling_global.nit:514 */
- CALL_compiling_base___CContext___append(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:515 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- /* ./compiling//compiling_global.nit:516 */
+ CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[1], fra.me.REG[5], fra.me.REG[7]);
+ /* ./compiling//compiling_global.nit:416 */
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:417 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:517 */
+ /* ./compiling//compiling_global.nit:418 */
if (!once_value_46) {
fra.me.REG[3] = BOX_NativeString("}");
REGB2 = TAG_Int(1);
once_value_46 = fra.me.REG[3];
register_static_object(&once_value_46);
} else fra.me.REG[3] = once_value_46;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___cshe(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[7] = CALL_partial_order___PartialOrderElement___greaters(fra.me.REG[7])(fra.me.REG[7]);
- REGB2 = CALL_abstract_collection___Collection___length(fra.me.REG[7])(fra.me.REG[7]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:421 */
+ fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___cshe(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[3] = CALL_partial_order___PartialOrderElement___greaters(fra.me.REG[3])(fra.me.REG[3]);
+ REGB2 = CALL_abstract_collection___Collection___length(fra.me.REG[3])(fra.me.REG[3]);
REGB0 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:215 */
REGB0 = TAG_Int(UNTAG_Int(REGB2)+UNTAG_Int(REGB0));
+ /* ./compiling//compiling_global.nit:422 */
REGB2 = TAG_Int(5);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:521 */
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_47) {
- fra.me.REG[3] = BOX_NativeString("int init_table[");
+ fra.me.REG[7] = BOX_NativeString("int init_table[");
REGB2 = TAG_Int(15);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
- once_value_47 = fra.me.REG[3];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_47 = fra.me.REG[7];
register_static_object(&once_value_47);
- } else fra.me.REG[3] = once_value_47;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
- fra.me.REG[3] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ } else fra.me.REG[7] = once_value_47;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
+ fra.me.REG[7] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
if (!once_value_48) {
- fra.me.REG[3] = BOX_NativeString("] = {0");
+ fra.me.REG[7] = BOX_NativeString("] = {0");
REGB2 = TAG_Int(6);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
- once_value_48 = fra.me.REG[3];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_48 = fra.me.REG[7];
register_static_object(&once_value_48);
- } else fra.me.REG[3] = once_value_48;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ } else fra.me.REG[7] = once_value_48;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
if (!once_value_49) {
- fra.me.REG[3] = BOX_NativeString(", 0");
+ fra.me.REG[7] = BOX_NativeString(", 0");
REGB2 = TAG_Int(3);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
- once_value_49 = fra.me.REG[3];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_49 = fra.me.REG[7];
register_static_object(&once_value_49);
- } else fra.me.REG[3] = once_value_49;
+ } else fra.me.REG[7] = once_value_49;
+ fra.me.REG[7] = fra.me.REG[7];
REGB2 = TAG_Int(1);
+ /* ./../lib/standard//kernel.nit:217 */
REGB2 = TAG_Int(UNTAG_Int(REGB0)-UNTAG_Int(REGB2));
- fra.me.REG[3] = CALL_string___String_____star(fra.me.REG[3])(fra.me.REG[3], REGB2);
- /* ./compiling//compiling_global.nit:521 */
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:422 */
+ fra.me.REG[7] = CALL_string___String_____star(fra.me.REG[7])(fra.me.REG[7], REGB2);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
if (!once_value_50) {
- fra.me.REG[3] = BOX_NativeString("};");
+ fra.me.REG[7] = BOX_NativeString("};");
REGB2 = TAG_Int(2);
- fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB2);
- once_value_50 = fra.me.REG[3];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_50 = fra.me.REG[7];
register_static_object(&once_value_50);
- } else fra.me.REG[3] = once_value_50;
- array___Array___add(fra.me.REG[7], fra.me.REG[3]);
- fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- fra.me.REG[3] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[3] = CALL_abstract_collection___Collection___iterator(fra.me.REG[3])(fra.me.REG[3]);
- /* ./compiling//compiling_global.nit:523 */
- while(1) {
- REGB2 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[3])(fra.me.REG[3]);
- if (UNTAG_Bool(REGB2)) {
- fra.me.REG[2] = CALL_abstract_collection___Iterator___item(fra.me.REG[3])(fra.me.REG[3]);
- fra.me.REG[2] = CALL_abstractmetamodel___MMLocalClass_____bra(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[2])(fra.me.REG[2]);
- REGB2 = CALL_abstractmetamodel___MMGlobalProperty___is_init_for(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[0]);
- REGB2 = TAG_Bool(!UNTAG_Bool(REGB2));
- /* ./compiling//compiling_global.nit:526 */
- if (UNTAG_Bool(REGB2)) {
- goto label51;
- }
- REGB2 = TAG_Bool(VAL_ISA(fra.me.REG[2], COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
- /* ./compiling//compiling_global.nit:527 */
- if (UNTAG_Bool(REGB2)) {
- } else {
- fprintf(stderr, "Assert failed");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 527);
- nit_exit(1);
- }
- REGB2 = TAG_Int(5);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:529 */
- if (!once_value_52) {
- fra.me.REG[5] = BOX_NativeString("NEW_");
- REGB2 = TAG_Int(4);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_52 = fra.me.REG[5];
- register_static_object(&once_value_52);
- } else fra.me.REG[5] = once_value_52;
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- if (!once_value_53) {
- fra.me.REG[5] = BOX_NativeString("_");
- REGB2 = TAG_Int(1);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_53 = fra.me.REG[5];
- register_static_object(&once_value_53);
- } else fra.me.REG[5] = once_value_53;
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[2])(fra.me.REG[2]);
- fra.me.REG[5] = CALL_abstractmetamodel___MMGlobalProperty___intro(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- if (!once_value_54) {
- fra.me.REG[5] = BOX_NativeString("");
- REGB2 = TAG_Int(0);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_54 = fra.me.REG[5];
- register_static_object(&once_value_54);
- } else fra.me.REG[5] = once_value_54;
- array___Array___add(fra.me.REG[6], fra.me.REG[5]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- REGB2 = TAG_Bool(ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0])!=NIT_NULL);
- /* ./compiling//compiling_global.nit:530 */
- if (UNTAG_Bool(REGB2)) {
- } else {
- fprintf(stderr, "Uninitialized attribute %s", "_new_instance_iroutine");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 530);
- nit_exit(1);
- }
- fra.me.REG[5] = ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0]);
- fra.me.REG[5] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[2]);
- REGB2 = TAG_Int(5);
- fra.me.REG[8] = NEW_Array_array___Array___with_capacity(REGB2);
- if (!once_value_55) {
- fra.me.REG[9] = BOX_NativeString("new ");
- REGB2 = TAG_Int(4);
- fra.me.REG[9] = NEW_String_string___String___with_native(fra.me.REG[9], REGB2);
- once_value_55 = fra.me.REG[9];
- register_static_object(&once_value_55);
- } else fra.me.REG[9] = once_value_55;
- array___Array___add(fra.me.REG[8], fra.me.REG[9]);
- fra.me.REG[9] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[8], fra.me.REG[9]);
- if (!once_value_56) {
- fra.me.REG[9] = BOX_NativeString(" ");
- REGB2 = TAG_Int(1);
- fra.me.REG[9] = NEW_String_string___String___with_native(fra.me.REG[9], REGB2);
- once_value_56 = fra.me.REG[9];
- register_static_object(&once_value_56);
- } else fra.me.REG[9] = once_value_56;
- array___Array___add(fra.me.REG[8], fra.me.REG[9]);
- fra.me.REG[9] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[8], fra.me.REG[9]);
- if (!once_value_57) {
- fra.me.REG[9] = BOX_NativeString("");
- REGB2 = TAG_Int(0);
- fra.me.REG[9] = NEW_String_string___String___with_native(fra.me.REG[9], REGB2);
- once_value_57 = fra.me.REG[9];
- register_static_object(&once_value_57);
- } else fra.me.REG[9] = once_value_57;
- array___Array___add(fra.me.REG[8], fra.me.REG[9]);
- fra.me.REG[8] = CALL_string___Object___to_s(fra.me.REG[8])(fra.me.REG[8]);
- REGB2 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
- if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 530);
- nit_exit(1);
- }
- fra.me.REG[8] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[1], fra.me.REG[6], fra.me.REG[8], NIT_NULL, NIT_NULL);
- fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[9] = NEW_CContext_compiling_base___CContext___init();
- /* ./compiling//compiling_global.nit:532 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[9]);
- REGB2 = TAG_Int(0);
- fra.me.REG[9] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:533 */
- array___Array___add(fra.me.REG[9], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[9]);
- REGB2 = TAG_Bool(ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0])!=NIT_NULL);
- /* ./compiling//compiling_global.nit:534 */
- if (UNTAG_Bool(REGB2)) {
- } else {
- fprintf(stderr, "Uninitialized attribute %s", "_new_instance_iroutine");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 534);
- nit_exit(1);
- }
- fra.me.REG[9] = ATTR_compiling_global___MMLocalClass____new_instance_iroutine(fra.me.REG[0]);
- fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[9])(fra.me.REG[9], fra.me.REG[2]);
- REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 534);
- nit_exit(1);
- }
- fra.me.REG[8] = CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1], fra.me.REG[6], fra.me.REG[8]);
- REGB2 = TAG_Bool((fra.me.REG[8]!=NIT_NULL) && VAL_ISA(fra.me.REG[8], COLOR_String, ID_String)) /*cast String*/;
- if (UNTAG_Bool(REGB2)) {
- } else {
- fprintf(stderr, "Cast failed");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 534);
- nit_exit(1);
- }
- REGB2 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB2);
- REGB2 = TAG_Int(3);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:535 */
- if (!once_value_58) {
- fra.me.REG[9] = BOX_NativeString("return ");
- REGB2 = TAG_Int(7);
- fra.me.REG[9] = NEW_String_string___String___with_native(fra.me.REG[9], REGB2);
- once_value_58 = fra.me.REG[9];
- register_static_object(&once_value_58);
- } else fra.me.REG[9] = once_value_58;
- array___Array___add(fra.me.REG[2], fra.me.REG[9]);
- array___Array___add(fra.me.REG[2], fra.me.REG[8]);
- if (!once_value_59) {
- fra.me.REG[8] = BOX_NativeString(";");
- REGB2 = TAG_Int(1);
- fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB2);
- once_value_59 = fra.me.REG[8];
- register_static_object(&once_value_59);
- } else fra.me.REG[8] = once_value_59;
- array___Array___add(fra.me.REG[2], fra.me.REG[8]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[6], fra.me.REG[2]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- fra.me.REG[6] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- /* ./compiling//compiling_global.nit:536 */
- CALL_compiling_base___CContext___append(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:537 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./compiling//compiling_global.nit:538 */
- CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:539 */
- if (!once_value_60) {
- fra.me.REG[6] = BOX_NativeString("}");
- REGB2 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_60 = fra.me.REG[6];
- register_static_object(&once_value_60);
- } else fra.me.REG[6] = once_value_60;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- label51: while(0);
- } else {
- /* ./compiling//compiling_global.nit:523 */
- goto label61;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[3])(fra.me.REG[3]);
- }
- label61: while(0);
+ } else fra.me.REG[7] = once_value_50;
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ /* ./compiling//compiling_global.nit:424 */
+ fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___global_properties(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___Collection___iterate(fra.me.REG[7])(fra.me.REG[7], (&(fra.me)), ((fun_t)OC_compiling_global___MMLocalClass___compile_tables_to_c_51));
} else {
- REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- /* ./compiling//compiling_global.nit:541 */
+ /* ./compiling//compiling_global.nit:441 */
+ REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 541);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 441);
}
- REGB2 = CALL_primitive_info___PrimitiveInfo___tagged(fra.me.REG[4])(fra.me.REG[4]);
+ REGB2 = CALL_primitive_info___PrimitiveInfo___tagged(fra.me.REG[2])(fra.me.REG[2]);
REGB2 = TAG_Bool(!UNTAG_Bool(REGB2));
if (UNTAG_Bool(REGB2)) {
- REGB2 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- /* ./compiling//compiling_global.nit:542 */
+ /* ./compiling//compiling_global.nit:442 */
+ REGB2 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
if (UNTAG_Bool(REGB2)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 542);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 442);
}
- fra.me.REG[4] = CALL_primitive_info___PrimitiveInfo___cname(fra.me.REG[4])(fra.me.REG[4]);
+ fra.me.REG[2] = CALL_primitive_info___PrimitiveInfo___cname(fra.me.REG[2])(fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:443 */
REGB2 = TAG_Int(3);
fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:543 */
if (!once_value_62) {
fra.me.REG[7] = BOX_NativeString("struct TBOX_");
REGB2 = TAG_Int(12);
once_value_62 = fra.me.REG[7];
register_static_object(&once_value_62);
} else fra.me.REG[7] = once_value_62;
- array___Array___add(fra.me.REG[3], fra.me.REG[7]);
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
fra.me.REG[7] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[3], fra.me.REG[7]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
if (!once_value_63) {
fra.me.REG[7] = BOX_NativeString("");
REGB2 = TAG_Int(0);
once_value_63 = fra.me.REG[7];
register_static_object(&once_value_63);
} else fra.me.REG[7] = once_value_63;
- array___Array___add(fra.me.REG[3], fra.me.REG[7]);
+ fra.me.REG[7] = fra.me.REG[7];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[7]);
fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
+ /* ./compiling//compiling_global.nit:444 */
REGB2 = TAG_Int(5);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:544 */
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_64) {
- fra.me.REG[6] = BOX_NativeString("val_t BOX_");
+ fra.me.REG[5] = BOX_NativeString("val_t BOX_");
REGB2 = TAG_Int(10);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_64 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_64 = fra.me.REG[5];
register_static_object(&once_value_64);
- } else fra.me.REG[6] = once_value_64;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
+ } else fra.me.REG[5] = once_value_64;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]);
+ fra.me.REG[5] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]);
if (!once_value_65) {
- fra.me.REG[6] = BOX_NativeString("(");
+ fra.me.REG[5] = BOX_NativeString("(");
REGB2 = TAG_Int(1);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB2);
- once_value_65 = fra.me.REG[6];
+ fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
+ once_value_65 = fra.me.REG[5];
register_static_object(&once_value_65);
- } else fra.me.REG[6] = once_value_65;
- array___Array___add(fra.me.REG[5], fra.me.REG[6]);
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
+ } else fra.me.REG[5] = once_value_65;
+ fra.me.REG[5] = fra.me.REG[5];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[5]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[2]);
if (!once_value_66) {
- fra.me.REG[4] = BOX_NativeString(" val) {");
+ fra.me.REG[2] = BOX_NativeString(" val) {");
REGB2 = TAG_Int(7);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
- once_value_66 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
+ once_value_66 = fra.me.REG[2];
register_static_object(&once_value_66);
- } else fra.me.REG[4] = once_value_66;
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[2] = once_value_66;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[2]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- /* ./compiling//compiling_global.nit:545 */
+ /* ./compiling//compiling_global.nit:445 */
CALL_compiling_base___CompilerVisitor___indent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
+ /* ./compiling//compiling_global.nit:446 */
REGB2 = TAG_Int(7);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:546 */
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_67) {
- fra.me.REG[4] = BOX_NativeString("");
+ fra.me.REG[2] = BOX_NativeString("");
REGB2 = TAG_Int(0);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
- once_value_67 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
+ once_value_67 = fra.me.REG[2];
register_static_object(&once_value_67);
- } else fra.me.REG[4] = once_value_67;
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_67;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
if (!once_value_68) {
- fra.me.REG[4] = BOX_NativeString(" *box = (");
+ fra.me.REG[2] = BOX_NativeString(" *box = (");
REGB2 = TAG_Int(9);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
- once_value_68 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
+ once_value_68 = fra.me.REG[2];
register_static_object(&once_value_68);
- } else fra.me.REG[4] = once_value_68;
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_68;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
if (!once_value_69) {
- fra.me.REG[4] = BOX_NativeString("*)alloc(sizeof(");
+ fra.me.REG[2] = BOX_NativeString("*)alloc(sizeof(");
REGB2 = TAG_Int(15);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB2);
- once_value_69 = fra.me.REG[4];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB2);
+ once_value_69 = fra.me.REG[2];
register_static_object(&once_value_69);
- } else fra.me.REG[4] = once_value_69;
- array___Array___add(fra.me.REG[5], fra.me.REG[4]);
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
+ } else fra.me.REG[2] = once_value_69;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
if (!once_value_70) {
fra.me.REG[3] = BOX_NativeString("));");
REGB2 = TAG_Int(3);
once_value_70 = fra.me.REG[3];
register_static_object(&once_value_70);
} else fra.me.REG[3] = once_value_70;
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
+ /* ./compiling//compiling_global.nit:447 */
REGB2 = TAG_Int(3);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:547 */
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
if (!once_value_71) {
fra.me.REG[3] = BOX_NativeString("box->vft = VFT_");
REGB2 = TAG_Int(15);
once_value_71 = fra.me.REG[3];
register_static_object(&once_value_71);
} else fra.me.REG[3] = once_value_71;
- array___Array___add(fra.me.REG[5], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[3]);
fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass___name(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
- array___Array___add(fra.me.REG[5], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
if (!once_value_72) {
fra.me.REG[0] = BOX_NativeString(";");
REGB2 = TAG_Int(1);
once_value_72 = fra.me.REG[0];
register_static_object(&once_value_72);
} else fra.me.REG[0] = once_value_72;
- array___Array___add(fra.me.REG[5], fra.me.REG[0]);
- fra.me.REG[5] = CALL_string___Object___to_s(fra.me.REG[5])(fra.me.REG[5]);
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[0]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:548 */
+ /* ./compiling//compiling_global.nit:448 */
if (!once_value_73) {
- fra.me.REG[5] = BOX_NativeString("box->val = val;");
+ fra.me.REG[7] = BOX_NativeString("box->val = val;");
REGB2 = TAG_Int(15);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_73 = fra.me.REG[5];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_73 = fra.me.REG[7];
register_static_object(&once_value_73);
- } else fra.me.REG[5] = once_value_73;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[7] = once_value_73;
+ fra.me.REG[7] = fra.me.REG[7];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:549 */
+ /* ./compiling//compiling_global.nit:449 */
if (!once_value_74) {
- fra.me.REG[5] = BOX_NativeString("box->object_id = object_id_counter;");
+ fra.me.REG[7] = BOX_NativeString("box->object_id = object_id_counter;");
REGB2 = TAG_Int(35);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_74 = fra.me.REG[5];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_74 = fra.me.REG[7];
register_static_object(&once_value_74);
- } else fra.me.REG[5] = once_value_74;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[7] = once_value_74;
+ fra.me.REG[7] = fra.me.REG[7];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:550 */
+ /* ./compiling//compiling_global.nit:450 */
if (!once_value_75) {
- fra.me.REG[5] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
+ fra.me.REG[7] = BOX_NativeString("object_id_counter = object_id_counter + 1;");
REGB2 = TAG_Int(42);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_75 = fra.me.REG[5];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_75 = fra.me.REG[7];
register_static_object(&once_value_75);
- } else fra.me.REG[5] = once_value_75;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[7] = once_value_75;
+ fra.me.REG[7] = fra.me.REG[7];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:551 */
+ /* ./compiling//compiling_global.nit:451 */
if (!once_value_76) {
- fra.me.REG[5] = BOX_NativeString("return OBJ2VAL(box);");
+ fra.me.REG[7] = BOX_NativeString("return OBJ2VAL(box);");
REGB2 = TAG_Int(20);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_76 = fra.me.REG[5];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_76 = fra.me.REG[7];
register_static_object(&once_value_76);
- } else fra.me.REG[5] = once_value_76;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[7] = once_value_76;
+ fra.me.REG[7] = fra.me.REG[7];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
- /* ./compiling//compiling_global.nit:552 */
+ /* ./compiling//compiling_global.nit:452 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB2 = TAG_Int(0);
- fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB2);
- /* ./compiling//compiling_global.nit:553 */
+ /* ./compiling//compiling_global.nit:453 */
if (!once_value_77) {
- fra.me.REG[5] = BOX_NativeString("}");
+ fra.me.REG[7] = BOX_NativeString("}");
REGB2 = TAG_Int(1);
- fra.me.REG[5] = NEW_String_string___String___with_native(fra.me.REG[5], REGB2);
- once_value_77 = fra.me.REG[5];
+ fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB2);
+ once_value_77 = fra.me.REG[7];
register_static_object(&once_value_77);
- } else fra.me.REG[5] = once_value_77;
- array___Array___add(fra.me.REG[7], fra.me.REG[5]);
+ } else fra.me.REG[7] = once_value_77;
+ fra.me.REG[7] = fra.me.REG[7];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
}
}
stack_frame_head = fra.me.prev;
return;
}
+ void OC_compiling_global___MMLocalClass___compile_tables_to_c_51(struct stack_frame_t *closctx, val_t p0, struct stack_frame_t *closctx_param, fun_t clos_fun0){
+ struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
+ val_t REGB0;
+ fun_t CREG[1];
+ val_t tmp;
+ static val_t once_value_53; /* Once value */
+ static val_t once_value_54; /* Once value */
+ static val_t once_value_55; /* Once value */
+ static val_t once_value_56; /* Once value */
+ static val_t once_value_57; /* Once value */
+ static val_t once_value_58; /* Once value */
+ static val_t once_value_59; /* Once value */
+ static val_t once_value_60; /* Once value */
+ static val_t once_value_61; /* Once value */
+ fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
+ fra.me.file = LOCATE_compiling_global;
+ fra.me.line = 0;
+ fra.me.meth = LOCATE_compiling_global___MMLocalClass___compile_tables_to_c;
+ fra.me.has_broke = 0;
+ fra.me.REG_size = 5;
+ fra.me.REG[0] = NIT_NULL;
+ fra.me.REG[1] = NIT_NULL;
+ fra.me.REG[2] = NIT_NULL;
+ fra.me.REG[3] = NIT_NULL;
+ fra.me.REG[4] = NIT_NULL;
+ fra.me.closure_ctx = closctx_param;
+ fra.me.closure_funs = CREG;
+ fra.me.REG[0] = p0;
+ CREG[0] = clos_fun0;
+ /* ./compiling//compiling_global.nit:425 */
+ fra.me.REG[0] = CALL_abstractmetamodel___MMLocalClass_____bra(closctx->REG[0])(closctx->REG[0], fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:427 */
+ fra.me.REG[1] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init_for(fra.me.REG[1])(fra.me.REG[1], closctx->REG[0]);
+ REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
+ if (UNTAG_Bool(REGB0)) {
+ goto label52;
+ }
+ /* ./compiling//compiling_global.nit:428 */
+ REGB0 = TAG_Bool(VAL_ISA(fra.me.REG[0], COLOR_MMMethod, ID_MMMethod)) /*cast MMMethod*/;
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Assert failed", NULL, LOCATE_compiling_global, 428);
+ }
+ /* ./compiling//compiling_global.nit:430 */
+ REGB0 = TAG_Int(5);
+ fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_53) {
+ fra.me.REG[2] = BOX_NativeString("NEW_");
+ REGB0 = TAG_Int(4);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_53 = fra.me.REG[2];
+ register_static_object(&once_value_53);
+ } else fra.me.REG[2] = once_value_53;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ fra.me.REG[2] = CALL_string___Object___to_s(closctx->REG[0])(closctx->REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ if (!once_value_54) {
+ fra.me.REG[2] = BOX_NativeString("_");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_54 = fra.me.REG[2];
+ register_static_object(&once_value_54);
+ } else fra.me.REG[2] = once_value_54;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ fra.me.REG[2] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ fra.me.REG[2] = CALL_abstractmetamodel___MMGlobalProperty___intro(fra.me.REG[2])(fra.me.REG[2]);
+ fra.me.REG[2] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[2])(fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ if (!once_value_55) {
+ fra.me.REG[2] = BOX_NativeString("");
+ REGB0 = TAG_Int(0);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_55 = fra.me.REG[2];
+ register_static_object(&once_value_55);
+ } else fra.me.REG[2] = once_value_55;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[2]);
+ fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:431 */
+ fra.me.REG[2] = CALL_program___MMLocalClass___new_instance_iroutine(closctx->REG[0])(closctx->REG[0]);
+ fra.me.REG[2] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[0]);
+ REGB0 = TAG_Int(5);
+ fra.me.REG[3] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_56) {
+ fra.me.REG[4] = BOX_NativeString("new ");
+ REGB0 = TAG_Int(4);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_56 = fra.me.REG[4];
+ register_static_object(&once_value_56);
+ } else fra.me.REG[4] = once_value_56;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_string___Object___to_s(closctx->REG[0])(closctx->REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ if (!once_value_57) {
+ fra.me.REG[4] = BOX_NativeString(" ");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_57 = fra.me.REG[4];
+ register_static_object(&once_value_57);
+ } else fra.me.REG[4] = once_value_57;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[4] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[0])(fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ if (!once_value_58) {
+ fra.me.REG[4] = BOX_NativeString("");
+ REGB0 = TAG_Int(0);
+ fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
+ once_value_58 = fra.me.REG[4];
+ register_static_object(&once_value_58);
+ } else fra.me.REG[4] = once_value_58;
+ fra.me.REG[4] = fra.me.REG[4];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
+ fra.me.REG[3] = CALL_string___Object___to_s(fra.me.REG[3])(fra.me.REG[3]);
+ REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 431);
+ }
+ fra.me.REG[3] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[2])(fra.me.REG[2], closctx->REG[1], fra.me.REG[1], fra.me.REG[3], NIT_NULL, NIT_NULL);
+ /* ./compiling//compiling_global.nit:432 */
+ fra.me.REG[2] = CALL_compiling_base___CompilerVisitor___decl_writer(closctx->REG[1])(closctx->REG[1]);
+ /* ./compiling//compiling_global.nit:433 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___writer(closctx->REG[1])(closctx->REG[1]);
+ fra.me.REG[4] = CALL_compiling_writer___Writer___sub(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(closctx->REG[1])(closctx->REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:434 */
+ CALL_compiling_base___CompilerVisitor___add_instr(closctx->REG[1])(closctx->REG[1], closctx->REG[3]);
+ /* ./compiling//compiling_global.nit:435 */
+ fra.me.REG[4] = CALL_program___MMLocalClass___new_instance_iroutine(closctx->REG[0])(closctx->REG[0]);
+ fra.me.REG[0] = CALL_abstract_collection___MapRead_____bra(fra.me.REG[4])(fra.me.REG[4], fra.me.REG[0]);
+ REGB0 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
+ if (UNTAG_Bool(REGB0)) {
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 435);
+ }
+ fra.me.REG[3] = CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[0])(fra.me.REG[0], closctx->REG[1], fra.me.REG[1], fra.me.REG[3]);
+ REGB0 = TAG_Bool((fra.me.REG[3]!=NIT_NULL) && VAL_ISA(fra.me.REG[3], COLOR_String, ID_String)) /*cast String*/;
+ if (UNTAG_Bool(REGB0)) {
+ } else {
+ nit_abort("Cast failed", NULL, LOCATE_compiling_global, 435);
+ }
+ /* ./compiling//compiling_global.nit:436 */
+ REGB0 = TAG_Int(3);
+ fra.me.REG[1] = NEW_Array_array___Array___with_capacity(REGB0);
+ if (!once_value_59) {
+ fra.me.REG[0] = BOX_NativeString("return ");
+ REGB0 = TAG_Int(7);
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_59 = fra.me.REG[0];
+ register_static_object(&once_value_59);
+ } else fra.me.REG[0] = once_value_59;
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ if (!once_value_60) {
+ fra.me.REG[3] = BOX_NativeString(";");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[3] = NEW_String_string___String___with_native(fra.me.REG[3], REGB0);
+ once_value_60 = fra.me.REG[3];
+ register_static_object(&once_value_60);
+ } else fra.me.REG[3] = once_value_60;
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
+ fra.me.REG[1] = CALL_string___Object___to_s(fra.me.REG[1])(fra.me.REG[1]);
+ CALL_compiling_base___CompilerVisitor___add_instr(closctx->REG[1])(closctx->REG[1], fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:437 */
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(closctx->REG[1])(closctx->REG[1], fra.me.REG[2]);
+ /* ./compiling//compiling_global.nit:438 */
+ CALL_compiling_base___CompilerVisitor___unindent(closctx->REG[1])(closctx->REG[1]);
+ /* ./compiling//compiling_global.nit:439 */
+ if (!once_value_61) {
+ fra.me.REG[2] = BOX_NativeString("}");
+ REGB0 = TAG_Int(1);
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_61 = fra.me.REG[2];
+ register_static_object(&once_value_61);
+ } else fra.me.REG[2] = once_value_61;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_compiling_base___CompilerVisitor___add_instr(closctx->REG[1])(closctx->REG[1], fra.me.REG[2]);
+ label52: while(0);
+ stack_frame_head = fra.me.prev;
+ return;
+ }
void compiling_global___MMMethod___compile_property_to_c(val_t p0, val_t p1){
struct {struct stack_frame_t me; val_t MORE_REG[8];} fra;
val_t REGB0;
static val_t once_value_15; /* Once value */
fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;
fra.me.file = LOCATE_compiling_global;
- fra.me.line = 559;
+ fra.me.line = 459;
fra.me.meth = LOCATE_compiling_global___MMMethod___compile_property_to_c;
fra.me.has_broke = 0;
fra.me.REG_size = 9;
fra.me.REG[8] = NIT_NULL;
fra.me.REG[0] = p0;
fra.me.REG[1] = p1;
+ /* ./compiling//compiling_global.nit:461 */
fra.me.REG[2] = CALL_icode_base___MMMethod___iroutine(fra.me.REG[0])(fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:462 */
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:562 */
if (UNTAG_Bool(REGB0)) {
} else {
REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
if (UNTAG_Bool(REGB0)) {
} else {
- fprintf(stderr, "Assert failed");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 562);
- nit_exit(1);
+ nit_abort("Assert failed", NULL, LOCATE_compiling_global, 462);
}
+ /* ./compiling//compiling_global.nit:464 */
fra.me.REG[3] = NIT_NULL;
+ /* ./compiling//compiling_global.nit:465 */
fra.me.REG[4] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init(fra.me.REG[4])(fra.me.REG[4]);
- /* ./compiling//compiling_global.nit:565 */
if (UNTAG_Bool(REGB0)) {
if (!once_value_1) {
fra.me.REG[4] = BOX_NativeString("int* init_table");
once_value_1 = fra.me.REG[4];
register_static_object(&once_value_1);
} else fra.me.REG[4] = once_value_1;
+ fra.me.REG[4] = fra.me.REG[4];
fra.me.REG[3] = fra.me.REG[4];
}
+ /* ./compiling//compiling_global.nit:466 */
fra.me.REG[4] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[5] = CALL_abstractmetamodel___MMLocalProperty___full_name(fra.me.REG[0])(fra.me.REG[0]);
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:566 */
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 566);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 466);
}
fra.me.REG[3] = CALL_compiling_icode___IRoutine___compile_signature_to_c(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1], fra.me.REG[4], fra.me.REG[5], NIT_NULL, fra.me.REG[3]);
- fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[4] = NEW_CContext_compiling_base___CContext___init();
- /* ./compiling//compiling_global.nit:568 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
- fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___out_contexts(fra.me.REG[1])(fra.me.REG[1]);
- /* ./compiling//compiling_global.nit:570 */
- CALL_abstract_collection___RemovableCollection___clear(fra.me.REG[4])(fra.me.REG[4]);
- fra.me.REG[4] = NIT_NULL;
- fra.me.REG[6] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
- REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init(fra.me.REG[6])(fra.me.REG[6]);
- /* ./compiling//compiling_global.nit:573 */
+ /* ./compiling//compiling_global.nit:467 */
+ fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___writer(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:468 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___writer(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[4] = CALL_compiling_writer___Writer___sub(fra.me.REG[4])(fra.me.REG[4]);
+ CALL_compiling_base___CompilerVisitor___writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
+ /* ./compiling//compiling_global.nit:469 */
+ fra.me.REG[4] = CALL_compiling_base___CompilerVisitor___decl_writer(fra.me.REG[1])(fra.me.REG[1]);
+ /* ./compiling//compiling_global.nit:470 */
+ fra.me.REG[6] = CALL_compiling_base___CompilerVisitor___writer(fra.me.REG[1])(fra.me.REG[1]);
+ fra.me.REG[6] = CALL_compiling_writer___Writer___sub(fra.me.REG[6])(fra.me.REG[6]);
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ /* ./compiling//compiling_global.nit:472 */
+ fra.me.REG[6] = NIT_NULL;
+ /* ./compiling//compiling_global.nit:473 */
+ fra.me.REG[7] = CALL_abstractmetamodel___MMLocalProperty___global(fra.me.REG[0])(fra.me.REG[0]);
+ REGB0 = CALL_abstractmetamodel___MMGlobalProperty___is_init(fra.me.REG[7])(fra.me.REG[7]);
if (UNTAG_Bool(REGB0)) {
+ /* ./compiling//compiling_global.nit:474 */
REGB0 = TAG_Int(3);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:574 */
+ fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_2) {
- fra.me.REG[7] = BOX_NativeString("itpos");
+ fra.me.REG[8] = BOX_NativeString("itpos");
REGB0 = TAG_Int(5);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB0);
- once_value_2 = fra.me.REG[7];
+ fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB0);
+ once_value_2 = fra.me.REG[8];
register_static_object(&once_value_2);
- } else fra.me.REG[7] = once_value_2;
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
+ } else fra.me.REG[8] = once_value_2;
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
REGB0 = CALL_compiling_base___CompilerVisitor___new_number(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[7] = CALL_string___Object___to_s(REGB0)(REGB0);
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
+ fra.me.REG[8] = CALL_string___Object___to_s(REGB0)(REGB0);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
if (!once_value_3) {
- fra.me.REG[7] = BOX_NativeString("");
+ fra.me.REG[8] = BOX_NativeString("");
REGB0 = TAG_Int(0);
- fra.me.REG[7] = NEW_String_string___String___with_native(fra.me.REG[7], REGB0);
- once_value_3 = fra.me.REG[7];
+ fra.me.REG[8] = NEW_String_string___String___with_native(fra.me.REG[8], REGB0);
+ once_value_3 = fra.me.REG[8];
register_static_object(&once_value_3);
- } else fra.me.REG[7] = once_value_3;
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- fra.me.REG[6] = CALL_string___Object___to_s(fra.me.REG[6])(fra.me.REG[6]);
- fra.me.REG[4] = fra.me.REG[6];
- REGB0 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0);
+ } else fra.me.REG[8] = once_value_3;
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
+ fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
+ fra.me.REG[6] = fra.me.REG[7];
+ /* ./compiling//compiling_global.nit:475 */
REGB0 = TAG_Int(7);
fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:575 */
if (!once_value_4) {
fra.me.REG[8] = BOX_NativeString("int ");
REGB0 = TAG_Int(4);
once_value_4 = fra.me.REG[8];
register_static_object(&once_value_4);
} else fra.me.REG[8] = once_value_4;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- array___Array___add(fra.me.REG[7], fra.me.REG[4]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
if (!once_value_5) {
fra.me.REG[8] = BOX_NativeString(" = VAL2OBJ(");
REGB0 = TAG_Int(11);
once_value_5 = fra.me.REG[8];
register_static_object(&once_value_5);
} else fra.me.REG[8] = once_value_5;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
fra.me.REG[8] = CALL_abstract_collection___Collection___first(fra.me.REG[3])(fra.me.REG[3]);
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
if (!once_value_6) {
fra.me.REG[8] = BOX_NativeString(")->vft[");
REGB0 = TAG_Int(7);
once_value_6 = fra.me.REG[8];
register_static_object(&once_value_6);
} else fra.me.REG[8] = once_value_6;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
fra.me.REG[8] = CALL_abstractmetamodel___MMLocalProperty___local_class(fra.me.REG[0])(fra.me.REG[0]);
fra.me.REG[8] = CALL_abstractmetamodel___MMLocalClass___global(fra.me.REG[8])(fra.me.REG[8]);
fra.me.REG[8] = CALL_compiling_base___MMGlobalClass___init_table_pos_id(fra.me.REG[8])(fra.me.REG[8]);
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
if (!once_value_7) {
fra.me.REG[8] = BOX_NativeString("].i;");
REGB0 = TAG_Int(4);
once_value_7 = fra.me.REG[8];
register_static_object(&once_value_7);
} else fra.me.REG[8] = once_value_7;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
- REGB0 = TAG_Int(0);
- fra.me.REG[6] = NEW_Array_array___Array___with_capacity(REGB0);
+ CALL_compiling_base___CompilerVisitor___add_decl(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
+ /* ./compiling//compiling_global.nit:476 */
REGB0 = TAG_Int(3);
fra.me.REG[7] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:576 */
if (!once_value_8) {
fra.me.REG[8] = BOX_NativeString("if (init_table[");
REGB0 = TAG_Int(15);
once_value_8 = fra.me.REG[8];
register_static_object(&once_value_8);
} else fra.me.REG[8] = once_value_8;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
- array___Array___add(fra.me.REG[7], fra.me.REG[4]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[6]);
if (!once_value_9) {
fra.me.REG[8] = BOX_NativeString("]) return;");
REGB0 = TAG_Int(10);
once_value_9 = fra.me.REG[8];
register_static_object(&once_value_9);
} else fra.me.REG[8] = once_value_9;
- array___Array___add(fra.me.REG[7], fra.me.REG[8]);
+ fra.me.REG[8] = fra.me.REG[8];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[7])(fra.me.REG[7], fra.me.REG[8]);
fra.me.REG[7] = CALL_string___Object___to_s(fra.me.REG[7])(fra.me.REG[7]);
- array___Array___add(fra.me.REG[6], fra.me.REG[7]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[6]);
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[7]);
}
+ /* ./compiling//compiling_global.nit:479 */
fra.me.REG[0] = CALL_compiling_base___MMLocalProperty___cname(fra.me.REG[0])(fra.me.REG[0]);
REGB0 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
- /* ./compiling//compiling_global.nit:579 */
if (UNTAG_Bool(REGB0)) {
- fprintf(stderr, "Reciever is null");
- fprintf(stderr, " (%s:%d)\n", LOCATE_compiling_global, 579);
- nit_exit(1);
+ nit_abort("Reciever is null", NULL, LOCATE_compiling_global, 479);
}
fra.me.REG[3] = CALL_compiling_icode___IRoutine___compile_to_c(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[1], fra.me.REG[0], fra.me.REG[3]);
- REGB0 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
- /* ./compiling//compiling_global.nit:581 */
+ /* ./compiling//compiling_global.nit:481 */
+ REGB0 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
if (UNTAG_Bool(REGB0)) {
} else {
- REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
+ REGB1 = TAG_Bool(fra.me.REG[6]==NIT_NULL);
if (UNTAG_Bool(REGB1)) {
REGB1 = TAG_Bool(false);
REGB0 = REGB1;
} else {
- REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[4])(fra.me.REG[4], NIT_NULL);
+ REGB1 = CALL_kernel___Object_____eqeq(fra.me.REG[6])(fra.me.REG[6], NIT_NULL);
REGB0 = REGB1;
}
}
REGB0 = TAG_Bool(!UNTAG_Bool(REGB0));
if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Int(0);
- fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
+ /* ./compiling//compiling_global.nit:482 */
REGB0 = TAG_Int(3);
- fra.me.REG[2] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:582 */
+ fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
if (!once_value_10) {
- fra.me.REG[6] = BOX_NativeString("init_table[");
+ fra.me.REG[2] = BOX_NativeString("init_table[");
REGB0 = TAG_Int(11);
- fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
- once_value_10 = fra.me.REG[6];
+ fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
+ once_value_10 = fra.me.REG[2];
register_static_object(&once_value_10);
- } else fra.me.REG[6] = once_value_10;
- array___Array___add(fra.me.REG[2], fra.me.REG[6]);
- array___Array___add(fra.me.REG[2], fra.me.REG[4]);
+ } else fra.me.REG[2] = once_value_10;
+ fra.me.REG[2] = fra.me.REG[2];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[2]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6]);
if (!once_value_11) {
- fra.me.REG[4] = BOX_NativeString("] = 1;");
+ fra.me.REG[6] = BOX_NativeString("] = 1;");
REGB0 = TAG_Int(6);
- fra.me.REG[4] = NEW_String_string___String___with_native(fra.me.REG[4], REGB0);
- once_value_11 = fra.me.REG[4];
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
+ once_value_11 = fra.me.REG[6];
register_static_object(&once_value_11);
- } else fra.me.REG[4] = once_value_11;
- array___Array___add(fra.me.REG[2], fra.me.REG[4]);
- fra.me.REG[2] = CALL_string___Object___to_s(fra.me.REG[2])(fra.me.REG[2]);
- array___Array___add(fra.me.REG[0], fra.me.REG[2]);
+ } else fra.me.REG[6] = once_value_11;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6]);
+ fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
}
+ /* ./compiling//compiling_global.nit:484 */
REGB0 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
- /* ./compiling//compiling_global.nit:584 */
if (UNTAG_Bool(REGB0)) {
} else {
REGB1 = TAG_Bool(fra.me.REG[3]==NIT_NULL);
}
}
if (UNTAG_Bool(REGB0)) {
- REGB0 = TAG_Int(0);
- fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:585 */
+ /* ./compiling//compiling_global.nit:485 */
if (!once_value_12) {
- fra.me.REG[2] = BOX_NativeString("return;");
+ fra.me.REG[0] = BOX_NativeString("return;");
REGB0 = TAG_Int(7);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_12 = fra.me.REG[2];
+ fra.me.REG[0] = NEW_String_string___String___with_native(fra.me.REG[0], REGB0);
+ once_value_12 = fra.me.REG[0];
register_static_object(&once_value_12);
- } else fra.me.REG[2] = once_value_12;
- array___Array___add(fra.me.REG[0], fra.me.REG[2]);
+ } else fra.me.REG[0] = once_value_12;
+ fra.me.REG[0] = fra.me.REG[0];
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
} else {
- REGB0 = TAG_Int(2);
+ /* ./compiling//compiling_global.nit:487 */
+ REGB0 = TAG_Int(3);
fra.me.REG[0] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:587 */
if (!once_value_13) {
- fra.me.REG[2] = BOX_NativeString("return ");
+ fra.me.REG[6] = BOX_NativeString("return ");
REGB0 = TAG_Int(7);
- fra.me.REG[2] = NEW_String_string___String___with_native(fra.me.REG[2], REGB0);
- once_value_13 = fra.me.REG[2];
+ fra.me.REG[6] = NEW_String_string___String___with_native(fra.me.REG[6], REGB0);
+ once_value_13 = fra.me.REG[6];
register_static_object(&once_value_13);
- } else fra.me.REG[2] = once_value_13;
- array___Array___add(fra.me.REG[0], fra.me.REG[2]);
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
+ } else fra.me.REG[6] = once_value_13;
+ fra.me.REG[6] = fra.me.REG[6];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[6]);
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[3]);
if (!once_value_14) {
fra.me.REG[3] = BOX_NativeString(";");
REGB0 = TAG_Int(1);
once_value_14 = fra.me.REG[3];
register_static_object(&once_value_14);
} else fra.me.REG[3] = once_value_14;
- array___Array___add(fra.me.REG[0], fra.me.REG[3]);
+ fra.me.REG[3] = fra.me.REG[3];
+ CALL_abstract_collection___SimpleCollection___add(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[3]);
+ fra.me.REG[0] = CALL_string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
}
- fra.me.REG[0] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- /* ./compiling//compiling_global.nit:590 */
- CALL_compiling_base___CContext___append(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[0]);
- /* ./compiling//compiling_global.nit:591 */
- CALL_compiling_base___CompilerVisitor___ctx__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- /* ./compiling//compiling_global.nit:592 */
+ /* ./compiling//compiling_global.nit:489 */
CALL_compiling_base___CompilerVisitor___unindent(fra.me.REG[1])(fra.me.REG[1]);
- REGB0 = TAG_Int(0);
- fra.me.REG[5] = NEW_Array_array___Array___with_capacity(REGB0);
- /* ./compiling//compiling_global.nit:593 */
+ /* ./compiling//compiling_global.nit:490 */
if (!once_value_15) {
fra.me.REG[0] = BOX_NativeString("}");
REGB0 = TAG_Int(1);
once_value_15 = fra.me.REG[0];
register_static_object(&once_value_15);
} else fra.me.REG[0] = once_value_15;
- array___Array___add(fra.me.REG[5], fra.me.REG[0]);
- CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
- fra.me.REG[5] = CALL_compiling_base___CompilerVisitor___out_contexts(fra.me.REG[1])(fra.me.REG[1]);
- fra.me.REG[5] = CALL_abstract_collection___Collection___iterator(fra.me.REG[5])(fra.me.REG[5]);
- /* ./compiling//compiling_global.nit:595 */
- while(1) {
- REGB0 = CALL_abstract_collection___Iterator___is_ok(fra.me.REG[5])(fra.me.REG[5]);
- if (UNTAG_Bool(REGB0)) {
- fra.me.REG[0] = CALL_abstract_collection___Iterator___item(fra.me.REG[5])(fra.me.REG[5]);
- fra.me.REG[3] = CALL_compiling_base___CompilerVisitor___ctx(fra.me.REG[1])(fra.me.REG[1]);
- CALL_compiling_base___CContext___merge(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[0]);
- } else {
- goto label16;
- }
- CALL_abstract_collection___Iterator___next(fra.me.REG[5])(fra.me.REG[5]);
- }
- label16: while(0);
+ fra.me.REG[0] = fra.me.REG[0];
+ CALL_compiling_base___CompilerVisitor___add_instr(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[0]);
+ /* ./compiling//compiling_global.nit:492 */
+ CALL_compiling_base___CompilerVisitor___writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[5]);
+ /* ./compiling//compiling_global.nit:493 */
+ CALL_compiling_base___CompilerVisitor___decl_writer__eq(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[4]);
stack_frame_head = fra.me.prev;
return;
}