X-Git-Url: http://nitlanguage.org diff --git a/c_src/poset.sep.1.c b/c_src/poset.sep.1.c index f3feeb5..a4ae105 100644 --- a/c_src/poset.sep.1.c +++ b/c_src/poset.sep.1.c @@ -28,7 +28,8 @@ val* var /* : HashMap[Object, POSetElement[Object]] */; val* var1 /* : HashMap[Object, POSetElement[Object]] */; var1 = self->attrs[COLOR_poset__POSet___64delements].val; /* @elements on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @elements", "lib/poset.nit", 31); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @elements"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 31); exit(1); } var = var1; @@ -50,6 +51,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (elements) isa HashMap[POSet#0, POSetElement[POSet#0]] */ /* isa HashMap[POSet#0, POSetElement[POSet#0]] */ type_struct = self->type->resolution_table->types[COLOR_hash_collection__HashMapposet__POSet_FT0poset__POSetElementposet__POSet_FT0]; @@ -61,7 +63,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 31); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "HashMap[POSet#0, POSetElement[POSet#0]]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 31); exit(1); } self->attrs[COLOR_poset__POSet___64delements].val = p0; /* @elements on */ @@ -79,6 +83,7 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; val* var_e /* var e: Object */; val* var2 /* : HashMap[Object, POSetElement[Object]] */; val* var3 /* : Collection[Object] */; @@ -94,7 +99,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 34); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "Collection#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 34); exit(1); } var_e = p0; @@ -122,6 +129,7 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; val* var_e /* var e: Object */; val* var2 /* : HashMap[Object, POSetElement[Object]] */; val* var3 /* : Collection[Object] */; @@ -146,7 +154,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 36); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 36); exit(1); } var_e = p0; @@ -193,6 +203,7 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; val* var_e /* var e: Object */; val* var2 /* : HashMap[Object, POSetElement[Object]] */; val* var3 /* : Collection[Object] */; @@ -210,7 +221,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 50); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 50); exit(1); } var_e = p0; @@ -218,7 +231,8 @@ var2 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) var3 = ((val* (*)(val*))(var2->class->vft[COLOR_abstract_collection__MapRead__keys]))(var2) /* keys on */; var4 = ((short int (*)(val*, val*))(var3->class->vft[COLOR_abstract_collection__Collection__has]))(var3, var_e) /* has on */; if (!var4) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Assert failed", "lib/poset.nit", 63); +fprintf(stderr, "Runtime error: %s", "Assert failed"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 63); exit(1); } var5 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; @@ -243,66 +257,68 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; short int var1 /* : Bool */; int cltype2; int idtype3; const struct type* type_struct4; +const char* var_class_name5; val* var_f /* var f: Object */; val* var_t /* var t: Object */; -val* var5 /* : POSetElement[Object] */; -val* var_fe /* var fe: POSetElement[Object] */; val* var6 /* : POSetElement[Object] */; +val* var_fe /* var fe: POSetElement[Object] */; +val* var7 /* : POSetElement[Object] */; val* var_te /* var te: POSetElement[Object] */; -val* var7 /* : HashSet[Object] */; -short int var8 /* : Bool */; -val* var9 /* : HashSet[Object] */; -val* var10 /* : Iterator[nullable Object] */; -short int var11 /* : Bool */; -val* var12 /* : nullable Object */; +val* var8 /* : HashSet[Object] */; +short int var9 /* : Bool */; +val* var10 /* : HashSet[Object] */; +val* var11 /* : Iterator[nullable Object] */; +short int var12 /* : Bool */; +val* var13 /* : nullable Object */; val* var_ff /* var ff: Object */; -val* var13 /* : HashMap[Object, POSetElement[Object]] */; -val* var14 /* : nullable Object */; +val* var14 /* : HashMap[Object, POSetElement[Object]] */; +val* var15 /* : nullable Object */; val* var_ffe /* var ffe: POSetElement[Object] */; -val* var15 /* : HashSet[Object] */; -val* var16 /* : Iterator[nullable Object] */; -short int var17 /* : Bool */; -val* var18 /* : nullable Object */; +val* var16 /* : HashSet[Object] */; +val* var17 /* : Iterator[nullable Object] */; +short int var18 /* : Bool */; +val* var19 /* : nullable Object */; val* var_tt /* var tt: Object */; -val* var19 /* : HashMap[Object, POSetElement[Object]] */; -val* var20 /* : nullable Object */; +val* var20 /* : HashMap[Object, POSetElement[Object]] */; +val* var21 /* : nullable Object */; val* var_tte /* var tte: POSetElement[Object] */; -val* var21 /* : HashSet[Object] */; val* var22 /* : HashSet[Object] */; -val* var24 /* : HashSet[Object] */; -short int var25 /* : Bool */; -val* var26 /* : HashSet[Object] */; -val* var27 /* : Array[nullable Object] */; -val* var28 /* : Iterator[nullable Object] */; -short int var29 /* : Bool */; -val* var30 /* : nullable Object */; +val* var23 /* : HashSet[Object] */; +val* var25 /* : HashSet[Object] */; +short int var26 /* : Bool */; +val* var27 /* : HashSet[Object] */; +val* var28 /* : Array[nullable Object] */; +val* var29 /* : Iterator[nullable Object] */; +short int var30 /* : Bool */; +val* var31 /* : nullable Object */; val* var_x /* var x: Object */; -val* var31 /* : HashMap[Object, POSetElement[Object]] */; -val* var32 /* : nullable Object */; +val* var32 /* : HashMap[Object, POSetElement[Object]] */; +val* var33 /* : nullable Object */; val* var_xe /* var xe: POSetElement[Object] */; -val* var33 /* : HashSet[Object] */; -short int var34 /* : Bool */; -val* var35 /* : HashSet[Object] */; +val* var34 /* : HashSet[Object] */; +short int var35 /* : Bool */; val* var36 /* : HashSet[Object] */; -val* var38 /* : HashSet[Object] */; -val* var39 /* : Array[nullable Object] */; -val* var40 /* : Iterator[nullable Object] */; -short int var41 /* : Bool */; -val* var42 /* : nullable Object */; -val* var_x43 /* var x: Object */; -val* var44 /* : HashMap[Object, POSetElement[Object]] */; -val* var45 /* : nullable Object */; -val* var_xe46 /* var xe: POSetElement[Object] */; -val* var47 /* : HashSet[Object] */; -short int var48 /* : Bool */; -val* var49 /* : HashSet[Object] */; +val* var37 /* : HashSet[Object] */; +val* var39 /* : HashSet[Object] */; +val* var40 /* : Array[nullable Object] */; +val* var41 /* : Iterator[nullable Object] */; +short int var42 /* : Bool */; +val* var43 /* : nullable Object */; +val* var_x44 /* var x: Object */; +val* var45 /* : HashMap[Object, POSetElement[Object]] */; +val* var46 /* : nullable Object */; +val* var_xe47 /* var xe: POSetElement[Object] */; +val* var48 /* : HashSet[Object] */; +short int var49 /* : Bool */; val* var50 /* : HashSet[Object] */; -val* var52 /* : HashSet[Object] */; +val* var51 /* : HashSet[Object] */; val* var53 /* : HashSet[Object] */; +val* var54 /* : HashSet[Object] */; /* Covariant cast for argument 0 (f) isa POSet#0 */ /* isa POSet#0 */ type_struct = self->type->resolution_table->types[COLOR_poset__POSet_FT0]; @@ -314,7 +330,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 67); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 67); exit(1); } /* Covariant cast for argument 1 (t) isa POSet#0 */ @@ -328,111 +346,113 @@ var1 = 0; var1 = p1->type->type_table[cltype2] == idtype3; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 67); +var_class_name5 = p1 == NULL ? "null" : p1->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name5); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 67); exit(1); } var_f = p0; var_t = p1; -var5 = ((val* (*)(val*, val*))(self->class->vft[COLOR_poset__POSet__add_node]))(self, var_f) /* add_node on */; -var_fe = var5; -var6 = ((val* (*)(val*, val*))(self->class->vft[COLOR_poset__POSet__add_node]))(self, var_t) /* add_node on */; -var_te = var6; -var7 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__tos]))(var_fe) /* tos on */; -var8 = ((short int (*)(val*, val*))(var7->class->vft[COLOR_abstract_collection__Collection__has]))(var7, var_t) /* has on */; -if (var8){ +var6 = ((val* (*)(val*, val*))(self->class->vft[COLOR_poset__POSet__add_node]))(self, var_f) /* add_node on */; +var_fe = var6; +var7 = ((val* (*)(val*, val*))(self->class->vft[COLOR_poset__POSet__add_node]))(self, var_t) /* add_node on */; +var_te = var7; +var8 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__tos]))(var_fe) /* tos on */; +var9 = ((short int (*)(val*, val*))(var8->class->vft[COLOR_abstract_collection__Collection__has]))(var8, var_t) /* has on */; +if (var9){ goto RET_LABEL; } else { } -var9 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__froms]))(var_fe) /* froms on */; -var10 = ((val* (*)(val*))(var9->class->vft[COLOR_abstract_collection__Collection__iterator]))(var9) /* iterator on */; +var10 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__froms]))(var_fe) /* froms on */; +var11 = ((val* (*)(val*))(var10->class->vft[COLOR_abstract_collection__Collection__iterator]))(var10) /* iterator on */; for(;;) { -var11 = ((short int (*)(val*))(var10->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var10) /* is_ok on */; -if(!var11) break; -var12 = ((val* (*)(val*))(var10->class->vft[COLOR_abstract_collection__Iterator__item]))(var10) /* item on */; -var_ff = var12; -var13 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var14 = ((val* (*)(val*, val*))(var13->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var13, var_ff) /* [] on */; -var_ffe = var14; -var15 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__tos]))(var_te) /* tos on */; -var16 = ((val* (*)(val*))(var15->class->vft[COLOR_abstract_collection__Collection__iterator]))(var15) /* iterator on */; +var12 = ((short int (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var11) /* is_ok on */; +if(!var12) break; +var13 = ((val* (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__item]))(var11) /* item on */; +var_ff = var13; +var14 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var15 = ((val* (*)(val*, val*))(var14->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var14, var_ff) /* [] on */; +var_ffe = var15; +var16 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__tos]))(var_te) /* tos on */; +var17 = ((val* (*)(val*))(var16->class->vft[COLOR_abstract_collection__Collection__iterator]))(var16) /* iterator on */; for(;;) { -var17 = ((short int (*)(val*))(var16->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var16) /* is_ok on */; -if(!var17) break; -var18 = ((val* (*)(val*))(var16->class->vft[COLOR_abstract_collection__Iterator__item]))(var16) /* item on */; -var_tt = var18; -var19 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var20 = ((val* (*)(val*, val*))(var19->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var19, var_tt) /* [] on */; -var_tte = var20; -var21 = ((val* (*)(val*))(var_tte->class->vft[COLOR_poset__POSetElement__froms]))(var_tte) /* froms on */; -((void (*)(val*, val*))(var21->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var21, var_ff) /* add on */; -var22 = ((val* (*)(val*))(var_ffe->class->vft[COLOR_poset__POSetElement__tos]))(var_ffe) /* tos on */; -((void (*)(val*, val*))(var22->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var22, var_tt) /* add on */; +var18 = ((short int (*)(val*))(var17->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var17) /* is_ok on */; +if(!var18) break; +var19 = ((val* (*)(val*))(var17->class->vft[COLOR_abstract_collection__Iterator__item]))(var17) /* item on */; +var_tt = var19; +var20 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var21 = ((val* (*)(val*, val*))(var20->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var20, var_tt) /* [] on */; +var_tte = var21; +var22 = ((val* (*)(val*))(var_tte->class->vft[COLOR_poset__POSetElement__froms]))(var_tte) /* froms on */; +((void (*)(val*, val*))(var22->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var22, var_ff) /* add on */; +var23 = ((val* (*)(val*))(var_ffe->class->vft[COLOR_poset__POSetElement__tos]))(var_ffe) /* tos on */; +((void (*)(val*, val*))(var23->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var23, var_tt) /* add on */; CONTINUE_label: (void)0; -((void (*)(val*))(var16->class->vft[COLOR_abstract_collection__Iterator__next]))(var16) /* next on */; +((void (*)(val*))(var17->class->vft[COLOR_abstract_collection__Iterator__next]))(var17) /* next on */; } BREAK_label: (void)0; -CONTINUE_label23: (void)0; -((void (*)(val*))(var10->class->vft[COLOR_abstract_collection__Iterator__next]))(var10) /* next on */; +CONTINUE_label24: (void)0; +((void (*)(val*))(var11->class->vft[COLOR_abstract_collection__Iterator__next]))(var11) /* next on */; } -BREAK_label23: (void)0; -var24 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__tos]))(var_te) /* tos on */; -var25 = ((short int (*)(val*, val*))(var24->class->vft[COLOR_abstract_collection__Collection__has]))(var24, var_f) /* has on */; -if (var25){ +BREAK_label24: (void)0; +var25 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__tos]))(var_te) /* tos on */; +var26 = ((short int (*)(val*, val*))(var25->class->vft[COLOR_abstract_collection__Collection__has]))(var25, var_f) /* has on */; +if (var26){ goto RET_LABEL; } else { } -var26 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; -var27 = ((val* (*)(val*))(var26->class->vft[COLOR_array__Collection__to_a]))(var26) /* to_a on */; -var28 = ((val* (*)(val*))(var27->class->vft[COLOR_abstract_collection__Collection__iterator]))(var27) /* iterator on */; +var27 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; +var28 = ((val* (*)(val*))(var27->class->vft[COLOR_array__Collection__to_a]))(var27) /* to_a on */; +var29 = ((val* (*)(val*))(var28->class->vft[COLOR_abstract_collection__Collection__iterator]))(var28) /* iterator on */; for(;;) { -var29 = ((short int (*)(val*))(var28->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var28) /* is_ok on */; -if(!var29) break; -var30 = ((val* (*)(val*))(var28->class->vft[COLOR_abstract_collection__Iterator__item]))(var28) /* item on */; -var_x = var30; -var31 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var32 = ((val* (*)(val*, val*))(var31->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var31, var_x) /* [] on */; -var_xe = var32; -var33 = ((val* (*)(val*))(var_xe->class->vft[COLOR_poset__POSetElement__tos]))(var_xe) /* tos on */; -var34 = ((short int (*)(val*, val*))(var33->class->vft[COLOR_abstract_collection__Collection__has]))(var33, var_f) /* has on */; -if (var34){ -var35 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; -((void (*)(val*, val*))(var35->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var35, var_x) /* remove on */; -var36 = ((val* (*)(val*))(var_xe->class->vft[COLOR_poset__POSetElement__dtos]))(var_xe) /* dtos on */; -((void (*)(val*, val*))(var36->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var36, var_t) /* remove on */; +var30 = ((short int (*)(val*))(var29->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var29) /* is_ok on */; +if(!var30) break; +var31 = ((val* (*)(val*))(var29->class->vft[COLOR_abstract_collection__Iterator__item]))(var29) /* item on */; +var_x = var31; +var32 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var33 = ((val* (*)(val*, val*))(var32->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var32, var_x) /* [] on */; +var_xe = var33; +var34 = ((val* (*)(val*))(var_xe->class->vft[COLOR_poset__POSetElement__tos]))(var_xe) /* tos on */; +var35 = ((short int (*)(val*, val*))(var34->class->vft[COLOR_abstract_collection__Collection__has]))(var34, var_f) /* has on */; +if (var35){ +var36 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; +((void (*)(val*, val*))(var36->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var36, var_x) /* remove on */; +var37 = ((val* (*)(val*))(var_xe->class->vft[COLOR_poset__POSetElement__dtos]))(var_xe) /* dtos on */; +((void (*)(val*, val*))(var37->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var37, var_t) /* remove on */; } else { } -CONTINUE_label37: (void)0; -((void (*)(val*))(var28->class->vft[COLOR_abstract_collection__Iterator__next]))(var28) /* next on */; +CONTINUE_label38: (void)0; +((void (*)(val*))(var29->class->vft[COLOR_abstract_collection__Iterator__next]))(var29) /* next on */; } -BREAK_label37: (void)0; -var38 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; -var39 = ((val* (*)(val*))(var38->class->vft[COLOR_array__Collection__to_a]))(var38) /* to_a on */; -var40 = ((val* (*)(val*))(var39->class->vft[COLOR_abstract_collection__Collection__iterator]))(var39) /* iterator on */; +BREAK_label38: (void)0; +var39 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; +var40 = ((val* (*)(val*))(var39->class->vft[COLOR_array__Collection__to_a]))(var39) /* to_a on */; +var41 = ((val* (*)(val*))(var40->class->vft[COLOR_abstract_collection__Collection__iterator]))(var40) /* iterator on */; for(;;) { -var41 = ((short int (*)(val*))(var40->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var40) /* is_ok on */; -if(!var41) break; -var42 = ((val* (*)(val*))(var40->class->vft[COLOR_abstract_collection__Iterator__item]))(var40) /* item on */; -var_x43 = var42; -var44 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var45 = ((val* (*)(val*, val*))(var44->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var44, var_x43) /* [] on */; -var_xe46 = var45; -var47 = ((val* (*)(val*))(var_xe46->class->vft[COLOR_poset__POSetElement__froms]))(var_xe46) /* froms on */; -var48 = ((short int (*)(val*, val*))(var47->class->vft[COLOR_abstract_collection__Collection__has]))(var47, var_t) /* has on */; -if (var48){ -var49 = ((val* (*)(val*))(var_xe46->class->vft[COLOR_poset__POSetElement__dfroms]))(var_xe46) /* dfroms on */; -((void (*)(val*, val*))(var49->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var49, var_f) /* remove on */; -var50 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; -((void (*)(val*, val*))(var50->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var50, var_x43) /* remove on */; +var42 = ((short int (*)(val*))(var41->class->vft[COLOR_abstract_collection__Iterator__is_ok]))(var41) /* is_ok on */; +if(!var42) break; +var43 = ((val* (*)(val*))(var41->class->vft[COLOR_abstract_collection__Iterator__item]))(var41) /* item on */; +var_x44 = var43; +var45 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var46 = ((val* (*)(val*, val*))(var45->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var45, var_x44) /* [] on */; +var_xe47 = var46; +var48 = ((val* (*)(val*))(var_xe47->class->vft[COLOR_poset__POSetElement__froms]))(var_xe47) /* froms on */; +var49 = ((short int (*)(val*, val*))(var48->class->vft[COLOR_abstract_collection__Collection__has]))(var48, var_t) /* has on */; +if (var49){ +var50 = ((val* (*)(val*))(var_xe47->class->vft[COLOR_poset__POSetElement__dfroms]))(var_xe47) /* dfroms on */; +((void (*)(val*, val*))(var50->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var50, var_f) /* remove on */; +var51 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; +((void (*)(val*, val*))(var51->class->vft[COLOR_abstract_collection__RemovableCollection__remove]))(var51, var_x44) /* remove on */; } else { } -CONTINUE_label51: (void)0; -((void (*)(val*))(var40->class->vft[COLOR_abstract_collection__Iterator__next]))(var40) /* next on */; +CONTINUE_label52: (void)0; +((void (*)(val*))(var41->class->vft[COLOR_abstract_collection__Iterator__next]))(var41) /* next on */; } -BREAK_label51: (void)0; -var52 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; -((void (*)(val*, val*))(var52->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var52, var_t) /* add on */; -var53 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; -((void (*)(val*, val*))(var53->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var53, var_f) /* add on */; +BREAK_label52: (void)0; +var53 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; +((void (*)(val*, val*))(var53->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var53, var_t) /* add on */; +var54 = ((val* (*)(val*))(var_te->class->vft[COLOR_poset__POSetElement__dfroms]))(var_te) /* dfroms on */; +((void (*)(val*, val*))(var54->class->vft[COLOR_abstract_collection__SimpleCollection__add]))(var54, var_f) /* add on */; RET_LABEL:; } /* method poset#POSet#add_edge for (self: Object, Object, Object) */ @@ -447,22 +467,24 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; short int var2 /* : Bool */; int cltype3; int idtype4; const struct type* type_struct5; +const char* var_class_name6; val* var_f /* var f: Object */; val* var_t /* var t: Object */; -val* var6 /* : HashMap[Object, POSetElement[Object]] */; -val* var7 /* : Collection[Object] */; -short int var8 /* : Bool */; +val* var7 /* : HashMap[Object, POSetElement[Object]] */; +val* var8 /* : Collection[Object] */; short int var9 /* : Bool */; short int var10 /* : Bool */; -val* var11 /* : HashMap[Object, POSetElement[Object]] */; -val* var12 /* : nullable Object */; +short int var11 /* : Bool */; +val* var12 /* : HashMap[Object, POSetElement[Object]] */; +val* var13 /* : nullable Object */; val* var_fe /* var fe: POSetElement[Object] */; -val* var13 /* : HashSet[Object] */; -short int var14 /* : Bool */; +val* var14 /* : HashSet[Object] */; +short int var15 /* : Bool */; /* Covariant cast for argument 0 (f) isa POSet#0 */ /* isa POSet#0 */ type_struct = self->type->resolution_table->types[COLOR_poset__POSet_FT0]; @@ -474,7 +496,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 109); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 109); exit(1); } /* Covariant cast for argument 1 (t) isa POSet#0 */ @@ -488,27 +512,29 @@ var2 = 0; var2 = p1->type->type_table[cltype3] == idtype4; } if (!var2) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 109); +var_class_name6 = p1 == NULL ? "null" : p1->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name6); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 109); exit(1); } var_f = p0; var_t = p1; -var6 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var7 = ((val* (*)(val*))(var6->class->vft[COLOR_abstract_collection__MapRead__keys]))(var6) /* keys on */; -var8 = ((short int (*)(val*, val*))(var7->class->vft[COLOR_abstract_collection__Collection__has]))(var7, var_f) /* has on */; -var9 = !var8; -if (var9){ -var10 = 0; -var = var10; +var7 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var8 = ((val* (*)(val*))(var7->class->vft[COLOR_abstract_collection__MapRead__keys]))(var7) /* keys on */; +var9 = ((short int (*)(val*, val*))(var8->class->vft[COLOR_abstract_collection__Collection__has]))(var8, var_f) /* has on */; +var10 = !var9; +if (var10){ +var11 = 0; +var = var11; goto RET_LABEL; } else { } -var11 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var12 = ((val* (*)(val*, val*))(var11->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var11, var_f) /* [] on */; -var_fe = var12; -var13 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__tos]))(var_fe) /* tos on */; -var14 = ((short int (*)(val*, val*))(var13->class->vft[COLOR_abstract_collection__Collection__has]))(var13, var_t) /* has on */; -var = var14; +var12 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var13 = ((val* (*)(val*, val*))(var12->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var12, var_f) /* [] on */; +var_fe = var13; +var14 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__tos]))(var_fe) /* tos on */; +var15 = ((short int (*)(val*, val*))(var14->class->vft[COLOR_abstract_collection__Collection__has]))(var14, var_t) /* has on */; +var = var15; goto RET_LABEL; RET_LABEL:; return var; @@ -529,22 +555,24 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; short int var2 /* : Bool */; int cltype3; int idtype4; const struct type* type_struct5; +const char* var_class_name6; val* var_f /* var f: Object */; val* var_t /* var t: Object */; -val* var6 /* : HashMap[Object, POSetElement[Object]] */; -val* var7 /* : Collection[Object] */; -short int var8 /* : Bool */; +val* var7 /* : HashMap[Object, POSetElement[Object]] */; +val* var8 /* : Collection[Object] */; short int var9 /* : Bool */; short int var10 /* : Bool */; -val* var11 /* : HashMap[Object, POSetElement[Object]] */; -val* var12 /* : nullable Object */; +short int var11 /* : Bool */; +val* var12 /* : HashMap[Object, POSetElement[Object]] */; +val* var13 /* : nullable Object */; val* var_fe /* var fe: POSetElement[Object] */; -val* var13 /* : HashSet[Object] */; -short int var14 /* : Bool */; +val* var14 /* : HashSet[Object] */; +short int var15 /* : Bool */; /* Covariant cast for argument 0 (f) isa POSet#0 */ /* isa POSet#0 */ type_struct = self->type->resolution_table->types[COLOR_poset__POSet_FT0]; @@ -556,7 +584,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 118); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 118); exit(1); } /* Covariant cast for argument 1 (t) isa POSet#0 */ @@ -570,27 +600,29 @@ var2 = 0; var2 = p1->type->type_table[cltype3] == idtype4; } if (!var2) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 118); +var_class_name6 = p1 == NULL ? "null" : p1->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name6); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 118); exit(1); } var_f = p0; var_t = p1; -var6 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var7 = ((val* (*)(val*))(var6->class->vft[COLOR_abstract_collection__MapRead__keys]))(var6) /* keys on */; -var8 = ((short int (*)(val*, val*))(var7->class->vft[COLOR_abstract_collection__Collection__has]))(var7, var_f) /* has on */; -var9 = !var8; -if (var9){ -var10 = 0; -var = var10; +var7 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var8 = ((val* (*)(val*))(var7->class->vft[COLOR_abstract_collection__MapRead__keys]))(var7) /* keys on */; +var9 = ((short int (*)(val*, val*))(var8->class->vft[COLOR_abstract_collection__Collection__has]))(var8, var_f) /* has on */; +var10 = !var9; +if (var10){ +var11 = 0; +var = var11; goto RET_LABEL; } else { } -var11 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var12 = ((val* (*)(val*, val*))(var11->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var11, var_f) /* [] on */; -var_fe = var12; -var13 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; -var14 = ((short int (*)(val*, val*))(var13->class->vft[COLOR_abstract_collection__Collection__has]))(var13, var_t) /* has on */; -var = var14; +var12 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var13 = ((val* (*)(val*, val*))(var12->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var12, var_f) /* [] on */; +var_fe = var13; +var14 = ((val* (*)(val*))(var_fe->class->vft[COLOR_poset__POSetElement__dtos]))(var_fe) /* dtos on */; +var15 = ((short int (*)(val*, val*))(var14->class->vft[COLOR_abstract_collection__Collection__has]))(var14, var_t) /* has on */; +var = var15; goto RET_LABEL; RET_LABEL:; return var; @@ -904,35 +936,37 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; short int var2 /* : Bool */; int cltype3; int idtype4; const struct type* type_struct5; +const char* var_class_name6; val* var_a /* var a: Object */; val* var_b /* var b: Object */; -val* var6 /* : HashMap[Object, POSetElement[Object]] */; -val* var7 /* : nullable Object */; +val* var7 /* : HashMap[Object, POSetElement[Object]] */; +val* var8 /* : nullable Object */; val* var_ae /* var ae: POSetElement[Object] */; -val* var8 /* : HashMap[Object, POSetElement[Object]] */; -val* var9 /* : nullable Object */; +val* var9 /* : HashMap[Object, POSetElement[Object]] */; +val* var10 /* : nullable Object */; val* var_be /* var be: POSetElement[Object] */; -val* var10 /* : HashSet[Object] */; -long var11 /* : Int */; -val* var12 /* : HashSet[Object] */; -long var13 /* : Int */; +val* var11 /* : HashSet[Object] */; +long var12 /* : Int */; +val* var13 /* : HashSet[Object] */; long var14 /* : Int */; -long var_res /* var res: Int */; long var15 /* : Int */; -short int var16 /* : Bool */; -short int var18 /* : Bool */; +long var_res /* var res: Int */; +long var16 /* : Int */; +short int var17 /* : Bool */; short int var19 /* : Bool */; -val* var20 /* : HashMap[Object, POSetElement[Object]] */; -val* var21 /* : nullable Object */; -long var22 /* : Int */; -val* var23 /* : HashMap[Object, POSetElement[Object]] */; -val* var24 /* : nullable Object */; -long var25 /* : Int */; +short int var20 /* : Bool */; +val* var21 /* : HashMap[Object, POSetElement[Object]] */; +val* var22 /* : nullable Object */; +long var23 /* : Int */; +val* var24 /* : HashMap[Object, POSetElement[Object]] */; +val* var25 /* : nullable Object */; long var26 /* : Int */; +long var27 /* : Int */; /* Covariant cast for argument 0 (a) isa POSet#0 */ /* isa POSet#0 */ type_struct = self->type->resolution_table->types[COLOR_poset__POSet_FT0]; @@ -944,7 +978,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 151); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 151); exit(1); } /* Covariant cast for argument 1 (b) isa POSet#0 */ @@ -958,44 +994,46 @@ var2 = 0; var2 = p1->type->type_table[cltype3] == idtype4; } if (!var2) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 151); +var_class_name6 = p1 == NULL ? "null" : p1->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet#0", var_class_name6); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 151); exit(1); } var_a = p0; var_b = p1; -var6 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var7 = ((val* (*)(val*, val*))(var6->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var6, var_a) /* [] on */; -var_ae = var7; -var8 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var9 = ((val* (*)(val*, val*))(var8->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var8, var_b) /* [] on */; -var_be = var9; -var10 = ((val* (*)(val*))(var_ae->class->vft[COLOR_poset__POSetElement__tos]))(var_ae) /* tos on */; -var11 = ((long (*)(val*))(var10->class->vft[COLOR_abstract_collection__Collection__length]))(var10) /* length on */; -var12 = ((val* (*)(val*))(var_be->class->vft[COLOR_poset__POSetElement__tos]))(var_be) /* tos on */; -var13 = ((long (*)(val*))(var12->class->vft[COLOR_abstract_collection__Collection__length]))(var12) /* length on */; -var14 = kernel__Int___60d_61d_62d(var11, var13); -var_res = var14; -var15 = 0; -{ /* Inline kernel#Int#!= (var_res,var15) */ -var18 = var_res == var15; -var19 = !var18; -var16 = var19; -goto RET_LABEL17; -RET_LABEL17:(void)0; -} -if (var16){ +var7 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var8 = ((val* (*)(val*, val*))(var7->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var7, var_a) /* [] on */; +var_ae = var8; +var9 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var10 = ((val* (*)(val*, val*))(var9->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var9, var_b) /* [] on */; +var_be = var10; +var11 = ((val* (*)(val*))(var_ae->class->vft[COLOR_poset__POSetElement__tos]))(var_ae) /* tos on */; +var12 = ((long (*)(val*))(var11->class->vft[COLOR_abstract_collection__Collection__length]))(var11) /* length on */; +var13 = ((val* (*)(val*))(var_be->class->vft[COLOR_poset__POSetElement__tos]))(var_be) /* tos on */; +var14 = ((long (*)(val*))(var13->class->vft[COLOR_abstract_collection__Collection__length]))(var13) /* length on */; +var15 = kernel__Int___60d_61d_62d(var12, var14); +var_res = var15; +var16 = 0; +{ /* Inline kernel#Int#!= (var_res,var16) */ +var19 = var_res == var16; +var20 = !var19; +var17 = var20; +goto RET_LABEL18; +RET_LABEL18:(void)0; +} +if (var17){ var = var_res; goto RET_LABEL; } else { } -var20 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var21 = ((val* (*)(val*, val*))(var20->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var20, var_a) /* [] on */; -var22 = ((long (*)(val*))(var21->class->vft[COLOR_poset__POSetElement__count]))(var21) /* count on */; -var23 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; -var24 = ((val* (*)(val*, val*))(var23->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var23, var_b) /* [] on */; -var25 = ((long (*)(val*))(var24->class->vft[COLOR_poset__POSetElement__count]))(var24) /* count on */; -var26 = kernel__Int___60d_61d_62d(var22, var25); -var = var26; +var21 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var22 = ((val* (*)(val*, val*))(var21->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var21, var_a) /* [] on */; +var23 = ((long (*)(val*))(var22->class->vft[COLOR_poset__POSetElement__count]))(var22) /* count on */; +var24 = ((val* (*)(val*))(self->class->vft[COLOR_poset__POSet__elements]))(self) /* elements on */; +var25 = ((val* (*)(val*, val*))(var24->class->vft[COLOR_abstract_collection__MapRead___91d_93d]))(var24, var_b) /* [] on */; +var26 = ((long (*)(val*))(var25->class->vft[COLOR_poset__POSetElement__count]))(var25) /* count on */; +var27 = kernel__Int___60d_61d_62d(var23, var26); +var = var27; goto RET_LABEL; RET_LABEL:; return var; @@ -1024,7 +1062,8 @@ val* var /* : POSet[Object] */; val* var1 /* : POSet[Object] */; var1 = self->attrs[COLOR_poset__POSetElement___64dposet].val; /* @poset on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @poset", "lib/poset.nit", 181); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @poset"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 181); exit(1); } var = var1; @@ -1046,6 +1085,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (poset) isa POSet[POSetElement#0] */ /* isa POSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_poset__POSetposet__POSetElement_FT0]; @@ -1057,7 +1097,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 181); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 181); exit(1); } self->attrs[COLOR_poset__POSetElement___64dposet].val = p0; /* @poset on */ @@ -1074,7 +1116,8 @@ val* var /* : Object */; val* var1 /* : Object */; var1 = self->attrs[COLOR_poset__POSetElement___64delement].val; /* @element on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @element", "lib/poset.nit", 184); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @element"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 184); exit(1); } var = var1; @@ -1096,6 +1139,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (element) isa POSetElement#0 */ /* isa POSetElement#0 */ type_struct = self->type->resolution_table->types[COLOR_poset__POSetElement_FT0]; @@ -1107,7 +1151,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 184); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSetElement#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 184); exit(1); } self->attrs[COLOR_poset__POSetElement___64delement].val = p0; /* @element on */ @@ -1124,7 +1170,8 @@ val* var /* : HashSet[Object] */; val* var1 /* : HashSet[Object] */; var1 = self->attrs[COLOR_poset__POSetElement___64dtos].val; /* @tos on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @tos", "lib/poset.nit", 187); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @tos"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 187); exit(1); } var = var1; @@ -1146,6 +1193,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (tos) isa HashSet[POSetElement#0] */ /* isa HashSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]; @@ -1157,7 +1205,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 187); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "HashSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 187); exit(1); } self->attrs[COLOR_poset__POSetElement___64dtos].val = p0; /* @tos on */ @@ -1174,7 +1224,8 @@ val* var /* : HashSet[Object] */; val* var1 /* : HashSet[Object] */; var1 = self->attrs[COLOR_poset__POSetElement___64dfroms].val; /* @froms on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @froms", "lib/poset.nit", 188); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @froms"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 188); exit(1); } var = var1; @@ -1196,6 +1247,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (froms) isa HashSet[POSetElement#0] */ /* isa HashSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]; @@ -1207,7 +1259,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 188); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "HashSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 188); exit(1); } self->attrs[COLOR_poset__POSetElement___64dfroms].val = p0; /* @froms on */ @@ -1224,7 +1278,8 @@ val* var /* : HashSet[Object] */; val* var1 /* : HashSet[Object] */; var1 = self->attrs[COLOR_poset__POSetElement___64ddtos].val; /* @dtos on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @dtos", "lib/poset.nit", 189); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @dtos"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 189); exit(1); } var = var1; @@ -1246,6 +1301,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (dtos) isa HashSet[POSetElement#0] */ /* isa HashSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]; @@ -1257,7 +1313,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 189); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "HashSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 189); exit(1); } self->attrs[COLOR_poset__POSetElement___64ddtos].val = p0; /* @dtos on */ @@ -1274,7 +1332,8 @@ val* var /* : HashSet[Object] */; val* var1 /* : HashSet[Object] */; var1 = self->attrs[COLOR_poset__POSetElement___64ddfroms].val; /* @dfroms on */ if (var1 == NULL) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Uninitialized attribute @dfroms", "lib/poset.nit", 190); +fprintf(stderr, "Runtime error: %s", "Uninitialized attribute @dfroms"); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 190); exit(1); } var = var1; @@ -1296,6 +1355,7 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; /* Covariant cast for argument 0 (dfroms) isa HashSet[POSetElement#0] */ /* isa HashSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_hash_collection__HashSetposet__POSetElement_FT0]; @@ -1307,7 +1367,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 190); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "HashSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 190); exit(1); } self->attrs[COLOR_poset__POSetElement___64ddfroms].val = p0; /* @dfroms on */ @@ -1429,6 +1491,7 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; val* var_t /* var t: Object */; val* var2 /* : HashSet[Object] */; short int var3 /* : Bool */; @@ -1443,7 +1506,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 222); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSetElement#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 222); exit(1); } var_t = p0; @@ -1470,6 +1535,7 @@ short int var1 /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; val* var_t /* var t: Object */; short int var2 /* : Bool */; val* var3 /* : Object */; @@ -1488,7 +1554,9 @@ var1 = 0; var1 = p0->type->type_table[cltype] == idtype; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 228); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSetElement#0", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 228); exit(1); } var_t = p0; @@ -1522,10 +1590,12 @@ short int var /* : Bool */; int cltype; int idtype; const struct type* type_struct; +const char* var_class_name; short int var1 /* : Bool */; int cltype2; int idtype3; const struct type* type_struct4; +const char* var_class_name5; /* Covariant cast for argument 0 (poset) isa POSet[POSetElement#0] */ /* isa POSet[POSetElement#0] */ type_struct = self->type->resolution_table->types[COLOR_poset__POSetposet__POSetElement_FT0]; @@ -1537,7 +1607,9 @@ var = 0; var = p0->type->type_table[cltype] == idtype; } if (!var) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 168); +var_class_name = p0 == NULL ? "null" : p0->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSet[POSetElement#0]", var_class_name); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 168); exit(1); } /* Covariant cast for argument 1 (element) isa POSetElement#0 */ @@ -1551,7 +1623,9 @@ var1 = 0; var1 = p1->type->type_table[cltype2] == idtype3; } if (!var1) { -fprintf(stderr, "Runtime error: %s (%s:%d)\n", "Cast failed", "lib/poset.nit", 168); +var_class_name5 = p1 == NULL ? "null" : p1->type->name; +fprintf(stderr, "Runtime error: Cast failed. Expected `%s`, got `%s`", "POSetElement#0", var_class_name5); +fprintf(stderr, " (%s:%d)\n", "lib/poset.nit", 168); exit(1); } self->attrs[COLOR_poset__POSetElement___64dposet].val = p0; /* @poset on */