From 54f0149481afaeacf7c41dc131aab16dbe29379b Mon Sep 17 00:00:00 2001 From: Enrico Tassi Date: Thu, 31 Jan 2019 18:06:13 +0100 Subject: [proof] optimize proof always works on incomplete proofs --- engine/proofview.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/engine/proofview.ml b/engine/proofview.ml index cf4224bbdb..d4ad53ff5f 100644 --- a/engine/proofview.ml +++ b/engine/proofview.ml @@ -39,7 +39,7 @@ let proofview p = let compact el ({ solution } as pv) = let nf c = Evarutil.nf_evar solution c in - let nf0 c = EConstr.(to_constr solution (of_constr c)) in + let nf0 c = EConstr.(to_constr ~abort_on_undefined_evars:false solution (of_constr c)) in let size = Evd.fold (fun _ _ i -> i+1) solution 0 in let new_el = List.map (fun (t,ty) -> nf t, nf ty) el in let pruned_solution = Evd.drop_all_defined solution in -- cgit v1.2.3 From 50bf6109ad0625c81c9776f9ab823a501c574d5b Mon Sep 17 00:00:00 2001 From: Enrico Tassi Date: Thu, 31 Jan 2019 18:13:49 +0100 Subject: add test --- test-suite/bugs/closed/bug_9451.v | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 test-suite/bugs/closed/bug_9451.v diff --git a/test-suite/bugs/closed/bug_9451.v b/test-suite/bugs/closed/bug_9451.v new file mode 100644 index 0000000000..03bb0433f1 --- /dev/null +++ b/test-suite/bugs/closed/bug_9451.v @@ -0,0 +1,8 @@ +Goal False. +cut True. +assert False. +evar (x : True). +let v := open_constr:(_) in idtac. all: exfalso; clear. +Optimize Proof. +(* Error: Anomaly "grounding a non evar-free term" *) +Abort All. -- cgit v1.2.3