Commit 4c8d1bf
committed
fix: goto-definition for binrel% operators (≥, ≤, etc.)
This PR fixes goto-definition for binary relation operators.
**Problem:** Goto-def on `≥` went to the macro rule instead of `GE.ge`.
**Root cause:** In `elabBinRelCore`, the "uncomparable types" path (line 536)
called `elabAppArgs` directly without wrapping in `withTermInfoContext'`,
unlike `binop%` which goes through `toExprCore` that creates nested TermInfo.
**Fix:** Wrap the `elabAppArgs` call with `withTermInfoContext'` to match
`binop%` behavior.
**Note:** Initially tried adding `withInfo := true` to `resolveId? stx[1]`,
but that creates TermInfo with the unapplied type `{α : Type} → [LE α] → ...`
rather than the concrete instantiated type like `Nat → Nat → Prop`.1 parent 1d0d391 commit 4c8d1bf
1 file changed
+4
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
541 | 541 | | |
542 | 542 | | |
543 | 543 | | |
544 | | - | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
545 | 548 | | |
546 | 549 | | |
547 | 550 | | |
| |||
0 commit comments