feat(frontends/lean/elaborator): catch error early
This commit is contained in:
parent
b0de6723ec
commit
eeab242595
3 changed files with 12 additions and 0 deletions
|
|
@ -2725,6 +2725,7 @@ expr_pair elaborator::elaborate_with_type(expr const & e, expr const & e_type) {
|
|||
{
|
||||
expr Type = visit(copy_tag(e_type, mk_sort(mk_level_placeholder())), none_expr());
|
||||
new_e_type = visit(e_type, some_expr(Type));
|
||||
ensure_type(new_e_type, e_type);
|
||||
new_e = visit(e, some_expr(new_e_type));
|
||||
synthesize();
|
||||
}
|
||||
|
|
|
|||
7
tests/lean/bad_error3.lean
Normal file
7
tests/lean/bad_error3.lean
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
example (p : nat → nat → Prop) : p 0 :=
|
||||
begin
|
||||
end
|
||||
|
||||
def ex (p : nat → nat → Prop) : p 0 :=
|
||||
begin
|
||||
end
|
||||
4
tests/lean/bad_error3.lean.expected.out
Normal file
4
tests/lean/bad_error3.lean.expected.out
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
bad_error3.lean:1:33: error: type expected at
|
||||
p 0
|
||||
bad_error3.lean:5:32: error: type expected at
|
||||
p 0
|
||||
Loading…
Add table
Reference in a new issue