Commit graph

3358 commits

Author SHA1 Message Date
Luca Cervello
a4410fe052
fix: add spaces around ? in optional record field 2023-02-08 18:41:22 +01:00
Ayaz Hafiz
a22dcb5784
Unify record and tuple access 2023-02-08 11:13:36 -05:00
Ayaz Hafiz
1ee5f9d02b
Unify logic for building record and tuple IR 2023-02-08 11:03:02 -05:00
Ayaz
9340a67e87
Merge pull request #4993 from joshuawarner32/tuple-gen-tuple-backend-experiment
Implement mono / code generation for tuples
2023-02-08 10:42:51 -05:00
Folkert
b022175489
implement Box.box and Box.unbox in the dev backend 2023-02-08 13:51:30 +01:00
Joshua Warner
3fee0d3e8f
Fix a bunch of bugs in parsing/formatting found by fuzzing 2023-02-07 20:25:56 -08:00
Joshua Warner
5a6be05ead
implement mono / lowering for tuples 2023-02-07 18:54:50 -08:00
Folkert
c79ae98d16
use allocate_with_refcount in the dev backend 2023-02-08 00:56:45 +01:00
Folkert de Vries
613ef2aa95
Merge pull request #4989 from doubledup/fix-str-docs-unicode-escapes
Fix unicode escape sequences in Str docs
2023-02-05 16:23:09 +01:00
Ahmad Sattar
e8f40cdbb1
Add bools to array building 2023-02-04 01:06:34 +01:00
Ahmad Sattar
6a92aed8a2
Fix subtle call issue 2023-02-04 00:56:45 +01:00
Ayaz Hafiz
009607c55a
Handle FunctionOrTagUnion types in exhaustiveness checking
We should treat FunctionOrTagUnion types as tag unions for the purposes
of exhautiveness checking.

Closes #4994
2023-02-01 22:03:10 -06:00
Richard Feldman
cb5cff37dc
Merge pull request #4990 from roc-lang/fix_different_target
Support subfolders in target folder
2023-02-01 15:16:42 -05:00
Anton-4
4d237d79a7
also search dirs one level below 2023-01-31 19:37:30 +01:00
David Dunn
550b22c633
Fix unicode escape sequences in Str docs
Unicode characters are escaped like \u(00) instead of \{0x00}. Tested
that this is the same for the repl and the hello world example
`Stdout.line "Hello,\u(0A)World!"`.

Found the correct syntax here:
304768569
2023-01-31 21:39:57 +04:00
Anton-4
b47e086f50
support more complex target folder situation 2023-01-31 17:32:55 +01:00
Joshua Warner
31a4eb2bfd
Fix parsing of tuple accessors after an identifier - e.g. myIdent.2 2023-01-30 21:12:01 -08:00
Ayaz
53b1525139
Merge pull request #4987 from roc-lang/virtual-dom-investigate
Fix a bug in layout cache and some more debugging tools
2023-01-30 19:58:52 -06:00
Ayaz Hafiz
0af5929411
Add comments for debug reprs 2023-01-30 17:22:16 -06:00
Ayaz Hafiz
4a59e24081
Address lints 2023-01-30 16:48:46 -06:00
Ayaz Hafiz
8c68044c54
Prime the cache with a default layer 2023-01-30 16:48:01 -06:00
Ayaz Hafiz
c3064dad73
Add method to get index of interned layout 2023-01-30 15:53:37 -06:00
Ayaz Hafiz
c1a937e393
Add method to debug whole nested structure of interned layout 2023-01-30 15:53:13 -06:00
Ayaz Hafiz
a16ea95a04
Always start off with an empty cache
Adding a cache layer can only be done with a snapshot and rollback.
This is necessary to prevent extra variables just lying around on the
toplevel of the layout cache.
2023-01-30 13:08:21 -06:00
Ayaz Hafiz
1e22a2bbcd
Layout-cache variable invalidation must compare by root keys
After unification, variable roots can change. So, when we invalidate
entries in the layout cache, we must compare for variable equivalence
relative to the current state of subs.
2023-01-30 13:06:44 -06:00
Ross Smyth
4698608c4d Atomic ordering for debug counter is stricter than nesscessary. 2023-01-30 11:10:18 -05:00
Folkert de Vries
8afdc820a6
Merge pull request #4982 from thehabbos007/list-prepend
gen_dev: add `List.prepend`
2023-01-29 18:08:57 +01:00
Ahmad Sattar
74c64bf431
Method to load layout alignment into a symbol 2023-01-29 13:36:36 +01:00
Ahmad Sattar
a44016a56b
Consistent naming for "elem_layout" 2023-01-29 13:14:19 +01:00
Ahmad Sattar
40c742d74d
Method to load layout stack size into a symbol 2023-01-29 13:07:02 +01:00
Ahmad Sattar
d9daebb566
Remove unneeded bumpalo::vec! used for layouts 2023-01-29 10:53:14 +01:00
Ayaz
36edda488a
Merge pull request #4979 from roc-lang/update-inkwell-prepare-llvm15
Update inkwell prepare llvm15
2023-01-28 17:42:28 -06:00
Ayaz
9a5a77ee3a
Merge pull request #4974 from roc-lang/no-encode-decode-nat
Display Encode/Decode of `Nat`s
2023-01-28 16:54:51 -06:00
Ahmad Sattar
7fc24d5720
Add List.prepend implementation for generic64 2023-01-28 22:46:35 +01:00
Folkert
0072192897
prepare for llvm 15 2023-01-28 14:51:47 +01:00
Folkert de Vries
6fc57f0a0c
Merge pull request #4976 from thehabbos007/list-concat
gen_dev: add `List.concat` and fix element width bug
2023-01-28 13:56:36 +01:00
Ahmad Sattar
f6b8a27955
Add List.concat implementation for generic64 2023-01-28 02:16:05 +01:00
Ahmad Sattar
a1e2c3f64b
Use list element width for List.withCapacity 2023-01-28 02:02:32 +01:00
Ahmad Sattar
f80edb6ed6
Put list_element_layout! macro into mono 2023-01-28 02:01:02 +01:00
Ahmad Sattar
2f620f048e
Address clippy lint for gen-dev 2023-01-28 01:53:55 +01:00
Richard Feldman
b5caddcb77
Merge pull request #4973 from roc-lang/fix-string-split
fix string split on overlapping delimiters
2023-01-27 19:34:07 -05:00
Folkert de Vries
c4cbbea4cb
Merge pull request #3958 from roc-lang/dev-backend-bitwise-shifts
Dev backend bitwise shifts
2023-01-28 00:46:09 +01:00
Ayaz Hafiz
63e30443fd
Fix formatting 2023-01-27 17:35:31 -06:00
Ayaz Hafiz
572a666780
No Encode/Decode for Nat 2023-01-27 17:16:10 -06:00
Folkert
d52c037cba
fix string split on overlapping delimiters 2023-01-27 17:35:10 +01:00
Ayaz
99050956d3
Merge pull request #4971 from roc-lang/str-trim-null-byte
fix bug in Str.trim
2023-01-27 09:29:01 -06:00
Folkert
bfe959af52
clippy 2023-01-27 11:54:16 +01:00
Folkert
c0a7b283f9
make sure RCX register does not alias an argument 2023-01-27 11:26:08 +01:00
Folkert
7cc5aa243b
fix some comments 2023-01-27 11:24:47 +01:00
Folkert
a35dee959f
clarify naming 2023-01-27 11:23:52 +01:00