diff options
| author | Maxime Dénès | 2018-12-12 10:13:58 +0100 |
|---|---|---|
| committer | Maxime Dénès | 2018-12-12 10:13:58 +0100 |
| commit | 84a950c8e1fa06d0dd764e9a426edbd987a7989e (patch) | |
| tree | 824e99b1dbb0cac36e16b0b1ac871bc3492eb2f1 /pretyping/patternops.ml | |
| parent | d87c4c472478fbcb30de6efabc68473ee36849a1 (diff) | |
| parent | 4db7296d629f08c5a71905d8f6d29e2c4e4c0517 (diff) | |
Merge PR #8974: Fix mod_subst wrt universe polymorphism
Diffstat (limited to 'pretyping/patternops.ml')
| -rw-r--r-- | pretyping/patternops.ml | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/pretyping/patternops.ml b/pretyping/patternops.ml index a3ab250784..248d5d0a0e 100644 --- a/pretyping/patternops.ml +++ b/pretyping/patternops.ml @@ -279,10 +279,12 @@ let rec subst_pattern subst pat = match pat with | PRef ref -> let ref',t = subst_global subst ref in - if ref' == ref then pat else - let env = Global.env () in - let evd = Evd.from_env env in - pattern_of_constr env evd t + if ref' == ref then pat else (match t with + | None -> PRef ref' + | Some t -> + let env = Global.env () in + let evd = Evd.from_env env in + pattern_of_constr env evd t.Univ.univ_abstracted_value) | PVar _ | PEvar _ | PRel _ -> pat |
