Module Types.DIAG

type 'a used_feature = {
  1. loc : Cobol_common.srcloc;
  2. feature : feature_spec;
  3. reason : 'a;
}
and feature_spec =
  1. | F : _ FEATURE.support_level configurable -> feature_spec
type error =
  1. | Invalid_use_of_feature of error_reason used_feature
and error_reason = [
  1. | `Unconformable of configuration
  2. | `Used
]
val error_loc : error -> Cobol_common.srcloc
val pp_error : Stdlib.Format.formatter -> error -> unit
type warning =
  1. | Feature_used of warning_reason used_feature
and warning_reason = [
  1. | `Archaic of configuration
  2. | `Obsolete of configuration
  3. | `Ignored
  4. | `Used
]
val warning_loc : warning -> Cobol_common.srcloc
val pp_warning : Stdlib.Format.formatter -> warning -> unit
type diagnostic =
  1. | Error of error
  2. | Warning of warning
val decompose_verification_result : 'a FEATURE.verification_result -> 'a option * diagnostic option