aboutsummaryrefslogtreecommitdiff
path: root/stm
diff options
context:
space:
mode:
authorMatthieu Sozeau2016-03-25 16:46:50 +0100
committerMatthieu Sozeau2016-03-25 16:55:06 +0100
commit7e7b5684d8f8066b90fca3395104af7241b8aed6 (patch)
tree2d5f220f65eee3cca3a856bf823103d07e8aefc3 /stm
parent25c6356326773ac56380b81de6f58d15caae8680 (diff)
Univs: fix get_current_context (bug #4603, part I)
Return an evar_map with the right universes, when there are no focused subgoals or the proof is finished.
Diffstat (limited to 'stm')
-rw-r--r--stm/lemmas.ml10
1 files changed, 8 insertions, 2 deletions
diff --git a/stm/lemmas.ml b/stm/lemmas.ml
index f06abfcce7..fb64a10c6c 100644
--- a/stm/lemmas.ml
+++ b/stm/lemmas.ml
@@ -511,5 +511,11 @@ let save_proof ?proof = function
let get_current_context () =
try Pfedit.get_current_goal_context ()
with e when Logic.catchable_exception e ->
- let env = Global.env () in
- (Evd.from_env env, env)
+ try (* No more focused goals ? *)
+ let p = Pfedit.get_pftreestate () in
+ let evd = Proof.in_proof p (fun x -> x) in
+ (evd, Global.env ())
+ with Proof_global.NoCurrentProof ->
+ let env = Global.env () in
+ (Evd.from_env env, env)
+