`type block_data``= InferModules.CContext.t * InferGenerated.Clang_ast_t.qual_type * InferIR.Typ.Procname.t * (InferIR.Pvar.t * InferIR.Typ.t) list```
`type instr_type` = `[`

`|` ``ClangStmt of InferGenerated.Clang_ast_t.stmt`
`|` ``CXXConstructorInit of InferGenerated.Clang_ast_t.cxx_ctor_initializer`

`]```
`type decl_trans_context` = `[`

`|` ``DeclTraversal`
`|` ``Translation`

`]```
`module type CTranslation : sig ... end`
`module type CFrontend : sig ... end`