Scroll to navigation

Warnings(3) OCaml library Warnings(3)

NAME

Warnings - Warning definitions

Module

Module Warnings

Documentation

Module Warnings
: sig end

Warning definitions

Warning: this module is unstable and part of Compiler_libs .

type loc = {
loc_start : Lexing.position ;
loc_end : Lexing.position ;
loc_ghost : bool ;
}

type t =
| Comment_start
| Comment_not_end
| 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 * bool
| Unused_rec_flag
| Name_out_of_scope of string * string list * bool
| Ambiguous_name of string list * string list * bool * string
| 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
| Unused_module of string
| Unboxable_type_in_prim_decl of string
| Constraint_on_gadt
| Erroneous_printed_signature of string
| Unsafe_without_parsing
| Redefining_unit of string
| Unused_open_bang of string
| Unused_functor_parameter of string

type alert = {
kind : string ;
message : string ;
def : loc ;
use : loc ;
}

val parse_options : bool -> string -> unit

val parse_alert_option : string -> unit

Disable/enable alerts based on the parameter to the -alert command-line option. Raises Arg.Bad if the string is not a valid specification.

val without_warnings : (unit -> 'a) -> 'a

Run the thunk with all warnings and alerts disabled.

val is_active : t -> bool

val is_error : t -> bool

val defaults_w : string

val defaults_warn_error : string

type reporting_information = {
id : string ;
message : string ;
is_error : bool ;
sub_locs : (loc * string) list ;
}

val report : t -> [ `Active of reporting_information | `Inactive ]

val report_alert : alert -> [ `Active of reporting_information | `Inactive ]

exception Errors

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

val mk_lazy : (unit -> 'a) -> 'a Lazy.t

Like Lazy.of_fun , but the function is applied with the warning/alert settings at the time mk_lazy is called.

2022-03-11 OCamldoc