Commit graph

4827 commits

Author SHA1 Message Date
Ahmad Sattar
e71ea37d30
Use immutable List.reserve variant 2023-01-26 13:10:26 +01:00
Ahmad Sattar
e70b491816
gen_dev: more tests for append 2023-01-26 10:22:53 +01:00
Joshua Warner
a1cd114198
Add a Malformed trait, and assert that 'passing' tests don't produce a malformed result 2023-01-25 21:01:05 -08:00
Ayaz Hafiz
6193f0be85
Turn test back on 2023-01-25 18:06:11 -06:00
Ayaz Hafiz
a294cae9cd
Don't store recursive unions by recursive pointer head-on 2023-01-25 18:05:43 -06:00
Ayaz Hafiz
36beda63ba
Lints 2023-01-25 18:00:32 -06:00
Ayaz Hafiz
478d4a2d44
Support lambda sets with recursive pointers and their equivalence-checking 2023-01-25 17:57:49 -06:00
Ayaz Hafiz
fa47e82d72
Implement equivalence of lambda sets 2023-01-25 17:20:42 -06:00
Ayaz Hafiz
61b11c9882
Single-threaded layout interner should resolve recursive pointer 2023-01-25 17:19:39 -06:00
Ayaz Hafiz
44acb7e047
Update recursive layout tests 2023-01-25 17:19:14 -06:00
Ayaz Hafiz
0cd448eab4
Start ir-checking quicksort_help again
Closes #4694
2023-01-25 16:28:53 -06:00
Ayaz Hafiz
aab626bf3f
Remove resolve_recursive_layout 2023-01-25 16:21:05 -06:00
Ayaz Hafiz
7754cc553c
Turn the ir-checker back on 2023-01-25 16:18:47 -06:00
Ayaz Hafiz
c9afbce053
Add an up-to-isomorphism equivalence checker for layouts 2023-01-25 16:17:30 -06:00
Ayaz Hafiz
cb00619ce3
Return normalized representation of recursive union as the rec ptr 2023-01-25 15:16:48 -06:00
Ayaz Hafiz
01ef3ffd02
Disable ir-check for now 2023-01-25 15:16:37 -06:00
Ayaz Hafiz
741b1a1bd5
Always show one level of unions when printing layouts 2023-01-25 15:16:06 -06:00
Ayaz Hafiz
3382be6cb9
Chase recursive layouts as appropriate 2023-01-25 15:10:56 -06:00
Ayaz Hafiz
673ca9a02f
Clippy 2023-01-25 13:33:32 -06:00
Ayaz Hafiz
ae7c899e51
Lift up more layouts 2023-01-25 13:14:38 -06:00
Ayaz Hafiz
3c8b68d3bb
Lift up insertions of layouts 2023-01-25 13:12:38 -06:00
Ayaz Hafiz
d2e247ed6e
Remove unused var 2023-01-25 13:03:31 -06:00
Ayaz Hafiz
f451ba49f1
Toss out when-recursive from llvm backend 2023-01-25 12:48:06 -06:00
Ahmad Sattar
0adb38beca
Add List.append implementation for generic64 2023-01-25 19:47:11 +01:00
Ahmad Sattar
9b525143cb
Add List.reserve implementation for generic64 2023-01-25 19:46:54 +01:00
Ayaz Hafiz
a1ebfa30f8
Remove unused variable 2023-01-25 12:33:01 -06:00
Ayaz Hafiz
7159eeabcd
Toss out when-recursive in alias analysis 2023-01-25 12:30:32 -06:00
Folkert
3417a0e059
fix silent merge request wrt record accessors 2023-01-25 00:02:19 +01:00
Ayaz
ad84e02abf
Merge pull request #4950 from roc-lang/keep-recptr-index
Initial support for linking recursive pointer layouts back to their source layouts
2023-01-24 14:42:00 -06:00
Folkert de Vries
8e5efe67b4
Merge pull request #4912 from roc-lang/remove-polymorphic-expression-compilation
Rip out polymorphic expression compilation
2023-01-24 21:35:08 +01:00
Folkert de Vries
7aaf0f3822
Merge pull request #4916 from roc-lang/rust1_65
upgrade to rust 1.65 and clippy fixes
2023-01-24 14:14:10 +01:00
Brian Carroll
ac45fa2bba
Merge pull request #4683 from roc-lang/gen-wasm-shr-128
gen_wasm: Implement u128 right shift by delegating to compiler_rt
2023-01-24 00:36:27 +00:00
Ayaz Hafiz
7f284a753b
Lints 2023-01-23 17:09:05 -06:00
Ayaz Hafiz
8ad185fd1a
opaque pointers fit in a register in x86 2023-01-23 17:08:47 -06:00
Brian Carroll
5179057fc5
gen_wasm: implement NumIntCast for i128 2023-01-23 22:39:24 +00:00
Brian Carroll
a249e14ee5
builtins: restore nicer hash code for Dict 2023-01-23 22:39:24 +00:00
Ayaz
a7c415dc35
Merge pull request #4940 from joshuawarner32/tuple-solve
Initial implementation of tuples in type checking
2023-01-23 16:25:35 -06:00
Ayaz Hafiz
efd7d71dc4
Use Layout::NAKED_RECURSIVE_PTR and update comments 2023-01-23 16:10:54 -06:00
Brian Carroll
28d6d000ec
gen_wasm: Implement u128 right shift by delegating to compiler_rt 2023-01-23 22:07:40 +00:00
Ayaz Hafiz
8edbd3b378
Eliminate uses of RECURSIVE_PTR directly 2023-01-23 16:04:55 -06:00
Folkert de Vries
0b1ee3faeb
Merge pull request #4931 from thehabbos007/list-with-capacity
gen_dev: x86 Add `List.withCapacity` implementation
2023-01-23 23:00:35 +01:00
Ayaz Hafiz
37d9307fbf
Call insert_recursive for union layouts 2023-01-23 15:40:40 -06:00
Ayaz Hafiz
59144f6e29
Unused var 2023-01-23 14:37:49 -06:00
Ayaz Hafiz
695b2e6363
Fix a bug by not recording normalized layouts 2023-01-23 14:37:49 -06:00
Ayaz Hafiz
7169d0974d
Add support for interning normalized recursive layouts 2023-01-23 14:37:49 -06:00
Ayaz Hafiz
8750127111
Begin support for looping-back recursive pointers to their source layouts 2023-01-23 14:37:48 -06:00
Anton-4
6d115af11a
update tutorial basic-cli release 2023-01-23 20:11:32 +01:00
Anton-4
1f2b39a521
Merge branch 'main' of github.com:roc-lang/roc into rust1_65 2023-01-23 18:27:33 +01:00
Joshua Warner
303e5bceb3
Fix tuple accessor type printing 2023-01-22 13:22:39 -08:00
Joshua Warner
de828416bf
Initial implementation of tuples in type checking
This leaves in place a bunch of TODOs and likely many bugs - notably, I haven't tested codegen/layout at all here.
2023-01-22 12:40:44 -08:00