aboutsummaryrefslogtreecommitdiff
path: root/proofs
diff options
context:
space:
mode:
Diffstat (limited to 'proofs')
-rw-r--r--proofs/clenvtac.ml19
-rw-r--r--proofs/clenvtac.mli2
2 files changed, 11 insertions, 10 deletions
diff --git a/proofs/clenvtac.ml b/proofs/clenvtac.ml
index 6873bbb112..941d789dd5 100644
--- a/proofs/clenvtac.ml
+++ b/proofs/clenvtac.ml
@@ -104,14 +104,15 @@ let fail_quick_unif_flags = {
}
(* let unifyTerms m n = walking (fun wc -> fst (w_Unify CONV m n [] wc)) *)
-let unifyTerms ?(flags=fail_quick_unif_flags) m n gls =
- let env = pf_env gls in
- let evd = create_goal_evar_defs (project gls) in
- try
+let unify ?(flags=fail_quick_unif_flags) m =
+ Proofview.Goal.raw_enter begin fun gl ->
+ let env = Tacmach.New.pf_env gl in
+ let n = Tacmach.New.pf_nf_concl gl in
+ let evd = create_goal_evar_defs (Proofview.Goal.sigma gl) in
+ try
let evd' = w_unify env evd CONV ~flags m n in
- tclIDTAC {it = gls.it; sigma = evd'; }
+ Proofview.V82.tclEVARS evd'
with e when Errors.noncritical e ->
- tclFAIL 0 (Errors.print e) gls
-
-let unify ?(flags=fail_quick_unif_flags) m gls =
- let n = pf_concl gls in unifyTerms ~flags m n gls
+ (** This is Tacticals.tclFAIL *)
+ Proofview.tclZERO (FailError (0, lazy (Errors.print e)))
+ end
diff --git a/proofs/clenvtac.mli b/proofs/clenvtac.mli
index 173eb32e31..3cfe1f3155 100644
--- a/proofs/clenvtac.mli
+++ b/proofs/clenvtac.mli
@@ -13,7 +13,7 @@ open Tacexpr
open Unification
(** Tactics *)
-val unify : ?flags:unify_flags -> constr -> tactic
+val unify : ?flags:unify_flags -> constr -> unit Proofview.tactic
val clenv_refine : evars_flag -> ?with_classes:bool -> clausenv -> tactic
val res_pf : clausenv -> ?with_evars:evars_flag -> ?flags:unify_flags -> tactic