sig
  val gen_prim_call :
    Flx_mtypes2.sym_state_t ->
    Flx_types.fully_bound_symbol_table_t ->
    (Flx_types.btypecode_t -> Flx_types.btypecode_t) ->
    (Flx_ast.range_srcref -> Flx_types.tbexpr_t -> Flx_ctypes.cexpr_t) ->
    string ->
    Flx_types.btypecode_t list ->
    Flx_types.tbexpr_t ->
    string ->
    Flx_ast.range_srcref ->
    Flx_ast.range_srcref -> string -> Flx_ctypes.cexpr_t
  val shape_of :
    Flx_types.fully_bound_symbol_table_t ->
    (Flx_types.btypecode_t -> string) -> Flx_types.btypecode_t -> string
end