Skip to content

Commit 6b758c5

Browse files
committed
fix sigma pruning when calling ltac, reachability is not correct
1 parent 0451f1b commit 6b758c5

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

coq-builtin-synterp.elpi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,10 +306,12 @@ external pred coq.env.current-section-path o:list string.
306306
kind clause type.
307307
type clause id -> grafting -> prop -> clause.
308308

309-
% Specify if the clause has to be grafted before or after a named clause
309+
% Specify if the clause has to be grafted before, grafted after or replace
310+
% a named clause
310311
kind grafting type.
311312
type before id -> grafting.
312313
type after id -> grafting.
314+
type replace id -> grafting.
313315

314316
% Specify to which module the clause should be attached to
315317
kind scope type.

coq-builtin.elpi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1711,10 +1711,12 @@ external pred coq.extra-dep i:id, o:option id.
17111711
kind clause type.
17121712
type clause id -> grafting -> prop -> clause.
17131713

1714-
% Specify if the clause has to be grafted before or after a named clause
1714+
% Specify if the clause has to be grafted before, grafted after or replace
1715+
% a named clause
17151716
kind grafting type.
17161717
type before id -> grafting.
17171718
type after id -> grafting.
1719+
type replace id -> grafting.
17181720

17191721
% Specify to which module the clause should be attached to
17201722
kind scope type.

src/coq_elpi_HOAS.ml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2434,10 +2434,10 @@ let solution2evd sigma0 { API.Data.constraints; assignments; state; pp_ctx } roo
24342434
get_declared_goals (Evar.Set.diff all_goals solved_goals) constraints state assignments pp_ctx in
24352435
debug Pp.(fun () -> str "Goals: " ++ prlist_with_sep spc Evar.print declared_goals);
24362436
debug Pp.(fun () -> str "Shelved Goals: " ++ prlist_with_sep spc Evar.print shelved_goals);
2437-
Evd.fold_undefined (fun k _ sigma ->
2437+
(* wrong: Evd.fold_undefined (fun k _ sigma ->
24382438
if Evar.Set.mem k all_goals || Evd.mem sigma0 k then sigma
24392439
else Evd.remove sigma k
2440-
) sigma sigma,
2440+
) sigma*) sigma,
24412441
declared_goals,
24422442
shelved_goals
24432443

0 commit comments

Comments
 (0)