diff options
author | Maxime Dénès <mail@maximedenes.fr> | 2018-02-01 18:42:28 +0100 |
---|---|---|
committer | Maxime Dénès <mail@maximedenes.fr> | 2018-02-01 18:42:28 +0100 |
commit | 48eab4964ffe3d87c8036ed3b10563c595838d73 (patch) | |
tree | a147f035b218656eaae79949cef7a46ce230d53d /engine | |
parent | 700c08b1215e11470814ce82e04551ffc00cdfeb (diff) | |
parent | 1176d4086b65c79a1d30a55640d3d933fa24a7c1 (diff) |
Merge PR #6675: [proofview] enter_one: add __LOC__ argument to get relevant error msg
Diffstat (limited to 'engine')
-rw-r--r-- | engine/proofview.ml | 5 | ||||
-rw-r--r-- | engine/proofview.mli | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/engine/proofview.ml b/engine/proofview.ml index 0a6435195..47b9b406d 100644 --- a/engine/proofview.ml +++ b/engine/proofview.ml @@ -1086,7 +1086,7 @@ module Goal = struct end end - let enter_one f = + let enter_one ?(__LOC__=__LOC__) f = let open Proof in Comb.get >>= function | [goal] -> begin @@ -1097,7 +1097,8 @@ module Goal = struct let (e, info) = CErrors.push e in tclZERO ~info e end - | _ -> assert false (* unsatisfied not-exactly-one-goal precondition *) + | _ -> + CErrors.anomaly Pp.(str __LOC__ ++ str " enter_one") let goals = Pv.get >>= fun step -> diff --git a/engine/proofview.mli b/engine/proofview.mli index 59728a2fd..b02fde3a8 100644 --- a/engine/proofview.mli +++ b/engine/proofview.mli @@ -499,7 +499,7 @@ module Goal : sig (** Like {!enter}, but assumes exactly one goal under focus, raising *) (** a fatal error otherwise. *) - val enter_one : ([ `LZ ] t -> 'a tactic) -> 'a tactic + val enter_one : ?__LOC__:string -> ([ `LZ ] t -> 'a tactic) -> 'a tactic (** Recover the list of current goals under focus, without evar-normalization. FIXME: encapsulate the level in an existential type. *) |