aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGaëtan Gilbert2019-01-17 11:44:38 +0000
committerMaxime Dénès2019-04-29 17:36:23 +0200
commitaf3673b08204cb4d3d6994aa3a5bd6363bfd7459 (patch)
tree3ec79c51ea0c3879f002a26546757c60c463f05c
parent05c5c3ab8e52ebe43179975b42142f2646b0479e (diff)
Fix #9344, #9348: incorrect unsafe to_constr in vnorm
-rw-r--r--pretyping/vnorm.ml2
-rw-r--r--test-suite/bugs/closed/bug_9344.v1
-rw-r--r--test-suite/bugs/closed/bug_9348.v3
3 files changed, 5 insertions, 1 deletions
diff --git a/pretyping/vnorm.ml b/pretyping/vnorm.ml
index 62e9e477f7..1fe6545ce4 100644
--- a/pretyping/vnorm.ml
+++ b/pretyping/vnorm.ml
@@ -202,7 +202,7 @@ and nf_univ_args ~nb_univs mk env sigma stk =
and nf_evar env sigma evk stk =
let evi = try Evd.find sigma evk with Not_found -> assert false in
let hyps = Environ.named_context_of_val (Evd.evar_filtered_hyps evi) in
- let concl = EConstr.Unsafe.to_constr @@ Evd.evar_concl evi in
+ let concl = EConstr.to_constr ~abort_on_undefined_evars:false sigma @@ Evd.evar_concl evi in
if List.is_empty hyps then
nf_stk env sigma (mkEvar (evk, [||])) concl stk
else match stk with
diff --git a/test-suite/bugs/closed/bug_9344.v b/test-suite/bugs/closed/bug_9344.v
new file mode 100644
index 0000000000..fbf86b2dad
--- /dev/null
+++ b/test-suite/bugs/closed/bug_9344.v
@@ -0,0 +1 @@
+Compute _ I.
diff --git a/test-suite/bugs/closed/bug_9348.v b/test-suite/bugs/closed/bug_9348.v
new file mode 100644
index 0000000000..a4673b5ffc
--- /dev/null
+++ b/test-suite/bugs/closed/bug_9348.v
@@ -0,0 +1,3 @@
+Set Primitive Projections.
+Record r {A} := R {f : A -> A}.
+Compute f _ I.