Summary: - Take `synthPendingDepth` into account when caching TC results - Add `maxSynthPendingDepth` option with default := 2. - Add support for tracking `synthPending` failures when using `set_option diagnostics true` closes #2522 closes #3313 closes #3927 Identical to #4114 but with `maxSynthPendingDepth := 1` closes #4114 cc @semorrison
13 lines
328 B
Text
13 lines
328 B
Text
[4, 5, 6]
|
|
defInst.lean:8:26-8:32: error: failed to synthesize
|
|
BEq Foo
|
|
use `set_option diagnostics true` to get diagnostic information
|
|
fun x y => sorryAx (?m x y) true : (x y : Foo) → ?m x y
|
|
[4, 5, 6]
|
|
fun x y => x == y : Foo → Foo → Bool
|
|
[("hello", "hello")]
|
|
false
|
|
true
|
|
true
|
|
def instMMonad : Monad M :=
|
|
ReaderT.instMonad
|