Gabriel Ebner
9b97dc73dc
fix(library/task_queue): do not keep references to cancelled task_results in the exception
...
We store this exception in the task_result itself, which creates a
reference cycle.
2016-12-01 10:02:14 -08:00
Leonardo de Moura
d454cc8bcd
feat(frontends/lean/elaborator): do not populate info_manager during thread finalization
2016-11-30 17:14:15 -08:00
Leonardo de Moura
73e5367fb6
fix(library/mt_task_queue): make sure thread finalizers are executed even if lean was compiled without pthread support
2016-11-30 11:42:29 -08:00
Gabriel Ebner
e070444bbf
fix(library/tactic/tactic_state): do not allocate tactic_state_cell using the VM allocator
2016-11-30 14:13:18 -05:00
Leonardo de Moura
4df0f82934
fix(library/tactic/simp_lemmas): memory leak
2016-11-30 09:58:20 -08:00
Leonardo de Moura
20d0ea7925
fix(library/module_mgr): invalid memory read
...
@gebner I was getting the following error with valgrind:
==9902== Invalid read of size 1
==9902== at 0xAD209B: lean::module_mgr::mark_out_of_date(std::string const&, lean::buffer<std::string, 16u>&) (module_mgr.cpp:24)
==9902== by 0xAD3EF5: lean::module_mgr::invalidate(std::string const&) (module_mgr.cpp:286)
==9902== by 0x986A84: lean::server::handle_sync(nlohmann::basic_json<std::map, std::vector, std::string, bool, long, unsigned long, double, std::allocator> const&) (server.cpp:141)
==9902== by 0x986603: lean::server::handle_request(nlohmann::basic_json<std::map, std::vector, std::string, bool, long, unsigned long, double, std::allocator> const&) (server.cpp:105)
==9902== by 0x986313: lean::server::run() (server.cpp:90)
==9902== by 0x975E98: main (lean.cpp:383)
==9902== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==9902==
==9902==
==9902== Process terminating with default action of signal 11 (SIGSEGV)
==9902== Access not within mapped region at address 0x0
==9902== at 0xAD209B: lean::module_mgr::mark_out_of_date(std::string const&, lean::buffer<std::string, 16u>&) (module_mgr.cpp:24)
==9902== by 0xAD3EF5: lean::module_mgr::invalidate(std::string const&) (module_mgr.cpp:286)
==9902== by 0x986A84: lean::server::handle_sync(nlohmann::basic_json<std::map, std::vector, std::string, bool, long, unsigned long, double, std::allocator> const&) (server.cpp:141)
==9902== by 0x986603: lean::server::handle_request(nlohmann::basic_json<std::map, std::vector, std::string, bool, long, unsigned long, double, std::allocator> const&) (server.cpp:105)
==9902== by 0x986313: lean::server::run() (server.cpp:90)
==9902== by 0x975E98: main (lean.cpp:383)
2016-11-30 09:50:08 -08:00
Gabriel Ebner
d542e95d20
chore(tests): update tests to new position information for by tac
2016-11-30 11:27:02 -05:00
Gabriel Ebner
000d97a9a6
fix(frontends/lean/parser): wrap snapshot in shared_ptr
2016-11-30 11:27:02 -05:00
Gabriel Ebner
db67c1fde3
chore(CMakeLists): make python dependency optional
2016-11-30 11:27:02 -05:00
Gabriel Ebner
c3f72ec0d8
fix(library/module_mgr): do not copy module_info
2016-11-30 11:26:59 -05:00
Leonardo de Moura
2309e35296
fix(frontends/lean): position information for by tac
...
Now, Ctrl-c-Ctrl-g also works when hovering the beginning of the tactic
instead of the beginning of the `by` token.
The idea is to make the behavior consistent with `begin...end` blocks.
2016-11-29 17:08:10 -08:00
Leonardo de Moura
3617451775
fix(src/library/task_queue): remove spurious message
...
@gebner Could you please confirm this is a spurious message?
2016-11-29 16:48:29 -08:00
Leonardo de Moura
b85ccefbff
fix(frontends/lean/builtin_cmds): information position (use the same approach used in other commands)
2016-11-29 16:47:34 -08:00
Daniel Selsam
7bfe0aedb0
feat(library/tactic/simplify): better debug.simplify.try_rewrite tracing
2016-11-29 14:46:35 -08:00
Leonardo de Moura
a76c2d37a7
chore(bin,src,src/emacs): delete linja
2016-11-29 14:14:42 -08:00
Leonardo de Moura
d40e97b4bc
chore(*): compilation errors, fix style, fix warnings
2016-11-29 11:35:01 -08:00
Gabriel Ebner
14f8093181
chore(tests/lean): get tests working again
2016-11-29 11:12:44 -08:00
Gabriel Ebner
df635b56af
fix(frontends/lean/definition_cmds): correctly copy _refl_lemma attributes
2016-11-29 11:12:44 -08:00
Gabriel Ebner
f756e9ed92
fix(shell/lean): set global ios
2016-11-29 11:12:44 -08:00
Gabriel Ebner
d8ee8d6ea7
fix(tests/util/exception): adapt to changed superclass of interrupted
2016-11-29 11:12:44 -08:00
Gabriel Ebner
3ecfddcbd5
fix(*): fix build
2016-11-29 11:12:43 -08:00
Gabriel Ebner
7ff2a77d67
feat(library/vm/vm_task): expose task_result objects to VM
2016-11-29 11:12:43 -08:00
Gabriel Ebner
e448e4e129
refactor(util/task_queue): merge module_task into task and cancel by position
2016-11-29 11:12:43 -08:00
Gabriel Ebner
aa03dc03b4
refactor(library/tactic/simp_lemmas): mark rfl-lemmas with a _refl_lemma attribute
2016-11-29 11:12:43 -08:00
Gabriel Ebner
b668844afe
chore(*): fix style errors
2016-11-29 11:12:43 -08:00
Gabriel Ebner
e1cb1a8cd2
feat(util/task_queue,library/versioned_msg_buf): rudimentary support for task interruption
2016-11-29 11:12:43 -08:00
Gabriel Ebner
f69164d621
fix(library/aux_definition): type-check auxiliary definitions immediately
2016-11-29 11:12:43 -08:00
Gabriel Ebner
56f895d6d8
feat(kernel/type_checker): option to disable delayed proof-checking
2016-11-29 11:12:43 -08:00
Gabriel Ebner
26b0138771
refactor(kernel/type_checker): factor out part for definition checking
2016-11-29 11:12:43 -08:00
Gabriel Ebner
4ace7a6328
fix(kernel/type_checker): do not wait for proof
2016-11-29 11:12:43 -08:00
Gabriel Ebner
3a06a9c15e
feat(util/task_queue): make task_result accesses lock-free
2016-11-29 11:12:43 -08:00
Leonardo de Moura
78608a37e9
fix(frontends/lean/definition_cmds): implicit universe theorem parameters bug
...
See discussion at #1178
2016-11-29 11:12:43 -08:00
Leonardo de Moura
0b2867d939
fix(shell/server): gcc compilation error
2016-11-29 11:12:43 -08:00
Gabriel Ebner
7d6e71aa59
fix(frontend/lean/print_cmd): make print work with incorrect proofs
2016-11-29 11:12:43 -08:00
Gabriel Ebner
b6a866addf
fix(kernel/type_checker): fix dangling reference that lead to segfault
2016-11-29 11:12:43 -08:00
Gabriel Ebner
b5113976aa
fix(util/mt_task_queue): fix segfault
2016-11-29 11:12:43 -08:00
Gabriel Ebner
385ea13688
feat(kernel/declaration,*): all theorems are delayed, and are revealed on delta-reduction
2016-11-29 11:12:43 -08:00
Gabriel Ebner
339ade623d
chore(shell/lean): clean up command-line arguments
2016-11-29 11:12:43 -08:00
Gabriel Ebner
a8df381d20
feat(*): parallel compilation
2016-11-29 11:12:40 -08:00
Leonardo de Moura
bd70e29926
chore(shell/leandoc): fix style
2016-11-29 10:38:22 -08:00
Leonardo de Moura
398af80584
feat(shell/leandoc): add support for "brief" description
...
This feature is similar to the one available in doxygen.
2016-11-27 21:42:05 -08:00
Leonardo de Moura
c3424f4058
chore(library/documentation): remove leftover
2016-11-27 20:52:24 -08:00
Leonardo de Moura
5fe0068301
feat(shell/lean): error if leandoc is used with smt2 files
2016-11-27 20:40:17 -08:00
Leonardo de Moura
fcef94200f
feat(library/documentation): add lean suffix to code blocks
2016-11-27 19:08:35 -08:00
Leonardo de Moura
002c62b49c
feat(frontends/lean): basic leandoc tool
2016-11-27 14:31:31 -08:00
Leonardo de Moura
94c882f4d5
feat(library/documentation, frontends/lean): add /-! -/ doc string module block
2016-11-27 12:23:53 -08:00
Leonardo de Moura
6978906a78
chore(frontends/lean): remove namespace documentation
...
We will add module level doc strings /-! -/
2016-11-27 11:57:03 -08:00
Leonardo de Moura
5daf1986e7
feat(library/init/nat): add nat.zero = zero (rfl) lemma
2016-11-26 10:54:28 -08:00
Leonardo de Moura
abc84452bc
fix(library/init/group): add group lemmas and use transport
2016-11-26 10:46:02 -08:00
Leonardo de Moura
338a46c225
fix(library/documentation): do not store doc strings for namespaces and declarations in the same name_map
2016-11-26 09:41:07 -08:00