Out_type.Ident_conflictsThe Ident_conflicts module keeps track of conflicts arising when attributing names to identifiers and provides functions that can print explanations for these conflict in error messages
exists() returns true if the current naming context renamed an identifier to avoid a name collision
type explanation = {kind : Shape.Sig_component_kind.t;name : string;root_name : string;location : Location.t;}val list_explanations : unit -> explanation listlist_explanations() return the list of conflict explanations collected up to this point, and reset the list of collected explanations
val print_located_explanations : explanation list Format_doc.printerval err_print : Format_doc.formatter -> unitval err_msg : unit -> Format_doc.doc optionerr_msg () return an error message if there are pending conflict explanations at this point. It is often important to check for conflicts after all printing is done, thus the delayed nature of err_msg