c_src : Regenerated c_src to prevent use of String contructors
[nit.git] / c_src / native_interface___frontier._sep.c
index dae1caf..365adaa 100644 (file)
@@ -143,7 +143,7 @@ void native_interface___frontier___NiVariable___prepare_for_nit(val_t p0, val_t
     if (!once_value_1) {
       fra.me.REG[4] = BOX_NativeString("val_t ");
       REGB0 = TAG_Int(6);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_1 = fra.me.REG[4];
       register_static_object(&once_value_1);
     } else fra.me.REG[4] = once_value_1;
@@ -154,7 +154,7 @@ void native_interface___frontier___NiVariable___prepare_for_nit(val_t p0, val_t
     if (!once_value_2) {
       fra.me.REG[4] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_2 = fra.me.REG[4];
       register_static_object(&once_value_2);
     } else fra.me.REG[4] = once_value_2;
@@ -169,7 +169,7 @@ void native_interface___frontier___NiVariable___prepare_for_nit(val_t p0, val_t
     if (!once_value_3) {
       fra.me.REG[2] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_3 = fra.me.REG[2];
       register_static_object(&once_value_3);
     } else fra.me.REG[2] = once_value_3;
@@ -183,7 +183,7 @@ void native_interface___frontier___NiVariable___prepare_for_nit(val_t p0, val_t
     if (!once_value_4) {
       fra.me.REG[0] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_4 = fra.me.REG[0];
       register_static_object(&once_value_4);
     } else fra.me.REG[0] = once_value_4;
@@ -232,7 +232,7 @@ void native_interface___frontier___NiVariable___prepare_for_c(val_t p0, val_t p1
     if (!once_value_1) {
       fra.me.REG[2] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_1 = fra.me.REG[2];
       register_static_object(&once_value_1);
     } else fra.me.REG[2] = once_value_1;
@@ -246,7 +246,7 @@ void native_interface___frontier___NiVariable___prepare_for_c(val_t p0, val_t p1
     if (!once_value_2) {
       fra.me.REG[0] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_2 = fra.me.REG[0];
       register_static_object(&once_value_2);
     } else fra.me.REG[0] = once_value_2;
@@ -335,7 +335,7 @@ val_t native_interface___frontier___NiVariable___as_arg_to_nit(val_t p0){
       if (!once_value_2) {
         fra.me.REG[2] = BOX_NativeString("");
         REGB0 = TAG_Int(0);
-        fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+        fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
         once_value_2 = fra.me.REG[2];
         register_static_object(&once_value_2);
       } else fra.me.REG[2] = once_value_2;
@@ -346,7 +346,7 @@ val_t native_interface___frontier___NiVariable___as_arg_to_nit(val_t p0){
       if (!once_value_3) {
         fra.me.REG[0] = BOX_NativeString("->ref.val");
         REGB0 = TAG_Int(9);
-        fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+        fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
         once_value_3 = fra.me.REG[0];
         register_static_object(&once_value_3);
       } else fra.me.REG[0] = once_value_3;
@@ -457,7 +457,7 @@ val_t native_interface___frontier___MMParam___ni_to_name(val_t p0){
   if (!once_value_1) {
     fra.me.REG[2] = BOX_NativeString("trans___");
     REGB0 = TAG_Int(8);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_1 = fra.me.REG[2];
     register_static_object(&once_value_1);
   } else fra.me.REG[2] = once_value_1;
@@ -469,7 +469,7 @@ val_t native_interface___frontier___MMParam___ni_to_name(val_t p0){
   if (!once_value_2) {
     fra.me.REG[0] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_2 = fra.me.REG[0];
     register_static_object(&once_value_2);
   } else fra.me.REG[0] = once_value_2;
@@ -520,7 +520,7 @@ val_t native_interface___frontier___ReceiverVariable___ni_from_name(val_t p0){
   if (!once_value_1) {
     fra.me.REG[0] = BOX_NativeString("recv");
     REGB0 = TAG_Int(4);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_1 = fra.me.REG[0];
     register_static_object(&once_value_1);
   } else fra.me.REG[0] = once_value_1;
@@ -549,7 +549,7 @@ val_t native_interface___frontier___ReceiverVariable___ni_to_name(val_t p0){
   if (!once_value_1) {
     fra.me.REG[0] = BOX_NativeString("trans_recv");
     REGB0 = TAG_Int(10);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_1 = fra.me.REG[0];
     register_static_object(&once_value_1);
   } else fra.me.REG[0] = once_value_1;
@@ -648,7 +648,7 @@ val_t native_interface___frontier___ReturnVariable___ni_from_name(val_t p0){
   if (!once_value_1) {
     fra.me.REG[0] = BOX_NativeString("orig_return");
     REGB0 = TAG_Int(11);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_1 = fra.me.REG[0];
     register_static_object(&once_value_1);
   } else fra.me.REG[0] = once_value_1;
@@ -677,7 +677,7 @@ val_t native_interface___frontier___ReturnVariable___ni_to_name(val_t p0){
   if (!once_value_1) {
     fra.me.REG[0] = BOX_NativeString("trans_return");
     REGB0 = TAG_Int(12);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_1 = fra.me.REG[0];
     register_static_object(&once_value_1);
   } else fra.me.REG[0] = once_value_1;
@@ -785,7 +785,7 @@ void native_interface___frontier___ReturnVariable___prepare_for_c(val_t p0, val_
   if (!once_value_1) {
     fra.me.REG[4] = BOX_NativeString("val_t ");
     REGB0 = TAG_Int(6);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_1 = fra.me.REG[4];
     register_static_object(&once_value_1);
   } else fra.me.REG[4] = once_value_1;
@@ -796,7 +796,7 @@ void native_interface___frontier___ReturnVariable___prepare_for_c(val_t p0, val_
   if (!once_value_2) {
     fra.me.REG[4] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_2 = fra.me.REG[4];
     register_static_object(&once_value_2);
   } else fra.me.REG[4] = once_value_2;
@@ -844,7 +844,7 @@ void native_interface___frontier___ReturnVariable___prepare_for_nit(val_t p0, va
   if (!once_value_1) {
     fra.me.REG[2] = BOX_NativeString("val_t ");
     REGB0 = TAG_Int(6);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_1 = fra.me.REG[2];
     register_static_object(&once_value_1);
   } else fra.me.REG[2] = once_value_1;
@@ -855,7 +855,7 @@ void native_interface___frontier___ReturnVariable___prepare_for_nit(val_t p0, va
   if (!once_value_2) {
     fra.me.REG[0] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_2 = fra.me.REG[0];
     register_static_object(&once_value_2);
   } else fra.me.REG[0] = once_value_2;
@@ -918,7 +918,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_1) {
     fra.me.REG[4] = BOX_NativeString("#include \"");
     REGB0 = TAG_Int(10);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_1 = fra.me.REG[4];
     register_static_object(&once_value_1);
   } else fra.me.REG[4] = once_value_1;
@@ -930,7 +930,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_2) {
     fra.me.REG[4] = BOX_NativeString("._nitni.h\"\n");
     REGB0 = TAG_Int(11);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_2 = fra.me.REG[4];
     register_static_object(&once_value_2);
   } else fra.me.REG[4] = once_value_2;
@@ -943,7 +943,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_3) {
     fra.me.REG[2] = BOX_NativeString("#include <nit_common.h>\n");
     REGB0 = TAG_Int(24);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_3 = fra.me.REG[2];
     register_static_object(&once_value_3);
   } else fra.me.REG[2] = once_value_3;
@@ -956,7 +956,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_4) {
     fra.me.REG[4] = BOX_NativeString("#include \"");
     REGB0 = TAG_Int(10);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_4 = fra.me.REG[4];
     register_static_object(&once_value_4);
   } else fra.me.REG[4] = once_value_4;
@@ -968,7 +968,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_5) {
     fra.me.REG[4] = BOX_NativeString("\"\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_5 = fra.me.REG[4];
     register_static_object(&once_value_5);
   } else fra.me.REG[4] = once_value_5;
@@ -982,7 +982,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_6) {
     fra.me.REG[2] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_6 = fra.me.REG[2];
     register_static_object(&once_value_6);
   } else fra.me.REG[2] = once_value_6;
@@ -995,7 +995,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_7) {
     fra.me.REG[2] = BOX_NativeString("_NITNI_H");
     REGB0 = TAG_Int(8);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_7 = fra.me.REG[2];
     register_static_object(&once_value_7);
   } else fra.me.REG[2] = once_value_7;
@@ -1009,7 +1009,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_8) {
     fra.me.REG[5] = BOX_NativeString("#ifndef ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_8 = fra.me.REG[5];
     register_static_object(&once_value_8);
   } else fra.me.REG[5] = once_value_8;
@@ -1019,7 +1019,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_9) {
     fra.me.REG[5] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_9 = fra.me.REG[5];
     register_static_object(&once_value_9);
   } else fra.me.REG[5] = once_value_9;
@@ -1034,7 +1034,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_10) {
     fra.me.REG[5] = BOX_NativeString("#define ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_10 = fra.me.REG[5];
     register_static_object(&once_value_10);
   } else fra.me.REG[5] = once_value_10;
@@ -1044,7 +1044,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_11) {
     fra.me.REG[3] = BOX_NativeString("\n\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_11 = fra.me.REG[3];
     register_static_object(&once_value_11);
   } else fra.me.REG[3] = once_value_11;
@@ -1058,7 +1058,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_12) {
     fra.me.REG[4] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_12 = fra.me.REG[4];
     register_static_object(&once_value_12);
   } else fra.me.REG[4] = once_value_12;
@@ -1070,7 +1070,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_13) {
     fra.me.REG[4] = BOX_NativeString("/");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_13 = fra.me.REG[4];
     register_static_object(&once_value_13);
   } else fra.me.REG[4] = once_value_13;
@@ -1082,7 +1082,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_14) {
     fra.me.REG[4] = BOX_NativeString(".nit.h");
     REGB0 = TAG_Int(6);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_14 = fra.me.REG[4];
     register_static_object(&once_value_14);
   } else fra.me.REG[4] = once_value_14;
@@ -1099,7 +1099,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_15) {
       fra.me.REG[3] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_15 = fra.me.REG[3];
       register_static_object(&once_value_15);
     } else fra.me.REG[3] = once_value_15;
@@ -1111,7 +1111,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_16) {
       fra.me.REG[3] = BOX_NativeString("/");
       REGB0 = TAG_Int(1);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_16 = fra.me.REG[3];
       register_static_object(&once_value_16);
     } else fra.me.REG[3] = once_value_16;
@@ -1123,7 +1123,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_17) {
       fra.me.REG[3] = BOX_NativeString("_nit.h");
       REGB0 = TAG_Int(6);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_17 = fra.me.REG[3];
       register_static_object(&once_value_17);
     } else fra.me.REG[3] = once_value_17;
@@ -1139,7 +1139,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_18) {
       fra.me.REG[4] = BOX_NativeString("..");
       REGB0 = TAG_Int(2);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_18 = fra.me.REG[4];
       register_static_object(&once_value_18);
     } else fra.me.REG[4] = once_value_18;
@@ -1153,7 +1153,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_19) {
       fra.me.REG[5] = BOX_NativeString("#include \"");
       REGB0 = TAG_Int(10);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_19 = fra.me.REG[5];
       register_static_object(&once_value_19);
     } else fra.me.REG[5] = once_value_19;
@@ -1163,7 +1163,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_20) {
       fra.me.REG[5] = BOX_NativeString("\"\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_20 = fra.me.REG[5];
       register_static_object(&once_value_20);
     } else fra.me.REG[5] = once_value_20;
@@ -1178,7 +1178,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_21) {
       fra.me.REG[5] = BOX_NativeString("#include \"");
       REGB0 = TAG_Int(10);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_21 = fra.me.REG[5];
       register_static_object(&once_value_21);
     } else fra.me.REG[5] = once_value_21;
@@ -1188,7 +1188,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_22) {
       fra.me.REG[2] = BOX_NativeString("\"\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_22 = fra.me.REG[2];
       register_static_object(&once_value_22);
     } else fra.me.REG[2] = once_value_22;
@@ -1207,7 +1207,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_23) {
       fra.me.REG[2] = BOX_NativeString("#include <");
       REGB0 = TAG_Int(10);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_23 = fra.me.REG[2];
       register_static_object(&once_value_23);
     } else fra.me.REG[2] = once_value_23;
@@ -1218,7 +1218,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
     if (!once_value_24) {
       fra.me.REG[2] = BOX_NativeString("._ffi.h>\n");
       REGB0 = TAG_Int(9);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_24 = fra.me.REG[2];
       register_static_object(&once_value_24);
     } else fra.me.REG[2] = once_value_24;
@@ -1237,7 +1237,7 @@ void native_interface___frontier___MMSrcModule___compile_frontier(val_t p0, val_
   if (!once_value_27) {
     fra.me.REG[0] = BOX_NativeString("#endif\n");
     REGB0 = TAG_Int(7);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_27 = fra.me.REG[0];
     register_static_object(&once_value_27);
   } else fra.me.REG[0] = once_value_27;
@@ -1492,7 +1492,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_1) {
     fra.me.REG[4] = BOX_NativeString("\n/* friendly for super of ");
     REGB0 = TAG_Int(26);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_1 = fra.me.REG[4];
     register_static_object(&once_value_1);
   } else fra.me.REG[4] = once_value_1;
@@ -1503,7 +1503,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_2) {
     fra.me.REG[4] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_2 = fra.me.REG[4];
     register_static_object(&once_value_2);
   } else fra.me.REG[4] = once_value_2;
@@ -1518,7 +1518,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_3) {
     fra.me.REG[4] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_3 = fra.me.REG[4];
     register_static_object(&once_value_3);
   } else fra.me.REG[4] = once_value_3;
@@ -1530,7 +1530,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_4) {
     fra.me.REG[4] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_4 = fra.me.REG[4];
     register_static_object(&once_value_4);
   } else fra.me.REG[4] = once_value_4;
@@ -1545,7 +1545,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_5) {
     fra.me.REG[4] = BOX_NativeString("#ifndef ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_5 = fra.me.REG[4];
     register_static_object(&once_value_5);
   } else fra.me.REG[4] = once_value_5;
@@ -1556,7 +1556,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_6) {
     fra.me.REG[4] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_6 = fra.me.REG[4];
     register_static_object(&once_value_6);
   } else fra.me.REG[4] = once_value_6;
@@ -1571,7 +1571,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_7) {
     fra.me.REG[4] = BOX_NativeString("#define ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_7 = fra.me.REG[4];
     register_static_object(&once_value_7);
   } else fra.me.REG[4] = once_value_7;
@@ -1582,7 +1582,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_8) {
     fra.me.REG[4] = BOX_NativeString(" ");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_8 = fra.me.REG[4];
     register_static_object(&once_value_8);
   } else fra.me.REG[4] = once_value_8;
@@ -1594,7 +1594,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_9) {
     fra.me.REG[4] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_9 = fra.me.REG[4];
     register_static_object(&once_value_9);
   } else fra.me.REG[4] = once_value_9;
@@ -1607,7 +1607,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_10) {
     fra.me.REG[3] = BOX_NativeString("#endif\n");
     REGB0 = TAG_Int(7);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_10 = fra.me.REG[3];
     register_static_object(&once_value_10);
   } else fra.me.REG[3] = once_value_10;
@@ -1620,7 +1620,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_11) {
     fra.me.REG[4] = BOX_NativeString("\n/* friendly for super of ");
     REGB0 = TAG_Int(26);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_11 = fra.me.REG[4];
     register_static_object(&once_value_11);
   } else fra.me.REG[4] = once_value_11;
@@ -1631,7 +1631,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_12) {
     fra.me.REG[4] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_12 = fra.me.REG[4];
     register_static_object(&once_value_12);
   } else fra.me.REG[4] = once_value_12;
@@ -1660,20 +1660,20 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   }
   fra.me.REG[4] = CALL_metamodel___static_type___MMSignature___params(fra.me.REG[4])(fra.me.REG[4]);
   CALL_standard___collection___abstract_collection___SimpleCollection___add_all(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[4]);
-  /* ../lib/standard/collection/array.nit:266 */
+  /* ../lib/standard/collection/array.nit:267 */
   fra.me.REG[4] = fra.me.REG[3];
-  /* ../lib/standard/collection/array.nit:269 */
-  REGB0 = TAG_Int(0);
   /* ../lib/standard/collection/array.nit:270 */
+  REGB0 = TAG_Int(0);
+  /* ../lib/standard/collection/array.nit:271 */
   REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 270);
+    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 271);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[4]);
-  /* ../lib/standard/collection/array.nit:271 */
-  fra.me.REG[5] = ATTR_standard___collection___array___Array____items(fra.me.REG[4]);
   /* ../lib/standard/collection/array.nit:272 */
+  fra.me.REG[5] = ATTR_standard___collection___array___Array____items(fra.me.REG[4]);
+  /* ../lib/standard/collection/array.nit:273 */
   while(1) {
     /* ../lib/standard/collection/array.nit:24 */
     REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[4])!=NIT_NULL);
@@ -1687,45 +1687,45 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:235 */
+    /* ../lib/standard/kernel.nit:242 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/collection/array.nit:272 */
+    /* ../lib/standard/collection/array.nit:273 */
     if (UNTAG_Bool(REGB1)) {
-      /* ../lib/standard/collection/array.nit:273 */
+      /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
       if (UNTAG_Bool(REGB1)) {
-        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 273);
+        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 274);
       }
-      /* ../lib/standard/collection/array.nit:724 */
+      /* ../lib/standard/collection/array.nit:725 */
       fra.me.REG[6] = ((Nit_NativeArray)fra.me.REG[5])->val[UNTAG_Int(REGB0)];
       /* native_interface/frontier.nit:229 */
       CALL_native_interface___frontier___NiVariable___prepare_for_nit(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[2]);
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:238 */
+      /* ../lib/standard/kernel.nit:245 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB0 = REGB1;
     } else {
-      /* ../lib/standard/collection/array.nit:272 */
+      /* ../lib/standard/collection/array.nit:273 */
       goto label13;
     }
   }
   label13: while(0);
   /* native_interface/frontier.nit:232 */
   fra.me.REG[5] = NEW_Array_standard___collection___array___Array___init();
-  /* ../lib/standard/collection/array.nit:269 */
-  REGB0 = TAG_Int(0);
   /* ../lib/standard/collection/array.nit:270 */
+  REGB0 = TAG_Int(0);
+  /* ../lib/standard/collection/array.nit:271 */
   REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 270);
+    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 271);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3]);
-  /* ../lib/standard/collection/array.nit:271 */
-  fra.me.REG[4] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
   /* ../lib/standard/collection/array.nit:272 */
+  fra.me.REG[4] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
+  /* ../lib/standard/collection/array.nit:273 */
   while(1) {
     /* ../lib/standard/collection/array.nit:24 */
     REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
@@ -1739,28 +1739,28 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:235 */
+    /* ../lib/standard/kernel.nit:242 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/collection/array.nit:272 */
+    /* ../lib/standard/collection/array.nit:273 */
     if (UNTAG_Bool(REGB1)) {
-      /* ../lib/standard/collection/array.nit:273 */
+      /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Bool(fra.me.REG[4]==NIT_NULL);
       if (UNTAG_Bool(REGB1)) {
-        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 273);
+        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 274);
       }
-      /* ../lib/standard/collection/array.nit:724 */
+      /* ../lib/standard/collection/array.nit:725 */
       fra.me.REG[6] = ((Nit_NativeArray)fra.me.REG[4])->val[UNTAG_Int(REGB0)];
       /* native_interface/frontier.nit:233 */
       fra.me.REG[6] = CALL_native_interface___frontier___NiVariable___as_arg_to_nit(fra.me.REG[6])(fra.me.REG[6]);
       CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[6]);
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:238 */
+      /* ../lib/standard/kernel.nit:245 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB0 = REGB1;
     } else {
-      /* ../lib/standard/collection/array.nit:272 */
+      /* ../lib/standard/collection/array.nit:273 */
       goto label14;
     }
   }
@@ -1801,7 +1801,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_15) {
       fra.me.REG[7] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_15 = fra.me.REG[7];
       register_static_object(&once_value_15);
     } else fra.me.REG[7] = once_value_15;
@@ -1816,7 +1816,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_16) {
       fra.me.REG[7] = BOX_NativeString(" = ");
       REGB0 = TAG_Int(3);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_16 = fra.me.REG[7];
       register_static_object(&once_value_16);
     } else fra.me.REG[7] = once_value_16;
@@ -1831,7 +1831,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_17) {
     fra.me.REG[7] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+    fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
     once_value_17 = fra.me.REG[7];
     register_static_object(&once_value_17);
   } else fra.me.REG[7] = once_value_17;
@@ -1842,7 +1842,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_18) {
     fra.me.REG[7] = BOX_NativeString("( ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+    fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
     once_value_18 = fra.me.REG[7];
     register_static_object(&once_value_18);
   } else fra.me.REG[7] = once_value_18;
@@ -1859,7 +1859,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_19) {
     fra.me.REG[0] = BOX_NativeString(" )");
     REGB0 = TAG_Int(2);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_19 = fra.me.REG[0];
     register_static_object(&once_value_19);
   } else fra.me.REG[0] = once_value_19;
@@ -1873,7 +1873,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_20) {
     fra.me.REG[0] = BOX_NativeString("( ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_20 = fra.me.REG[0];
     register_static_object(&once_value_20);
   } else fra.me.REG[0] = once_value_20;
@@ -1882,7 +1882,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_21) {
     fra.me.REG[0] = BOX_NativeString(", ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_21 = fra.me.REG[0];
     register_static_object(&once_value_21);
   } else fra.me.REG[0] = once_value_21;
@@ -1892,7 +1892,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
   if (!once_value_22) {
     fra.me.REG[0] = BOX_NativeString(" );\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_22 = fra.me.REG[0];
     register_static_object(&once_value_22);
   } else fra.me.REG[0] = once_value_22;
@@ -1926,7 +1926,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_23) {
       fra.me.REG[0] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_23 = fra.me.REG[0];
       register_static_object(&once_value_23);
     } else fra.me.REG[0] = once_value_23;
@@ -1952,7 +1952,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_24) {
       fra.me.REG[7] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_24 = fra.me.REG[7];
       register_static_object(&once_value_24);
     } else fra.me.REG[7] = once_value_24;
@@ -1967,7 +1967,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_25) {
       fra.me.REG[7] = BOX_NativeString("return ");
       REGB0 = TAG_Int(7);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_25 = fra.me.REG[7];
       register_static_object(&once_value_25);
     } else fra.me.REG[7] = once_value_25;
@@ -1982,7 +1982,7 @@ void native_interface___frontier___MMSrcMethod___compile_super_to_frontier(val_t
     if (!once_value_26) {
       fra.me.REG[4] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_26 = fra.me.REG[4];
       register_static_object(&once_value_26);
     } else fra.me.REG[4] = once_value_26;
@@ -2126,7 +2126,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_1) {
     fra.me.REG[6] = BOX_NativeString("\n/* out/indirect function for ");
     REGB0 = TAG_Int(30);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_1 = fra.me.REG[6];
     register_static_object(&once_value_1);
   } else fra.me.REG[6] = once_value_1;
@@ -2137,7 +2137,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_2) {
     fra.me.REG[6] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_2 = fra.me.REG[6];
     register_static_object(&once_value_2);
   } else fra.me.REG[6] = once_value_2;
@@ -2152,7 +2152,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_3) {
     fra.me.REG[6] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_3 = fra.me.REG[6];
     register_static_object(&once_value_3);
   } else fra.me.REG[6] = once_value_3;
@@ -2163,7 +2163,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_4) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_4 = fra.me.REG[6];
     register_static_object(&once_value_4);
   } else fra.me.REG[6] = once_value_4;
@@ -2178,7 +2178,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_5) {
     fra.me.REG[6] = BOX_NativeString("/* out/indirect function for ");
     REGB0 = TAG_Int(29);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_5 = fra.me.REG[6];
     register_static_object(&once_value_5);
   } else fra.me.REG[6] = once_value_5;
@@ -2189,7 +2189,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_6) {
     fra.me.REG[6] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_6 = fra.me.REG[6];
     register_static_object(&once_value_6);
   } else fra.me.REG[6] = once_value_6;
@@ -2291,7 +2291,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_9) {
       fra.me.REG[8] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[8] = NEW_String_standard___string___String___with_native(fra.me.REG[8], REGB0);
+      fra.me.REG[8] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[8])(fra.me.REG[8], REGB0);
       once_value_9 = fra.me.REG[8];
       register_static_object(&once_value_9);
     } else fra.me.REG[8] = once_value_9;
@@ -2306,7 +2306,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_10) {
       fra.me.REG[8] = BOX_NativeString(" = ");
       REGB0 = TAG_Int(3);
-      fra.me.REG[8] = NEW_String_standard___string___String___with_native(fra.me.REG[8], REGB0);
+      fra.me.REG[8] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[8])(fra.me.REG[8], REGB0);
       once_value_10 = fra.me.REG[8];
       register_static_object(&once_value_10);
     } else fra.me.REG[8] = once_value_10;
@@ -2321,7 +2321,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_11) {
     fra.me.REG[8] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[8] = NEW_String_standard___string___String___with_native(fra.me.REG[8], REGB0);
+    fra.me.REG[8] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[8])(fra.me.REG[8], REGB0);
     once_value_11 = fra.me.REG[8];
     register_static_object(&once_value_11);
   } else fra.me.REG[8] = once_value_11;
@@ -2337,7 +2337,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_12) {
     fra.me.REG[2] = BOX_NativeString("( ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_12 = fra.me.REG[2];
     register_static_object(&once_value_12);
   } else fra.me.REG[2] = once_value_12;
@@ -2346,7 +2346,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_13) {
     fra.me.REG[2] = BOX_NativeString(", ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_13 = fra.me.REG[2];
     register_static_object(&once_value_13);
   } else fra.me.REG[2] = once_value_13;
@@ -2356,7 +2356,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_14) {
     fra.me.REG[2] = BOX_NativeString(" );\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_14 = fra.me.REG[2];
     register_static_object(&once_value_14);
   } else fra.me.REG[2] = once_value_14;
@@ -2390,7 +2390,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_15) {
       fra.me.REG[2] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_15 = fra.me.REG[2];
       register_static_object(&once_value_15);
     } else fra.me.REG[2] = once_value_15;
@@ -2416,7 +2416,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_16) {
       fra.me.REG[0] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_16 = fra.me.REG[0];
       register_static_object(&once_value_16);
     } else fra.me.REG[0] = once_value_16;
@@ -2430,7 +2430,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
   if (!once_value_17) {
     fra.me.REG[4] = BOX_NativeString("nitni_local_ref_clean(  );\n");
     REGB0 = TAG_Int(27);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_17 = fra.me.REG[4];
     register_static_object(&once_value_17);
   } else fra.me.REG[4] = once_value_17;
@@ -2458,7 +2458,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_18) {
       fra.me.REG[0] = BOX_NativeString("return ");
       REGB0 = TAG_Int(7);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_18 = fra.me.REG[0];
       register_static_object(&once_value_18);
     } else fra.me.REG[0] = once_value_18;
@@ -2473,7 +2473,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
     if (!once_value_19) {
       fra.me.REG[3] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_19 = fra.me.REG[3];
       register_static_object(&once_value_19);
     } else fra.me.REG[3] = once_value_19;
@@ -2545,7 +2545,7 @@ void native_interface___frontier___MMSrcMethod___compile_out_to_frontier(val_t p
       if (!once_value_8) {
         fra.me.REG[0] = BOX_NativeString("NULL");
         REGB0 = TAG_Int(4);
-        fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+        fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
         once_value_8 = fra.me.REG[0];
         register_static_object(&once_value_8);
       } else fra.me.REG[0] = once_value_8;
@@ -2727,18 +2727,18 @@ void native_interface___frontier___MMSignature___compile_frontier(val_t p0, val_
   CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[2])(fra.me.REG[2], fra.me.REG[3]);
   /* native_interface/frontier.nit:347 */
   fra.me.REG[3] = CALL_metamodel___static_type___MMSignature___params(fra.me.REG[0])(fra.me.REG[0]);
-  /* ../lib/standard/collection/array.nit:269 */
-  REGB0 = TAG_Int(0);
   /* ../lib/standard/collection/array.nit:270 */
+  REGB0 = TAG_Int(0);
+  /* ../lib/standard/collection/array.nit:271 */
   REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 270);
+    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 271);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3]);
-  /* ../lib/standard/collection/array.nit:271 */
-  fra.me.REG[2] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
   /* ../lib/standard/collection/array.nit:272 */
+  fra.me.REG[2] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
+  /* ../lib/standard/collection/array.nit:273 */
   while(1) {
     /* ../lib/standard/collection/array.nit:24 */
     REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
@@ -2752,30 +2752,30 @@ void native_interface___frontier___MMSignature___compile_frontier(val_t p0, val_
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:235 */
+    /* ../lib/standard/kernel.nit:242 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/collection/array.nit:272 */
+    /* ../lib/standard/collection/array.nit:273 */
     if (UNTAG_Bool(REGB1)) {
-      /* ../lib/standard/collection/array.nit:273 */
+      /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Bool(fra.me.REG[2]==NIT_NULL);
       if (UNTAG_Bool(REGB1)) {
-        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 273);
+        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 274);
       }
-      /* ../lib/standard/collection/array.nit:724 */
+      /* ../lib/standard/collection/array.nit:725 */
       fra.me.REG[4] = ((Nit_NativeArray)fra.me.REG[2])->val[UNTAG_Int(REGB0)];
       /* native_interface/frontier.nit:347 */
       fra.me.REG[5] = CALL_native_interface___frontier___FrontierVisitor___types(fra.me.REG[1])(fra.me.REG[1]);
       fra.me.REG[4] = CALL_metamodel___static_type___MMParam___mmtype(fra.me.REG[4])(fra.me.REG[4]);
       fra.me.REG[4] = CALL_metamodel___type_formal___MMType___direct_type(fra.me.REG[4])(fra.me.REG[4]);
       CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[5])(fra.me.REG[5], fra.me.REG[4]);
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:238 */
+      /* ../lib/standard/kernel.nit:245 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB0 = REGB1;
     } else {
-      /* ../lib/standard/collection/array.nit:272 */
+      /* ../lib/standard/collection/array.nit:273 */
       goto label1;
     }
   }
@@ -3277,7 +3277,7 @@ void native_interface___frontier___FrontierVisitor___write_to_files(val_t p0, va
   if (!once_value_1) {
     fra.me.REG[3] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_1 = fra.me.REG[3];
     register_static_object(&once_value_1);
   } else fra.me.REG[3] = once_value_1;
@@ -3287,7 +3287,7 @@ void native_interface___frontier___FrontierVisitor___write_to_files(val_t p0, va
   if (!once_value_2) {
     fra.me.REG[3] = BOX_NativeString("._nitni.h");
     REGB0 = TAG_Int(9);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_2 = fra.me.REG[3];
     register_static_object(&once_value_2);
   } else fra.me.REG[3] = once_value_2;
@@ -3310,7 +3310,7 @@ void native_interface___frontier___FrontierVisitor___write_to_files(val_t p0, va
   if (!once_value_3) {
     fra.me.REG[5] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_3 = fra.me.REG[5];
     register_static_object(&once_value_3);
   } else fra.me.REG[5] = once_value_3;
@@ -3320,7 +3320,7 @@ void native_interface___frontier___FrontierVisitor___write_to_files(val_t p0, va
   if (!once_value_4) {
     fra.me.REG[1] = BOX_NativeString("._nitni.c");
     REGB0 = TAG_Int(9);
-    fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
+    fra.me.REG[1] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[1])(fra.me.REG[1], REGB0);
     once_value_4 = fra.me.REG[1];
     register_static_object(&once_value_4);
   } else fra.me.REG[1] = once_value_4;
@@ -3423,7 +3423,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_1) {
       fra.me.REG[4] = BOX_NativeString("\n/* Type check for ");
       REGB0 = TAG_Int(19);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_1 = fra.me.REG[4];
       register_static_object(&once_value_1);
     } else fra.me.REG[4] = once_value_1;
@@ -3435,7 +3435,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_2) {
       fra.me.REG[4] = BOX_NativeString(" with ");
       REGB0 = TAG_Int(6);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_2 = fra.me.REG[4];
       register_static_object(&once_value_2);
     } else fra.me.REG[4] = once_value_2;
@@ -3447,7 +3447,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_3) {
       fra.me.REG[4] = BOX_NativeString(" */\n");
       REGB0 = TAG_Int(4);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_3 = fra.me.REG[4];
       register_static_object(&once_value_3);
     } else fra.me.REG[4] = once_value_3;
@@ -3462,7 +3462,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_4) {
       fra.me.REG[4] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_4 = fra.me.REG[4];
       register_static_object(&once_value_4);
     } else fra.me.REG[4] = once_value_4;
@@ -3474,7 +3474,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_5) {
       fra.me.REG[4] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_5 = fra.me.REG[4];
       register_static_object(&once_value_5);
     } else fra.me.REG[4] = once_value_5;
@@ -3489,7 +3489,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_6) {
       fra.me.REG[4] = BOX_NativeString("#ifndef ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_6 = fra.me.REG[4];
       register_static_object(&once_value_6);
     } else fra.me.REG[4] = once_value_6;
@@ -3500,7 +3500,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_7) {
       fra.me.REG[4] = BOX_NativeString("\n");
       REGB0 = TAG_Int(1);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_7 = fra.me.REG[4];
       register_static_object(&once_value_7);
     } else fra.me.REG[4] = once_value_7;
@@ -3515,7 +3515,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_8) {
       fra.me.REG[4] = BOX_NativeString("#define ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_8 = fra.me.REG[4];
       register_static_object(&once_value_8);
     } else fra.me.REG[4] = once_value_8;
@@ -3526,7 +3526,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_9) {
       fra.me.REG[4] = BOX_NativeString(" ");
       REGB0 = TAG_Int(1);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_9 = fra.me.REG[4];
       register_static_object(&once_value_9);
     } else fra.me.REG[4] = once_value_9;
@@ -3538,7 +3538,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_10) {
       fra.me.REG[4] = BOX_NativeString("\n");
       REGB0 = TAG_Int(1);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_10 = fra.me.REG[4];
       register_static_object(&once_value_10);
     } else fra.me.REG[4] = once_value_10;
@@ -3551,7 +3551,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
     if (!once_value_11) {
       fra.me.REG[3] = BOX_NativeString("#endif\n");
       REGB0 = TAG_Int(7);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_11 = fra.me.REG[3];
       register_static_object(&once_value_11);
     } else fra.me.REG[3] = once_value_11;
@@ -3572,7 +3572,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_12) {
     fra.me.REG[4] = BOX_NativeString("\n/* Cast for ");
     REGB0 = TAG_Int(13);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_12 = fra.me.REG[4];
     register_static_object(&once_value_12);
   } else fra.me.REG[4] = once_value_12;
@@ -3584,7 +3584,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_13) {
     fra.me.REG[4] = BOX_NativeString(" to ");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_13 = fra.me.REG[4];
     register_static_object(&once_value_13);
   } else fra.me.REG[4] = once_value_13;
@@ -3596,7 +3596,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_14) {
     fra.me.REG[4] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_14 = fra.me.REG[4];
     register_static_object(&once_value_14);
   } else fra.me.REG[4] = once_value_14;
@@ -3611,7 +3611,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_15) {
     fra.me.REG[4] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_15 = fra.me.REG[4];
     register_static_object(&once_value_15);
   } else fra.me.REG[4] = once_value_15;
@@ -3623,7 +3623,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_16) {
     fra.me.REG[4] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_16 = fra.me.REG[4];
     register_static_object(&once_value_16);
   } else fra.me.REG[4] = once_value_16;
@@ -3638,7 +3638,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_17) {
     fra.me.REG[4] = BOX_NativeString("#ifndef ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_17 = fra.me.REG[4];
     register_static_object(&once_value_17);
   } else fra.me.REG[4] = once_value_17;
@@ -3649,7 +3649,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_18) {
     fra.me.REG[4] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_18 = fra.me.REG[4];
     register_static_object(&once_value_18);
   } else fra.me.REG[4] = once_value_18;
@@ -3664,7 +3664,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_19) {
     fra.me.REG[4] = BOX_NativeString("#define ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_19 = fra.me.REG[4];
     register_static_object(&once_value_19);
   } else fra.me.REG[4] = once_value_19;
@@ -3675,7 +3675,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_20) {
     fra.me.REG[4] = BOX_NativeString(" ");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_20 = fra.me.REG[4];
     register_static_object(&once_value_20);
   } else fra.me.REG[4] = once_value_20;
@@ -3687,7 +3687,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_21) {
     fra.me.REG[4] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_21 = fra.me.REG[4];
     register_static_object(&once_value_21);
   } else fra.me.REG[4] = once_value_21;
@@ -3700,7 +3700,7 @@ void native_interface___frontier___MMImportedCast___compile_to_frontier(val_t p0
   if (!once_value_22) {
     fra.me.REG[2] = BOX_NativeString("#endif\n");
     REGB0 = TAG_Int(7);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_22 = fra.me.REG[2];
     register_static_object(&once_value_22);
   } else fra.me.REG[2] = once_value_22;
@@ -3755,7 +3755,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_1) {
     fra.me.REG[2] = BOX_NativeString("out");
     REGB0 = TAG_Int(3);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_1 = fra.me.REG[2];
     register_static_object(&once_value_1);
   } else fra.me.REG[2] = once_value_1;
@@ -3764,7 +3764,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_2) {
     fra.me.REG[3] = BOX_NativeString("temp");
     REGB0 = TAG_Int(4);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_2 = fra.me.REG[3];
     register_static_object(&once_value_2);
   } else fra.me.REG[3] = once_value_2;
@@ -3776,7 +3776,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_3) {
     fra.me.REG[6] = BOX_NativeString("val_t ");
     REGB0 = TAG_Int(6);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_3 = fra.me.REG[6];
     register_static_object(&once_value_3);
   } else fra.me.REG[6] = once_value_3;
@@ -3786,7 +3786,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_4) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_4 = fra.me.REG[6];
     register_static_object(&once_value_4);
   } else fra.me.REG[6] = once_value_4;
@@ -3805,7 +3805,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_5) {
     fra.me.REG[6] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_5 = fra.me.REG[6];
     register_static_object(&once_value_5);
   } else fra.me.REG[6] = once_value_5;
@@ -3818,7 +3818,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_6) {
     fra.me.REG[7] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+    fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
     once_value_6 = fra.me.REG[7];
     register_static_object(&once_value_6);
   } else fra.me.REG[7] = once_value_6;
@@ -3849,7 +3849,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_7) {
     fra.me.REG[7] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+    fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
     once_value_7 = fra.me.REG[7];
     register_static_object(&once_value_7);
   } else fra.me.REG[7] = once_value_7;
@@ -3861,7 +3861,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_8) {
     fra.me.REG[3] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_8 = fra.me.REG[3];
     register_static_object(&once_value_8);
   } else fra.me.REG[3] = once_value_8;
@@ -3876,7 +3876,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_9) {
     fra.me.REG[3] = BOX_NativeString("return ");
     REGB0 = TAG_Int(7);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_9 = fra.me.REG[3];
     register_static_object(&once_value_9);
   } else fra.me.REG[3] = once_value_9;
@@ -3886,7 +3886,7 @@ val_t native_interface___frontier___MMImportedCast___compile_as(val_t p0, val_t
   if (!once_value_10) {
     fra.me.REG[2] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_10 = fra.me.REG[2];
     register_static_object(&once_value_10);
   } else fra.me.REG[2] = once_value_10;
@@ -3940,7 +3940,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_1) {
     fra.me.REG[2] = BOX_NativeString("temp");
     REGB0 = TAG_Int(4);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_1 = fra.me.REG[2];
     register_static_object(&once_value_1);
   } else fra.me.REG[2] = once_value_1;
@@ -3952,7 +3952,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_2) {
     fra.me.REG[5] = BOX_NativeString("val_t ");
     REGB0 = TAG_Int(6);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_2 = fra.me.REG[5];
     register_static_object(&once_value_2);
   } else fra.me.REG[5] = once_value_2;
@@ -3962,7 +3962,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_3) {
     fra.me.REG[5] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_3 = fra.me.REG[5];
     register_static_object(&once_value_3);
   } else fra.me.REG[5] = once_value_3;
@@ -3977,7 +3977,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_4) {
     fra.me.REG[5] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_4 = fra.me.REG[5];
     register_static_object(&once_value_4);
   } else fra.me.REG[5] = once_value_4;
@@ -3990,7 +3990,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_5) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_5 = fra.me.REG[6];
     register_static_object(&once_value_5);
   } else fra.me.REG[6] = once_value_5;
@@ -4011,7 +4011,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
       if (!once_value_6) {
         fra.me.REG[6] = BOX_NativeString("if ( ! ISNULL(");
         REGB0 = TAG_Int(14);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_6 = fra.me.REG[6];
         register_static_object(&once_value_6);
       } else fra.me.REG[6] = once_value_6;
@@ -4021,7 +4021,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
       if (!once_value_7) {
         fra.me.REG[6] = BOX_NativeString(") ) return 0;\n");
         REGB0 = TAG_Int(14);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_7 = fra.me.REG[6];
         register_static_object(&once_value_7);
       } else fra.me.REG[6] = once_value_7;
@@ -4037,7 +4037,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
       if (!once_value_8) {
         fra.me.REG[6] = BOX_NativeString("if ( ISNULL(");
         REGB0 = TAG_Int(12);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_8 = fra.me.REG[6];
         register_static_object(&once_value_8);
       } else fra.me.REG[6] = once_value_8;
@@ -4047,7 +4047,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
       if (!once_value_9) {
         fra.me.REG[6] = BOX_NativeString(") ) return 0;\n");
         REGB0 = TAG_Int(14);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_9 = fra.me.REG[6];
         register_static_object(&once_value_9);
       } else fra.me.REG[6] = once_value_9;
@@ -4068,7 +4068,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
     if (!once_value_10) {
       fra.me.REG[6] = BOX_NativeString("if ( ! ");
       REGB0 = TAG_Int(7);
-      fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+      fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
       once_value_10 = fra.me.REG[6];
       register_static_object(&once_value_10);
     } else fra.me.REG[6] = once_value_10;
@@ -4080,7 +4080,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
     if (!once_value_11) {
       fra.me.REG[2] = BOX_NativeString(" ) return 0;\n");
       REGB0 = TAG_Int(13);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_11 = fra.me.REG[2];
       register_static_object(&once_value_11);
     } else fra.me.REG[2] = once_value_11;
@@ -4094,7 +4094,7 @@ val_t native_interface___frontier___MMImportedCast___compile_is(val_t p0, val_t
   if (!once_value_12) {
     fra.me.REG[3] = BOX_NativeString("return 1;\n");
     REGB0 = TAG_Int(10);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_12 = fra.me.REG[3];
     register_static_object(&once_value_12);
   } else fra.me.REG[3] = once_value_12;
@@ -4141,7 +4141,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_1) {
     fra.me.REG[5] = BOX_NativeString("if ( ISNULL(");
     REGB0 = TAG_Int(12);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_1 = fra.me.REG[5];
     register_static_object(&once_value_1);
   } else fra.me.REG[5] = once_value_1;
@@ -4151,7 +4151,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_2) {
     fra.me.REG[2] = BOX_NativeString(") ){");
     REGB0 = TAG_Int(4);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_2 = fra.me.REG[2];
     register_static_object(&once_value_2);
   } else fra.me.REG[2] = once_value_2;
@@ -4166,7 +4166,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_3) {
     fra.me.REG[2] = BOX_NativeString("\tfprintf( stderr, \"Casting from ");
     REGB0 = TAG_Int(32);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_3 = fra.me.REG[2];
     register_static_object(&once_value_3);
   } else fra.me.REG[2] = once_value_3;
@@ -4178,7 +4178,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_4) {
     fra.me.REG[2] = BOX_NativeString(" to ");
     REGB0 = TAG_Int(4);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_4 = fra.me.REG[2];
     register_static_object(&once_value_4);
   } else fra.me.REG[2] = once_value_4;
@@ -4190,7 +4190,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_5) {
     fra.me.REG[0] = BOX_NativeString(" failed because value is null.\" );\n");
     REGB0 = TAG_Int(35);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_5 = fra.me.REG[0];
     register_static_object(&once_value_5);
   } else fra.me.REG[0] = once_value_5;
@@ -4203,7 +4203,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_6) {
     fra.me.REG[4] = BOX_NativeString("\tabort();\n");
     REGB0 = TAG_Int(10);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_6 = fra.me.REG[4];
     register_static_object(&once_value_6);
   } else fra.me.REG[4] = once_value_6;
@@ -4214,7 +4214,7 @@ void native_interface___frontier___MMImportedCast___compile_check_is_not_null(va
   if (!once_value_7) {
     fra.me.REG[4] = BOX_NativeString("}");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_7 = fra.me.REG[4];
     register_static_object(&once_value_7);
   } else fra.me.REG[4] = once_value_7;
@@ -4308,7 +4308,7 @@ val_t native_interface___frontier___MMImportedCast___hash(val_t p0){
   REGB0 = CALL_standard___hash___Object___hash(fra.me.REG[1])(fra.me.REG[1]);
   fra.me.REG[0] = CALL_metamodel___static_type___MMImportedCast___to(fra.me.REG[0])(fra.me.REG[0]);
   REGB1 = CALL_standard___hash___Object___hash(fra.me.REG[0])(fra.me.REG[0]);
-  /* ../lib/standard/kernel.nit:238 */
+  /* ../lib/standard/kernel.nit:245 */
   REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
   /* native_interface/frontier.nit:515 */
   goto label1;
@@ -4351,7 +4351,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_1) {
     fra.me.REG[5] = BOX_NativeString("if ( ! ");
     REGB0 = TAG_Int(7);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_1 = fra.me.REG[5];
     register_static_object(&once_value_1);
   } else fra.me.REG[5] = once_value_1;
@@ -4362,7 +4362,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_2) {
     fra.me.REG[2] = BOX_NativeString(" ){\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_2 = fra.me.REG[2];
     register_static_object(&once_value_2);
   } else fra.me.REG[2] = once_value_2;
@@ -4377,7 +4377,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_3) {
     fra.me.REG[2] = BOX_NativeString("\tfprintf( stderr, \"Casting to ");
     REGB0 = TAG_Int(30);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_3 = fra.me.REG[2];
     register_static_object(&once_value_3);
   } else fra.me.REG[2] = once_value_3;
@@ -4388,7 +4388,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_4) {
     fra.me.REG[2] = BOX_NativeString(" failed because value is not a ");
     REGB0 = TAG_Int(31);
-    fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+    fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
     once_value_4 = fra.me.REG[2];
     register_static_object(&once_value_4);
   } else fra.me.REG[2] = once_value_4;
@@ -4399,7 +4399,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_5) {
     fra.me.REG[0] = BOX_NativeString(".\" );\n");
     REGB0 = TAG_Int(6);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_5 = fra.me.REG[0];
     register_static_object(&once_value_5);
   } else fra.me.REG[0] = once_value_5;
@@ -4412,7 +4412,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_6) {
     fra.me.REG[4] = BOX_NativeString("\tabort();\n");
     REGB0 = TAG_Int(10);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_6 = fra.me.REG[4];
     register_static_object(&once_value_6);
   } else fra.me.REG[4] = once_value_6;
@@ -4423,7 +4423,7 @@ void native_interface___frontier___MMType___compile_check_isa(val_t p0, val_t p1
   if (!once_value_7) {
     fra.me.REG[4] = BOX_NativeString("}\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_7 = fra.me.REG[4];
     register_static_object(&once_value_7);
   } else fra.me.REG[4] = once_value_7;
@@ -4463,7 +4463,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_1) {
     fra.me.REG[3] = BOX_NativeString("( ISOBJ( ");
     REGB0 = TAG_Int(9);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_1 = fra.me.REG[3];
     register_static_object(&once_value_1);
   } else fra.me.REG[3] = once_value_1;
@@ -4473,7 +4473,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_2) {
     fra.me.REG[3] = BOX_NativeString(" ) ? ISNULL( ");
     REGB0 = TAG_Int(13);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_2 = fra.me.REG[3];
     register_static_object(&once_value_2);
   } else fra.me.REG[3] = once_value_2;
@@ -4483,7 +4483,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_3) {
     fra.me.REG[3] = BOX_NativeString(" ) || OBJISA( ");
     REGB0 = TAG_Int(14);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_3 = fra.me.REG[3];
     register_static_object(&once_value_3);
   } else fra.me.REG[3] = once_value_3;
@@ -4493,7 +4493,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_4) {
     fra.me.REG[3] = BOX_NativeString(", ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_4 = fra.me.REG[3];
     register_static_object(&once_value_4);
   } else fra.me.REG[3] = once_value_4;
@@ -4505,7 +4505,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_5) {
     fra.me.REG[3] = BOX_NativeString(" ): VALISA( ");
     REGB0 = TAG_Int(12);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_5 = fra.me.REG[3];
     register_static_object(&once_value_5);
   } else fra.me.REG[3] = once_value_5;
@@ -4515,7 +4515,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_6) {
     fra.me.REG[1] = BOX_NativeString(", ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
+    fra.me.REG[1] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[1])(fra.me.REG[1], REGB0);
     once_value_6 = fra.me.REG[1];
     register_static_object(&once_value_6);
   } else fra.me.REG[1] = once_value_6;
@@ -4527,7 +4527,7 @@ val_t native_interface___frontier___MMType___compile_condition_isa(val_t p0, val
   if (!once_value_7) {
     fra.me.REG[0] = BOX_NativeString(" ) )");
     REGB0 = TAG_Int(4);
-    fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+    fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
     once_value_7 = fra.me.REG[0];
     register_static_object(&once_value_7);
   } else fra.me.REG[0] = once_value_7;
@@ -4628,7 +4628,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_1) {
       fra.me.REG[4] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_1 = fra.me.REG[4];
       register_static_object(&once_value_1);
     } else fra.me.REG[4] = once_value_1;
@@ -4640,7 +4640,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_2) {
       fra.me.REG[4] = BOX_NativeString("_TYPE");
       REGB0 = TAG_Int(5);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_2 = fra.me.REG[4];
       register_static_object(&once_value_2);
     } else fra.me.REG[4] = once_value_2;
@@ -4654,7 +4654,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_3) {
       fra.me.REG[6] = BOX_NativeString("#ifndef ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+      fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
       once_value_3 = fra.me.REG[6];
       register_static_object(&once_value_3);
     } else fra.me.REG[6] = once_value_3;
@@ -4664,7 +4664,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_4) {
       fra.me.REG[6] = BOX_NativeString("\n");
       REGB0 = TAG_Int(1);
-      fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+      fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
       once_value_4 = fra.me.REG[6];
       register_static_object(&once_value_4);
     } else fra.me.REG[6] = once_value_4;
@@ -4679,7 +4679,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_5) {
       fra.me.REG[6] = BOX_NativeString("#define ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+      fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
       once_value_5 = fra.me.REG[6];
       register_static_object(&once_value_5);
     } else fra.me.REG[6] = once_value_5;
@@ -4689,7 +4689,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_6) {
       fra.me.REG[3] = BOX_NativeString("\n");
       REGB0 = TAG_Int(1);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_6 = fra.me.REG[3];
       register_static_object(&once_value_6);
     } else fra.me.REG[3] = once_value_6;
@@ -4704,7 +4704,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_7) {
       fra.me.REG[3] = BOX_NativeString("struct s_");
       REGB0 = TAG_Int(9);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_7 = fra.me.REG[3];
       register_static_object(&once_value_7);
     } else fra.me.REG[3] = once_value_7;
@@ -4714,7 +4714,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_8) {
       fra.me.REG[3] = BOX_NativeString("{\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_8 = fra.me.REG[3];
       register_static_object(&once_value_8);
     } else fra.me.REG[3] = once_value_8;
@@ -4727,7 +4727,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_9) {
       fra.me.REG[4] = BOX_NativeString("\t\tstruct nitni_ref ref; /* real ref struct, must be first */\n");
       REGB0 = TAG_Int(61);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_9 = fra.me.REG[4];
       register_static_object(&once_value_9);
     } else fra.me.REG[4] = once_value_9;
@@ -4738,7 +4738,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_10) {
       fra.me.REG[5] = BOX_NativeString("};\n");
       REGB0 = TAG_Int(3);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_10 = fra.me.REG[5];
       register_static_object(&once_value_10);
     } else fra.me.REG[5] = once_value_10;
@@ -4751,7 +4751,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_11) {
       fra.me.REG[3] = BOX_NativeString("typedef struct s_");
       REGB0 = TAG_Int(17);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_11 = fra.me.REG[3];
       register_static_object(&once_value_11);
     } else fra.me.REG[3] = once_value_11;
@@ -4761,7 +4761,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_12) {
       fra.me.REG[3] = BOX_NativeString(" *");
       REGB0 = TAG_Int(2);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_12 = fra.me.REG[3];
       register_static_object(&once_value_12);
     } else fra.me.REG[3] = once_value_12;
@@ -4771,7 +4771,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_13) {
       fra.me.REG[3] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_13 = fra.me.REG[3];
       register_static_object(&once_value_13);
     } else fra.me.REG[3] = once_value_13;
@@ -4792,7 +4792,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_14) {
         fra.me.REG[6] = BOX_NativeString("#ifndef ");
         REGB0 = TAG_Int(8);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_14 = fra.me.REG[6];
         register_static_object(&once_value_14);
       } else fra.me.REG[6] = once_value_14;
@@ -4803,7 +4803,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_15) {
         fra.me.REG[6] = BOX_NativeString("\n");
         REGB0 = TAG_Int(1);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_15 = fra.me.REG[6];
         register_static_object(&once_value_15);
       } else fra.me.REG[6] = once_value_15;
@@ -4818,7 +4818,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_16) {
         fra.me.REG[6] = BOX_NativeString("#define ");
         REGB0 = TAG_Int(8);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_16 = fra.me.REG[6];
         register_static_object(&once_value_16);
       } else fra.me.REG[6] = once_value_16;
@@ -4829,7 +4829,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_17) {
         fra.me.REG[6] = BOX_NativeString(" ");
         REGB0 = TAG_Int(1);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_17 = fra.me.REG[6];
         register_static_object(&once_value_17);
       } else fra.me.REG[6] = once_value_17;
@@ -4839,7 +4839,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_18) {
         fra.me.REG[6] = BOX_NativeString("\n");
         REGB0 = TAG_Int(1);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_18 = fra.me.REG[6];
         register_static_object(&once_value_18);
       } else fra.me.REG[6] = once_value_18;
@@ -4852,7 +4852,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_19) {
         fra.me.REG[3] = BOX_NativeString("#endif\n");
         REGB0 = TAG_Int(7);
-        fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+        fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
         once_value_19 = fra.me.REG[3];
         register_static_object(&once_value_19);
       } else fra.me.REG[3] = once_value_19;
@@ -4865,7 +4865,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_20) {
         fra.me.REG[6] = BOX_NativeString("");
         REGB0 = TAG_Int(0);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_20 = fra.me.REG[6];
         register_static_object(&once_value_20);
       } else fra.me.REG[6] = once_value_20;
@@ -4875,7 +4875,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_21) {
         fra.me.REG[6] = BOX_NativeString(" ");
         REGB0 = TAG_Int(1);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_21 = fra.me.REG[6];
         register_static_object(&once_value_21);
       } else fra.me.REG[6] = once_value_21;
@@ -4885,7 +4885,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_22) {
         fra.me.REG[6] = BOX_NativeString("();\n");
         REGB0 = TAG_Int(4);
-        fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+        fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
         once_value_22 = fra.me.REG[6];
         register_static_object(&once_value_22);
       } else fra.me.REG[6] = once_value_22;
@@ -4899,7 +4899,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_23) {
         fra.me.REG[3] = BOX_NativeString("");
         REGB0 = TAG_Int(0);
-        fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+        fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
         once_value_23 = fra.me.REG[3];
         register_static_object(&once_value_23);
       } else fra.me.REG[3] = once_value_23;
@@ -4909,7 +4909,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_24) {
         fra.me.REG[2] = BOX_NativeString(" ");
         REGB0 = TAG_Int(1);
-        fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+        fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
         once_value_24 = fra.me.REG[2];
         register_static_object(&once_value_24);
       } else fra.me.REG[2] = once_value_24;
@@ -4919,7 +4919,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_25) {
         fra.me.REG[4] = BOX_NativeString("()");
         REGB0 = TAG_Int(2);
-        fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+        fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
         once_value_25 = fra.me.REG[4];
         register_static_object(&once_value_25);
       } else fra.me.REG[4] = once_value_25;
@@ -4931,7 +4931,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_26) {
         fra.me.REG[4] = BOX_NativeString("n");
         REGB0 = TAG_Int(1);
-        fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+        fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
         once_value_26 = fra.me.REG[4];
         register_static_object(&once_value_26);
       } else fra.me.REG[4] = once_value_26;
@@ -4943,7 +4943,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
       if (!once_value_27) {
         fra.me.REG[2] = BOX_NativeString("return n;\n");
         REGB0 = TAG_Int(10);
-        fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+        fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
         once_value_27 = fra.me.REG[2];
         register_static_object(&once_value_27);
       } else fra.me.REG[2] = once_value_27;
@@ -4960,7 +4960,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_28) {
       fra.me.REG[2] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_28 = fra.me.REG[2];
       register_static_object(&once_value_28);
     } else fra.me.REG[2] = once_value_28;
@@ -4972,7 +4972,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_29) {
       fra.me.REG[2] = BOX_NativeString("_incr_ref");
       REGB0 = TAG_Int(9);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_29 = fra.me.REG[2];
       register_static_object(&once_value_29);
     } else fra.me.REG[2] = once_value_29;
@@ -4986,7 +4986,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_30) {
       fra.me.REG[3] = BOX_NativeString("#define ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_30 = fra.me.REG[3];
       register_static_object(&once_value_30);
     } else fra.me.REG[3] = once_value_30;
@@ -4996,7 +4996,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_31) {
       fra.me.REG[5] = BOX_NativeString("( x ) nitni_global_ref_incr( (struct nitni_ref*)(x) )\n");
       REGB0 = TAG_Int(54);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_31 = fra.me.REG[5];
       register_static_object(&once_value_31);
     } else fra.me.REG[5] = once_value_31;
@@ -5010,7 +5010,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_32) {
       fra.me.REG[2] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_32 = fra.me.REG[2];
       register_static_object(&once_value_32);
     } else fra.me.REG[2] = once_value_32;
@@ -5022,7 +5022,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_33) {
       fra.me.REG[0] = BOX_NativeString("_decr_ref");
       REGB0 = TAG_Int(9);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_33 = fra.me.REG[0];
       register_static_object(&once_value_33);
     } else fra.me.REG[0] = once_value_33;
@@ -5036,7 +5036,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_34) {
       fra.me.REG[5] = BOX_NativeString("#define ");
       REGB0 = TAG_Int(8);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_34 = fra.me.REG[5];
       register_static_object(&once_value_34);
     } else fra.me.REG[5] = once_value_34;
@@ -5046,7 +5046,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_35) {
       fra.me.REG[4] = BOX_NativeString("( x ) nitni_global_ref_decr( (struct nitni_ref*)(x) )\n");
       REGB0 = TAG_Int(54);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
       once_value_35 = fra.me.REG[4];
       register_static_object(&once_value_35);
     } else fra.me.REG[4] = once_value_35;
@@ -5059,7 +5059,7 @@ void native_interface___frontier___MMType___compile_to_frontier(val_t p0, val_t
     if (!once_value_36) {
       fra.me.REG[2] = BOX_NativeString("#endif\n");
       REGB0 = TAG_Int(7);
-      fra.me.REG[2] = NEW_String_standard___string___String___with_native(fra.me.REG[2], REGB0);
+      fra.me.REG[2] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[2])(fra.me.REG[2], REGB0);
       once_value_36 = fra.me.REG[2];
       register_static_object(&once_value_36);
     } else fra.me.REG[2] = once_value_36;
@@ -5114,7 +5114,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
   if (!once_value_1) {
     fra.me.REG[6] = BOX_NativeString("");
     REGB1 = TAG_Int(0);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB1);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB1);
     once_value_1 = fra.me.REG[6];
     register_static_object(&once_value_1);
   } else fra.me.REG[6] = once_value_1;
@@ -5124,7 +5124,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
   if (!once_value_2) {
     fra.me.REG[6] = BOX_NativeString(" ");
     REGB1 = TAG_Int(1);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB1);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB1);
     once_value_2 = fra.me.REG[6];
     register_static_object(&once_value_2);
   } else fra.me.REG[6] = once_value_2;
@@ -5134,7 +5134,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
   if (!once_value_3) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB1 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB1);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB1);
     once_value_3 = fra.me.REG[6];
     register_static_object(&once_value_3);
   } else fra.me.REG[6] = once_value_3;
@@ -5152,7 +5152,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_4) {
       fra.me.REG[4] = BOX_NativeString("");
       REGB1 = TAG_Int(0);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB1);
       once_value_4 = fra.me.REG[4];
       register_static_object(&once_value_4);
     } else fra.me.REG[4] = once_value_4;
@@ -5162,7 +5162,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_5) {
       fra.me.REG[4] = BOX_NativeString(" = malloc( sizeof( struct s_");
       REGB1 = TAG_Int(28);
-      fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB1);
+      fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB1);
       once_value_5 = fra.me.REG[4];
       register_static_object(&once_value_5);
     } else fra.me.REG[4] = once_value_5;
@@ -5172,7 +5172,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_6) {
       fra.me.REG[3] = BOX_NativeString(" ) );\n");
       REGB1 = TAG_Int(6);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB1);
       once_value_6 = fra.me.REG[3];
       register_static_object(&once_value_6);
     } else fra.me.REG[3] = once_value_6;
@@ -5187,7 +5187,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_7) {
       fra.me.REG[3] = BOX_NativeString("");
       REGB1 = TAG_Int(0);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB1);
       once_value_7 = fra.me.REG[3];
       register_static_object(&once_value_7);
     } else fra.me.REG[3] = once_value_7;
@@ -5197,7 +5197,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_8) {
       fra.me.REG[3] = BOX_NativeString("->ref.val = NIT_NULL;\n");
       REGB1 = TAG_Int(22);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB1);
       once_value_8 = fra.me.REG[3];
       register_static_object(&once_value_8);
     } else fra.me.REG[3] = once_value_8;
@@ -5212,7 +5212,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_9) {
       fra.me.REG[3] = BOX_NativeString("");
       REGB1 = TAG_Int(0);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB1);
       once_value_9 = fra.me.REG[3];
       register_static_object(&once_value_9);
     } else fra.me.REG[3] = once_value_9;
@@ -5222,7 +5222,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
     if (!once_value_10) {
       fra.me.REG[3] = BOX_NativeString("->ref.count = 0;\n");
       REGB1 = TAG_Int(17);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB1);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB1);
       once_value_10 = fra.me.REG[3];
       register_static_object(&once_value_10);
     } else fra.me.REG[3] = once_value_10;
@@ -5239,7 +5239,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
       if (!once_value_11) {
         fra.me.REG[0] = BOX_NativeString("nitni_local_ref_add( (struct nitni_ref *)");
         REGB0 = TAG_Int(41);
-        fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+        fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
         once_value_11 = fra.me.REG[0];
         register_static_object(&once_value_11);
       } else fra.me.REG[0] = once_value_11;
@@ -5249,7 +5249,7 @@ void native_interface___frontier___MMType___compile_new_local_ref(val_t p0, val_
       if (!once_value_12) {
         fra.me.REG[1] = BOX_NativeString(" );\n");
         REGB0 = TAG_Int(4);
-        fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
+        fra.me.REG[1] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[1])(fra.me.REG[1], REGB0);
         once_value_12 = fra.me.REG[1];
         register_static_object(&once_value_12);
       } else fra.me.REG[1] = once_value_12;
@@ -5299,7 +5299,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
   if (!once_value_1) {
     fra.me.REG[6] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_1 = fra.me.REG[6];
     register_static_object(&once_value_1);
   } else fra.me.REG[6] = once_value_1;
@@ -5309,7 +5309,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
   if (!once_value_2) {
     fra.me.REG[6] = BOX_NativeString(" ");
     REGB0 = TAG_Int(1);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_2 = fra.me.REG[6];
     register_static_object(&once_value_2);
   } else fra.me.REG[6] = once_value_2;
@@ -5319,7 +5319,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
   if (!once_value_3) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_3 = fra.me.REG[6];
     register_static_object(&once_value_3);
   } else fra.me.REG[6] = once_value_3;
@@ -5337,7 +5337,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
     if (!once_value_4) {
       fra.me.REG[5] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_4 = fra.me.REG[5];
       register_static_object(&once_value_4);
     } else fra.me.REG[5] = once_value_4;
@@ -5347,7 +5347,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
     if (!once_value_5) {
       fra.me.REG[1] = BOX_NativeString(" = (");
       REGB0 = TAG_Int(4);
-      fra.me.REG[1] = NEW_String_standard___string___String___with_native(fra.me.REG[1], REGB0);
+      fra.me.REG[1] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[1])(fra.me.REG[1], REGB0);
       once_value_5 = fra.me.REG[1];
       register_static_object(&once_value_5);
     } else fra.me.REG[1] = once_value_5;
@@ -5357,7 +5357,7 @@ void native_interface___frontier___MMType___compile_stub_local_ref(val_t p0, val
     if (!once_value_6) {
       fra.me.REG[3] = BOX_NativeString(")NULL;\n");
       REGB0 = TAG_Int(7);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_6 = fra.me.REG[3];
       register_static_object(&once_value_6);
     } else fra.me.REG[3] = once_value_6;
@@ -5427,7 +5427,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_1) {
     fra.me.REG[4] = BOX_NativeString("/* friendly for ");
     REGB0 = TAG_Int(16);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_1 = fra.me.REG[4];
     register_static_object(&once_value_1);
   } else fra.me.REG[4] = once_value_1;
@@ -5439,7 +5439,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_2) {
     fra.me.REG[4] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_2 = fra.me.REG[4];
     register_static_object(&once_value_2);
   } else fra.me.REG[4] = once_value_2;
@@ -5454,7 +5454,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_3) {
     fra.me.REG[4] = BOX_NativeString("");
     REGB0 = TAG_Int(0);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_3 = fra.me.REG[4];
     register_static_object(&once_value_3);
   } else fra.me.REG[4] = once_value_3;
@@ -5468,7 +5468,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_4) {
     fra.me.REG[6] = BOX_NativeString(";\n");
     REGB0 = TAG_Int(2);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_4 = fra.me.REG[6];
     register_static_object(&once_value_4);
   } else fra.me.REG[6] = once_value_4;
@@ -5483,7 +5483,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_5) {
     fra.me.REG[6] = BOX_NativeString("#ifndef ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_5 = fra.me.REG[6];
     register_static_object(&once_value_5);
   } else fra.me.REG[6] = once_value_5;
@@ -5496,7 +5496,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_6) {
     fra.me.REG[5] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_6 = fra.me.REG[5];
     register_static_object(&once_value_6);
   } else fra.me.REG[5] = once_value_6;
@@ -5511,7 +5511,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_7) {
     fra.me.REG[5] = BOX_NativeString("#define ");
     REGB0 = TAG_Int(8);
-    fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+    fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
     once_value_7 = fra.me.REG[5];
     register_static_object(&once_value_7);
   } else fra.me.REG[5] = once_value_7;
@@ -5524,7 +5524,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_8) {
     fra.me.REG[6] = BOX_NativeString(" ");
     REGB0 = TAG_Int(1);
-    fra.me.REG[6] = NEW_String_standard___string___String___with_native(fra.me.REG[6], REGB0);
+    fra.me.REG[6] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[6])(fra.me.REG[6], REGB0);
     once_value_8 = fra.me.REG[6];
     register_static_object(&once_value_8);
   } else fra.me.REG[6] = once_value_8;
@@ -5538,7 +5538,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_9) {
     fra.me.REG[4] = BOX_NativeString("\n");
     REGB0 = TAG_Int(1);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_9 = fra.me.REG[4];
     register_static_object(&once_value_9);
   } else fra.me.REG[4] = once_value_9;
@@ -5551,7 +5551,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_10) {
     fra.me.REG[3] = BOX_NativeString("#endif\n");
     REGB0 = TAG_Int(7);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_10 = fra.me.REG[3];
     register_static_object(&once_value_10);
   } else fra.me.REG[3] = once_value_10;
@@ -5564,7 +5564,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_11) {
     fra.me.REG[4] = BOX_NativeString("/* friendly for ");
     REGB0 = TAG_Int(16);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_11 = fra.me.REG[4];
     register_static_object(&once_value_11);
   } else fra.me.REG[4] = once_value_11;
@@ -5576,7 +5576,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_12) {
     fra.me.REG[4] = BOX_NativeString(" */\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[4] = NEW_String_standard___string___String___with_native(fra.me.REG[4], REGB0);
+    fra.me.REG[4] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[4])(fra.me.REG[4], REGB0);
     once_value_12 = fra.me.REG[4];
     register_static_object(&once_value_12);
   } else fra.me.REG[4] = once_value_12;
@@ -5605,20 +5605,20 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   fra.me.REG[2] = CALL_metamodel___static_type___MMExplicitImport___signature(fra.me.REG[0])(fra.me.REG[0]);
   fra.me.REG[2] = CALL_metamodel___static_type___MMSignature___params(fra.me.REG[2])(fra.me.REG[2]);
   CALL_standard___collection___abstract_collection___SimpleCollection___add_all(fra.me.REG[3])(fra.me.REG[3], fra.me.REG[2]);
-  /* ../lib/standard/collection/array.nit:266 */
+  /* ../lib/standard/collection/array.nit:267 */
   fra.me.REG[2] = fra.me.REG[3];
-  /* ../lib/standard/collection/array.nit:269 */
-  REGB0 = TAG_Int(0);
   /* ../lib/standard/collection/array.nit:270 */
+  REGB0 = TAG_Int(0);
+  /* ../lib/standard/collection/array.nit:271 */
   REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 270);
+    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 271);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2]);
-  /* ../lib/standard/collection/array.nit:271 */
-  fra.me.REG[5] = ATTR_standard___collection___array___Array____items(fra.me.REG[2]);
   /* ../lib/standard/collection/array.nit:272 */
+  fra.me.REG[5] = ATTR_standard___collection___array___Array____items(fra.me.REG[2]);
+  /* ../lib/standard/collection/array.nit:273 */
   while(1) {
     /* ../lib/standard/collection/array.nit:24 */
     REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[2])!=NIT_NULL);
@@ -5632,27 +5632,27 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:235 */
+    /* ../lib/standard/kernel.nit:242 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/collection/array.nit:272 */
+    /* ../lib/standard/collection/array.nit:273 */
     if (UNTAG_Bool(REGB1)) {
-      /* ../lib/standard/collection/array.nit:273 */
+      /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Bool(fra.me.REG[5]==NIT_NULL);
       if (UNTAG_Bool(REGB1)) {
-        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 273);
+        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 274);
       }
-      /* ../lib/standard/collection/array.nit:724 */
+      /* ../lib/standard/collection/array.nit:725 */
       fra.me.REG[6] = ((Nit_NativeArray)fra.me.REG[5])->val[UNTAG_Int(REGB0)];
       /* native_interface/frontier.nit:634 */
       CALL_native_interface___frontier___NiVariable___prepare_for_nit(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[4]);
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:238 */
+      /* ../lib/standard/kernel.nit:245 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB0 = REGB1;
     } else {
-      /* ../lib/standard/collection/array.nit:272 */
+      /* ../lib/standard/collection/array.nit:273 */
       goto label13;
     }
   }
@@ -5716,7 +5716,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_14) {
       fra.me.REG[7] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_14 = fra.me.REG[7];
       register_static_object(&once_value_14);
     } else fra.me.REG[7] = once_value_14;
@@ -5731,7 +5731,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_15) {
       fra.me.REG[7] = BOX_NativeString(" = ");
       REGB0 = TAG_Int(3);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_15 = fra.me.REG[7];
       register_static_object(&once_value_15);
     } else fra.me.REG[7] = once_value_15;
@@ -5750,7 +5750,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_16) {
       fra.me.REG[7] = BOX_NativeString("NEW_");
       REGB0 = TAG_Int(4);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_16 = fra.me.REG[7];
       register_static_object(&once_value_16);
     } else fra.me.REG[7] = once_value_16;
@@ -5762,7 +5762,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_17) {
       fra.me.REG[7] = BOX_NativeString("_");
       REGB0 = TAG_Int(1);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_17 = fra.me.REG[7];
       register_static_object(&once_value_17);
     } else fra.me.REG[7] = once_value_17;
@@ -5776,7 +5776,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_18) {
       fra.me.REG[7] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_18 = fra.me.REG[7];
       register_static_object(&once_value_18);
     } else fra.me.REG[7] = once_value_18;
@@ -5791,7 +5791,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_19) {
       fra.me.REG[7] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_19 = fra.me.REG[7];
       register_static_object(&once_value_19);
     } else fra.me.REG[7] = once_value_19;
@@ -5804,7 +5804,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_20) {
       fra.me.REG[7] = BOX_NativeString("( ");
       REGB0 = TAG_Int(2);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_20 = fra.me.REG[7];
       register_static_object(&once_value_20);
     } else fra.me.REG[7] = once_value_20;
@@ -5817,7 +5817,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_21) {
       fra.me.REG[0] = BOX_NativeString(" )");
       REGB0 = TAG_Int(2);
-      fra.me.REG[0] = NEW_String_standard___string___String___with_native(fra.me.REG[0], REGB0);
+      fra.me.REG[0] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[0])(fra.me.REG[0], REGB0);
       once_value_21 = fra.me.REG[0];
       register_static_object(&once_value_21);
     } else fra.me.REG[0] = once_value_21;
@@ -5828,18 +5828,18 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   }
   /* native_interface/frontier.nit:654 */
   fra.me.REG[6] = NEW_Array_standard___collection___array___Array___init();
-  /* ../lib/standard/collection/array.nit:269 */
-  REGB0 = TAG_Int(0);
   /* ../lib/standard/collection/array.nit:270 */
+  REGB0 = TAG_Int(0);
+  /* ../lib/standard/collection/array.nit:271 */
   REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
   if (UNTAG_Bool(REGB1)) {
   } else {
-    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 270);
+    nit_abort("Uninitialized attribute %s", "_length", LOCATE_standard___collection___array, 271);
   }
   REGB1 = ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3]);
-  /* ../lib/standard/collection/array.nit:271 */
-  fra.me.REG[0] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
   /* ../lib/standard/collection/array.nit:272 */
+  fra.me.REG[0] = ATTR_standard___collection___array___Array____items(fra.me.REG[3]);
+  /* ../lib/standard/collection/array.nit:273 */
   while(1) {
     /* ../lib/standard/collection/array.nit:24 */
     REGB1 = TAG_Bool(ATTR_standard___collection___array___AbstractArrayRead____length(fra.me.REG[3])!=NIT_NULL);
@@ -5853,28 +5853,28 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     } else {
       nit_abort("Cast failed", NULL, LOCATE_standard___kernel, 0);
     }
-    /* ../lib/standard/kernel.nit:235 */
+    /* ../lib/standard/kernel.nit:242 */
     REGB1 = TAG_Bool(UNTAG_Int(REGB0)<UNTAG_Int(REGB1));
-    /* ../lib/standard/collection/array.nit:272 */
+    /* ../lib/standard/collection/array.nit:273 */
     if (UNTAG_Bool(REGB1)) {
-      /* ../lib/standard/collection/array.nit:273 */
+      /* ../lib/standard/collection/array.nit:274 */
       REGB1 = TAG_Bool(fra.me.REG[0]==NIT_NULL);
       if (UNTAG_Bool(REGB1)) {
-        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 273);
+        nit_abort("Reciever is null", NULL, LOCATE_standard___collection___array, 274);
       }
-      /* ../lib/standard/collection/array.nit:724 */
+      /* ../lib/standard/collection/array.nit:725 */
       fra.me.REG[7] = ((Nit_NativeArray)fra.me.REG[0])->val[UNTAG_Int(REGB0)];
       /* native_interface/frontier.nit:655 */
       fra.me.REG[7] = CALL_native_interface___frontier___NiVariable___as_arg_to_nit(fra.me.REG[7])(fra.me.REG[7]);
       CALL_standard___collection___abstract_collection___SimpleCollection___add(fra.me.REG[6])(fra.me.REG[6], fra.me.REG[7]);
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB1 = TAG_Int(1);
-      /* ../lib/standard/kernel.nit:238 */
+      /* ../lib/standard/kernel.nit:245 */
       REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
-      /* ../lib/standard/collection/array.nit:274 */
+      /* ../lib/standard/collection/array.nit:275 */
       REGB0 = REGB1;
     } else {
-      /* ../lib/standard/collection/array.nit:272 */
+      /* ../lib/standard/collection/array.nit:273 */
       goto label22;
     }
   }
@@ -5885,7 +5885,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_23) {
     fra.me.REG[3] = BOX_NativeString("( ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_23 = fra.me.REG[3];
     register_static_object(&once_value_23);
   } else fra.me.REG[3] = once_value_23;
@@ -5894,7 +5894,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_24) {
     fra.me.REG[3] = BOX_NativeString(", ");
     REGB0 = TAG_Int(2);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_24 = fra.me.REG[3];
     register_static_object(&once_value_24);
   } else fra.me.REG[3] = once_value_24;
@@ -5904,7 +5904,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
   if (!once_value_25) {
     fra.me.REG[3] = BOX_NativeString(" );\n");
     REGB0 = TAG_Int(4);
-    fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+    fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
     once_value_25 = fra.me.REG[3];
     register_static_object(&once_value_25);
   } else fra.me.REG[3] = once_value_25;
@@ -5938,7 +5938,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_26) {
       fra.me.REG[3] = BOX_NativeString("");
       REGB0 = TAG_Int(0);
-      fra.me.REG[3] = NEW_String_standard___string___String___with_native(fra.me.REG[3], REGB0);
+      fra.me.REG[3] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[3])(fra.me.REG[3], REGB0);
       once_value_26 = fra.me.REG[3];
       register_static_object(&once_value_26);
     } else fra.me.REG[3] = once_value_26;
@@ -5964,7 +5964,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_27) {
       fra.me.REG[7] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_27 = fra.me.REG[7];
       register_static_object(&once_value_27);
     } else fra.me.REG[7] = once_value_27;
@@ -5979,7 +5979,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_28) {
       fra.me.REG[7] = BOX_NativeString("return ");
       REGB0 = TAG_Int(7);
-      fra.me.REG[7] = NEW_String_standard___string___String___with_native(fra.me.REG[7], REGB0);
+      fra.me.REG[7] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[7])(fra.me.REG[7], REGB0);
       once_value_28 = fra.me.REG[7];
       register_static_object(&once_value_28);
     } else fra.me.REG[7] = once_value_28;
@@ -5994,7 +5994,7 @@ void native_interface___frontier___MMExplicitImport___compile_friendly_to_fronti
     if (!once_value_29) {
       fra.me.REG[5] = BOX_NativeString(";\n");
       REGB0 = TAG_Int(2);
-      fra.me.REG[5] = NEW_String_standard___string___String___with_native(fra.me.REG[5], REGB0);
+      fra.me.REG[5] = CALL_standard___string___NativeString___to_s_with_length(fra.me.REG[5])(fra.me.REG[5], REGB0);
       once_value_29 = fra.me.REG[5];
       register_static_object(&once_value_29);
     } else fra.me.REG[5] = once_value_29;
@@ -6034,7 +6034,7 @@ val_t native_interface___frontier___MMExplicitImport___hash(val_t p0){
   fra.me.REG[0] = CALL_metamodel___abstractmetamodel___MMExplicitImport___local_class(fra.me.REG[0])(fra.me.REG[0]);
   fra.me.REG[0] = CALL_standard___string___Object___to_s(fra.me.REG[0])(fra.me.REG[0]);
   REGB1 = CALL_standard___hash___Object___hash(fra.me.REG[0])(fra.me.REG[0]);
-  /* ../lib/standard/kernel.nit:238 */
+  /* ../lib/standard/kernel.nit:245 */
   REGB1 = TAG_Int(UNTAG_Int(REGB0)+UNTAG_Int(REGB1));
   /* native_interface/frontier.nit:672 */
   goto label1;