# Module Warnings

    module Warnings: sig .. end

    type t =

`|` | `Comment_start`
`|` | `Comment_not_end`
`|` | `Deprecated of `string``
`|` | `Fragile_match of `string``
`|` | `Partial_application`
`|` | `Labels_omitted of `string list``
`|` | `Method_override of `string list``
`|` | `Partial_match of `string``
`|` | `Non_closed_record_pattern of `string``
`|` | `Statement_type`
`|` | `Unused_match`
`|` | `Unused_pat`
`|` | `Instance_variable_override of `string list``
`|` | `Illegal_backslash`
`|` | `Implicit_public_methods of `string list``
`|` | `Unerasable_optional_argument`
`|` | `Undeclared_virtual_method of `string``
`|` | `Not_principal of `string``
`|` | `Without_principality of `string``
`|` | `Unused_argument`
`|` | `Nonreturning_statement`
`|` | `Preprocessor of `string``
`|` | `Useless_record_with`
`|` | `Bad_module_name of `string``
`|` | `All_clauses_guarded`
`|` | `Unused_var of `string``
`|` | `Unused_var_strict of `string``
`|` | `Wildcard_arg_to_constant_constr`
`|` | `Eol_in_string`
`|` | `Duplicate_definitions of `string * string * string * string``
`|` | `Multiple_definition of `string * string * string``
`|` | `Unused_value_declaration of `string``
`|` | `Unused_open of `string``
`|` | `Unused_type_declaration of `string``
`|` | `Unused_for_index of `string``
`|` | `Unused_ancestor of `string``
`|` | `Unused_constructor of `string * bool * bool``
`|` | `Unused_extension of `string * bool * bool``
`|` | `Unused_rec_flag`
`|` | `Name_out_of_scope of `string * string list * bool``
`|` | `Ambiguous_name of `string list * string list * bool``
`|` | `Disambiguated_name of `string``
`|` | `Nonoptional_label of `string``
`|` | `Open_shadow_identifier of `string * string``
`|` | `Open_shadow_label_constructor of `string * string``
`|` | `Bad_env_variable of `string * string``
`|` | `Attribute_payload of `string * string``
`|` | `Eliminated_optional_arguments of `string list``
`|` | `No_cmi_file of `string * string option``
`|` | `Bad_docstring of `bool``
`|` | `Expect_tailcall`
`|` | `Fragile_literal_pattern`
`|` | `Misplaced_attribute of `string``
`|` | `Duplicated_attribute of `string``
`|` | `Inlining_impossible of `string``
`|` | `Unreachable_case`
`|` | `Ambiguous_pattern of `string list``
`|` | `No_cmx_file of `string``
`|` | `Assignment_to_non_mutable_value`

    val parse_options : bool -> string -> unit

    val is_active : t -> bool

    val is_error : t -> bool

    val defaults_w : string

    val defaults_warn_error : string

    val print : Format.formatter -> t -> unit

    exception Errors of int

    val check_fatal : unit -> unit

    val reset_fatal : unit -> unit

    val help_warnings : unit -> unit

    type state

    val backup : unit -> state

    val restore : state -> unit