This PR improves the “expected type mismatch” error message by omitting the type's types when they are defeq, and putting them into separate lines when not. I found it rather tediuos to parse the error message when the expected type is long, because I had to find the `:` in the middle of a large expression somewhere. Also, when both are of sort `Prop` or `Type` it doesn't add much value to print the sort (and it’s only one hover away anyways).
9 lines
214 B
Text
9 lines
214 B
Text
autoPPExplicit.lean:2:26-2:31: error: Application type mismatch: In the application
|
||
@Eq.trans α a (b = c)
|
||
the argument
|
||
b = c
|
||
has type
|
||
Prop
|
||
of sort `Type` but is expected to have type
|
||
α
|
||
of sort `Sort u_1`
|