@@ -122,9 +122,6 @@ let is_pure c cf = has_pure_meta c.cl_meta || has_pure_meta cf.cf_meta
let wrap_meta s e =
mk (TMeta((Meta.Custom s,[],e.epos),e)) e.etype e.epos
-let is_unbound v =
- Meta.has Meta.Unbound v.v_meta
-
let is_really_unbound v =
v.v_name <> "`trace" && is_unbound v
@@ -454,10 +454,10 @@ module Graph = struct
()
end;
DynArray.iter (fun e -> match e.eexpr with
- | TVar(v,eo) ->
+ | TVar(v,eo) when not (is_unbound v) ->
declare_var g v bb;
if eo <> None then add_var_def g bb v;
- | TBinop(OpAssign,{eexpr = TLocal v},_) ->
+ | TBinop(OpAssign,{eexpr = TLocal v},_) when not (is_unbound v) ->
add_var_def g bb v
| _ ->
@@ -327,6 +327,9 @@ let mk_block e =
| TBlock _ -> e
| _ -> mk (TBlock [e]) e.etype e.epos
+let is_unbound v =
+ Meta.has Meta.Unbound v.v_meta
+
let mk_cast e t p = mk (TCast(e,None)) t p
let null t p = mk (TConst TNull) t p