aboutsummaryrefslogtreecommitdiff
path: root/proofs
diff options
context:
space:
mode:
Diffstat (limited to 'proofs')
-rw-r--r--proofs/goal.mli2
-rw-r--r--proofs/logic.ml3
2 files changed, 3 insertions, 2 deletions
diff --git a/proofs/goal.mli b/proofs/goal.mli
index 345f46abfd..267d264931 100644
--- a/proofs/goal.mli
+++ b/proofs/goal.mli
@@ -103,7 +103,7 @@ val refine : refinable -> subgoals sensitive
(*** Cleaning goals ***)
(* Implements the [clear] tactic *)
-val clear : Names.Id.t list -> subgoals sensitive
+val clear : Names.Id.Set.t -> subgoals sensitive
(* Implements the [clearbody] tactic *)
val clear_body : Names.Id.t list -> subgoals sensitive
diff --git a/proofs/logic.ml b/proofs/logic.ml
index 68031e2b55..84bbd9751e 100644
--- a/proofs/logic.ml
+++ b/proofs/logic.ml
@@ -529,7 +529,7 @@ let prim_refiner r sigma goal =
let sign,cl,sigma =
if replace then
let nexthyp = get_hyp_after id (named_context_of_val sign) in
- let sign,cl,sigma = clear_hyps sigma [id] sign cl in
+ let sign,cl,sigma = clear_hyps sigma (Id.Set.singleton id) sign cl in
move_hyp true false ([],(id,None,t),named_context_of_val sign)
nexthyp,
cl,sigma
@@ -654,6 +654,7 @@ let prim_refiner r sigma goal =
(* And now the structural rules *)
| Thin ids ->
+ let ids = List.fold_left (fun accu x -> Id.Set.add x accu) Id.Set.empty ids in
let (hyps,concl,nsigma) = clear_hyps sigma ids sign cl in
let (gl,ev,sigma) =
Goal.V82.mk_goal nsigma hyps concl (Goal.V82.extra nsigma goal)