Module InferModules.Idenv

Environment for temporary identifiers used in instructions. Lazy implementation: only created when actually used.

type t
val create : InferIR.Procdesc.t ‑> t
val expand_expr : t ‑> InferIR.Exp.t ‑> InferIR.Exp.t
val exp_is_temp : t ‑> InferIR.Exp.t ‑> bool
val expand_expr_temps : t ‑> InferIR.Procdesc.Node.t ‑> InferIR.Exp.t ‑> InferIR.Exp.t

Stronger version of expand_expr which also expands a temporary variable.