diff options
Diffstat (limited to 'pretyping/cases.ml')
-rw-r--r-- | pretyping/cases.ml | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/pretyping/cases.ml b/pretyping/cases.ml index 6ac1c8a16..fd8f24370 100644 --- a/pretyping/cases.ml +++ b/pretyping/cases.ml @@ -112,12 +112,11 @@ type alias_constr = let mkSpecialLetInJudge j (na,(deppat,nondeppat,d,t)) = { uj_val = - (match d with + (if isRel deppat then subst1 nondeppat j.uj_val + else match d with | DepAlias -> mkLetIn (na,deppat,t,j.uj_val) | NonDepAlias -> - if (not (dependent (mkRel 1) j.uj_type)) - or (* A leaf: *) isRel deppat - then + if (not (dependent (mkRel 1) j.uj_type)) then (* The body of pat is not needed to type j - see *) (* insert_aliases - and both deppat and nondeppat have the *) (* same type, then one can freely substitute one by the other *) |