diff options
| author | herbelin | 2011-12-04 20:48:20 +0000 |
|---|---|---|
| committer | herbelin | 2011-12-04 20:48:20 +0000 |
| commit | 17e99469c656a157f5ab998e21c41294ea2abbf8 (patch) | |
| tree | 4e0d8129a9f09659d91d19a05b2cc5e4d61365f9 /pretyping/unification.ml | |
| parent | c9f87fca10b37d15fc943dc4f5d2adb1c3304a3c (diff) | |
Discarding let-ins from the instances of the evars in the
pattern-unification test. They were tolerated up to r14539. Also
expanded the let-ins not bound to rel or var in the right-hand side of
a term for which pattern-unification is tested (this expansion can
refer to a non-let variable that has to be taken into account in the
pattern-unification test).
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14757 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'pretyping/unification.ml')
| -rw-r--r-- | pretyping/unification.ml | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pretyping/unification.ml b/pretyping/unification.ml index 187533ad33..78f62a5abb 100644 --- a/pretyping/unification.ml +++ b/pretyping/unification.ml @@ -443,13 +443,13 @@ let unify_0_with_initial_metas (sigma,ms,es as subst) conv_at_top env cv_pb flag | App (f1,l1), _ when (isMeta f1 && use_metas_pattern_unification flags nb l1 || use_evars_pattern_unification flags && isAllowedEvar flags f1) & - store whenmem (is_unification_pattern curenvnb f1 (Array.to_list l1) cN) -> + store whenmem (is_unification_pattern curenvnb sigma f1 (Array.to_list l1) cN) -> solve_pattern_eqn_array curenvnb f1 (restore whenmem) cN substn | _, App (f2,l2) when (isMeta f2 && use_metas_pattern_unification flags nb l2 || use_evars_pattern_unification flags && isAllowedEvar flags f2) & - store whenmem (is_unification_pattern curenvnb f2 (Array.to_list l2) cM) -> + store whenmem (is_unification_pattern curenvnb sigma f2 (Array.to_list l2) cM) -> solve_pattern_eqn_array curenvnb f2 (restore whenmem) cM substn | App (f1,l1), App (f2,l2) -> |
