Commit graph

26172 commits

Author SHA1 Message Date
Sebastian Ullrich
c2194c2bc1 chore: update to LLVM 13 2021-10-06 14:34:29 +02:00
Leonardo de Moura
eb7f601ea8 chore: updates stage0 2021-10-05 17:04:09 -07:00
Leonardo de Moura
106adb09b9 fix: simplify allocator
Do not move segments between heaps.
We found yet another bug due to this "feature".
The crash is reported here:
https://gist.github.com/semorrison/490496060bbcfa8ea635f3d7be1ac824

@Kha summarized the "root of the evil" as:
using per-heap import lists while segments can be exchanged between heaps doesn't seem compatible.

This is the second bug due to this design decision.
We had fixed one here:
2283ebc5e9/src/runtime/alloc.cpp (L257-L269)

This commit fixes both issues by removing the segment exchange feature.
2021-10-05 16:58:20 -07:00
Leonardo de Moura
988e43d2b4 fix: WF should reject definitions that do not take any arguments 2021-10-04 13:24:30 -07:00
Wojciech Nawrocki
07f99eba73 fix: use local context from Info node in widgets 2021-10-04 21:09:44 +02:00
Sebastian Ullrich
48764b60d5 chore: CI: retry tests on Windows
/cc @leodemoura
2021-10-04 11:24:40 +02:00
Leonardo de Moura
85c49cfeb3 feat: apply termination tactic provided by user 2021-10-03 18:47:52 -07:00
Leonardo de Moura
23740778d4 refactor: termination hints 2021-10-03 18:09:35 -07:00
Leonardo de Moura
a12ade3da4 chore: fix test 2021-10-03 17:20:16 -07:00
Leonardo de Moura
7ff013a3a2 chore: update stage0 2021-10-03 17:17:51 -07:00
Leonardo de Moura
d22a42358f feat: add decreasing_tactic notation 2021-10-03 17:16:29 -07:00
Sebastian Ullrich
762304f8b7 doc: fix 2021-10-03 21:19:45 +02:00
Leonardo de Moura
68867d02ac chore: update stage0 2021-10-02 20:20:26 -07:00
Leonardo de Moura
1cdad2be46 fix: missing info trees at let_mvar% elaborator 2021-10-02 20:19:37 -07:00
Leonardo de Moura
53cee4df08 chore: typo 2021-10-02 17:45:08 -07:00
Leonardo de Moura
2b087893a5 chore: update stage0 2021-10-02 17:33:50 -07:00
Leonardo de Moura
c908eec8e5 chore: remove temp priority := high 2021-10-02 17:31:55 -07:00
Leonardo de Moura
5a0974cca6 chore: update stage0 2021-10-02 17:31:17 -07:00
Leonardo de Moura
c24cd877c8 chore: define if-then-else again as a macro
We can do it using the new auxiliary notation `let_mvar%` and
`wait_if_type_mvar%`.
2021-10-02 17:30:06 -07:00
Leonardo de Moura
42773941ed chore: fix test 2021-10-02 17:00:07 -07:00
Leonardo de Moura
740aab923d chore: update stage0 2021-10-02 16:57:40 -07:00
Leonardo de Moura
1e44902243 fix: add withFreshMacroScope at expandMacroImpl? 2021-10-02 16:57:25 -07:00
Leonardo de Moura
deb77b62df chore: update stage0 2021-10-02 16:28:47 -07:00
Leonardo de Moura
15347272c7 feat: elaborate wait_* notation
We can use to define `if-then-else` using macros
2021-10-02 16:27:22 -07:00
Leonardo de Moura
b510bb305d feat: elaborate let_mvar% 2021-10-02 16:12:50 -07:00
Leonardo de Moura
59d7b00557 feat: add mapping from mvar user name to MVarId 2021-10-02 15:26:44 -07:00
Leonardo de Moura
98f1ab7816 chore: update stage0 2021-10-02 15:12:51 -07:00
Leonardo de Moura
c6dfecb7aa feat: helper notation for controlling elaboration order 2021-10-02 15:10:27 -07:00
Leonardo de Moura
acd21052c0 chore: remove old notation 2021-10-02 15:06:40 -07:00
Leonardo de Moura
74329f6713 chore: update stage0 2021-10-02 14:56:09 -07:00
Leonardo de Moura
9337498c5b chore: keywords should be snake_case 2021-10-02 14:54:48 -07:00
Leonardo de Moura
b7281e9fe2 fix: instruct pretty printer to add a line break after each calc step
It should fix https://github.com/leanprover/mathport/issues/26
2021-10-02 11:38:10 -07:00
Daniel Fabian
e1f591ba61 test: do no use unit in ac_expr.lean.
It is not necessary to define a unit element for the proof to go through.
2021-10-02 11:11:08 -07:00
Siddharth
4b1b76ae51 doc: add metaprogramming docs of Dyck grammar parsing.
* LEAN4 -> Lean 4; directive -> command

* directive -> command everywhere
2021-10-02 11:08:26 -07:00
Wojciech Nawrocki
f454850c70 fix: actually specify opts-per-pos 2021-10-02 09:55:55 +02:00
Sebastian Ullrich
af12c91b0a fix: rpath rewrite leanc as well 2021-10-01 10:06:50 +02:00
Leonardo de Moura
01ca9a06c1 chore: update stage0 2021-09-30 22:38:31 -07:00
Leonardo de Moura
dba358067a chore: remove workaround 2021-09-30 22:37:20 -07:00
Leonardo de Moura
3833363be8 chore: update stage0 2021-09-30 22:35:40 -07:00
Leonardo de Moura
b99f1c698b feat: use if-then-else notation at Do.lean
Otherwise, the `if` in the `Do` notation will not benefit from the
improved elaborator.
2021-09-30 22:34:36 -07:00
Leonardo de Moura
9d9f41c27a chore: update stage0 2021-09-30 22:24:22 -07:00
Leonardo de Moura
2546a2cf7e test: add test for if-then-else issue
The issue was reported here:
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/Required.20type.20annotation.20using.20Array
2021-09-30 22:23:22 -07:00
Leonardo de Moura
eedf5b245f feat: use let_tmp at new if-then-else elaborator 2021-09-30 22:22:14 -07:00
Leonardo de Moura
35d9590b7b chore: rename let_tmp elaborator 2021-09-30 22:20:32 -07:00
Leonardo de Moura
94dc1ee38f chore: update stage0 2021-09-30 22:19:42 -07:00
Leonardo de Moura
2bc24ff619 chore: let_zeta => let_tmp 2021-09-30 22:19:06 -07:00
Leonardo de Moura
035251d08a feat: elaborate let_zeta 2021-09-30 22:18:47 -07:00
Leonardo de Moura
cfa9d5a0b6 chore: update stage0 2021-09-30 22:09:45 -07:00
Leonardo de Moura
b83facc738 feat: add let_zeta auxiliary parser 2021-09-30 22:08:11 -07:00
Leonardo de Moura
cc920dd26b feat: new if-then-else elaborator that waits for condition type to be known 2021-09-30 22:07:32 -07:00