X-Git-Url: http://nitlanguage.org diff --git a/src/compiling/compiling_icode.nit b/src/compiling/compiling_icode.nit index 169d411..26c8f43 100644 --- a/src/compiling/compiling_icode.nit +++ b/src/compiling/compiling_icode.nit @@ -267,7 +267,9 @@ redef class IRoutine else p = cparams.join(", ") end - if human_name != null then v.add_decl("static const char * const LOCATE_{cname} = \"{human_name}\";") + if human_name != null then + v.add_instr("static const char LOCATE_{cname}[] = \"{human_name}\";") + end v.add_decl("{r} {cname}({p});") v.add_decl("typedef {r} (*{cname}_t)({p});") v.add_instr("{r} {cname}({p})\{") @@ -295,6 +297,7 @@ redef class IRoutine v.add_instr("fra.me.meth = LOCATE_{v.basecname};") v.add_instr("fra.me.has_broke = 0;") v.add_instr("fra.me.REG_size = {std_slots_nb};") + v.add_instr("fra.me.nitni_local_ref_head = NULL;") # Declare/initialize local variables for i in [0..std_slots_nb[ do @@ -923,7 +926,7 @@ redef class IBoolValue v.add_location(location) var w = new_result(v) w.add("TAG_Bool(") - if value then w.add("true") else w.add("false") + if value then w.add("1") else w.add("0") w.add(")") end end