Commit graph

12289 commits

Author SHA1 Message Date
Leonardo de Moura
9afb09cc1e fix(util/trie): fix the build 2017-05-23 15:00:29 -07:00
Gabriel Ebner
ce44566c7d fix(frontends/lean/parser): do not skip command tokens after error recovery 2017-05-23 11:14:31 -07:00
Gabriel Ebner
47629e9da3 feat(frontends/lean): make most parser_errors recoverable 2017-05-23 11:14:31 -07:00
Gabriel Ebner
95300224aa fix(frontends/lean/builtin_cmds): suppress unhelpful #check output 2017-05-23 11:14:31 -07:00
Gabriel Ebner
183bf63e26 fix(frontends/lean/parser): pass error-recovery flag from parser to elaborator 2017-05-23 11:14:31 -07:00
Gabriel Ebner
77a2311f09 fix(frontends/lean/elaborator): segfault 2017-05-23 11:14:31 -07:00
Gabriel Ebner
166c07e1fe fix(frontends/lean/elaborator): do not leak _elab_u names 2017-05-23 11:14:31 -07:00
Gabriel Ebner
d27a0eff15 chore(tests): fix tests 2017-05-23 11:14:31 -07:00
Gabriel Ebner
f24d790416 chore(tests/lean/fail): update to current syntax 2017-05-23 11:14:31 -07:00
Gabriel Ebner
99754188e6 feat(library/compiler/eta_expansion): also eta-expand expressions containing sorry 2017-05-23 11:14:31 -07:00
Gabriel Ebner
eea61a1991 fix(frontends/lean/definition_cmds): fix trace messages in proofs 2017-05-23 11:14:31 -07:00
Gabriel Ebner
af63d4036b chore(tests): update tests 2017-05-23 11:14:31 -07:00
Gabriel Ebner
5f1b5da099 feat(library/compiler/eta_expansion): eta-expand sorrys 2017-05-23 11:14:31 -07:00
Gabriel Ebner
d4b45abad6 fix(frontends/lean/elaborator): ground universe meta-variables in tactic terms 2017-05-23 11:14:30 -07:00
Gabriel Ebner
40eb5d0556 feat(library/module_mgr): skip reverse dependency rebuild if file content is unchanged 2017-05-23 11:14:30 -07:00
Gabriel Ebner
dd91ef3b22 fix(frontends/lean/elaborator): fix compilation with gcc 2017-05-23 11:14:30 -07:00
Gabriel Ebner
8bd09fe282 chore(tests): add demo for parser error recovery 2017-05-23 11:14:30 -07:00
Gabriel Ebner
6b956ad658 fix(frontends/lean): prevent endless loops 2017-05-23 11:14:30 -07:00
Gabriel Ebner
89ad117be3 chore(tests): update tests with changes to error recovery 2017-05-23 11:14:30 -07:00
Gabriel Ebner
33c737fc53 feat(frontends/lean/brackets): allow trailing commas in brackets 2017-05-23 11:14:30 -07:00
Gabriel Ebner
345cd1bc2a feat(frontends/lean/parser): error recovery in interactive tactics 2017-05-23 11:14:30 -07:00
Gabriel Ebner
0b133f1f2a feat(frontends/lean/elaborator): error recovery for structure instances 2017-05-23 11:14:30 -07:00
Gabriel Ebner
8c80cb8fe9 feat(frontends/lean/equations_validator): report errors instead of
exceptions
2017-05-23 11:14:30 -07:00
Gabriel Ebner
00ac867ddf feat(frontends/lean/elaborator,library/sorry): suppress error message that mention synthetic sorrys 2017-05-23 11:14:30 -07:00
Gabriel Ebner
1468461c47 feat(frontends/lean): recover from many parser errors 2017-05-23 11:14:30 -07:00
Sebastian Ullrich
49e5c69447 fix(init/meta/expr): have all reflected defns accept Sort 2017-05-23 11:00:33 +02:00
Sebastian Ullrich
5a19430f60 fix(frontends/lean/scanner): wrong upos after field projection 2017-05-23 10:33:31 +02:00
Gabriel Ebner
5d6bf38b7e chore(tests): add Leo's test case for errors in solve1-blocks 2017-05-23 07:33:12 +02:00
Gabriel Ebner
54114fd7bd fix(frontends/lean/tactic_notation): do not clamp errors to the end of {} blocks 2017-05-23 07:28:34 +02:00
Leonardo de Moura
729e798d6f feat(frontends/lean/definition_cmds): copy equational lemmas to top level definition 2017-05-22 14:51:06 -07:00
Gabriel Ebner
67190f565d fix(emacs): fix working directory for emacs 24 2017-05-22 21:13:41 +02:00
Gabriel Ebner
07c25338b9 feat(shell/server): add search command 2017-05-22 09:40:38 -07:00
Gabriel Ebner
28a259f2d3 refactor(shell/server): unify async response handling 2017-05-22 09:40:38 -07:00
Gabriel Ebner
fbfec02015 fix(tests): move test away from run 2017-05-22 17:51:10 +02:00
Gabriel Ebner
cb28f382a3 fix(library/equations_compiler/elim_match): handle partially applied constructors 2017-05-22 17:17:27 +02:00
Leonardo de Moura
3d088eea25 fix(library/equations_compiler): avoid name collision when pack_mutual is not used 2017-05-21 15:40:06 -07:00
Leonardo de Moura
9fb7e5c931 feat(library/equations_compiler): generate equational lemmas for auxiliary _main definitions 2017-05-21 15:21:28 -07:00
Leonardo de Moura
ce71b4c5c2 feat(frontends/lean/definition_cmds): define top-level mutual definitions
We still need the equational lemmas.
2017-05-21 10:26:43 -07:00
Leonardo de Moura
4e496b78d5 feat(library/equations_compiler): unpack auxiliary definition
We still need to unpack auxiliary lemmas, and propagate information in
the frontend.
2017-05-20 20:34:18 -07:00
Leonardo de Moura
f742d9c9d8 feat(library/equations_compiler/pack_domain): use psigma instead of sigma 2017-05-20 19:14:10 -07:00
Leonardo de Moura
fa863496da feat(library/equations_compiler): prove equational lemmas for auxiliary definition 2017-05-20 16:38:32 -07:00
Leonardo de Moura
08560acf07 fix(library/equations_compiler): bugs in wf_rec 2017-05-20 13:26:49 -07:00
Leonardo de Moura
ab03a6af16 feat(library/equations_compiler/wf_rec): avoid unnecessary revert/intro's 2017-05-20 08:58:22 -07:00
Daniel Selsam
0bc855149a feat(inductive_compiler): generate sizeof_spec for nested constructors 2017-05-20 08:30:57 -07:00
Sebastian Ullrich
9507297687 fix(init/meta/expr,library): reflect should accept Props
Fixes #1590
2017-05-19 14:17:06 +02:00
Leonardo de Moura
789d4e148f feat(library/equations_compiler): add pack_mutual
This step packs a collection of mutually recursive functions into a
single one. We use `psum` to combine the different domains, and
`psum.cases_on` to combine the codomains.
2017-05-18 15:29:51 -07:00
Leonardo de Moura
22d0dc197c fix(library/equations_compiler/pack_domain): bug in pack_domain 2017-05-18 14:24:38 -07:00
Leonardo de Moura
2f301d5fc7 fix(frontends/lean/pp): fix previous commit 2017-05-18 14:24:19 -07:00
Leonardo de Moura
323060df26 fix(frontends/lean/pp): pp for mutual definitions
missing line break
2017-05-18 11:46:14 -07:00
Leonardo de Moura
cf9a5128c1 fix(frontends/lean/definition_cmds): check_valid_end_of_equations
'with' token was missing.
2017-05-18 11:28:02 -07:00