Richard Feldman
236cebacc1
Refactor out PlatformHeaderInfo
2022-12-08 15:31:42 -05:00
Richard Feldman
2a38edf784
Inline send_header_two
2022-12-08 15:31:42 -05:00
Richard Feldman
87c8702c89
Rename HeaderFor to HeaderType
2022-12-08 15:31:42 -05:00
Richard Feldman
12a7b51eb4
Move some logic into HeaderFor
2022-12-08 15:31:42 -05:00
Richard Feldman
24f2fcc28a
Remove an unnecessary qualifier
2022-12-08 15:31:41 -05:00
Richard Feldman
8307a194e1
fix typo
2022-12-08 06:37:00 -05:00
Richard Feldman
5958f50728
Drop obsolete mentions of roc_send_signal
2022-12-08 06:36:12 -05:00
Folkert
c9adafa04b
remove internal use of roc_send_signal
2022-12-08 12:20:55 +01:00
Richard Feldman
5cfa6d8e12
Expand List.range docs
2022-12-08 05:56:53 -05:00
Richard Feldman
da5d0bd815
Merge pull request #4686 from roc-lang/list-range
...
Switch to more expressive list.range
2022-12-08 02:51:42 -05:00
Folkert
3bae4145d9
do expect/dbg with atomics
2022-12-08 00:41:20 +01:00
Ayaz Hafiz
b66813d2db
Check in test for #4705
2022-12-07 10:59:05 -06:00
Ayaz Hafiz
c5dd688e3e
Correct sorting of generated procs for mono test
2022-12-07 10:58:50 -06:00
Ayaz Hafiz
42fe19541e
Define inline expects defs in their definition order
...
When we transform a top-level expect into an inline expect, we collect
all intermediate defs before the expect condition, then layer the defs
back on. Because the layering procedure builds an expression bottom-up,
we must layer on defs in reverse definition order.
Closes #4705
2022-12-07 10:54:16 -06:00
Ayaz Hafiz
935255d06b
Support compiling programs with test mode in test_mono
2022-12-07 10:48:41 -06:00
Ayaz
36eaed31e3
Merge pull request #4701 from roc-lang/i4697
...
Fix concat of non-unique list with unique list
2022-12-06 15:08:54 -06:00
Richard Feldman
2b1deff379
Revert "Merge PlatformHeaderInfo into revised HeaderInfo"
...
This reverts commit 6115781b9d
.
2022-12-06 14:06:05 -05:00
Richard Feldman
579feeeadd
Revert "WIP try combining PlatformHeaderInfo & HeaderInfo"
...
This reverts commit 100044295f
.
2022-12-06 14:06:00 -05:00
Richard Feldman
100044295f
WIP try combining PlatformHeaderInfo & HeaderInfo
2022-12-06 14:05:29 -05:00
Ayaz Hafiz
dd364dbdfa
Add gen test for concat unique lists bug
2022-12-06 12:59:55 -06:00
Ayaz Hafiz
4df83d67ea
use copyBackwards when copying overlapping items in non-unique.unique concat
...
`mem.copy` requires that `dest` has start index `<= src`, but in our
case, `dest` has start index `>= src`. For this, `copyBackwards` should
be used.
See https://github.com/ziglang/zig/blob/master/lib/std/mem.zig#L195-L222 .
Closes #4697
2022-12-06 12:58:04 -06:00
Ayaz Hafiz
a549176886
Add reproduction of failing unique concat bug
2022-12-06 12:57:32 -06:00
Folkert de Vries
c8a335cd0b
Merge pull request #4695 from roc-lang/mono-checker-updates
...
Add debug flag to check IR after specialization
2022-12-06 09:31:01 +01:00
Ayaz
8ae8857125
Merge pull request #4696 from roc-lang/hash-nat
...
add the ability to hash Nats
2022-12-05 20:15:21 -06:00
Brendan Hansknecht
b07e4e8170
fix mono
2022-12-05 16:11:10 -08:00
Brendan Hansknecht
6dd51039f0
add simple test that nat keys compile
2022-12-05 16:09:17 -08:00
Ayaz Hafiz
a2b506ab1b
Add debug flag to check IR after specialization
2022-12-05 18:05:35 -06:00
Brendan Hansknecht
6aec9cf058
add the ability to hash Nats
2022-12-05 16:00:56 -08:00
Ayaz
b6c9c7c145
Merge pull request #4689 from roc-lang/i4685
...
Spread list tests can never touch exact-sized bounds tests
2022-12-05 16:32:10 -06:00
Folkert de Vries
66ce640fe5
Merge pull request #4688 from roc-lang/i4671
...
Correct generalization of imported specializations
2022-12-05 23:22:58 +01:00
Ayaz Hafiz
aab509c5c1
Make sure to escape formatting of char literals
...
Closes #4682
2022-12-05 14:09:28 -06:00
Ayaz Hafiz
759127660d
Spread list tests can never touch exact-sized bounds tests
...
When compiling a pattern match like
```
[] -> ..
[_] -> ..
[_, ..] -> ..
```
to a decision tree, we must make sure that the last test (len >= 1)
does not touch the branch reached by the second test (len == 1). It is
enough to ban (len >=) tests from ever touching exact-sized list
patterns, because a spread test (len >=) can never reach an exact-sized
test.
On the other hand, an exact-sized test can reach a spread pattern,
because in
```
[_, _] -> ..
[..] -> ..
```
the last branch generates tests for patterns `[]` and `[_]`, and we would
like those patterns to be covered by the spread test (len >= 0)!
Closes #4685
2022-12-05 13:45:35 -06:00
Ayaz Hafiz
b6a96ebb85
Reproduce miscompilation in #4685
2022-12-05 13:14:32 -06:00
Ayaz Hafiz
1cd7f8baf1
Fix test_derive
2022-12-05 13:10:29 -06:00
Ayaz Hafiz
836240f158
Clippy
2022-12-05 13:07:53 -06:00
Ayaz Hafiz
fe1cfe01b9
Allow too many arguments
2022-12-05 13:06:35 -06:00
Ayaz Hafiz
8ca9e6b443
Be more explicit about imported flex and rigid vars
2022-12-05 13:04:15 -06:00
Ayaz Hafiz
0bb31558e6
Disable gen and set tests on debug for now
...
Due to #3898
2022-12-05 12:50:24 -06:00
Ayaz Hafiz
8317c4d038
Add gen test for #4671
2022-12-05 12:08:55 -06:00
Ayaz Hafiz
09353733fa
Make sure to register imported variables when importing specializations
...
Closes #4671
2022-12-05 11:44:28 -06:00
Brendan Hansknecht
415cac5179
update mono tests
2022-12-04 21:49:28 -08:00
Brendan Hansknecht
2ff8dad1c9
remove old List.range tests in favor of expect
2022-12-04 20:18:39 -08:00
Brendan Hansknecht
a5cb441d73
fix builtin formatting
2022-12-04 16:13:38 -08:00
Brendan Hansknecht
a5efc1f179
switch to more expressive list.range
2022-12-04 16:04:17 -08:00
Folkert de Vries
c1d3580b0f
Merge pull request #4674 from roc-lang/ircheck
...
Type-check mono IR
2022-12-04 20:56:54 +01:00
Richard Feldman
6115781b9d
Merge PlatformHeaderInfo into revised HeaderInfo
2022-12-04 06:36:04 -05:00
Richard Feldman
f20c7db029
Load all packages, not just the platform
2022-12-04 06:31:49 -05:00
Richard Feldman
0d2692f776
Use ..Default::default()
2022-12-04 06:31:49 -05:00
Richard Feldman
71478c297d
Fix some indentation
2022-12-04 06:26:45 -05:00
Richard Feldman
26f77ecffd
Add some more logging to file.rs
2022-12-04 06:26:44 -05:00