diff options
| author | Arnaud Spiwack | 2014-08-06 15:06:17 +0200 |
|---|---|---|
| committer | Arnaud Spiwack | 2014-08-06 15:06:17 +0200 |
| commit | 31e780a275af0ad4be10a61b0096b8f5be38b6d3 (patch) | |
| tree | c37f8cd1eb307edc8558639ce173a0bcdf7bd70f /interp | |
| parent | b600c51753c5b60e62bdfcf1e6409afa1ce69d7a (diff) | |
[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.
Diffstat (limited to 'interp')
| -rw-r--r-- | interp/constrarg.mli | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/interp/constrarg.mli b/interp/constrarg.mli index a97ccb270f..359aab0d8f 100644 --- a/interp/constrarg.mli +++ b/interp/constrarg.mli @@ -50,7 +50,7 @@ val wit_constr_may_eval : (glob_constr_and_expr,evaluable_global_reference and_short_name or_var,glob_constr_pattern_and_expr) may_eval, constr) genarg_type -val wit_uconstr : (constr_expr , glob_constr_and_expr, Glob_term.glob_constr) genarg_type +val wit_uconstr : (constr_expr , glob_constr_and_expr, Glob_term.closed_glob_constr) genarg_type val wit_open_constr : (open_constr_expr, open_glob_constr, Evd.open_constr) genarg_type |
