package ocaml-base-compiler

  1. Overview
  2. Docs

Turn free variables of closures into specialised arguments. The aim is to cause the closure to become closed.

val rewrite_set_of_closures : env:Inline_and_simplify_aux.Env.t -> duplicate_function: (env:Inline_and_simplify_aux.Env.t -> set_of_closures:Flambda.set_of_closures -> fun_var:Variable.t -> new_fun_var:Variable.t -> Flambda.function_declaration * Flambda.specialised_to Variable.Map.t) -> set_of_closures:Flambda.set_of_closures -> (Flambda.expr * Inlining_cost.Benefit.t) option