aboutsummaryrefslogtreecommitdiffhomepage
path: root/tactics
diff options
context:
space:
mode:
authorGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2018-06-26 22:48:20 +0200
committerGravatar Hugo Herbelin <Hugo.Herbelin@inria.fr>2018-06-26 22:48:20 +0200
commit74716b32ce4d37a1210dfff659870995dda99e10 (patch)
treec09600ff37b5e7dcc956bb88c6125ec1390a0ceb /tactics
parentb98ae49d282f73343c1950e960f4b3bc7c28de70 (diff)
parent8ab4f8f76958d2603858ad3e4073be61ad38d113 (diff)
Merge PR #7826: evd: restrict_evar with candidates, can raise NoCandidatesLeft
Diffstat (limited to 'tactics')
-rw-r--r--tactics/tactics.ml6
1 files changed, 6 insertions, 0 deletions
diff --git a/tactics/tactics.ml b/tactics/tactics.ml
index c430edf2e..928530744 100644
--- a/tactics/tactics.ml
+++ b/tactics/tactics.ml
@@ -212,6 +212,9 @@ let clear_dependency_msg env sigma id err inglobal =
str "Cannot remove " ++ Id.print id ++
strbrk " without breaking the typing of " ++
Printer.pr_existential env sigma ev ++ str"."
+ | Evarutil.NoCandidatesLeft ev ->
+ str "Cannot remove " ++ Id.print id ++ str " as it would leave the existential " ++
+ Printer.pr_existential_key sigma ev ++ str" without candidates."
let error_clear_dependency env sigma id err inglobal =
user_err (clear_dependency_msg env sigma id err inglobal)
@@ -228,6 +231,9 @@ let replacing_dependency_msg env sigma id err inglobal =
str "Cannot change " ++ Id.print id ++
strbrk " without breaking the typing of " ++
Printer.pr_existential env sigma ev ++ str"."
+ | Evarutil.NoCandidatesLeft ev ->
+ str "Cannot change " ++ Id.print id ++ str " as it would leave the existential " ++
+ Printer.pr_existential_key sigma ev ++ str" without candidates."
let error_replacing_dependency env sigma id err inglobal =
user_err (replacing_dependency_msg env sigma id err inglobal)