This PR prevents `rcases` and `obtain` from creating absurdly long case tag names when taking single constructor types (like `Exists`) apart. Fixes #6550 The change does not affect `cases` and `induction`, it seems (where the user might be surprised to not address the single goal with a name), because I make the change in Lean/`Meta/Tactic/Induction.lean`, not `Lean/Elab/Tactic/Induction.lean`. Yes, that's confusing.
22 lines
847 B
Text
22 lines
847 B
Text
{"version": 1,
|
|
"uri": "file:///5659.lean",
|
|
"diagnostics":
|
|
[{"source": "Lean 4",
|
|
"severity": 1,
|
|
"range":
|
|
{"start": {"line": 7, "character": 17}, "end": {"line": 7, "character": 18}},
|
|
"message":
|
|
"Tactic `introN` failed: There are no additional binders or `let` bindings in the goal to introduce\n\nn : Nat\nhn : n < 0\n⊢ False",
|
|
"fullRange":
|
|
{"start": {"line": 7, "character": 17},
|
|
"end": {"line": 7, "character": 18}}},
|
|
{"source": "Lean 4",
|
|
"severity": 1,
|
|
"range":
|
|
{"start": {"line": 11, "character": 16},
|
|
"end": {"line": 11, "character": 17}},
|
|
"message":
|
|
"Tactic `introN` failed: There are no additional binders or `let` bindings in the goal to introduce\n\nn : Nat\nhn : n < 0\n⊢ False",
|
|
"fullRange":
|
|
{"start": {"line": 11, "character": 16},
|
|
"end": {"line": 11, "character": 17}}}]}
|