aboutsummaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
authorGaëtan Gilbert2020-11-12 11:13:50 +0100
committerGaëtan Gilbert2020-11-13 12:55:35 +0100
commit89f5d2503d68dae235b9c2153d34f0def30ff626 (patch)
tree3dcf3a5a45b6f91baf7e3f9460fad07ec3b76c51 /engine
parente733f11f54cb847271c13f79538e8823c4d93038 (diff)
Make the universe of primitive arrays irrelevant
Fix #13354 This change is very specific to array, but should not be a significant obstacle to generalization of the feature to eg axioms if we want to later.
Diffstat (limited to 'engine')
-rw-r--r--engine/eConstr.ml3
1 files changed, 3 insertions, 0 deletions
diff --git a/engine/eConstr.ml b/engine/eConstr.ml
index 0c84dee572..c29de27efb 100644
--- a/engine/eConstr.ml
+++ b/engine/eConstr.ml
@@ -452,6 +452,9 @@ let eq_universes env sigma cstrs cv_pb refargs l l' =
let open GlobRef in
let open UnivProblem in
match refargs with
+ | Some (ConstRef c, 1) when Environ.is_array_type env c ->
+ cstrs := compare_cumulative_instances cv_pb true [|Univ.Variance.Irrelevant|] l l' !cstrs;
+ true
| None | Some (ConstRef _, _) ->
cstrs := enforce_eq_instances_univs true l l' !cstrs; true
| Some (VarRef _, _) -> assert false (* variables don't have instances *)