aboutsummaryrefslogtreecommitdiff
path: root/kernel/safe_typing.ml
diff options
context:
space:
mode:
authorMaxime Dénès2017-10-09 15:18:37 +0200
committerMaxime Dénès2017-10-09 15:18:37 +0200
commit73a858469479651cc4baf631a45a9ff1d69d0c66 (patch)
treebefde7e5f47ccdf4ab6063a58357f8aab7ace5b8 /kernel/safe_typing.ml
parenta82c30c08c7442b6bb43829d2be6a299f493ca88 (diff)
parent675a1dc401eb9a5540ba5bc9a522c1f84d4c3d54 (diff)
Merge PR #1086: [stm] [flags] Move document mode flags to the STM.
Diffstat (limited to 'kernel/safe_typing.ml')
-rw-r--r--kernel/safe_typing.ml7
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/safe_typing.ml b/kernel/safe_typing.ml
index ad622b07d8..fd024b2157 100644
--- a/kernel/safe_typing.ml
+++ b/kernel/safe_typing.ml
@@ -683,12 +683,15 @@ let build_module_body params restype senv =
with one extra component and some updated fields
(constraints, required, etc) *)
+let allow_delayed_constants = ref false
+
let propagate_senv newdef newenv newresolver senv oldsenv =
let now_cst, later_cst = List.partition Future.is_val senv.future_cst in
(* This asserts that after Paral-ITP, standard vo compilation is behaving
* exctly as before: the same universe constraints are added to modules *)
- if !Flags.compilation_mode = Flags.BuildVo &&
- !Flags.async_proofs_mode = Flags.APoff then assert(later_cst = []);
+ if not !allow_delayed_constants && later_cst <> [] then
+ CErrors.anomaly ~label:"safe_typing"
+ Pp.(str "True Future.t were created for opaque constants even if -async-proofs is off");
{ oldsenv with
env = newenv;
modresolver = newresolver;