X-Git-Url: http://nitlanguage.org diff --git a/c_src/nit__c_tools.sep.1.c b/c_src/nit__c_tools.sep.1.c index a63f7ab..7e923da 100644 --- a/c_src/nit__c_tools.sep.1.c +++ b/c_src/nit__c_tools.sep.1.c @@ -1,4 +1,526 @@ #include "nit__c_tools.sep.0.h" +/* method c_tools#CCompilationUnit#header_c_base for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___header_c_base(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_c_base].val; /* _header_c_base on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_base"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 24); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#header_custom for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___header_custom(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_custom].val; /* _header_custom on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 28); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#header_c_types for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___header_c_types(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_c_types].val; /* _header_c_types on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_types"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 31); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#header_decl for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___header_decl(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_decl].val; /* _header_decl on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_decl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 34); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#body_decl for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___body_decl(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_decl].val; /* _body_decl on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 37); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#body_custom for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___body_custom(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_custom].val; /* _body_custom on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_custom"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 41); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#body_impl for (self: CCompilationUnit): Template */ +val* nit___nit__CCompilationUnit___body_impl(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 44); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#files for (self: CCompilationUnit): Array[String] */ +val* nit___nit__CCompilationUnit___files(val* self) { +val* var /* : Array[String] */; +val* var1 /* : Array[String] */; +var1 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___files].val; /* _files on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _files"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 47); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CCompilationUnit#add_exported_function for (self: CCompilationUnit, CFunction) */ +void nit___nit__CCompilationUnit___add_exported_function(val* self, val* p0) { +val* var_c_function /* var c_function: CFunction */; +val* var /* : Template */; +val* var2 /* : Template */; +val* var3 /* : NativeArray[String] */; +static val* varonce; +static val* varonce4; +val* var5 /* : String */; +char* var6 /* : NativeString */; +val* var7 /* : FlatString */; +val* var8 /* : String */; +val* var10 /* : String */; +val* var11 /* : String */; +val* var12 /* : Template */; +val* var14 /* : Template */; +static val* varonce15; +val* var16 /* : String */; +char* var17 /* : NativeString */; +val* var18 /* : FlatString */; +val* var19 /* : Template */; +val* var21 /* : Template */; +val* var22 /* : Template */; +var_c_function = p0; +{ +{ /* Inline c_tools#CCompilationUnit#body_decl (self) on */ +var2 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_decl].val; /* _body_decl on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 37); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +if (unlikely(varonce==NULL)) { +var3 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String); +if (likely(varonce4!=NULL)) { +var5 = varonce4; +} else { +var6 = ";\n"; +var7 = standard___standard__NativeString___to_s_with_length(var6, 2l); +var5 = var7; +varonce4 = var5; +} +((struct instance_standard__NativeArray*)var3)->values[1]=var5; +} else { +var3 = varonce; +varonce = NULL; +} +{ +{ /* Inline c_tools#CFunction#signature (var_c_function) on */ +var10 = var_c_function->attrs[COLOR_nit__c_tools__CFunction___signature].val; /* _signature on */ +if (unlikely(var10 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _signature"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 86); +fatal_exit(1); +} +var8 = var10; +RET_LABEL9:(void)0; +} +} +((struct instance_standard__NativeArray*)var3)->values[0]=var8; +{ +var11 = ((val*(*)(val* self))(var3->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var3); /* native_to_s on */ +} +varonce = var3; +{ +template___template__Template___add(var, var11); /* Direct call template#Template#add on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#body_impl (self) on */ +var14 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on */ +if (unlikely(var14 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 44); +fatal_exit(1); +} +var12 = var14; +RET_LABEL13:(void)0; +} +} +if (likely(varonce15!=NULL)) { +var16 = varonce15; +} else { +var17 = "\n"; +var18 = standard___standard__NativeString___to_s_with_length(var17, 1l); +var16 = var18; +varonce15 = var16; +} +{ +template___template__Template___add(var12, var16); /* Direct call template#Template#add on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#body_impl (self) on */ +var21 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on */ +if (unlikely(var21 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 44); +fatal_exit(1); +} +var19 = var21; +RET_LABEL20:(void)0; +} +} +{ +var22 = nit___nit__CFunction___to_writer(var_c_function); +} +{ +template___template__Template___add(var19, var22); /* Direct call template#Template#add on */ +} +RET_LABEL:; +} +/* method c_tools#CCompilationUnit#compile_header_core for (self: CCompilationUnit, Writer) */ +void nit___nit__CCompilationUnit___compile_header_core(val* self, val* p0) { +val* var_stream /* var stream: Writer */; +val* var /* : Template */; +val* var2 /* : Template */; +val* var3 /* : Template */; +val* var5 /* : Template */; +val* var6 /* : Template */; +val* var8 /* : Template */; +val* var9 /* : Template */; +val* var11 /* : Template */; +var_stream = p0; +{ +{ /* Inline c_tools#CCompilationUnit#header_c_base (self) on */ +var2 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_c_base].val; /* _header_c_base on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_base"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 24); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var, var_stream); /* Direct call template#Template#write_to on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#header_custom (self) on */ +var5 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_custom].val; /* _header_custom on */ +if (unlikely(var5 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_custom"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 28); +fatal_exit(1); +} +var3 = var5; +RET_LABEL4:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var3, var_stream); /* Direct call template#Template#write_to on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#header_c_types (self) on */ +var8 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_c_types].val; /* _header_c_types on */ +if (unlikely(var8 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_c_types"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 31); +fatal_exit(1); +} +var6 = var8; +RET_LABEL7:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var6, var_stream); /* Direct call template#Template#write_to on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#header_decl (self) on */ +var11 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___header_decl].val; /* _header_decl on */ +if (unlikely(var11 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _header_decl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 34); +fatal_exit(1); +} +var9 = var11; +RET_LABEL10:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var9, var_stream); /* Direct call template#Template#write_to on */ +} +RET_LABEL:; +} +/* method c_tools#CCompilationUnit#compile_body_core for (self: CCompilationUnit, Writer) */ +void nit___nit__CCompilationUnit___compile_body_core(val* self, val* p0) { +val* var_stream /* var stream: Writer */; +val* var /* : Template */; +val* var2 /* : Template */; +val* var3 /* : Template */; +val* var5 /* : Template */; +val* var6 /* : Template */; +val* var8 /* : Template */; +var_stream = p0; +{ +{ /* Inline c_tools#CCompilationUnit#body_decl (self) on */ +var2 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_decl].val; /* _body_decl on */ +if (unlikely(var2 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_decl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 37); +fatal_exit(1); +} +var = var2; +RET_LABEL1:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var, var_stream); /* Direct call template#Template#write_to on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#body_custom (self) on */ +var5 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_custom].val; /* _body_custom on */ +if (unlikely(var5 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_custom"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 41); +fatal_exit(1); +} +var3 = var5; +RET_LABEL4:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var3, var_stream); /* Direct call template#Template#write_to on */ +} +{ +{ /* Inline c_tools#CCompilationUnit#body_impl (self) on */ +var8 = self->attrs[COLOR_nit__c_tools__CCompilationUnit___body_impl].val; /* _body_impl on */ +if (unlikely(var8 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _body_impl"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 44); +fatal_exit(1); +} +var6 = var8; +RET_LABEL7:(void)0; +} +} +{ +template___template__Template___standard__stream__Writable__write_to(var6, var_stream); /* Direct call template#Template#write_to on */ +} +RET_LABEL:; +} +/* method c_tools#CFunction#signature for (self: CFunction): String */ +val* nit___nit__CFunction___signature(val* self) { +val* var /* : String */; +val* var1 /* : String */; +var1 = self->attrs[COLOR_nit__c_tools__CFunction___signature].val; /* _signature on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _signature"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 86); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CFunction#signature= for (self: CFunction, String) */ +void nit___nit__CFunction___signature_61d(val* self, val* p0) { +self->attrs[COLOR_nit__c_tools__CFunction___signature].val = p0; /* _signature on */ +RET_LABEL:; +} +/* method c_tools#CFunction#decls for (self: CFunction): Template */ +val* nit___nit__CFunction___decls(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CFunction___decls].val; /* _decls on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decls"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 88); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CFunction#exprs for (self: CFunction): Template */ +val* nit___nit__CFunction___exprs(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +var1 = self->attrs[COLOR_nit__c_tools__CFunction___exprs].val; /* _exprs on */ +if (unlikely(var1 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _exprs"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 89); +fatal_exit(1); +} +var = var1; +RET_LABEL:; +return var; +} +/* method c_tools#CFunction#to_writer for (self: CFunction): Template */ +val* nit___nit__CFunction___to_writer(val* self) { +val* var /* : Template */; +val* var1 /* : Template */; +val* var_w /* var w: Template */; +val* var2 /* : String */; +val* var4 /* : String */; +static val* varonce; +val* var5 /* : String */; +char* var6 /* : NativeString */; +val* var7 /* : FlatString */; +val* var8 /* : Template */; +val* var10 /* : Template */; +static val* varonce11; +val* var12 /* : String */; +char* var13 /* : NativeString */; +val* var14 /* : FlatString */; +val* var15 /* : Template */; +val* var17 /* : Template */; +static val* varonce18; +val* var19 /* : String */; +char* var20 /* : NativeString */; +val* var21 /* : FlatString */; +var1 = NEW_template__Template(&type_template__Template); +{ +((void(*)(val* self))(var1->class->vft[COLOR_standard__kernel__Object__init]))(var1); /* init on */ +} +var_w = var1; +{ +{ /* Inline c_tools#CFunction#signature (self) on */ +var4 = self->attrs[COLOR_nit__c_tools__CFunction___signature].val; /* _signature on */ +if (unlikely(var4 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _signature"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 86); +fatal_exit(1); +} +var2 = var4; +RET_LABEL3:(void)0; +} +} +{ +template___template__Template___add(var_w, var2); /* Direct call template#Template#add on */ +} +if (likely(varonce!=NULL)) { +var5 = varonce; +} else { +var6 = "\n{\n"; +var7 = standard___standard__NativeString___to_s_with_length(var6, 3l); +var5 = var7; +varonce = var5; +} +{ +template___template__Template___add(var_w, var5); /* Direct call template#Template#add on */ +} +{ +{ /* Inline c_tools#CFunction#decls (self) on */ +var10 = self->attrs[COLOR_nit__c_tools__CFunction___decls].val; /* _decls on */ +if (unlikely(var10 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _decls"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 88); +fatal_exit(1); +} +var8 = var10; +RET_LABEL9:(void)0; +} +} +{ +template___template__Template___add(var_w, var8); /* Direct call template#Template#add on */ +} +if (likely(varonce11!=NULL)) { +var12 = varonce11; +} else { +var13 = "\n"; +var14 = standard___standard__NativeString___to_s_with_length(var13, 1l); +var12 = var14; +varonce11 = var12; +} +{ +template___template__Template___add(var_w, var12); /* Direct call template#Template#add on */ +} +{ +{ /* Inline c_tools#CFunction#exprs (self) on */ +var17 = self->attrs[COLOR_nit__c_tools__CFunction___exprs].val; /* _exprs on */ +if (unlikely(var17 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _exprs"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 89); +fatal_exit(1); +} +var15 = var17; +RET_LABEL16:(void)0; +} +} +{ +template___template__Template___add(var_w, var15); /* Direct call template#Template#add on */ +} +if (likely(varonce18!=NULL)) { +var19 = varonce18; +} else { +var20 = "}\n"; +var21 = standard___standard__NativeString___to_s_with_length(var20, 2l); +var19 = var21; +varonce18 = var19; +} +{ +template___template__Template___add(var_w, var19); /* Direct call template#Template#add on */ +} +var = var_w; +goto RET_LABEL; +RET_LABEL:; +return var; +} +/* method c_tools#CFunction#init for (self: CFunction) */ +void nit___nit__CFunction___standard__kernel__Object__init(val* self) { +{ +((void(*)(val* self))(self->class->vft[COLOR_nit___nit__CFunction___standard__kernel__Object__init]))(self); /* init on */ +} +RET_LABEL:; +} /* method c_tools#ExternFile#filename for (self: ExternFile): String */ val* nit___nit__ExternFile___filename(val* self) { val* var /* : String */; @@ -6,8 +528,8 @@ val* var1 /* : String */; var1 = self->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var1 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var = var1; RET_LABEL:; @@ -21,9 +543,7 @@ RET_LABEL:; /* method c_tools#ExternFile#add_to_jar for (self: ExternFile): Bool */ short int nit___nit__ExternFile___add_to_jar(val* self) { short int var /* : Bool */; -short int var1 /* : Bool */; -var1 = 0; -var = var1; +var = 0; goto RET_LABEL; RET_LABEL:; return var; @@ -35,8 +555,8 @@ val* var1 /* : Array[String] */; var1 = self->attrs[COLOR_nit__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on */ if (unlikely(var1 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 119); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 123); +fatal_exit(1); } var = var1; RET_LABEL:; @@ -45,7 +565,7 @@ return var; /* method c_tools#ExternFile#init for (self: ExternFile) */ void nit___nit__ExternFile___standard__kernel__Object__init(val* self) { { -((void (*)(val* self))(self->class->vft[COLOR_nit___nit__ExternFile___standard__kernel__Object__init]))(self) /* init on */; +((void(*)(val* self))(self->class->vft[COLOR_nit___nit__ExternFile___standard__kernel__Object__init]))(self); /* init on */ } RET_LABEL:; } @@ -56,8 +576,8 @@ val* var1 /* : String */; var1 = self->attrs[COLOR_nit__c_tools__ExternCFile___cflags].val; /* _cflags on */ if (unlikely(var1 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 128); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 132); +fatal_exit(1); } var = var1; RET_LABEL:; @@ -79,15 +599,15 @@ long var4 /* : Int */; var3 = self->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var3 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var1 = var3; RET_LABEL2:(void)0; } } { -var4 = ((long (*)(val* self))(var1->class->vft[COLOR_standard__kernel__Object__hash]))(var1) /* hash on */; +var4 = ((long(*)(val* self))(var1->class->vft[COLOR_standard__kernel__Object__hash]))(var1); /* hash on */ } var = var4; goto RET_LABEL; @@ -115,10 +635,10 @@ idtype = type_nit__ExternCFile.id; if(var_o == NULL) { var2 = 0; } else { -if(cltype >= var_o->type->table_size) { +if(cltype >= (((long)var_o&3)?type_info[((long)var_o&3)]:var_o->type)->table_size) { var2 = 0; } else { -var2 = var_o->type->type_table[cltype] == idtype; +var2 = (((long)var_o&3)?type_info[((long)var_o&3)]:var_o->type)->type_table[cltype] == idtype; } } var_ = var2; @@ -128,8 +648,8 @@ if (var2){ var5 = self->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var5 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var3 = var5; RET_LABEL4:(void)0; @@ -140,15 +660,15 @@ RET_LABEL4:(void)0; var8 = var_o->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var8 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var6 = var8; RET_LABEL7:(void)0; } } { -var9 = ((short int (*)(val* self, val* p0))(var3->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var3, var6) /* == on */; +var9 = ((short int(*)(val* self, val* p0))(var3->class->vft[COLOR_standard__kernel__Object___61d_61d]))(var3, var6); /* == on */ } var1 = var9; } else { @@ -167,68 +687,62 @@ val* var3 /* : String */; static val* varonce; val* var4 /* : String */; char* var5 /* : NativeString */; -long var6 /* : Int */; -val* var7 /* : FlatString */; -val* var8 /* : String */; +val* var6 /* : FlatString */; +val* var7 /* : String */; val* var_basename /* var basename: String */; -static val* varonce9; -val* var10 /* : String */; -char* var11 /* : NativeString */; -long var12 /* : Int */; +val* var9 /* : NativeArray[String] */; +static val* varonce8; +static val* varonce10; +val* var11 /* : String */; +char* var12 /* : NativeString */; val* var13 /* : FlatString */; -val* var14 /* : Array[Object] */; -long var15 /* : Int */; -val* var16 /* : NativeArray[Object] */; -val* var17 /* : String */; +val* var14 /* : String */; val* var_res /* var res: String */; { { /* Inline c_tools#ExternFile#filename (self) on */ var3 = self->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var3 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var1 = var3; RET_LABEL2:(void)0; } } -if (varonce) { +if (likely(varonce!=NULL)) { var4 = varonce; } else { var5 = ".c"; -var6 = 2; -var7 = standard___standard__NativeString___to_s_with_length(var5, var6); -var4 = var7; +var6 = standard___standard__NativeString___to_s_with_length(var5, 2l); +var4 = var6; varonce = var4; } { -var8 = standard__file___String___basename(var1, var4); +var7 = standard__file___String___basename(var1, var4); } -var_basename = var8; -if (varonce9) { -var10 = varonce9; +var_basename = var7; +if (unlikely(varonce8==NULL)) { +var9 = NEW_standard__NativeArray(2l, &type_standard__NativeArray__standard__String); +if (likely(varonce10!=NULL)) { +var11 = varonce10; } else { -var11 = ".extern.o"; -var12 = 9; -var13 = standard___standard__NativeString___to_s_with_length(var11, var12); -var10 = var13; -varonce9 = var10; -} -var14 = NEW_standard__Array(&type_standard__Array__standard__Object); -{ /* var14 = array_instance Array[Object] */ -var15 = 2; -var16 = NEW_standard__NativeArray(var15, &type_standard__NativeArray__standard__Object); -((struct instance_standard__NativeArray*)var16)->values[0] = (val*) var_basename; -((struct instance_standard__NativeArray*)var16)->values[1] = (val*) var10; -{ -((void (*)(val* self, val* p0, long p1))(var14->class->vft[COLOR_standard__array__Array__with_native]))(var14, var16, var15) /* with_native on */; +var12 = ".extern.o"; +var13 = standard___standard__NativeString___to_s_with_length(var12, 9l); +var11 = var13; +varonce10 = var11; } +((struct instance_standard__NativeArray*)var9)->values[1]=var11; +} else { +var9 = varonce8; +varonce8 = NULL; } +((struct instance_standard__NativeArray*)var9)->values[0]=var_basename; { -var17 = ((val* (*)(val* self))(var14->class->vft[COLOR_standard__string__Object__to_s]))(var14) /* to_s on */; +var14 = ((val*(*)(val* self))(var9->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var9); /* native_to_s on */ } -var_res = var17; +varonce8 = var9; +var_res = var14; var = var_res; goto RET_LABEL; RET_LABEL:; @@ -242,253 +756,231 @@ val* var3 /* : String */; static val* varonce; val* var4 /* : String */; char* var5 /* : NativeString */; -long var6 /* : Int */; -val* var7 /* : FlatString */; -val* var8 /* : String */; +val* var6 /* : FlatString */; +val* var7 /* : String */; val* var_ff /* var ff: String */; -val* var9 /* : String */; +val* var8 /* : String */; val* var_o /* var o: String */; -static val* varonce10; -val* var11 /* : String */; -char* var12 /* : NativeString */; -long var13 /* : Int */; -val* var14 /* : FlatString */; +static val* varonce9; +val* var10 /* : String */; +char* var11 /* : NativeString */; +val* var12 /* : FlatString */; val* var_pkg /* var pkg: String */; +val* var13 /* : Array[String] */; val* var15 /* : Array[String] */; -val* var17 /* : Array[String] */; -short int var18 /* : Bool */; -short int var19 /* : Bool */; +short int var16 /* : Bool */; +short int var17 /* : Bool */; +val* var19 /* : NativeArray[String] */; +static val* varonce18; static val* varonce20; val* var21 /* : String */; char* var22 /* : NativeString */; -long var23 /* : Int */; -val* var24 /* : FlatString */; -val* var25 /* : Array[String] */; -val* var27 /* : Array[String] */; -static val* varonce28; -val* var29 /* : String */; -char* var30 /* : NativeString */; -long var31 /* : Int */; -val* var32 /* : FlatString */; -val* var33 /* : String */; -static val* varonce34; +val* var23 /* : FlatString */; +static val* varonce24; +val* var25 /* : String */; +char* var26 /* : NativeString */; +val* var27 /* : FlatString */; +val* var28 /* : Array[String] */; +val* var30 /* : Array[String] */; +static val* varonce31; +val* var32 /* : String */; +char* var33 /* : NativeString */; +val* var34 /* : FlatString */; val* var35 /* : String */; -char* var36 /* : NativeString */; -long var37 /* : Int */; -val* var38 /* : FlatString */; -val* var39 /* : Array[Object] */; -long var40 /* : Int */; -val* var41 /* : NativeArray[Object] */; -val* var42 /* : String */; +val* var36 /* : String */; +val* var38 /* : NativeArray[String] */; +static val* varonce37; +static val* varonce39; +val* var40 /* : String */; +char* var41 /* : NativeString */; +val* var42 /* : FlatString */; static val* varonce43; val* var44 /* : String */; char* var45 /* : NativeString */; -long var46 /* : Int */; -val* var47 /* : FlatString */; +val* var46 /* : FlatString */; +static val* varonce47; val* var48 /* : String */; -val* var50 /* : String */; +char* var49 /* : NativeString */; +val* var50 /* : FlatString */; static val* varonce51; val* var52 /* : String */; char* var53 /* : NativeString */; -long var54 /* : Int */; -val* var55 /* : FlatString */; -static val* varonce56; +val* var54 /* : FlatString */; +val* var55 /* : String */; val* var57 /* : String */; -char* var58 /* : NativeString */; -long var59 /* : Int */; -val* var60 /* : FlatString */; -static val* varonce61; -val* var62 /* : String */; -char* var63 /* : NativeString */; -long var64 /* : Int */; -val* var65 /* : FlatString */; -val* var66 /* : Array[Object] */; -long var67 /* : Int */; -val* var68 /* : NativeArray[Object] */; -val* var69 /* : String */; +val* var58 /* : String */; { { /* Inline c_tools#ExternFile#filename (self) on */ var3 = self->attrs[COLOR_nit__c_tools__ExternFile___filename].val; /* _filename on */ if (unlikely(var3 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _filename"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 104); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 108); +fatal_exit(1); } var1 = var3; RET_LABEL2:(void)0; } } -if (varonce) { +if (likely(varonce!=NULL)) { var4 = varonce; } else { var5 = ""; -var6 = 0; -var7 = standard___standard__NativeString___to_s_with_length(var5, var6); -var4 = var7; +var6 = standard___standard__NativeString___to_s_with_length(var5, 0l); +var4 = var6; varonce = var4; } { -var8 = standard__file___String___basename(var1, var4); +var7 = standard__file___String___basename(var1, var4); } -var_ff = var8; +var_ff = var7; { -var9 = nit___nit__ExternCFile___ExternFile__makefile_rule_name(self); +var8 = nit___nit__ExternCFile___ExternFile__makefile_rule_name(self); } -var_o = var9; -if (varonce10) { -var11 = varonce10; +var_o = var8; +if (likely(varonce9!=NULL)) { +var10 = varonce9; } else { -var12 = ""; -var13 = 0; -var14 = standard___standard__NativeString___to_s_with_length(var12, var13); -var11 = var14; -varonce10 = var11; +var11 = ""; +var12 = standard___standard__NativeString___to_s_with_length(var11, 0l); +var10 = var12; +varonce9 = var10; } -var_pkg = var11; +var_pkg = var10; { { /* Inline c_tools#ExternFile#pkgconfigs (self) on */ -var17 = self->attrs[COLOR_nit__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on */ -if (unlikely(var17 == NULL)) { +var15 = self->attrs[COLOR_nit__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on */ +if (unlikely(var15 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 119); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 123); +fatal_exit(1); } -var15 = var17; -RET_LABEL16:(void)0; +var13 = var15; +RET_LABEL14:(void)0; } } { -var18 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var15); +var16 = standard___standard__AbstractArrayRead___standard__abstract_collection__Collection__is_empty(var13); } -var19 = !var18; -if (var19){ -if (varonce20) { +var17 = !var16; +if (var17){ +if (unlikely(varonce18==NULL)) { +var19 = NEW_standard__NativeArray(3l, &type_standard__NativeArray__standard__String); +if (likely(varonce20!=NULL)) { var21 = varonce20; } else { var22 = "`pkg-config --cflags "; -var23 = 21; -var24 = standard___standard__NativeString___to_s_with_length(var22, var23); -var21 = var24; +var23 = standard___standard__NativeString___to_s_with_length(var22, 21l); +var21 = var23; varonce20 = var21; } +((struct instance_standard__NativeArray*)var19)->values[0]=var21; +if (likely(varonce24!=NULL)) { +var25 = varonce24; +} else { +var26 = "`"; +var27 = standard___standard__NativeString___to_s_with_length(var26, 1l); +var25 = var27; +varonce24 = var25; +} +((struct instance_standard__NativeArray*)var19)->values[2]=var25; +} else { +var19 = varonce18; +varonce18 = NULL; +} { { /* Inline c_tools#ExternFile#pkgconfigs (self) on */ -var27 = self->attrs[COLOR_nit__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on */ -if (unlikely(var27 == NULL)) { +var30 = self->attrs[COLOR_nit__c_tools__ExternFile___pkgconfigs].val; /* _pkgconfigs on */ +if (unlikely(var30 == NULL)) { PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _pkgconfigs"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 119); -show_backtrace(1); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 123); +fatal_exit(1); } -var25 = var27; -RET_LABEL26:(void)0; +var28 = var30; +RET_LABEL29:(void)0; } } -if (varonce28) { -var29 = varonce28; +if (likely(varonce31!=NULL)) { +var32 = varonce31; } else { -var30 = " "; -var31 = 1; -var32 = standard___standard__NativeString___to_s_with_length(var30, var31); -var29 = var32; -varonce28 = var29; +var33 = " "; +var34 = standard___standard__NativeString___to_s_with_length(var33, 1l); +var32 = var34; +varonce31 = var32; } { -var33 = standard__string___Collection___join(var25, var29); +var35 = standard__string___Collection___join(var28, var32); } -if (varonce34) { -var35 = varonce34; -} else { -var36 = "`"; -var37 = 1; -var38 = standard___standard__NativeString___to_s_with_length(var36, var37); -var35 = var38; -varonce34 = var35; -} -var39 = NEW_standard__Array(&type_standard__Array__standard__Object); -{ /* var39 = array_instance Array[Object] */ -var40 = 3; -var41 = NEW_standard__NativeArray(var40, &type_standard__NativeArray__standard__Object); -((struct instance_standard__NativeArray*)var41)->values[0] = (val*) var21; -((struct instance_standard__NativeArray*)var41)->values[1] = (val*) var33; -((struct instance_standard__NativeArray*)var41)->values[2] = (val*) var35; +((struct instance_standard__NativeArray*)var19)->values[1]=var35; { -((void (*)(val* self, val* p0, long p1))(var39->class->vft[COLOR_standard__array__Array__with_native]))(var39, var41, var40) /* with_native on */; -} +var36 = ((val*(*)(val* self))(var19->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var19); /* native_to_s on */ } -{ -var42 = ((val* (*)(val* self))(var39->class->vft[COLOR_standard__string__Object__to_s]))(var39) /* to_s on */; +varonce18 = var19; +var_pkg = var36; +} else { } -var_pkg = var42; +if (unlikely(varonce37==NULL)) { +var38 = NEW_standard__NativeArray(8l, &type_standard__NativeArray__standard__String); +if (likely(varonce39!=NULL)) { +var40 = varonce39; } else { +var41 = "$(CC) $(CFLAGS) -Wall "; +var42 = standard___standard__NativeString___to_s_with_length(var41, 22l); +var40 = var42; +varonce39 = var40; } -if (varonce43) { +((struct instance_standard__NativeArray*)var38)->values[0]=var40; +if (likely(varonce43!=NULL)) { var44 = varonce43; } else { -var45 = "$(CC) $(CFLAGS) "; -var46 = 16; -var47 = standard___standard__NativeString___to_s_with_length(var45, var46); -var44 = var47; +var45 = " "; +var46 = standard___standard__NativeString___to_s_with_length(var45, 1l); +var44 = var46; varonce43 = var44; } -{ -{ /* Inline c_tools#ExternCFile#cflags (self) on */ -var50 = self->attrs[COLOR_nit__c_tools__ExternCFile___cflags].val; /* _cflags on */ -if (unlikely(var50 == NULL)) { -PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags"); -PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 128); -show_backtrace(1); -} +((struct instance_standard__NativeArray*)var38)->values[2]=var44; +if (likely(varonce47!=NULL)) { +var48 = varonce47; +} else { +var49 = " -c -o "; +var50 = standard___standard__NativeString___to_s_with_length(var49, 7l); var48 = var50; -RET_LABEL49:(void)0; -} +varonce47 = var48; } -if (varonce51) { +((struct instance_standard__NativeArray*)var38)->values[4]=var48; +if (likely(varonce51!=NULL)) { var52 = varonce51; } else { var53 = " "; -var54 = 1; -var55 = standard___standard__NativeString___to_s_with_length(var53, var54); -var52 = var55; +var54 = standard___standard__NativeString___to_s_with_length(var53, 1l); +var52 = var54; varonce51 = var52; } -if (varonce56) { -var57 = varonce56; +((struct instance_standard__NativeArray*)var38)->values[6]=var52; } else { -var58 = " -c -o "; -var59 = 7; -var60 = standard___standard__NativeString___to_s_with_length(var58, var59); -var57 = var60; -varonce56 = var57; -} -if (varonce61) { -var62 = varonce61; -} else { -var63 = " "; -var64 = 1; -var65 = standard___standard__NativeString___to_s_with_length(var63, var64); -var62 = var65; -varonce61 = var62; +var38 = varonce37; +varonce37 = NULL; } -var66 = NEW_standard__Array(&type_standard__Array__standard__Object); -{ /* var66 = array_instance Array[Object] */ -var67 = 8; -var68 = NEW_standard__NativeArray(var67, &type_standard__NativeArray__standard__Object); -((struct instance_standard__NativeArray*)var68)->values[0] = (val*) var44; -((struct instance_standard__NativeArray*)var68)->values[1] = (val*) var48; -((struct instance_standard__NativeArray*)var68)->values[2] = (val*) var52; -((struct instance_standard__NativeArray*)var68)->values[3] = (val*) var_pkg; -((struct instance_standard__NativeArray*)var68)->values[4] = (val*) var57; -((struct instance_standard__NativeArray*)var68)->values[5] = (val*) var_o; -((struct instance_standard__NativeArray*)var68)->values[6] = (val*) var62; -((struct instance_standard__NativeArray*)var68)->values[7] = (val*) var_ff; { -((void (*)(val* self, val* p0, long p1))(var66->class->vft[COLOR_standard__array__Array__with_native]))(var66, var68, var67) /* with_native on */; +{ /* Inline c_tools#ExternCFile#cflags (self) on */ +var57 = self->attrs[COLOR_nit__c_tools__ExternCFile___cflags].val; /* _cflags on */ +if (unlikely(var57 == NULL)) { +PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _cflags"); +PRINT_ERROR(" (%s:%d)\n", FILE_nit__c_tools, 132); +fatal_exit(1); +} +var55 = var57; +RET_LABEL56:(void)0; } } +((struct instance_standard__NativeArray*)var38)->values[1]=var55; +((struct instance_standard__NativeArray*)var38)->values[3]=var_pkg; +((struct instance_standard__NativeArray*)var38)->values[5]=var_o; +((struct instance_standard__NativeArray*)var38)->values[7]=var_ff; { -var69 = ((val* (*)(val* self))(var66->class->vft[COLOR_standard__string__Object__to_s]))(var66) /* to_s on */; +var58 = ((val*(*)(val* self))(var38->class->vft[COLOR_standard__string__NativeArray__native_to_s]))(var38); /* native_to_s on */ } -var = var69; +varonce37 = var38; +var = var58; goto RET_LABEL; RET_LABEL:; return var; @@ -496,9 +988,7 @@ return var; /* method c_tools#ExternCFile#compiles_to_o_file for (self: ExternCFile): Bool */ short int nit___nit__ExternCFile___ExternFile__compiles_to_o_file(val* self) { short int var /* : Bool */; -short int var1 /* : Bool */; -var1 = 1; -var = var1; +var = 1; goto RET_LABEL; RET_LABEL:; return var; @@ -506,7 +996,7 @@ return var; /* method c_tools#ExternCFile#init for (self: ExternCFile) */ void nit___nit__ExternCFile___standard__kernel__Object__init(val* self) { { -((void (*)(val* self))(self->class->vft[COLOR_nit___nit__ExternCFile___standard__kernel__Object__init]))(self) /* init on */; +((void(*)(val* self))(self->class->vft[COLOR_nit___nit__ExternCFile___standard__kernel__Object__init]))(self); /* init on */ } RET_LABEL:; }