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).
20 lines
395 B
Text
20 lines
395 B
Text
binrelTypeMismatch.lean:10:14-10:16: error: type mismatch
|
|
()
|
|
has type
|
|
Unit
|
|
but is expected to have type
|
|
Bool
|
|
binrelTypeMismatch.lean:15:21-15:22: error: type mismatch
|
|
p
|
|
has type
|
|
Prop
|
|
but is expected to have type
|
|
Bool
|
|
Prop → sorry : Sort u_1
|
|
binrelTypeMismatch.lean:20:27-20:28: error: type mismatch
|
|
p
|
|
has type
|
|
Prop
|
|
but is expected to have type
|
|
Bool
|
|
Prop → sorry : Sort u_1
|