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.