diff options
author | 2012-10-22 17:04:42 +0000 | |
---|---|---|
committer | 2012-10-22 17:04:42 +0000 | |
commit | 575bccf45330fb6147d67c5198cee06af4e79efe (patch) | |
tree | 55390af6048b440759d44925894a832278a374b0 | |
parent | 365f3d9d7224d32544f358a02a0efb9566a79bdf (diff) |
Fix bug #2892
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@15916 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r-- | proofs/pfedit.ml | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/proofs/pfedit.ml b/proofs/pfedit.ml index cad700b84..962061f34 100644 --- a/proofs/pfedit.ml +++ b/proofs/pfedit.ml @@ -49,9 +49,12 @@ let undo_todepth n = let start_proof id str hyps c ?init_tac ?compute_guard hook = let goals = [ (Global.env_of_context hyps , c) ] in - let init_tac = Option.map Proofview.V82.tactic init_tac in Proof_global.start_proof id str goals ?compute_guard hook; - try Option.iter Proof_global.run_tactic init_tac + let tac = match init_tac with + | Some tac -> Proofview.V82.tactic tac + | None -> Proofview.tclUNIT () + in + try Proof_global.run_tactic tac with e -> Proof_global.discard_current (); raise e let restart_proof () = undo_todepth 1 |