diff options
author | Maxime Dénès <mail@maximedenes.fr> | 2017-07-07 09:51:33 +0200 |
---|---|---|
committer | Maxime Dénès <mail@maximedenes.fr> | 2017-07-07 09:51:33 +0200 |
commit | b833c97d8f9f29497af02a11cd045ff05816fc7e (patch) | |
tree | 473239b2d9a14eb7d1b70132a725685c9381ceae | |
parent | 3375786c89b3b51748795ca76d84935b0b537171 (diff) | |
parent | b4e1a902910cfab698fd5bdd2e9a18a28944c95e (diff) |
Merge PR #816: In enter_one, not having exactly one goal is a fatal error of the monad.
-rw-r--r-- | engine/proofview.ml | 9 | ||||
-rw-r--r-- | engine/proofview.mli | 2 |
2 files changed, 2 insertions, 9 deletions
diff --git a/engine/proofview.ml b/engine/proofview.ml index c542fd976..b4e2160f4 100644 --- a/engine/proofview.ml +++ b/engine/proofview.ml @@ -1072,13 +1072,6 @@ module Goal = struct end end - exception NotExactlyOneSubgoal - let _ = CErrors.register_handler begin function - | NotExactlyOneSubgoal -> - CErrors.user_err (Pp.str"Not exactly one subgoal.") - | _ -> raise CErrors.Unhandled - end - let enter_one f = let open Proof in Comb.get >>= function @@ -1090,7 +1083,7 @@ module Goal = struct let (e, info) = CErrors.push e in tclZERO ~info e end - | _ -> tclZERO NotExactlyOneSubgoal + | _ -> assert false (* unsatisfied not-exactly-one-goal precondition *) let goals = Pv.get >>= fun step -> diff --git a/engine/proofview.mli b/engine/proofview.mli index e98f59f0f..530204501 100644 --- a/engine/proofview.mli +++ b/engine/proofview.mli @@ -498,7 +498,7 @@ module Goal : sig val enter : ([ `LZ ] t -> unit tactic) -> unit tactic (** Like {!enter}, but assumes exactly one goal under focus, raising *) - (** an error otherwise. *) + (** a fatal error otherwise. *) val enter_one : ([ `LZ ] t -> 'a tactic) -> 'a tactic (** Recover the list of current goals under focus, without evar-normalization. |