let mk_access_pointer a _ty = 
     Wp_parameters.debug ~level:3 "[M2.mk_access_pointer] %a@." pp_exp2 a;
     let t = vardata2type a in
     if Cil.isPointerType t then Fol.Tdata (E2load (Lazy.force cur_mem, a))
       else
        let str = Pretty_utils.sfprintf "%a" pp_exp2 a in
          abort ("access to: "^str^" (not a pointer) not suported")