Skip to content
Snippets Groups Projects
Commit 223cd6a5 authored by Robbert Krebbers's avatar Robbert Krebbers
Browse files

Generate an error message if no `IntoIH` instance exists (instead of just shelving that instance).

parent d45e839a
No related branches found
No related tags found
No related merge requests found
...@@ -2312,9 +2312,12 @@ Tactic Notation "iInductionCore" tactic3(tac) "as" constr(IH) := ...@@ -2312,9 +2312,12 @@ Tactic Notation "iInductionCore" tactic3(tac) "as" constr(IH) :=
let rec fix_ihs rev_tac := let rec fix_ihs rev_tac :=
lazymatch goal with lazymatch goal with
| H : context [envs_entails _ _] |- _ => | H : context [envs_entails _ _] |- _ =>
eapply (tac_revert_ih _ _ _ H _); notypeclasses refine (tac_revert_ih _ _ _ H _ _ _);
[pm_reflexivity [iSolveTC ||
|| fail "iInduction: spatial context not empty, this should not happen" let φ := match goal with |- IntoIH _ _ => φ end in
fail "iInduction: cannot import IH" φ "into proof mode context"
|pm_reflexivity ||
fail "iInduction: spatial context not empty, this should not happen"
|clear H]; |clear H];
fix_ihs ltac:(fun j => fix_ihs ltac:(fun j =>
let IH' := eval vm_compute in let IH' := eval vm_compute in
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment