lean4-htt/tests/lean/interactive
Sebastian Ullrich 8d3be96024
fix: tactics in terms in tactics may break incremental reporting (#4436)
A pending tactic mvar managed to escape into an unexpected context in
specific circumstances.

```lean
example : True := by
  · rw [show 0 = 0 by rfl]
```
* Term elaboration of the `show` creates a pending mvar for the `by rfl`
proof
* `rw` fails with an exception because the pattern does not occur in the
target
* `cdot` catches the exception and admits the goal
* `Term.runTactic` [synthesizes all pending mvars from the tactic's
execution](5f9dedfe5e/src/Lean/Elab/SyntheticMVars.lean (L350)),
including the `by rfl` proof. But this would not have happened without
`cdot` as the exception would have skipped that invocation!
* Now incrementality is confused because the nested `by rfl` proof is
unexpectedly run in the same context as the top-level proof, writing to
the wrong promise, and the error message is lost

Solution: disable incrementality for these pending mvars
2024-06-12 14:59:24 +00:00
..
533.lean test: make completion tests less dependent on core 2023-07-28 07:50:09 -07:00
533.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
863.lean test: make completion tests less dependent on core 2023-07-28 07:50:09 -07:00
863.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
1031.lean
1031.lean.expected.out
1265.lean
1265.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
1403.lean
1403.lean.expected.out feat: do not instantiate metavariables in kabstract/rw for disallowed occurrences (#2539) 2024-01-03 00:01:40 +00:00
1525.lean fix: missing info tree on elab failure 2023-01-26 13:05:57 +01:00
1525.lean.expected.out fix: missing info tree on elab failure 2023-01-26 13:05:57 +01:00
1659.lean feat: auto-complete declaration names in arbitrary namespaces 2023-07-28 07:50:09 -07:00
1659.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
4078.lean fix: hovers on binders with metavariables (#4192) 2024-05-21 10:34:58 +00:00
4078.lean.expected.out fix: hovers on binders with metavariables (#4192) 2024-05-21 10:34:58 +00:00
amb.lean
amb.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
anonHyp.lean
anonHyp.lean.expected.out feat: custom eliminators for induction and cases tactics, and beautiful eliminators for Nat (#3629) 2024-03-09 15:31:51 +00:00
autoBoundIssue.lean
autoBoundIssue.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
catHover.lean
catHover.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
codeaction.lean fix: version numbers in code actions (#2721) 2023-10-24 22:55:47 +11:00
codeaction.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
compHeader.lean
compHeader.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion.lean
completion.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion2.lean
completion2.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion3.lean
completion3.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion4.lean
completion4.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion5.lean
completion5.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion6.lean
completion6.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completion7.lean test: make completion tests less dependent on core 2023-07-28 07:50:09 -07:00
completion7.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionAtPrint.lean
completionAtPrint.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionCheck.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionCheck.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionDocString.lean
completionDocString.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionEOF.lean
completionEOF.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionFromExpectedType.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionFromExpectedType.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionIStr.lean
completionIStr.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionOpenNamespaces.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionOpenNamespaces.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionOption.lean
completionOption.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionPrefixIssue.lean
completionPrefixIssue.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionPrivateTypes.lean fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionPrivateTypes.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
completionPrv.lean
completionPrv.lean.expected.out feat: BitVec.ofBoolListLE and theorems (#3721) 2024-03-21 04:48:29 +00:00
compNamespace.lean
compNamespace.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
definition.lean
definition.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
Diff.lean
Diff.lean.expected.out
discrsIssue.lean
discrsIssue.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
dotIdCompletion.lean
dotIdCompletion.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
editAfterError.lean feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
editAfterError.lean.expected.out feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
editCompletion.lean feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
editCompletion.lean.expected.out feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
expectedTypeAsGoal.lean
expectedTypeAsGoal.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
fieldCompletion.lean
fieldCompletion.lean.expected.out chore: set literal notation (#3348) 2024-02-19 23:22:36 +00:00
foldingRange.lean
foldingRange.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
goalEOF.lean
goalEOF.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
goalIssue.lean
goalIssue.lean.expected.out feat: custom eliminators for induction and cases tactics, and beautiful eliminators for Nat (#3629) 2024-03-09 15:31:51 +00:00
goTo.lean feat: make go-to-definition on a typeclass projection application go to the instance(s) (#1767) 2023-01-19 09:10:01 +00:00
goTo.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
goTo2.lean feat: make go-to-definition on a typeclass projection application go to the instance(s) (#1767) 2023-01-19 09:10:01 +00:00
goTo2.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
haveInfo.lean feat: incremental have (#4308) 2024-06-04 09:12:27 +00:00
haveInfo.lean.expected.out feat: incremental have (#4308) 2024-06-04 09:12:27 +00:00
highlight.lean
highlight.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
hover.lean feat: hover / go-to-def for attribute cmd (#3896) 2024-04-13 07:13:25 +00:00
hover.lean.expected.out feat: hover / go-to-def for attribute cmd (#3896) 2024-04-13 07:13:25 +00:00
hoverAt.lean
hoverAt.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
hoverBinderUndescore.lean
hoverBinderUndescore.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
hoverDot.lean
hoverDot.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
hoverException.lean
hoverException.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
incrementalCombinator.lean feat: incremental have (#4308) 2024-06-04 09:12:27 +00:00
incrementalCombinator.lean.expected.out feat: incremental have (#4308) 2024-06-04 09:12:27 +00:00
incrementalCommand.lean fix: ensure incremental commands and tactics are reached only on supported paths (#4259) 2024-05-23 17:57:42 +00:00
incrementalCommand.lean.expected.out fix: ensure incremental commands and tactics are reached only on supported paths (#4259) 2024-05-23 17:57:42 +00:00
incrementalInduction.lean feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
incrementalInduction.lean.expected.out feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
incrementalMutual.lean feat: incrementality for careful command macros such as set_option in theorem, theorem foo.bar, lemma (#4364) 2024-06-05 14:10:38 +00:00
incrementalMutual.lean.expected.out feat: incrementality for careful command macros such as set_option in theorem, theorem foo.bar, lemma (#4364) 2024-06-05 14:10:38 +00:00
incrementalTactic.lean fix: tactics in terms in tactics may break incremental reporting (#4436) 2024-06-12 14:59:24 +00:00
incrementalTactic.lean.expected.out fix: tactics in terms in tactics may break incremental reporting (#4436) 2024-06-12 14:59:24 +00:00
infoIssues.lean
infoIssues.lean.expected.out feat: custom eliminators for induction and cases tactics, and beautiful eliminators for Nat (#3629) 2024-03-09 15:31:51 +00:00
internalNamesIssue.lean
internalNamesIssue.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
inWordCompletion.lean feat: BitVec.ofNatLt and updates to use it (#3430) 2024-02-21 18:02:56 +00:00
inWordCompletion.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
jumpMutual.lean
jumpMutual.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
keywordCompletion.lean test: make completion tests less dependent on core 2023-07-28 07:50:09 -07:00
keywordCompletion.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
lean3HoverIssue.lean
lean3HoverIssue.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
macroGoalIssue.lean
macroGoalIssue.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
match.lean
match.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
matchPatternHover.lean
matchPatternHover.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
matchStxCompletion.lean
matchStxCompletion.lean.expected.out fix: auto-completion bugs and performance (#3460) 2024-02-26 09:43:19 +00:00
partialNamespace.lean
partialNamespace.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
plainGoal.lean fix: report goals in induction with parse error 2023-11-20 09:15:27 +01:00
plainGoal.lean.expected.out fix: without recover bad simp arg should fail (#4359) 2024-06-05 08:05:38 +00:00
plainTermGoal.lean
plainTermGoal.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
rename.lean feat: rename request handler (#2462) 2023-11-21 13:10:52 +01:00
rename.lean.expected.out feat: per-package server options (#2858) 2023-11-26 13:42:38 +00:00
run.lean fix: ensure incremental commands and tactics are reached only on supported paths (#4259) 2024-05-23 17:57:42 +00:00
stdOutput.lean
stdOutput.lean.expected.out
terminationBySuggestion.lean feat: GuessLex: avoid writing sizeOf in termination argument when not needed (#3630) 2024-03-10 22:57:10 +00:00
terminationBySuggestion.lean.expected.out feat: GuessLex: avoid writing sizeOf in termination argument when not needed (#3630) 2024-03-10 22:57:10 +00:00
test_single.sh
unterminatedDocComment.lean feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
unterminatedDocComment.lean.expected.out feat: incremental elaboration of definition headers, bodies, and tactics (#3940) 2024-05-22 13:23:30 +00:00
userWidget.lean feat: bundle of widget improvements (#2964) 2023-12-21 06:24:33 +00:00
userWidget.lean.expected.out feat: bundle of widget improvements (#2964) 2023-12-21 06:24:33 +00:00