aboutsummaryrefslogtreecommitdiffhomepage
path: root/pretyping/unification.ml
diff options
context:
space:
mode:
authorGravatar Matthieu Sozeau <matthieu.sozeau@inria.fr>2016-02-02 15:47:23 +0100
committerGravatar Matthieu Sozeau <matthieu.sozeau@inria.fr>2016-02-23 18:23:18 +0100
commit5bca0e81c46c1cc6427f939263670996f570dbcf (patch)
tree1995f918cc9487dd0dbbf8c7e6eb507d2f9875ac /pretyping/unification.ml
parent55ce331822a673d710451c628ec5a731ab36da1f (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.ml3
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