From 31e780a275af0ad4be10a61b0096b8f5be38b6d3 Mon Sep 17 00:00:00 2001 From: Arnaud Spiwack Date: Wed, 6 Aug 2014 15:06:17 +0200 Subject: [uconstr]: use a closure instead of eager substitution. This avoids relying on detyping. As Matthieu Sozeau pointed out to me, [understand∘detyping] has no reason to be the identity. This may create surprising behaviour some times (when a detyped term loses its relations to the current context, in particular in terms of universes), and downright incompatibilities in the case of refine. As a bonus this should be a faster implementation of [uconstr] with a leaner memory profile.--- proofs/evar_refiner.ml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'proofs') diff --git a/proofs/evar_refiner.ml b/proofs/evar_refiner.ml index 8c27767898..4746177ac5 100644 --- a/proofs/evar_refiner.ml +++ b/proofs/evar_refiner.ml @@ -64,6 +64,6 @@ let instantiate_pf_com evk com sigma = let evi = Evd.find sigma evk in let env = Evd.evar_filtered_env evi in let rawc = Constrintern.intern_constr env com in - let ltac_vars = (Id.Map.empty, Id.Map.empty) in + let ltac_vars = (Id.Map.empty, Id.Map.empty, Id.Map.empty) in let sigma' = w_refine (evk, evi) (ltac_vars, rawc) sigma in sigma' -- cgit v1.2.3