diff options
| author | Matthieu Sozeau | 2016-02-02 15:47:23 +0100 |
|---|---|---|
| committer | Matthieu Sozeau | 2016-02-23 18:23:18 +0100 |
| commit | 5bca0e81c46c1cc6427f939263670996f570dbcf (patch) | |
| tree | 1995f918cc9487dd0dbbf8c7e6eb507d2f9875ac | |
| parent | 55ce331822a673d710451c628ec5a731ab36da1f (diff) | |
Fix part of bug #4533: respect declared global transparency of
projections in unification.ml
| -rw-r--r-- | pretyping/unification.ml | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pretyping/unification.ml b/pretyping/unification.ml index 6cb1bc7028..55210d067e 100644 --- a/pretyping/unification.ml +++ b/pretyping/unification.ml @@ -481,7 +481,8 @@ let key_of env b flags f = Id.Pred.mem id (fst flags.modulo_delta) -> Some (IsKey (VarKey id)) | Proj (p, c) when Projection.unfolded p - || Cpred.mem (Projection.constant p) (snd flags.modulo_delta) -> + || (is_transparent env (ConstKey (Projection.constant p)) && + (Cpred.mem (Projection.constant p) (snd flags.modulo_delta))) -> Some (IsProj (p, c)) | _ -> None |
