-var = ((val* (*)(val*))(self->class->vft[COLOR_parser_nodes__AStringFormExpr__n_string]))(self) /* n_string on <self:AStringFormExpr>*/;
-var1 = ((val* (*)(val*))(var->class->vft[COLOR_parser_nodes__Token__text]))(var) /* text on <var:Token>*/;
-var_txt = var1;
-var2 = 1;
-var_skip = var2;
-var4 = 0;
-var5 = ((val* (*)(val*, long))(var_txt->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var_txt, var4) /* [] on <var_txt:String>*/;
-var6 = 1;
-var7 = ((val* (*)(val*, long))(var_txt->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var_txt, var6) /* [] on <var_txt:String>*/;
-{ /* Inline kernel#Char#== (var5,var7) */
-var10 = var5 == var7 || (((struct instance_kernel__Char*)var5)->value == ((struct instance_kernel__Char*)var7)->value);
-var8 = var10;
-goto RET_LABEL9;
-RET_LABEL9:(void)0;
-}
-var_ = var8;
-if (var8){
-var11 = ((long (*)(val*))(var_txt->class->vft[COLOR_abstract_collection__Collection__length]))(var_txt) /* length on <var_txt:String>*/;
-var12 = 6;
-{ /* Inline kernel#Int#>= (var11,var12) */
-/* Covariant cast for argument 0 (i) <var12:Int> isa OTHER */
-/* <var12:Int> isa OTHER */
-var15 = 1; /* easy <var12:Int> isa OTHER*/
-if (!var15) {
+{
+{ /* Inline parser_nodes#AStringFormExpr#n_string (self) on <self:AStringFormExpr> */
+var2 = self->attrs[COLOR_parser_nodes__AStringFormExpr___n_string].val; /* _n_string on <self:AStringFormExpr> */
+if (unlikely(var2 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _n_string");
+PRINT_ERROR(" (%s:%d)\n", "parser/parser_nodes.nit", 1834);
+show_backtrace(1);
+}
+var = var2;
+RET_LABEL1:(void)0;
+}
+}
+{
+var3 = lexer_work__Token__text(var);
+}
+var_txt = var3;
+var4 = 1;
+var_behead = var4;
+var5 = 1;
+var_betail = var5;
+{
+{ /* Inline string#FlatString#chars (var_txt) on <var_txt:String> */
+var9 = var_txt->attrs[COLOR_string__FlatString___chars].val; /* _chars on <var_txt:String> */
+if (unlikely(var9 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _chars");
+PRINT_ERROR(" (%s:%d)\n", "../lib/standard/string.nit", 939);
+show_backtrace(1);
+}
+var7 = var9;
+RET_LABEL8:(void)0;
+}
+}
+var10 = 0;
+{
+var11 = ((val* (*)(val*, long))(var7->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var7, var10) /* [] on <var7:SequenceRead[Char]>*/;
+}
+{
+{ /* Inline string#FlatString#chars (var_txt) on <var_txt:String> */
+var14 = var_txt->attrs[COLOR_string__FlatString___chars].val; /* _chars on <var_txt:String> */
+if (unlikely(var14 == NULL)) {
+PRINT_ERROR("Runtime error: %s", "Uninitialized attribute _chars");
+PRINT_ERROR(" (%s:%d)\n", "../lib/standard/string.nit", 939);
+show_backtrace(1);
+}
+var12 = var14;
+RET_LABEL13:(void)0;
+}
+}
+var15 = 1;
+{
+var16 = ((val* (*)(val*, long))(var12->class->vft[COLOR_abstract_collection__SequenceRead___91d_93d]))(var12, var15) /* [] on <var12:SequenceRead[Char]>*/;
+}
+{
+{ /* Inline kernel#Char#== (var11,var16) on <var11:nullable Object(Char)> */
+var20 = var11 == var16 || (((struct instance_kernel__Char*)var11)->value == ((struct instance_kernel__Char*)var16)->value);
+var18 = var20;
+goto RET_LABEL19;
+RET_LABEL19:(void)0;
+}
+var17 = var18;
+}
+var_ = var17;
+if (var17){
+{
+{ /* Inline string#FlatText#length (var_txt) on <var_txt:String> */
+var23 = var_txt->attrs[COLOR_string__FlatText___length].l; /* _length on <var_txt:String> */
+var21 = var23;
+RET_LABEL22:(void)0;
+}
+}
+var24 = 6;
+{
+{ /* Inline kernel#Int#>= (var21,var24) on <var21:Int> */
+/* Covariant cast for argument 0 (i) <var24:Int> isa OTHER */
+/* <var24:Int> isa OTHER */
+var27 = 1; /* easy <var24:Int> isa OTHER*/
+if (unlikely(!var27)) {