@@ -105,6 +105,7 @@ type t =
105105 | Bs_unimplemented_primitive of string (* 106 *)
106106 | Bs_integer_literal_overflow (* 107 *)
107107 | Bs_uninterpreted_delimiters of string (* 108 *)
108+ | Bs_toplevel_expression_unit (* 109 *)
108109#end
109110;;
110111
@@ -193,10 +194,11 @@ let number = function
193194 | Bs_unimplemented_primitive _ -> 106
194195 | Bs_integer_literal_overflow -> 107
195196 | Bs_uninterpreted_delimiters _ -> 108
197+ | Bs_toplevel_expression_unit -> 109
196198#end
197199;;
198200
199- let last_warning_number = 108
201+ let last_warning_number = 109
200202let letter_all =
201203 let rec loop i = if i = 0 then [] else i :: loop (i - 1 ) in
202204 loop last_warning_number
@@ -331,7 +333,7 @@ let parse_options errflag s =
331333 current := {error; active}
332334
333335(* If you change these, don't forget to change them in man/ocamlc.m *)
334- let defaults_w = " +a-4-6-7-9-27-29-32..42-44-45-48-50-60-102" ;;
336+ let defaults_w = " +a-4-6-7-9-27-29-32..42-44-45-48-50-60-102-109 " ;;
335337let defaults_warn_error = " -a+31" ;;
336338
337339let () =
@@ -609,6 +611,8 @@ let message = function
609611 " Integer literal exceeds the range of representable integers of type int"
610612 | Bs_uninterpreted_delimiters s ->
611613 " Uninterpreted delimiters " ^ s
614+ | Bs_toplevel_expression_unit ->
615+ " Toplevel expression is expected to have unit type."
612616#end
613617;;
614618
@@ -744,7 +748,8 @@ let descriptions =
744748 105 , " External name is inferred from val name is unsafe from refactoring when changing value name" ;
745749 106 , " Unimplemented primitive used:" ;
746750 107 , " Integer literal exceeds the range of representable integers of type int" ;
747- 108 , " Uninterpreted delimiters (for unicode)"
751+ 108 , " Uninterpreted delimiters (for unicode)" ;
752+ 109 , " Toplevel expression has unit type"
748753#end
749754 ]
750755;;
0 commit comments