aboutsummaryrefslogtreecommitdiff
path: root/stm
diff options
context:
space:
mode:
authorFabian Kunze2020-11-27 11:11:23 +0100
committerFabian Kunze2020-11-27 12:16:40 +0100
commitc6cabd1ff266a91022eb86caf4a99e89c0626430 (patch)
tree676ace0a7476e98dd34c5db6a66fa1896bfe58a8 /stm
parent66429ecca2cc28875ec37b879806744bd3a63179 (diff)
Improved error message on nested proofs
to include most common reason when this happens on accident
Diffstat (limited to 'stm')
-rw-r--r--stm/stm.ml6
1 files changed, 4 insertions, 2 deletions
diff --git a/stm/stm.ml b/stm/stm.ml
index f7d66b7b53..1c06c1efb7 100644
--- a/stm/stm.ml
+++ b/stm/stm.ml
@@ -2681,8 +2681,10 @@ let process_transaction ~doc ?(newtip=Stateid.fresh ())
| VtStartProof (guarantee, names) ->
if not (get_allow_nested_proofs ()) && VCS.proof_nesting () > 0 then
- "Nested proofs are not allowed unless you turn the Nested Proofs Allowed flag on."
- |> Pp.str
+ "Nested proofs are discouraged and not allowed by default. \
+ This error probably means that you forgot to close the last \"Proof.\" with \"Qed.\" or \"Defined.\". \
+ If you really intended to use nested proofs, you can do so by turning the \"Nested Proofs Allowed\" flag on."
+ |> Pp.strbrk
|> (fun s -> (UserError (None, s), Exninfo.null))
|> State.exn_on ~valid:Stateid.dummy newtip
|> Exninfo.iraise