sig
  type t =
      Approximation of string
    | Imprecision of string
    | Costly of string
    | Unsoundness of string
  type emitter
  val register : string -> Lattice_messages.emitter
  val emit : Lattice_messages.emitter -> Lattice_messages.t -> unit
  val emit_imprecision : Lattice_messages.emitter -> string -> unit
  val emit_approximation :
    Lattice_messages.emitter ->
    ('a, Stdlib.Format.formatter, unit) Stdlib.format -> 'a
  val emit_costly :
    Lattice_messages.emitter ->
    ('a, Stdlib.Format.formatter, unit) Stdlib.format -> 'a
end