previously, `#eval` would happily evaluate expressions that contain `sorry`, either explicitly or because of failing tactics. In conjunction with operations like array access this can lead to the lean process crashing, which isn't particularly great. So how `#eval` will refuse to run code that (transitively) depends on the `sorry` axiom (using the same code as `#print axioms`). If the user really wants to run it, they can use `#eval!`. Closes #1697
13 lines
479 B
Text
13 lines
479 B
Text
1
|
|
evalSorry.lean:5:33-5:34: error: application type mismatch
|
|
f x
|
|
argument
|
|
x
|
|
has type
|
|
String : Type
|
|
but is expected to have type
|
|
Nat : Type
|
|
evalSorry.lean:7:0-7:15: error: cannot evaluate expression that depends on the `sorry` axiom.
|
|
Use `#eval!` to evaluate nevertheless (which may cause lean to crash).
|
|
evalSorry.lean:11:0-11:15: error: cannot evaluate expression that depends on the `sorry` axiom.
|
|
Use `#eval!` to evaluate nevertheless (which may cause lean to crash).
|