Commit graph

28629 commits

Author SHA1 Message Date
Leonardo de Moura
bdaabd4e7b feat: propagate return type to for-in block 2022-07-08 17:29:30 -07:00
Leonardo de Moura
71edf731f9 fix: missing withFreshMacroScope 2022-07-08 17:25:29 -07:00
Leonardo de Moura
b8991586bd chore: update stage0 2022-07-08 16:55:44 -07:00
Leonardo de Moura
eb06b90b17 chore: add workaround 2022-07-08 16:54:44 -07:00
Leonardo de Moura
39f598a3e1 chore: update Lake 2022-07-08 16:42:18 -07:00
Leonardo de Moura
77b68688e7 chore: update stage0 2022-07-08 16:36:52 -07:00
Leonardo de Moura
d50b33175d feat: improve forIn elaborator element type propagation 2022-07-08 16:34:42 -07:00
Leonardo de Moura
7cf31f7360 chore: update comment 2022-07-08 15:34:09 -07:00
Leonardo de Moura
3c7053635b chore: update stage0 2022-07-08 15:31:26 -07:00
Leonardo de Moura
e4e0f775d6 feat: improve outParam as result type support 2022-07-08 15:29:48 -07:00
Sebastian Ullrich
32118a832d fix: update to adjusted Lake update 2022-07-08 23:24:30 +02:00
Sebastian Ullrich
0f6bda61c9 chore: Nix: buildLeanPackage devShell 2022-07-08 23:24:04 +02:00
Sebastian Ullrich
f5eaa525b3 chore: disable Nix macOS once more
I guess it's not that attractive without ARM support anyway
2022-07-08 23:01:50 +02:00
Sebastian Ullrich
8f70c346fd chore: Nix: fix develop shell 2022-07-08 21:49:50 +02:00
Leonardo de Moura
2472a6a1ea chore: fix build
Another ugly hack to survive until we port the code generator to Lean.
2022-07-08 10:34:50 -07:00
Sebastian Ullrich
7ee5203dbb chore: update stage0 2022-07-08 19:06:10 +02:00
Sebastian Ullrich
d7bcc271be refactor: avoid nested sequence in simpleBinder 2022-07-08 19:06:10 +02:00
Sebastian Ullrich
75b0b50983 fix: backtrack on unexpected non-identifier in parenthesizer 2022-07-08 14:49:08 +02:00
Sebastian Ullrich
4f1c3faa6e chore: Nix: re-enable nix develop on bare derivations 2022-07-08 14:49:08 +02:00
Sebastian Ullrich
6d1b2094e9 chore: nix flake update
This comes with ccache 4.6.1, which seems to fix the specific
miscompilation I managed to reproduce with 4.6.0
2022-07-08 13:46:57 +02:00
Leonardo de Moura
5455c16fc5 chore: update stage0 2022-07-07 23:41:00 -07:00
Leonardo de Moura
bf91956449 fix: add workaround for issue #1293
This is a temporary hack until we port the C++ code to Lean.

closes #1293
2022-07-07 23:39:35 -07:00
Leonardo de Moura
438fce8da7 chore: update stage0 2022-07-07 23:03:06 -07:00
Leonardo de Moura
8f8bb8c940 chore: update stage0 2022-07-07 23:01:06 -07:00
Leonardo de Moura
6ef81e1cdf fix: bug at the code specialization cache
closes #1292
2022-07-07 22:59:18 -07:00
Leonardo de Moura
d6a73bf03c chore: update stage0 2022-07-07 20:26:40 -07:00
Leonardo de Moura
c9771fa1b2 chore: unused variables 2022-07-07 20:24:18 -07:00
Leonardo de Moura
58619291e9 feat: better qualified name support in recursive definitions 2022-07-07 20:15:25 -07:00
Leonardo de Moura
db47664d4a fix: discrepancy between isDefEq and whnf for transparency mode instances 2022-07-07 15:39:58 -07:00
Leonardo de Moura
dd924e5270 chore: remove codegen option
We should use `noncomputable` modifier instead.

closes #1288
2022-07-07 08:18:30 -07:00
Leonardo de Moura
fce7697151 fix: def _root_ and dotted notation in recursive definitions
closes #1289
2022-07-07 07:57:51 -07:00
Sebastian Ullrich
305866dba2 feat: "linting" profiler metric 2022-07-07 14:23:59 +02:00
Sebastian Ullrich
29bdc0ceac fix: bound syntax kind at v:(ppSpace ident) etc. 2022-07-07 11:49:35 +02:00
Leonardo de Moura
0c30372f93 doc: add todo for expandDelayedAssigned 2022-07-06 20:08:12 -07:00
Leonardo de Moura
2494f1d4a4 chore: fix doc 2022-07-06 19:56:25 -07:00
Leonardo de Moura
ddae76aed2 chore: update stage0 2022-07-06 19:46:15 -07:00
Leonardo de Moura
0cecbe2ce6 chore: update stage0 2022-07-06 19:43:57 -07:00
Leonardo de Moura
71550c55a9 fix: @ scope 2022-07-06 19:42:43 -07:00
Leonardo de Moura
2fcb784372 feat: default value for coeAtOutParam parameter 2022-07-06 19:00:32 -07:00
Leonardo de Moura
01d0ca8cfe doc: coeAtOutParam todo's 2022-07-06 18:58:40 -07:00
Leonardo de Moura
f8c7bd71aa fix: position information for toStream application at do-notation 2022-07-06 18:50:45 -07:00
Leonardo de Moura
c5e00c2bde fix: do not create coercion placeholder if function is partially applied 2022-07-06 18:38:11 -07:00
Leonardo de Moura
645c3e777d feat: disable coeAtOutParam when @ (aka explicit = true) is used 2022-07-06 18:31:39 -07:00
Leonardo de Moura
0425fabf8f test: test for output parameter + coercion issue 2022-07-06 16:55:08 -07:00
Leonardo de Moura
42548adc5d fix: typo at addImplicitArg 2022-07-06 16:53:57 -07:00
Leonardo de Moura
9ba65fee83 fix: a coercion around an output parameter (and promotion to synthetic opaque) should only be used if there in no other way to infer parameter
We need this refinement for declarations such as
```
def add_one {X} [Trait X] [One (Trait.R X)] [HAdd X (Trait.R X) X] (x : X) : X := x + (One.one : (Trait.R X))
```
from test 948.lean
2022-07-06 16:38:39 -07:00
Leonardo de Moura
ab16278ce4 fix: missing synthesizeSyntheticMVars at elabSubst 2022-07-06 16:15:29 -07:00
Leonardo de Moura
aa9167834b fix: coeAtOutParam can only be used after Coe.lean 2022-07-06 16:06:11 -07:00
Leonardo de Moura
55ad7beb8d feat: add coercion placeholder for applications that return an output parameter of a local instance 2022-07-06 15:42:39 -07:00
Leonardo de Moura
e7bc114ba2 fix: bug at withAssignableSyntheticOpaque 2022-07-06 15:24:17 -07:00