sig
  type alarm_behavior = {
    a_log : (Emitter.t * (Format.formatter -> unit)) option;
    a_call : unit -> unit;
  }
  val a_ignore : CilE.alarm_behavior
  type warn_mode = {
    imprecision_tracing : CilE.alarm_behavior;
    defined_logic : CilE.alarm_behavior;
    unspecified : CilE.alarm_behavior;
    others : CilE.alarm_behavior;
  }
  val warn_all_mode :
    Emitter.t -> (Format.formatter -> unit) -> CilE.warn_mode
  val warn_none_mode : CilE.warn_mode
end