aboutsummaryrefslogtreecommitdiff
path: root/stm
diff options
context:
space:
mode:
authorGaëtan Gilbert2019-06-07 15:42:39 +0200
committerGaëtan Gilbert2019-06-12 14:00:05 +0200
commite49ecf90e565b9e49f114cadb6b24ab660cd02f3 (patch)
treee93b6b46a5458d02b974c87a44410f39b34d9d76 /stm
parent0d4300771e4a6a26d948872262a79695a38c7e0d (diff)
Fix #9455: avoid update_global_env when unchanged Global.universes()
This also makes vernacentries correct wrt update_global_env.
Diffstat (limited to 'stm')
-rw-r--r--stm/stm.ml9
1 files changed, 3 insertions, 6 deletions
diff --git a/stm/stm.ml b/stm/stm.ml
index 1e89d6937c..6250d51fdd 100644
--- a/stm/stm.ml
+++ b/stm/stm.ml
@@ -2407,8 +2407,7 @@ let known_state ~doc ?(redefine_qed=false) ~cache id =
(* State resulting from reach *)
let st = Vernacstate.freeze_interp_state ~marshallable:false in
ignore(stm_vernac_interp id st x)
- );
- if eff then update_global_env ()
+ )
), eff || cache, true
| `Cmd { cast = x; ceff = eff } -> (fun () ->
(match !cur_opt.async_proofs_mode with
@@ -2416,8 +2415,7 @@ let known_state ~doc ?(redefine_qed=false) ~cache id =
resilient_command reach view.next
| APoff -> reach view.next);
let st = Vernacstate.freeze_interp_state ~marshallable:false in
- ignore(stm_vernac_interp id st x);
- if eff then update_global_env ()
+ ignore(stm_vernac_interp id st x)
), eff || cache, true
| `Fork ((x,_,_,_), None) -> (fun () ->
resilient_command reach view.next;
@@ -2541,8 +2539,7 @@ let known_state ~doc ?(redefine_qed=false) ~cache id =
| `Sideff (ReplayCommand x,_) -> (fun () ->
reach view.next;
let st = Vernacstate.freeze_interp_state ~marshallable:false in
- ignore(stm_vernac_interp id st x);
- update_global_env ()
+ ignore(stm_vernac_interp id st x)
), cache, true
| `Sideff (CherryPickEnv, origin) -> (fun () ->
reach view.next;