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).
10 lines
255 B
Text
10 lines
255 B
Text
have.lean:2:19-4:7: error: unexpected token 'example'; expected term
|
|
have.lean:2:18-2:19: error: don't know how to synthesize placeholder
|
|
context:
|
|
⊢ False
|
|
have.lean:7:2-7:3: error: type mismatch
|
|
f
|
|
has type
|
|
5 = 6
|
|
but is expected to have type
|
|
5 = 3
|