aboutsummaryrefslogtreecommitdiff
path: root/engine/uState.ml
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2020-10-09 11:42:21 +0200
committerPierre-Marie Pédrot2020-10-09 11:42:21 +0200
commitcc3ef68a475140bf7d3ca7a2fd3bc593508eb42c (patch)
treef7e5671ab8228b8e73fe34e289076ba9dc801f55 /engine/uState.ml
parent022632c074205bbe9fa3f992782e948c12cb7384 (diff)
parent316592a31b463568f5136757c3570eaa8e1f0167 (diff)
Merge PR #13087: Put type-in-type flag in ugraph.
Reviewed-by: ppedrot
Diffstat (limited to 'engine/uState.ml')
-rw-r--r--engine/uState.ml4
1 files changed, 4 insertions, 0 deletions
diff --git a/engine/uState.ml b/engine/uState.ml
index 8d1584cd95..2cb88c7fff 100644
--- a/engine/uState.ml
+++ b/engine/uState.ml
@@ -286,6 +286,10 @@ let process_universe_constraints ctx cstrs =
if not (drop_weak_constraints ()) then weak := UPairSet.add (l,r) !weak; local
| UEq (l, r) -> equalize_universes l r local
in
+ let unify_universes cst local =
+ if not (UGraph.type_in_type univs) then unify_universes cst local
+ else try unify_universes cst local with UniverseInconsistency _ -> local
+ in
let local =
UnivProblem.Set.fold unify_universes cstrs Constraint.empty
in