sig
  val pass : ('a -> 'b) -> 'a -> 'b
  val catch : ('a -> 'b) -> 'a -> 'b
  val to_string : exn -> string
  val print_backtrace : 'a BatInnerIO.output -> unit
  val get_backtrace : unit -> string
  val record_backtrace : bool -> unit
  val backtrace_status : unit -> bool
  val register_printer : (exn -> string option) -> unit
  val print : 'a BatInnerIO.output -> exn -> unit
end