CWarnings
val all : category
Each warning belongs to some categories maybe including "default"
. It is possible to query the status of a warning
(unlike categories). XXX we should probably have "default-error"
too.
val warn : 'a msg -> ?loc:Loc.t -> ?quickfix:Quickfix.t list -> 'a -> unit
Emit a message in some warning.
Creation functions
Note that names are in a combined namespace including the special name "none"
.
When from
is not specified it defaults to [all]
. Empty list from
is not allowed. "default" is not allowed in from
.
from
works the same as with create_category
. In particular default status is specified through the default
argument not by using the "default" category.
val create_hybrid : ?from:category list -> ?default:status -> name:string -> unit -> category * warning
As create_warning
, but the warning can also be used as a category i.e. have sub-warnings.
val create_in : warning -> ('a -> Pp.t) -> ?loc:Loc.t -> ?quickfix:Quickfix.t list -> 'a -> unit
Create a msg with registered printer.
Register the printer for a given message. If a printer is already registered it is replaced.
val create : name:string -> ?category:category -> ?default:status -> ('a -> Pp.t) -> ?loc:Loc.t -> 'a -> unit
Combined creation function. name
must be a fresh name.
val create_with_quickfix : name:string -> ?category:category -> ?default:status -> ('a -> Pp.t) -> ?loc:Loc.t ->
?quickfix:Quickfix.t list -> 'a -> unit
Combined creation function. name
must be a fresh name.
Misc APIs
val get_status : name:string -> status
Cleans up a user provided warnings status string, e.g. removing unknown warnings (in which case a warning is emitted) or subsumed warnings .
with_warn "-xxx,+yyy..." f x
calls f x
after setting the warnings as specified in the string (keeping other previously set warnings), and restores current warnings after f()
returns or raises an exception. If both f and restoring the warnings raise exceptions, the latter is raised.
Warn with "unknown-warning" if any unknown warnings are in the string with non-disabled status.
For command line -w, this avoids using the warning system to avoid breaking "-w -unknown-warning".
module CoreCategories : sig ... end
Categories used in coq-core. Might not be exhaustive.