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).
15 lines
617 B
Text
15 lines
617 B
Text
1
|
|
evalSorry.lean:5:33-5:34: error: Application type mismatch: In the application
|
|
f x
|
|
the argument
|
|
x
|
|
has type
|
|
String
|
|
but is expected to have type
|
|
Nat
|
|
evalSorry.lean:7:0-7:5: error: aborting evaluation since the expression depends on the 'sorry' axiom, which can lead to runtime instability and crashes.
|
|
|
|
To attempt to evaluate anyway despite the risks, use the '#eval!' command.
|
|
evalSorry.lean:11:0-11:5: error: aborting evaluation since the expression depends on the 'sorry' axiom, which can lead to runtime instability and crashes.
|
|
|
|
To attempt to evaluate anyway despite the risks, use the '#eval!' command.
|