### Parameters

`C : InferModules.ProcCfg.S`

### Signature

`include InferModules.TransferFunctions.SIL with module CFG = C`
`include InferModules.TransferFunctions.S with type instr := InferIR.Sil.instr`
`module CFG : InferModules.ProcCfg.S`
`module Domain : InferModules.AbstractDomain.S`

abstract domain whose state we propagate

`type extras`````

read-only extra state (results of previous analyses, globals, etc.)

`type instr`````

type of the instructions the transfer functions operate on

`val exec_instr : Domain.astate ‑> extras InferModules.ProcData.t ‑> CFG.Node.t ‑> instr ‑> Domain.astate`

instr . `node` is the node of the current instruction

`val pp_session_name : CFG.Node.t ‑> Format.formatter ‑> unit`

print session name for HTML debug