sig
  val foreign :
    ?abi:Libffi_abi.abi ->
    ?from:Dl.library ->
    ?stub:bool ->
    ?check_errno:bool ->
    ?release_runtime_lock:bool -> string -> ('a -> 'b) Ctypes.fn -> 'a -> 'b
  val foreign_value :
    ?from:Dl.library -> string -> 'a Ctypes.typ -> 'a Ctypes.ptr
  val funptr :
    ?abi:Libffi_abi.abi ->
    ?name:string ->
    ?check_errno:bool ->
    ?runtime_lock:bool ->
    ?thread_registration:bool ->
    ('a -> 'b) Ctypes.fn -> ('a -> 'b) Ctypes.typ
  val funptr_opt :
    ?abi:Libffi_abi.abi ->
    ?name:string ->
    ?check_errno:bool ->
    ?runtime_lock:bool ->
    ?thread_registration:bool ->
    ('a -> 'b) Ctypes.fn -> ('a -> 'b) option Ctypes.typ
  exception CallToExpiredClosure
end