sig
  val version : string
  type errno =
      CONTINUE
    | FAILURE
    | EDOM
    | ERANGE
    | EFAULT
    | EINVAL
    | EFAILED
    | EFACTOR
    | ESANITY
    | ENOMEM
    | EBADFUNC
    | ERUNAWAY
    | EMAXITER
    | EZERODIV
    | EBADTOL
    | ETOL
    | EUNDRFLW
    | EOVRFLW
    | ELOSS
    | EROUND
    | EBADLEN
    | ENOTSQR
    | ESING
    | EDIVERGE
    | EUNSUP
    | EUNIMPL
    | ECACHE
    | ETABLE
    | ENOPROG
    | ENOPROGJ
    | ETOLF
    | ETOLX
    | ETOLG
    | EOF
  exception Gsl_exn of Gsl_error.errno * string
  val init : unit -> unit
  val uninit : unit -> unit
  val handler : (Gsl_error.errno -> string -> unit) Stdlib.ref
  val default_handler : Gsl_error.errno -> string -> 'a
  val strerror : Gsl_error.errno -> string
  val string_of_errno : Gsl_error.errno -> string
  val printer : exn -> string option
end