diff --git a/src/plugins/wp/Why3Provers.ml b/src/plugins/wp/Why3Provers.ml
index 232c05888e6f00a5ba13a24e09495becd39a764c..ab50c9858b2de0a3fec9d8adc147994a3e0db981 100644
--- a/src/plugins/wp/Why3Provers.ml
+++ b/src/plugins/wp/Why3Provers.ml
@@ -46,9 +46,9 @@ let configure =
         begin try
             Arg.parse_argv ~current:(ref 0) args
               (Why3.Debug.Args.[desc_debug;desc_debug_all;desc_debug_list])
-              (fun _ -> raise (Arg.Help "Unknown why3 option"))
+              (fun opt -> raise (Arg.Bad ("unknown option: " ^ opt)))
               "Why3 options"
-          with Arg.Bad s -> Wp_parameters.abort "%s" s
+          with Arg.Bad s | Arg.Help s -> Wp_parameters.abort "%s" s
         end;
         ignore (Why3.Debug.Args.option_list ());
         Why3.Debug.Args.set_flags_selected ();