Update c_src. Enable one gcc pass bootstrap.
[nit.git] / c_src / stream._sep.c
index 32dd13e..0a6ff54 100644 (file)
@@ -1,28 +1,33 @@
 /* This C file is generated by NIT to compile module stream. */
 #include "stream._sep.h"
 void stream___IOS___close(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___IOS___close, 20};
+  struct trace_t trace = {NULL, NULL, 20, LOCATE_stream___IOS___close};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "close", LOCATE_stream, 20);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " (%s:%d)\n", LOCATE_stream, 20);
   nit_exit(1);
   tracehead = trace.prev;
   return;
 }
 val_t stream___IStream___read_char(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___read_char, 27};
+  struct trace_t trace = {NULL, NULL, 27, LOCATE_stream___IStream___read_char};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "read_char", LOCATE_stream, 27);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " (%s:%d)\n", LOCATE_stream, 27);
   nit_exit(1);
   tracehead = trace.prev;
   return NIT_NULL;
 }
 val_t stream___IStream___read(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___read, 30};
+  struct trace_t trace = {NULL, NULL, 30, LOCATE_stream___IStream___read};
   val_t variable0;
   val_t variable1;
   val_t variable2;
     val_t variable3;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   variable2 = NEW_string___String___with_capacity( variable0 /*i*/); /*new String*/
   variable1 = variable2;
@@ -53,12 +58,13 @@ val_t stream___IStream___read(val_t  self, val_t  param0) {
   return variable1;
 }
 val_t stream___IStream___read_line(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___read_line, 44};
+  struct trace_t trace = {NULL, NULL, 44, LOCATE_stream___IStream___read_line};
   val_t variable0;
   val_t variable1;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 = ((stream___IStream___eof_t)CALL( self,COLOR_stream___IStream___eof))( self) /*IStream::eof*/;
-  if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_stream___IStream___read_line, 47); nit_exit(1);}
+  if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___IStream___read_line, LOCATE_stream, 47); nit_exit(1);}
   variable1 = NEW_string___String___init(); /*new String*/
   variable0 = variable1;
   ((stream___IStream___append_line_to_t)CALL( self,COLOR_stream___IStream___append_line_to))( self,  variable0 /*s*/) /*IStream::append_line_to*/;
@@ -69,11 +75,12 @@ val_t stream___IStream___read_line(val_t  self) {
   return variable0;
 }
 val_t stream___IStream___read_all(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___read_all, 53};
+  struct trace_t trace = {NULL, NULL, 53, LOCATE_stream___IStream___read_all};
   val_t variable0;
   val_t variable1;
     val_t variable2;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable1 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
   variable0 = variable1;
   while (true) { /*while*/
@@ -96,12 +103,13 @@ val_t stream___IStream___read_all(val_t  self) {
   return variable0;
 }
 void stream___IStream___append_line_to(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___append_line_to, 64};
+  struct trace_t trace = {NULL, NULL, 64, LOCATE_stream___IStream___append_line_to};
   val_t variable0;
     val_t variable1;
     val_t variable2;
       val_t variable3;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   while (true) { /*while*/
     if (!UNTAG_Bool( TAG_Bool(true))) break; /* while*/
@@ -117,7 +125,7 @@ void stream___IStream___append_line_to(val_t  self, val_t  param0) {
     } else { /*if*/
       variable3 = TAG_Char(UNTAG_Int( variable1 /*x*/));
       variable2 = variable3;
-      ((array___AbstractArray___push_t)CALL( variable0 /*s*/,COLOR_abstract_collection___IndexedCollection___push))( variable0 /*s*/,  variable2 /*c*/) /*String::push*/;
+      ((array___AbstractArray___push_t)CALL( variable0 /*s*/,COLOR_abstract_collection___IndexedCollection___push))( variable0 /*s*/,  variable2 /*c*/) /*AbstractArray::push*/;
       variable3 = TAG_Bool(( variable2 /*c*/)==( TAG_Char('\n')));
       if (UNTAG_Bool(variable3)) { /*if*/
         goto return_label5;
@@ -131,47 +139,54 @@ void stream___IStream___append_line_to(val_t  self, val_t  param0) {
   return;
 }
 val_t stream___IStream___eof(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___IStream___eof, 79};
+  struct trace_t trace = {NULL, NULL, 79, LOCATE_stream___IStream___eof};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "eof", LOCATE_stream___IStream___append_line_to, 79);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___IStream___append_line_to, LOCATE_stream, 79);
   nit_exit(1);
   tracehead = trace.prev;
   return NIT_NULL;
 }
 void stream___OStream___write(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___OStream___write, 86};
+  struct trace_t trace = {NULL, NULL, 86, LOCATE_stream___OStream___write};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "write", LOCATE_stream___IStream___append_line_to, 86);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___IStream___append_line_to, LOCATE_stream, 86);
   nit_exit(1);
   tracehead = trace.prev;
   return;
 }
 val_t stream___OStream___is_writable(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___OStream___is_writable, 89};
+  struct trace_t trace = {NULL, NULL, 89, LOCATE_stream___OStream___is_writable};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "is_writable", LOCATE_stream___IStream___append_line_to, 89);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___IStream___append_line_to, LOCATE_stream, 89);
   nit_exit(1);
   tracehead = trace.prev;
   return NIT_NULL;
 }
 val_t stream___BufferedIStream___read_char(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___read_char, 96};
+  struct trace_t trace = {NULL, NULL, 96, LOCATE_stream___BufferedIStream___read_char};
   val_t variable0;
   val_t variable1;
   val_t variable2;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 = ((stream___BufferedIStream___eof_t)CALL( self,COLOR_stream___IStream___eof))( self) /*BufferedIStream::eof*/;
-  if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert%s failed (%s: %d)\n", "", LOCATE_stream___BufferedIStream___read_char, 98); nit_exit(1);}
+  if (!UNTAG_Bool( TAG_Bool(!UNTAG_Bool(variable0)))) { fprintf(stderr, "Assert%s failed", ""); fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___BufferedIStream___read_char, LOCATE_stream, 98); nit_exit(1);}
   variable0 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
   variable1 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
+  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*AbstractArray::length*/;
   variable0 = TAG_Bool(UNTAG_Int(variable0)>=UNTAG_Int(variable1));
   if (UNTAG_Bool(variable0)) { /*if*/
     ((stream___BufferedIStream___fill_buffer_t)CALL( self,COLOR_stream___BufferedIStream___fill_buffer))( self) /*BufferedIStream::fill_buffer*/;
   }
   variable0 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
   variable1 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
+  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*AbstractArray::length*/;
   variable0 = TAG_Bool(UNTAG_Int(variable0)>=UNTAG_Int(variable1));
   if (UNTAG_Bool(variable0)) { /*if*/
     variable0 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
@@ -190,7 +205,7 @@ val_t stream___BufferedIStream___read_char(val_t  self) {
   return variable0;
 }
 val_t stream___BufferedIStream___read(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___read, 110};
+  struct trace_t trace = {NULL, NULL, 110, LOCATE_stream___BufferedIStream___read};
   val_t variable0;
   val_t variable1;
   val_t variable2;
@@ -198,13 +213,14 @@ val_t stream___BufferedIStream___read(val_t  self, val_t  param0) {
   val_t variable4;
       val_t variable5;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   variable2 = NEW_string___String___with_capacity( variable0 /*i*/); /*new String*/
   variable1 = variable2;
   variable3 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
   variable2 = variable3;
   variable4 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-  variable4 = ((array___AbstractArray___length_t)CALL(variable4,COLOR_abstract_collection___Collection___length))(variable4) /*String::length*/;
+  variable4 = ((array___AbstractArray___length_t)CALL(variable4,COLOR_abstract_collection___Collection___length))(variable4) /*AbstractArray::length*/;
   variable3 = variable4;
   while (true) { /*while*/
     variable4 = TAG_Bool(UNTAG_Int( variable0 /*i*/)>UNTAG_Int( TAG_Int(0)));
@@ -220,7 +236,7 @@ val_t stream___BufferedIStream___read(val_t  self, val_t  param0) {
       variable4 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
       variable2 = variable4 /*j=*/;
       variable4 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-      variable4 = ((array___AbstractArray___length_t)CALL(variable4,COLOR_abstract_collection___Collection___length))(variable4) /*String::length*/;
+      variable4 = ((array___AbstractArray___length_t)CALL(variable4,COLOR_abstract_collection___Collection___length))(variable4) /*AbstractArray::length*/;
       variable3 = variable4 /*k=*/;
     }
     while (true) { /*while*/
@@ -250,12 +266,13 @@ val_t stream___BufferedIStream___read(val_t  self, val_t  param0) {
   return variable1;
 }
 val_t stream___BufferedIStream___read_all(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___read_all, 132};
+  struct trace_t trace = {NULL, NULL, 132, LOCATE_stream___BufferedIStream___read_all};
   val_t variable0;
   val_t variable1;
     val_t variable2;
     val_t variable3;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable1 = NEW_string___String___with_native(BOX_NativeString(""), TAG_Int(0)); /*new String*/
   variable0 = variable1;
   while (true) { /*while*/
@@ -264,7 +281,7 @@ val_t stream___BufferedIStream___read_all(val_t  self) {
     variable2 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
     variable1 = variable2;
     variable3 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-    variable3 = ((array___AbstractArray___length_t)CALL(variable3,COLOR_abstract_collection___Collection___length))(variable3) /*String::length*/;
+    variable3 = ((array___AbstractArray___length_t)CALL(variable3,COLOR_abstract_collection___Collection___length))(variable3) /*AbstractArray::length*/;
     variable2 = variable3;
     while (true) { /*while*/
       variable3 = TAG_Bool(UNTAG_Int( variable1 /*j*/)<UNTAG_Int( variable2 /*k*/));
@@ -288,12 +305,13 @@ val_t stream___BufferedIStream___read_all(val_t  self) {
   return variable0;
 }
 void stream___BufferedIStream___append_line_to(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___append_line_to, 148};
+  struct trace_t trace = {NULL, NULL, 148, LOCATE_stream___BufferedIStream___append_line_to};
   val_t variable0;
     val_t variable1;
     val_t variable2;
       val_t variable3;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   while (true) { /*while*/
     if (!UNTAG_Bool( TAG_Bool(true))) break; /* while*/
@@ -301,7 +319,7 @@ void stream___BufferedIStream___append_line_to(val_t  self, val_t  param0) {
     variable1 = variable2;
     while (true) { /*while*/
       variable2 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-      variable2 = ((array___AbstractArray___length_t)CALL(variable2,COLOR_abstract_collection___Collection___length))(variable2) /*String::length*/;
+      variable2 = ((array___AbstractArray___length_t)CALL(variable2,COLOR_abstract_collection___Collection___length))(variable2) /*AbstractArray::length*/;
       variable2 = TAG_Bool(UNTAG_Int( variable1 /*i*/)<UNTAG_Int(variable2));
       variable3 = variable2;
       if (UNTAG_Bool(variable3)) { /* and */
@@ -318,7 +336,7 @@ void stream___BufferedIStream___append_line_to(val_t  self, val_t  param0) {
     variable2 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
     variable2 = TAG_Bool(UNTAG_Int( variable1 /*i*/)>UNTAG_Int(variable2));
     if (UNTAG_Bool(variable2)) { /*if*/
-      variable2 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*String::length*/;
+      variable2 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*AbstractArray::length*/;
       variable2 = TAG_Int(UNTAG_Int(variable2)+UNTAG_Int( variable1 /*i*/));
       variable3 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
       variable2 = TAG_Int(UNTAG_Int(variable2)-UNTAG_Int(variable3));
@@ -337,7 +355,7 @@ void stream___BufferedIStream___append_line_to(val_t  self, val_t  param0) {
       break_17: while(0);
     }
     variable2 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-    variable2 = ((array___AbstractArray___length_t)CALL(variable2,COLOR_abstract_collection___Collection___length))(variable2) /*String::length*/;
+    variable2 = ((array___AbstractArray___length_t)CALL(variable2,COLOR_abstract_collection___Collection___length))(variable2) /*AbstractArray::length*/;
     variable2 = TAG_Bool(UNTAG_Int( variable1 /*i*/)<UNTAG_Int(variable2));
     if (UNTAG_Bool(variable2)) { /*if*/
       variable2 = TAG_Int(UNTAG_Int( variable1 /*i*/)+UNTAG_Int( TAG_Int(1)));
@@ -360,13 +378,14 @@ void stream___BufferedIStream___append_line_to(val_t  self, val_t  param0) {
   return;
 }
 val_t stream___BufferedIStream___eof(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___eof, 184};
+  struct trace_t trace = {NULL, NULL, 184, LOCATE_stream___BufferedIStream___eof};
   val_t variable0;
   val_t variable1;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 = ATTR_stream___BufferedIStream____buffer_pos( self) /*BufferedIStream::_buffer_pos*/;
   variable1 = ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/;
-  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*String::length*/;
+  variable1 = ((array___AbstractArray___length_t)CALL(variable1,COLOR_abstract_collection___Collection___length))(variable1) /*AbstractArray::length*/;
   variable0 = TAG_Bool(UNTAG_Int(variable0)>=UNTAG_Int(variable1));
   variable1 = variable0;
   if (UNTAG_Bool(variable1)) { /* and */
@@ -379,26 +398,31 @@ val_t stream___BufferedIStream___eof(val_t  self) {
   return variable0;
 }
 void stream___BufferedIStream___fill_buffer(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___fill_buffer, 192};
+  struct trace_t trace = {NULL, NULL, 192, LOCATE_stream___BufferedIStream___fill_buffer};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "fill_buffer", LOCATE_stream___BufferedIStream___eof, 192);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___BufferedIStream___eof, LOCATE_stream, 192);
   nit_exit(1);
   tracehead = trace.prev;
   return;
 }
 val_t stream___BufferedIStream___end_reached(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___end_reached, 195};
+  struct trace_t trace = {NULL, NULL, 195, LOCATE_stream___BufferedIStream___end_reached};
   trace.prev = tracehead; tracehead = &trace;
-  fprintf(stderr, "Deferred method %s called (%s: %d)\n", "end_reached", LOCATE_stream___BufferedIStream___eof, 195);
+  trace.file = LOCATE_stream;
+  fprintf(stderr, "Deferred method %s called");
+  fprintf(stderr, " in %s (%s:%d)\n", LOCATE_stream___BufferedIStream___eof, LOCATE_stream, 195);
   nit_exit(1);
   tracehead = trace.prev;
   return NIT_NULL;
 }
 void stream___BufferedIStream___prepare_buffer(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___BufferedIStream___prepare_buffer, 198};
+  struct trace_t trace = {NULL, NULL, 198, LOCATE_stream___BufferedIStream___prepare_buffer};
   val_t variable0;
   val_t variable1;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   variable1 = NEW_string___String___with_capacity( variable0 /*capacity*/); /*new String*/
   ATTR_stream___BufferedIStream____buffer( self) /*BufferedIStream::_buffer*/ = variable1;
@@ -407,42 +431,48 @@ void stream___BufferedIStream___prepare_buffer(val_t  self, val_t  param0) {
   return;
 }
 void stream___FDStream___close(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___close, 218};
+  struct trace_t trace = {NULL, NULL, 218, LOCATE_stream___FDStream___close};
   val_t variable0;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 = ATTR_stream___FDStream____fd( self) /*FDStream::_fd*/;
   ((stream___FDStream___native_close_t)CALL( self,COLOR_stream___FDStream___native_close))( self, variable0) /*FDStream::native_close*/;
   tracehead = trace.prev;
   return;
 }
 val_t stream___FDStream___native_close(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___native_close, 220};
+  struct trace_t trace = {NULL, NULL, 220, LOCATE_stream___FDStream___native_close};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return TAG_Int(stream_FDStream_FDStream_native_close_1( self, UNTAG_Int( param0)));
 }
 val_t stream___FDStream___native_read_char(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___native_read_char, 221};
+  struct trace_t trace = {NULL, NULL, 221, LOCATE_stream___FDStream___native_read_char};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return TAG_Int(stream_FDStream_FDStream_native_read_char_1( self, UNTAG_Int( param0)));
 }
 val_t stream___FDStream___native_read(val_t  self, val_t  param0, val_t  param1, val_t  param2) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___native_read, 222};
+  struct trace_t trace = {NULL, NULL, 222, LOCATE_stream___FDStream___native_read};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return TAG_Int(stream_FDStream_FDStream_native_read_3( self, UNTAG_Int( param0), UNBOX_NativeString( param1), UNTAG_Int( param2)));
 }
 val_t stream___FDStream___native_write(val_t  self, val_t  param0, val_t  param1, val_t  param2) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___native_write, 223};
+  struct trace_t trace = {NULL, NULL, 223, LOCATE_stream___FDStream___native_write};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return TAG_Int(stream_FDStream_FDStream_native_write_3( self, UNTAG_Int( param0), UNBOX_NativeString( param1), UNTAG_Int( param2)));
 }
 void stream___FDStream___init(val_t  self, val_t  param0, int* init_table) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDStream___init, 225};
+  struct trace_t trace = {NULL, NULL, 225, LOCATE_stream___FDStream___init};
   val_t variable0;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_FDStream].i]) return;
   ATTR_stream___FDStream____fd( self) /*FDStream::_fd*/ =  variable0 /*fd*/;
@@ -451,18 +481,20 @@ void stream___FDStream___init(val_t  self, val_t  param0, int* init_table) {
   return;
 }
 val_t stream___FDIStream___eof(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDIStream___eof, 231};
+  struct trace_t trace = {NULL, NULL, 231, LOCATE_stream___FDIStream___eof};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return ATTR_stream___FDIStream____eof( self) /*FDIStream::_eof*/;
 }
 val_t stream___FDIStream___read_char(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDIStream___read_char, 233};
+  struct trace_t trace = {NULL, NULL, 233, LOCATE_stream___FDIStream___read_char};
   val_t variable0;
   val_t variable1;
   trace.prev = tracehead; tracehead = &trace;
-  variable1 = ATTR_stream___FDStream____fd( self) /*FDIStream::_fd*/;
-  variable1 = ((stream___FDStream___native_read_char_t)CALL( self,COLOR_stream___FDStream___native_read_char))( self, variable1) /*FDIStream::native_read_char*/;
+  trace.file = LOCATE_stream;
+  variable1 = ATTR_stream___FDStream____fd( self) /*FDStream::_fd*/;
+  variable1 = ((stream___FDStream___native_read_char_t)CALL( self,COLOR_stream___FDStream___native_read_char))( self, variable1) /*FDStream::native_read_char*/;
   variable0 = variable1;
   variable1 = TAG_Int(-UNTAG_Int( TAG_Int(1)));
   variable1 = TAG_Bool(( variable0 /*nb*/)==(variable1));
@@ -476,9 +508,10 @@ val_t stream___FDIStream___read_char(val_t  self) {
   return variable0;
 }
 void stream___FDIStream___init(val_t  self, val_t  param0, int* init_table) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDIStream___init, 240};
+  struct trace_t trace = {NULL, NULL, 240, LOCATE_stream___FDIStream___init};
   val_t variable0;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_FDIStream].i]) return;
   ((stream___FDStream___init_t)CALL( self,COLOR_stream___FDStream___init))( self,  param0, init_table /*YYY*/) /*FDStream::init*/;
@@ -487,26 +520,28 @@ void stream___FDIStream___init(val_t  self, val_t  param0, int* init_table) {
   return;
 }
 val_t stream___FDOStream___is_writable(val_t  self) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDOStream___is_writable, 246};
+  struct trace_t trace = {NULL, NULL, 246, LOCATE_stream___FDOStream___is_writable};
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   tracehead = trace.prev;
   return ATTR_stream___FDOStream____is_writable( self) /*FDOStream::_is_writable*/;
 }
 void stream___FDOStream___write(val_t  self, val_t  param0) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDOStream___write, 248};
+  struct trace_t trace = {NULL, NULL, 248, LOCATE_stream___FDOStream___write};
   val_t variable0;
   val_t variable1;
   val_t variable2;
   val_t variable3;
   val_t variable4;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
-  variable2 = ATTR_stream___FDStream____fd( self) /*FDOStream::_fd*/;
+  variable2 = ATTR_stream___FDStream____fd( self) /*FDStream::_fd*/;
   variable3 = ((string___String___to_cstring_t)CALL( variable0 /*s*/,COLOR_string___String___to_cstring))( variable0 /*s*/) /*String::to_cstring*/;
-  variable4 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*String::length*/;
-  variable2 = ((stream___FDStream___native_write_t)CALL( self,COLOR_stream___FDStream___native_write))( self, variable2, variable3, variable4) /*FDOStream::native_write*/;
+  variable4 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*AbstractArray::length*/;
+  variable2 = ((stream___FDStream___native_write_t)CALL( self,COLOR_stream___FDStream___native_write))( self, variable2, variable3, variable4) /*FDStream::native_write*/;
   variable1 = variable2;
-  variable2 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*String::length*/;
+  variable2 = ((array___AbstractArray___length_t)CALL( variable0 /*s*/,COLOR_abstract_collection___Collection___length))( variable0 /*s*/) /*AbstractArray::length*/;
   variable2 = TAG_Bool(UNTAG_Int( variable1 /*nb*/)<UNTAG_Int(variable2));
   if (UNTAG_Bool(variable2)) { /*if*/
     ATTR_stream___FDOStream____is_writable( self) /*FDOStream::_is_writable*/ =  TAG_Bool(false);
@@ -515,9 +550,10 @@ void stream___FDOStream___write(val_t  self, val_t  param0) {
   return;
 }
 void stream___FDOStream___init(val_t  self, val_t  param0, int* init_table) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDOStream___init, 254};
+  struct trace_t trace = {NULL, NULL, 254, LOCATE_stream___FDOStream___init};
   val_t variable0;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_FDOStream].i]) return;
   ((stream___FDStream___init_t)CALL( self,COLOR_stream___FDStream___init))( self,  param0, init_table /*YYY*/) /*FDStream::init*/;
@@ -527,15 +563,16 @@ void stream___FDOStream___init(val_t  self, val_t  param0, int* init_table) {
   return;
 }
 void stream___FDIOStream___init(val_t  self, val_t  param0, int* init_table) {
-  struct trace_t trace = {NULL, LOCATE_stream___FDIOStream___init, 265};
+  struct trace_t trace = {NULL, NULL, 265, LOCATE_stream___FDIOStream___init};
   val_t variable0;
   trace.prev = tracehead; tracehead = &trace;
+  trace.file = LOCATE_stream;
   variable0 =  param0;
   if (init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_FDIOStream].i]) return;
   ((stream___FDIStream___init_t)CALL( self,COLOR_stream___FDIStream___init))( self,  param0, init_table /*YYY*/) /*FDIStream::init*/;
   ((stream___FDOStream___init_t)CALL( self,COLOR_stream___FDOStream___init))( self,  param0, init_table /*YYY*/) /*FDOStream::init*/;
-  ATTR_stream___FDStream____fd( self) /*FDIOStream::_fd*/ =  variable0 /*fd*/;
-  ATTR_stream___FDOStream____is_writable( self) /*FDIOStream::_is_writable*/ =  TAG_Bool(true);
+  ATTR_stream___FDStream____fd( self) /*FDStream::_fd*/ =  variable0 /*fd*/;
+  ATTR_stream___FDOStream____is_writable( self) /*FDOStream::_is_writable*/ =  TAG_Bool(true);
   init_table[VAL2OBJ( self)->vft[INIT_TABLE_POS_FDIOStream].i] = 1;
   tracehead = trace.prev;
   return;