aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmilio Jesus Gallego Arias2018-09-25 01:53:18 +0200
committerEmilio Jesus Gallego Arias2019-03-27 23:22:50 +0100
commit3b95c063fae710bc7a943e0dd02617bac09c21bc (patch)
treecec0ec09a7123cff8179b158a93de37132d486a3
parentc643db27da50d947f979e23ef804422d5774d11e (diff)
[printing] Removal of imperative state.
-rw-r--r--printing/proof_diffs.ml9
1 files changed, 6 insertions, 3 deletions
diff --git a/printing/proof_diffs.ml b/printing/proof_diffs.ml
index d620e14a94..ab4501fe75 100644
--- a/printing/proof_diffs.ml
+++ b/printing/proof_diffs.ml
@@ -547,13 +547,16 @@ let match_goals ot nt =
| None -> ());
!nevar_to_oevar
+let get_proof_context (p : Proof.t) =
+ let Proof.{goals; sigma} = Proof.data p in
+ sigma, Refiner.pf_env { Evd.it = List.(hd goals); sigma }
-let to_constr p =
+let to_constr pf =
let open CAst in
- let pprf = Proof.partial_proof p in
+ let pprf = Proof.partial_proof pf in
(* pprf generally has only one element, but it may have more in the derive plugin *)
let t = List.hd pprf in
- let sigma, env = Pfedit.get_current_context ~p () in
+ let sigma, env = get_proof_context pf in
let x = Constrextern.extern_constr false env sigma t in (* todo: right options?? *)
x.v