let get_funvar env vinfo =
    try
      let cell =
        List.find (fun (v,_) -> Varinfo.equal v vinfo) !env
      in
      fst (snd cell)
    with Not_found ->
      let tx = object_of vinfo.vtype in
      let x =
        D.fresh vinfo.vname
          (Vacsl (Ctype vinfo.vtype))
      in
      env := (vinfo,(x,tx))::!env ; x