bench: do not use replot
[nit.git] / c_src / metamodel___genericity._sep.c
index be1c940..981e458 100644 (file)
@@ -1,5 +1,6 @@
 /* This C file is generated by NIT to compile module metamodel___genericity. */
 #include "metamodel___genericity._sep.h"
+static const char LOCATE_metamodel___genericity___MMLocalClass___get_formal[] = "genericity::MMLocalClass::get_formal";
 val_t metamodel___genericity___MMLocalClass___get_formal(val_t p0, val_t p1){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -25,7 +26,7 @@ val_t metamodel___genericity___MMLocalClass___get_formal(val_t p0, val_t p1){
   } else {
     nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
   }
-  /* ../lib/standard/kernel.nit:233 */
+  /* ../lib/standard/kernel.nit:236 */
   REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
   /* ../lib/standard/collection/array.nit:280 */
   if (UNTAG_Bool(REGB1)) {
@@ -40,11 +41,11 @@ val_t metamodel___genericity___MMLocalClass___get_formal(val_t p0, val_t p1){
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
   } else {
     /* ../lib/standard/collection/array.nit:280 */
-    REGB2 = TAG_Bool(false);
+    REGB2 = TAG_Bool(0);
     REGB1 = REGB2;
   }
   if (UNTAG_Bool(REGB1)) {
@@ -68,6 +69,7 @@ val_t metamodel___genericity___MMLocalClass___get_formal(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMLocalClass___register_formal[] = "genericity::MMLocalClass::register_formal";
 void metamodel___genericity___MMLocalClass___register_formal(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
@@ -117,7 +119,7 @@ void metamodel___genericity___MMLocalClass___register_formal(val_t p0, val_t p1)
   REGB2 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB1));
   if (UNTAG_Bool(REGB2)) {
   } else {
-    /* ../lib/standard/kernel.nit:227 */
+    /* ../lib/standard/kernel.nit:230 */
     REGB1 = TAG_Bool((REGB0)==(REGB1));
     /* metamodel/genericity.nit:36 */
     REGB2 = REGB1;
@@ -137,6 +139,7 @@ void metamodel___genericity___MMLocalClass___register_formal(val_t p0, val_t p1)
   stack_frame_head = fra.me.prev;
   return;
 }
+static const char LOCATE_metamodel___genericity___MMLocalClass___get_instantiate_type[] = "genericity::MMLocalClass::get_instantiate_type";
 val_t metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[4];} fra;
   val_t REGB0;
@@ -189,7 +192,7 @@ val_t metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0, val
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
     /* ../lib/standard/collection/array.nit:272 */
     if (UNTAG_Bool(REGB1)) {
@@ -207,7 +210,7 @@ val_t metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0, val
       }
       /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:235 */
+      /* ../lib/standard/kernel.nit:238 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
       /* ../lib/standard/collection/array.nit:274 */
       REGB0 = REGB1;
@@ -234,6 +237,7 @@ val_t metamodel___genericity___MMLocalClass___get_instantiate_type(val_t p0, val
   stack_frame_head = fra.me.prev;
   return fra.me.REG[4];
 }
+static const char LOCATE_metamodel___genericity___MMLocalClass___formals_types[] = "genericity::MMLocalClass::formals_types";
 val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -273,16 +277,16 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
     /* metamodel/genericity.nit:65 */
     REGB0 = TAG_Int(0);
     REGB1 = CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra.me.REG[0])(fra.me.REG[0]);
-    /* ../lib/standard/kernel.nit:352 */
+    /* ../lib/standard/kernel.nit:355 */
     while(1) {
       REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
       if (UNTAG_Bool(REGB2)) {
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:232 */
+      /* ../lib/standard/kernel.nit:235 */
       REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-      /* ../lib/standard/kernel.nit:352 */
+      /* ../lib/standard/kernel.nit:355 */
       if (UNTAG_Bool(REGB2)) {
         /* metamodel/genericity.nit:65 */
         REGB2 = REGB0;
@@ -295,14 +299,14 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
         fra.me.REG[1] = NEW_MMTypeFormalParameter_metamodel___genericity___MMTypeFormalParameter___init(fra.me.REG[1], REGB2, fra.me.REG[0]);
         /* metamodel/genericity.nit:68 */
         CALL_metamodel___genericity___MMLocalClass___register_formal(fra.me.REG[0])(fra.me.REG[0], fra.me.REG[1]);
-        /* ../lib/standard/kernel.nit:354 */
+        /* ../lib/standard/kernel.nit:357 */
         REGB2 = TAG_Int(1);
-        /* ../lib/standard/kernel.nit:235 */
+        /* ../lib/standard/kernel.nit:238 */
         REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-        /* ../lib/standard/kernel.nit:354 */
+        /* ../lib/standard/kernel.nit:357 */
         REGB0 = REGB2;
       } else {
-        /* ../lib/standard/kernel.nit:352 */
+        /* ../lib/standard/kernel.nit:355 */
         goto label1;
       }
     }
@@ -310,16 +314,16 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
     /* metamodel/genericity.nit:71 */
     REGB0 = TAG_Int(0);
     REGB1 = CALL_metamodel___abstractmetamodel___MMLocalClass___arity(fra.me.REG[0])(fra.me.REG[0]);
-    /* ../lib/standard/kernel.nit:352 */
+    /* ../lib/standard/kernel.nit:355 */
     while(1) {
       REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
       if (UNTAG_Bool(REGB2)) {
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:232 */
+      /* ../lib/standard/kernel.nit:235 */
       REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-      /* ../lib/standard/kernel.nit:352 */
+      /* ../lib/standard/kernel.nit:355 */
       if (UNTAG_Bool(REGB2)) {
         /* metamodel/genericity.nit:71 */
         REGB2 = REGB0;
@@ -341,7 +345,7 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
         } else {
           nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
         }
-        /* ../lib/standard/kernel.nit:233 */
+        /* ../lib/standard/kernel.nit:236 */
         REGB3 = TAG_Bool(UNTAG_Int(REGB2)>=UNTAG_Int(REGB3));
         /* ../lib/standard/collection/array.nit:280 */
         if (UNTAG_Bool(REGB3)) {
@@ -356,11 +360,11 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
           } else {
             nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
           }
-          /* ../lib/standard/kernel.nit:232 */
+          /* ../lib/standard/kernel.nit:235 */
           REGB3 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB3));
         } else {
           /* ../lib/standard/collection/array.nit:280 */
-          REGB4 = TAG_Bool(false);
+          REGB4 = TAG_Bool(0);
           REGB3 = REGB4;
         }
         if (UNTAG_Bool(REGB3)) {
@@ -383,14 +387,14 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
         fra.me.REG[3] = CALL_metamodel___abstractmetamodel___MMLocalClass___mmmodule(fra.me.REG[0])(fra.me.REG[0]);
         fra.me.REG[3] = CALL_metamodel___static_type___MMType___for_module(fra.me.REG[1])(fra.me.REG[1], fra.me.REG[3]);
         CALL_metamodel___genericity___MMTypeFormalParameter___bound__eq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
-        /* ../lib/standard/kernel.nit:354 */
+        /* ../lib/standard/kernel.nit:357 */
         REGB2 = TAG_Int(1);
-        /* ../lib/standard/kernel.nit:235 */
+        /* ../lib/standard/kernel.nit:238 */
         REGB2 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB2));
-        /* ../lib/standard/kernel.nit:354 */
+        /* ../lib/standard/kernel.nit:357 */
         REGB0 = REGB2;
       } else {
-        /* ../lib/standard/kernel.nit:352 */
+        /* ../lib/standard/kernel.nit:355 */
         goto label3;
       }
     }
@@ -408,6 +412,7 @@ val_t metamodel___genericity___MMLocalClass___formals_types(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMLocalClass___get_type[] = "genericity::MMLocalClass::(static_type::MMLocalClass::get_type)";
 val_t metamodel___genericity___MMLocalClass___get_type(val_t p0){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
@@ -433,7 +438,7 @@ val_t metamodel___genericity___MMLocalClass___get_type(val_t p0){
   } else {
     REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB1)) {
-      REGB1 = TAG_Bool(false);
+      REGB1 = TAG_Bool(0);
       REGB0 = REGB1;
     } else {
       REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
@@ -443,7 +448,7 @@ val_t metamodel___genericity___MMLocalClass___get_type(val_t p0){
   if (UNTAG_Bool(REGB0)) {
     REGB0 = CALL_metamodel___genericity___MMLocalClass___is_generic(fra.me.REG[1])(fra.me.REG[1]);
   } else {
-    REGB1 = TAG_Bool(false);
+    REGB1 = TAG_Bool(0);
     REGB0 = REGB1;
   }
   if (UNTAG_Bool(REGB0)) {
@@ -469,6 +474,7 @@ val_t metamodel___genericity___MMLocalClass___get_type(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[1];
 }
+static const char LOCATE_metamodel___genericity___MMLocalClass___is_generic[] = "genericity::MMLocalClass::is_generic";
 val_t metamodel___genericity___MMLocalClass___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -492,7 +498,7 @@ val_t metamodel___genericity___MMLocalClass___is_generic(val_t p0){
   } else {
     nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
   }
-  /* ../lib/standard/kernel.nit:234 */
+  /* ../lib/standard/kernel.nit:237 */
   REGB1 = TAG_Bool(UNTAG_Int(REGB0)>UNTAG_Int(REGB1));
   /* metamodel/genericity.nit:91 */
   goto label1;
@@ -500,6 +506,7 @@ val_t metamodel___genericity___MMLocalClass___is_generic(val_t p0){
   stack_frame_head = fra.me.prev;
   return REGB1;
 }
+static const char LOCATE_metamodel___genericity___MMType___is_generic[] = "genericity::MMType::is_generic";
 val_t metamodel___genericity___MMType___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t tmp;
@@ -515,6 +522,7 @@ val_t metamodel___genericity___MMType___is_generic(val_t p0){
   stack_frame_head = fra.me.prev;
   return NIT_NULL;
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormal___is_generic[] = "genericity::MMTypeFormal::(genericity::MMType::is_generic)";
 val_t metamodel___genericity___MMTypeFormal___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -540,6 +548,7 @@ val_t metamodel___genericity___MMTypeFormal___is_generic(val_t p0){
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeSimpleClass___is_generic[] = "genericity::MMTypeSimpleClass::(genericity::MMType::is_generic)";
 val_t metamodel___genericity___MMTypeSimpleClass___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -554,12 +563,13 @@ val_t metamodel___genericity___MMTypeSimpleClass___is_generic(val_t p0){
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* metamodel/genericity.nit:104 */
-  REGB0 = TAG_Bool(false);
+  REGB0 = TAG_Bool(0);
   goto label1;
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___params[] = "genericity::MMTypeGeneric::params";
 val_t metamodel___genericity___MMTypeGeneric___params(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -583,6 +593,7 @@ val_t metamodel___genericity___MMTypeGeneric___params(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___is_generic[] = "genericity::MMTypeGeneric::(genericity::MMType::is_generic)";
 val_t metamodel___genericity___MMTypeGeneric___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -597,12 +608,13 @@ val_t metamodel___genericity___MMTypeGeneric___is_generic(val_t p0){
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* metamodel/genericity.nit:112 */
-  REGB0 = TAG_Bool(true);
+  REGB0 = TAG_Bool(1);
   goto label1;
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___is_supertype[] = "genericity::MMTypeGeneric::(static_type::MMType::is_supertype)";
 val_t metamodel___genericity___MMTypeGeneric___is_supertype(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -649,13 +661,14 @@ val_t metamodel___genericity___MMTypeGeneric___is_supertype(val_t p0, val_t p1){
     }
   }
   /* metamodel/genericity.nit:122 */
-  REGB1 = TAG_Bool(false);
+  REGB1 = TAG_Bool(0);
   REGB0 = REGB1;
   goto label1;
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___upcast_for[] = "genericity::MMTypeGeneric::(static_type::MMType::upcast_for)";
 val_t metamodel___genericity___MMTypeGeneric___upcast_for(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
@@ -696,6 +709,7 @@ val_t metamodel___genericity___MMTypeGeneric___upcast_for(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[1];
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___for_module[] = "genericity::MMTypeGeneric::(static_type::MMType::for_module)";
 val_t metamodel___genericity___MMTypeGeneric___for_module(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[6];} fra;
   val_t REGB0;
@@ -764,7 +778,7 @@ val_t metamodel___genericity___MMTypeGeneric___for_module(val_t p0, val_t p1){
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:232 */
+      /* ../lib/standard/kernel.nit:235 */
       REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
       /* ../lib/standard/collection/array.nit:272 */
       if (UNTAG_Bool(REGB1)) {
@@ -780,7 +794,7 @@ val_t metamodel___genericity___MMTypeGeneric___for_module(val_t p0, val_t p1){
         CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[6]);
         /* ../lib/standard/collection/array.nit:274 */
         REGB1 = TAG_Int(1);
-        /* ../lib/standard/kernel.nit:235 */
+        /* ../lib/standard/kernel.nit:238 */
         REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
         /* ../lib/standard/collection/array.nit:274 */
         REGB0 = REGB1;
@@ -808,6 +822,7 @@ val_t metamodel___genericity___MMTypeGeneric___for_module(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[2];
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___adapt_to[] = "genericity::MMTypeGeneric::(static_type::MMType::adapt_to)";
 val_t metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[5];} fra;
   val_t REGB0;
@@ -863,7 +878,7 @@ val_t metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0, val_t p1){
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
     /* ../lib/standard/collection/array.nit:272 */
     if (UNTAG_Bool(REGB1)) {
@@ -879,7 +894,7 @@ val_t metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0, val_t p1){
       CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[5]);
       /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:235 */
+      /* ../lib/standard/kernel.nit:238 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
       /* ../lib/standard/collection/array.nit:274 */
       REGB0 = REGB1;
@@ -903,6 +918,7 @@ val_t metamodel___genericity___MMTypeGeneric___adapt_to(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[2];
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___params_equals[] = "genericity::MMTypeGeneric::params_equals";
 val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -951,7 +967,7 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
   REGB2 = TAG_Bool(IS_EQUAL_OO(REGB0,REGB1));
   if (UNTAG_Bool(REGB2)) {
   } else {
-    /* ../lib/standard/kernel.nit:227 */
+    /* ../lib/standard/kernel.nit:230 */
     REGB1 = TAG_Bool((REGB0)==(REGB1));
     /* metamodel/genericity.nit:160 */
     REGB2 = REGB1;
@@ -959,7 +975,7 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
   REGB2 = TAG_Bool(!UNTAG_Bool(REGB2));
   if (UNTAG_Bool(REGB2)) {
     /* metamodel/genericity.nit:161 */
-    REGB2 = TAG_Bool(false);
+    REGB2 = TAG_Bool(0);
     goto label1;
   }
   /* metamodel/genericity.nit:163 */
@@ -971,16 +987,16 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
     nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
   }
   REGB0 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[1]);
-  /* ../lib/standard/kernel.nit:352 */
+  /* ../lib/standard/kernel.nit:355 */
   while(1) {
     REGB3 = TAG_Bool(VAL_ISA(REGB0, VTCOLOR_standard___kernel___Comparable___OTHER(REGB1), VTID_standard___kernel___Comparable___OTHER(REGB1))) /*cast OTHER*/;
     if (UNTAG_Bool(REGB3)) {
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB3 = TAG_Bool(UNTAG_Int(REGB1)<UNTAG_Int(REGB0));
-    /* ../lib/standard/kernel.nit:352 */
+    /* ../lib/standard/kernel.nit:355 */
     if (UNTAG_Bool(REGB3)) {
       /* metamodel/genericity.nit:163 */
       REGB3 = REGB1;
@@ -1000,7 +1016,7 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:233 */
+      /* ../lib/standard/kernel.nit:236 */
       REGB5 = TAG_Bool(UNTAG_Int(REGB4)>=UNTAG_Int(REGB5));
       /* ../lib/standard/collection/array.nit:280 */
       if (UNTAG_Bool(REGB5)) {
@@ -1015,11 +1031,11 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
         } else {
           nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
         }
-        /* ../lib/standard/kernel.nit:232 */
+        /* ../lib/standard/kernel.nit:235 */
         REGB5 = TAG_Bool(UNTAG_Int(REGB4)<UNTAG_Int(REGB5));
       } else {
         /* ../lib/standard/collection/array.nit:280 */
-        REGB6 = TAG_Bool(false);
+        REGB6 = TAG_Bool(0);
         REGB5 = REGB6;
       }
       if (UNTAG_Bool(REGB5)) {
@@ -1046,7 +1062,7 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:233 */
+      /* ../lib/standard/kernel.nit:236 */
       REGB4 = TAG_Bool(UNTAG_Int(REGB3)>=UNTAG_Int(REGB4));
       /* ../lib/standard/collection/array.nit:280 */
       if (UNTAG_Bool(REGB4)) {
@@ -1061,11 +1077,11 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
         } else {
           nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
         }
-        /* ../lib/standard/kernel.nit:232 */
+        /* ../lib/standard/kernel.nit:235 */
         REGB4 = TAG_Bool(UNTAG_Int(REGB3)<UNTAG_Int(REGB4));
       } else {
         /* ../lib/standard/collection/array.nit:280 */
-        REGB5 = TAG_Bool(false);
+        REGB5 = TAG_Bool(0);
         REGB4 = REGB5;
       }
       if (UNTAG_Bool(REGB4)) {
@@ -1089,7 +1105,7 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
       } else {
         REGB4 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
         if (UNTAG_Bool(REGB4)) {
-          REGB4 = TAG_Bool(false);
+          REGB4 = TAG_Bool(0);
           REGB3 = REGB4;
         } else {
           REGB4 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
@@ -1099,30 +1115,31 @@ val_t metamodel___genericity___MMTypeGeneric___params_equals(val_t p0, val_t p1)
       REGB3 = TAG_Bool(!UNTAG_Bool(REGB3));
       if (UNTAG_Bool(REGB3)) {
         /* metamodel/genericity.nit:165 */
-        REGB3 = TAG_Bool(false);
+        REGB3 = TAG_Bool(0);
         REGB2 = REGB3;
         goto label1;
       }
-      /* ../lib/standard/kernel.nit:354 */
+      /* ../lib/standard/kernel.nit:357 */
       REGB3 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:235 */
+      /* ../lib/standard/kernel.nit:238 */
       REGB3 = TAG_Int(UNTAG_Int(REGB1)+UNTAG_Int(REGB3));
-      /* ../lib/standard/kernel.nit:354 */
+      /* ../lib/standard/kernel.nit:357 */
       REGB1 = REGB3;
     } else {
-      /* ../lib/standard/kernel.nit:352 */
+      /* ../lib/standard/kernel.nit:355 */
       goto label4;
     }
   }
   label4: while(0);
   /* metamodel/genericity.nit:168 */
-  REGB1 = TAG_Bool(true);
+  REGB1 = TAG_Bool(1);
   REGB2 = REGB1;
   goto label1;
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return REGB2;
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___to_s[] = "genericity::MMTypeGeneric::(string::Object::to_s)";
 val_t metamodel___genericity___MMTypeGeneric___to_s(val_t p0){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -1199,6 +1216,7 @@ val_t metamodel___genericity___MMTypeGeneric___to_s(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[2];
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___is_subtype[] = "genericity::MMTypeGeneric::is_subtype";
 val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -1236,16 +1254,16 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
     nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 24);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2]);
-  /* ../lib/standard/kernel.nit:352 */
+  /* ../lib/standard/kernel.nit:355 */
   while(1) {
     REGB2 = TAG_Bool(VAL_ISA(REGB1, VTCOLOR_standard___kernel___Comparable___OTHER(REGB0), VTID_standard___kernel___Comparable___OTHER(REGB0))) /*cast OTHER*/;
     if (UNTAG_Bool(REGB2)) {
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB2 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/kernel.nit:352 */
+    /* ../lib/standard/kernel.nit:355 */
     if (UNTAG_Bool(REGB2)) {
       /* metamodel/genericity.nit:180 */
       REGB2 = REGB0;
@@ -1260,7 +1278,7 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:233 */
+      /* ../lib/standard/kernel.nit:236 */
       REGB4 = TAG_Bool(UNTAG_Int(REGB3)>=UNTAG_Int(REGB4));
       /* ../lib/standard/collection/array.nit:280 */
       if (UNTAG_Bool(REGB4)) {
@@ -1275,11 +1293,11 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
         } else {
           nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
         }
-        /* ../lib/standard/kernel.nit:232 */
+        /* ../lib/standard/kernel.nit:235 */
         REGB4 = TAG_Bool(UNTAG_Int(REGB3)<UNTAG_Int(REGB4));
       } else {
         /* ../lib/standard/collection/array.nit:280 */
-        REGB5 = TAG_Bool(false);
+        REGB5 = TAG_Bool(0);
         REGB4 = REGB5;
       }
       if (UNTAG_Bool(REGB4)) {
@@ -1311,7 +1329,7 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
       } else {
         nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
       }
-      /* ../lib/standard/kernel.nit:233 */
+      /* ../lib/standard/kernel.nit:236 */
       REGB3 = TAG_Bool(UNTAG_Int(REGB2)>=UNTAG_Int(REGB3));
       /* ../lib/standard/collection/array.nit:280 */
       if (UNTAG_Bool(REGB3)) {
@@ -1326,11 +1344,11 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
         } else {
           nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
         }
-        /* ../lib/standard/kernel.nit:232 */
+        /* ../lib/standard/kernel.nit:235 */
         REGB3 = TAG_Bool(UNTAG_Int(REGB2)<UNTAG_Int(REGB3));
       } else {
         /* ../lib/standard/collection/array.nit:280 */
-        REGB4 = TAG_Bool(false);
+        REGB4 = TAG_Bool(0);
         REGB3 = REGB4;
       }
       if (UNTAG_Bool(REGB3)) {
@@ -1357,29 +1375,30 @@ val_t metamodel___genericity___MMTypeGeneric___is_subtype(val_t p0, val_t p1){
       REGB2 = TAG_Bool(!UNTAG_Bool(REGB2));
       if (UNTAG_Bool(REGB2)) {
         /* metamodel/genericity.nit:183 */
-        REGB2 = TAG_Bool(false);
+        REGB2 = TAG_Bool(0);
         goto label3;
       }
-      /* ../lib/standard/kernel.nit:354 */
+      /* ../lib/standard/kernel.nit:357 */
       REGB3 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:235 */
+      /* ../lib/standard/kernel.nit:238 */
       REGB3 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB3));
-      /* ../lib/standard/kernel.nit:354 */
+      /* ../lib/standard/kernel.nit:357 */
       REGB0 = REGB3;
     } else {
-      /* ../lib/standard/kernel.nit:352 */
+      /* ../lib/standard/kernel.nit:355 */
       goto label4;
     }
   }
   label4: while(0);
   /* metamodel/genericity.nit:186 */
-  REGB0 = TAG_Bool(true);
+  REGB0 = TAG_Bool(1);
   REGB2 = REGB0;
   goto label3;
   label3: while(0);
   stack_frame_head = fra.me.prev;
   return REGB2;
 }
+static const char LOCATE_metamodel___genericity___MMTypeGeneric___init[] = "genericity::MMTypeGeneric::init";
 void metamodel___genericity___MMTypeGeneric___init(val_t p0, val_t p1, val_t p2, int* init_table){
   int itpos0 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_metamodel___genericity___MMTypeGeneric].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
@@ -1409,6 +1428,7 @@ void metamodel___genericity___MMTypeGeneric___init(val_t p0, val_t p1, val_t p2,
   init_table[itpos0] = 1;
   return;
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___def_class[] = "genericity::MMTypeFormalParameter::def_class";
 val_t metamodel___genericity___MMTypeFormalParameter___def_class(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -1432,6 +1452,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___def_class(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___position[] = "genericity::MMTypeFormalParameter::position";
 val_t metamodel___genericity___MMTypeFormalParameter___position(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -1455,6 +1476,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___position(val_t p0){
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___mmmodule[] = "genericity::MMTypeFormalParameter::(static_type::MMType::mmmodule)";
 val_t metamodel___genericity___MMTypeFormalParameter___mmmodule(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -1481,6 +1503,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___mmmodule(val_t p0){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___for_module[] = "genericity::MMTypeFormalParameter::(static_type::MMType::for_module)";
 val_t metamodel___genericity___MMTypeFormalParameter___for_module(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
   val_t REGB0;
@@ -1530,6 +1553,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___for_module(val_t p0, val_
   stack_frame_head = fra.me.prev;
   return fra.me.REG[2];
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___upcast_for[] = "genericity::MMTypeFormalParameter::(static_type::MMType::upcast_for)";
 val_t metamodel___genericity___MMTypeFormalParameter___upcast_for(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t REGB0;
@@ -1557,6 +1581,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___upcast_for(val_t p0, val_
   stack_frame_head = fra.me.prev;
   return fra.me.REG[1];
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___bound__eq[] = "genericity::MMTypeFormalParameter::bound=";
 void metamodel___genericity___MMTypeFormalParameter___bound__eq(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
@@ -1581,7 +1606,7 @@ void metamodel___genericity___MMTypeFormalParameter___bound__eq(val_t p0, val_t
   } else {
     REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
     if (UNTAG_Bool(REGB1)) {
-      REGB1 = TAG_Bool(false);
+      REGB1 = TAG_Bool(0);
       REGB0 = REGB1;
     } else {
       REGB1 = CALL_standard___kernel___Object_____eqeq(fra.me.REG[2])(fra.me.REG[2], NIT_NULL);
@@ -1597,6 +1622,7 @@ void metamodel___genericity___MMTypeFormalParameter___bound__eq(val_t p0, val_t
   stack_frame_head = fra.me.prev;
   return;
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___adapt_to[] = "genericity::MMTypeFormalParameter::(static_type::MMType::adapt_to)";
 val_t metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[2];} fra;
   val_t REGB0;
@@ -1637,7 +1663,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0, val_t
   } else {
     nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
   }
-  /* ../lib/standard/kernel.nit:233 */
+  /* ../lib/standard/kernel.nit:236 */
   REGB1 = TAG_Bool(UNTAG_Int(REGB0)>=UNTAG_Int(REGB1));
   /* ../lib/standard/collection/array.nit:280 */
   if (UNTAG_Bool(REGB1)) {
@@ -1652,11 +1678,11 @@ val_t metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0, val_t
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:232 */
+    /* ../lib/standard/kernel.nit:235 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
   } else {
     /* ../lib/standard/collection/array.nit:280 */
-    REGB2 = TAG_Bool(false);
+    REGB2 = TAG_Bool(0);
     REGB1 = REGB2;
   }
   if (UNTAG_Bool(REGB1)) {
@@ -1680,6 +1706,7 @@ val_t metamodel___genericity___MMTypeFormalParameter___adapt_to(val_t p0, val_t
   stack_frame_head = fra.me.prev;
   return fra.me.REG[2];
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___with_bound[] = "genericity::MMTypeFormalParameter::with_bound";
 void metamodel___genericity___MMTypeFormalParameter___with_bound(val_t p0, val_t p1, val_t p2, val_t p3, val_t p4, int* init_table){
   int itpos1 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_metamodel___genericity___MMTypeFormalParameter].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
@@ -1710,6 +1737,7 @@ void metamodel___genericity___MMTypeFormalParameter___with_bound(val_t p0, val_t
   init_table[itpos1] = 1;
   return;
 }
+static const char LOCATE_metamodel___genericity___MMTypeFormalParameter___init[] = "genericity::MMTypeFormalParameter::init";
 void metamodel___genericity___MMTypeFormalParameter___init(val_t p0, val_t p1, val_t p2, val_t p3, int* init_table){
   int itpos2 = VAL2OBJ(p0)->vft[INIT_TABLE_POS_metamodel___genericity___MMTypeFormalParameter].i;
   struct {struct stack_frame_t me; val_t MORE_REG[3];} fra;
@@ -1743,6 +1771,7 @@ void metamodel___genericity___MMTypeFormalParameter___init(val_t p0, val_t p1, v
   init_table[itpos2] = 1;
   return;
 }
+static const char LOCATE_metamodel___genericity___MMTypeNone___is_generic[] = "genericity::MMTypeNone::(genericity::MMType::is_generic)";
 val_t metamodel___genericity___MMTypeNone___is_generic(val_t p0){
   struct {struct stack_frame_t me;} fra;
   val_t REGB0;
@@ -1757,12 +1786,13 @@ val_t metamodel___genericity___MMTypeNone___is_generic(val_t p0){
   fra.me.REG[0] = NIT_NULL;
   fra.me.REG[0] = p0;
   /* metamodel/genericity.nit:251 */
-  REGB0 = TAG_Bool(false);
+  REGB0 = TAG_Bool(0);
   goto label1;
   label1: while(0);
   stack_frame_head = fra.me.prev;
   return REGB0;
 }
+static const char LOCATE_metamodel___genericity___MMTypeNone___for_module[] = "genericity::MMTypeNone::(static_type::MMType::for_module)";
 val_t metamodel___genericity___MMTypeNone___for_module(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;
@@ -1783,6 +1813,7 @@ val_t metamodel___genericity___MMTypeNone___for_module(val_t p0, val_t p1){
   stack_frame_head = fra.me.prev;
   return fra.me.REG[0];
 }
+static const char LOCATE_metamodel___genericity___MMTypeNone___adapt_to[] = "genericity::MMTypeNone::(static_type::MMType::adapt_to)";
 val_t metamodel___genericity___MMTypeNone___adapt_to(val_t p0, val_t p1){
   struct {struct stack_frame_t me; val_t MORE_REG[1];} fra;
   val_t tmp;