diff options
author | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2016-02-02 15:47:23 +0100 |
---|---|---|
committer | Matthieu Sozeau <matthieu.sozeau@inria.fr> | 2016-02-23 18:23:18 +0100 |
commit | 5bca0e81c46c1cc6427f939263670996f570dbcf (patch) | |
tree | 1995f918cc9487dd0dbbf8c7e6eb507d2f9875ac /pretyping/unification.ml | |
parent | 55ce331822a673d710451c628ec5a731ab36da1f (diff) |
Fix part of bug #4533: respect declared global transparency of
projections in unification.ml
Diffstat (limited to 'pretyping/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 6cb1bc702..55210d067 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 |