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
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
Folkert de Vries
c1d3580b0f
Merge pull request #4674 from roc-lang/ircheck
...
Type-check mono IR
2022-12-04 20:56:54 +01:00
Ayaz Hafiz
d660016b53
Clippy
2022-12-03 23:43:47 -06:00
Ayaz Hafiz
e296d35bcd
Skip testing two mono tests for now
2022-12-03 22:43:19 -06:00
Ayaz Hafiz
01dea13b49
Pretty print symbols
2022-12-03 22:33:45 -06:00
Ayaz Hafiz
b0300e4e90
Fix bug in resolving layout
2022-12-03 22:18:15 -06:00
Ayaz Hafiz
7b21936d4f
Add mono checker to tests
2022-12-03 22:10:37 -06:00
Ayaz Hafiz
6e72307736
Format problems reported by the IR checker
2022-12-03 21:35:01 -06:00
Ayaz Hafiz
a84aebf2d3
Implement a type checker for the mono IR
2022-12-03 18:24:03 -06:00
Brendan Hansknecht
8e710cb80e
disable wasm tests that are broken
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
1dd0738eba
update mono test for dict again
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
04bd5d6ab0
disable wasm dictionary small string test
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
ab6c652360
manually do 128 bit multiplication to avoid bitshift and fix wasm tests
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
436bfc41ed
disable glue test and update mono test
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
ae58623f70
use crash to clearify unreachable state
2022-12-03 13:17:36 -08:00
Brendan Hansknecht
b4b18cda5a
fix formatting
2022-12-03 13:17:35 -08:00
Brendan Hansknecht
ac2380f6c8
swap based on dataIndex not raw hash map index
2022-12-03 13:17:35 -08:00
Brendan Hansknecht
8a30615a20
fix swap remove ordering
2022-12-03 13:17:35 -08:00
Ayaz Hafiz
24a136095c
Add Set.toList from empty test
2022-12-03 13:17:35 -08:00
Ayaz Hafiz
6adcaa2cbd
Extend ability symbol slice when merging in subs
2022-12-03 13:17:35 -08:00
Brendan Hansknecht
4befccc6b4
expand Set test cases
2022-12-03 13:17:35 -08:00
Brendan Hansknecht
cad7d8b4e9
add walkUntil and use it to implement set equality
2022-12-03 13:17:35 -08:00
Ayaz Hafiz
4159b83214
Fix imports
2022-12-03 13:17:35 -08:00
Ayaz Hafiz
2e56405c1e
Fix obligation checking for rigid able vars
2022-12-03 13:17:34 -08:00
Brendan Hansknecht
a321e36a36
update mono test for dict
2022-12-03 13:17:34 -08:00
Brendan Hansknecht
28835d5bf3
some bug fixes
2022-12-03 13:17:34 -08:00
Brendan Hansknecht
4fc0dd9dd9
add a some tests and bug fixes
2022-12-03 13:17:34 -08:00
Brendan Hansknecht
02824e92fe
add Set implementation
2022-12-03 13:17:34 -08:00
Brendan Hansknecht
cb08dca6f1
Add an indexmap like dict to roc
2022-12-03 13:17:34 -08:00
Ayaz
c61c42bff7
Merge pull request #4661 from roc-lang/roc-test-dev
...
`test` has `dev` behavior, and `dev` does not exit if there are warnings
2022-12-03 12:26:00 -06:00
Ayaz
012810d7e8
Merge pull request #4664 from roc-lang/i2551
...
Ensure that llvm gen_ wrappers account different recursive pointers
2022-12-02 17:39:26 -06:00
Ayaz Hafiz
7562525e96
Bugfix match
2022-12-02 16:31:47 -06:00
Ayaz Hafiz
304b88cdb2
Fix bug in expect test
2022-12-02 16:20:56 -06:00
Ayaz Hafiz
705ce10085
New problem dropped
2022-12-02 14:14:18 -06:00
Ayaz Hafiz
8e2c2e1809
It's an error to expose values that aren't defined
2022-12-02 14:11:58 -06:00