let depends_il0expr =
  function
      ILexpCoerce(_,id) -> singleton id
    | ILexpConstant _ -> empty
    | ILexpBinop(_,id1,id2) -> of_list [id1; id2]
    | ILexpUnaryop(_,id) -> singleton id
    | ILexpInvoke(lv,ids) -> union (depends_il0lvalue lv) (of_list ids)
    | ILexpAddress(lv,_) -> depends_il0lvalue lv
    | ILexpIdent(id) -> singleton id
    | ILexpArgument _ -> empty