Commit Graph

153 Commits

Author SHA1 Message Date
Agus Zubiaga
4e5fdfbf52
Handle root type when loading from str 2024-06-08 19:46:41 -03:00
Brendan Hansknecht
6dc5bfb1b7
Use roc_target over target_lexicon
Tailors a target class for our needs.
Replaces tons of uses across the entire compiler.
This is a base for later adding new targets like thumb.
2024-03-31 10:50:26 -07:00
Anton-4
76c47c5d6f
stylistic improvements 2024-03-09 20:47:19 +01:00
Jonathan Schear
504e00d44d
Group toplevel expects by module, run them separately 2024-03-08 14:56:32 -05:00
Folkert
41ad915c35
make an inline expect triggered by a top-level expect work 2024-02-01 13:08:01 +01:00
Folkert
b0d57587e3
List.get with negative index in repl 2024-01-28 22:21:40 +01:00
Anton-4
1126f85b5a
fix clippy unnecessary hashes 2024-01-01 16:38:36 +01:00
Anton-4
cd632fe549
Merge branch 'main' of github.com:roc-lang/roc into clippy-1.74 2023-12-25 17:05:37 +01:00
Brendan Hansknecht
496cd6710a
fix debug info and add it all to the llvm backend 2023-12-04 12:55:33 -08:00
Ayaz
aaba3f4d82
Merge branch 'main' into clippy-1.74 2023-12-02 20:09:06 -06:00
Brendan Hansknecht
5dd0bdebc9
support seamless slice in expects 2023-12-02 15:57:53 -08:00
Brendan Hansknecht
e6cc43492a
rip out old dbg and setup reasonable base debug location info 2023-11-29 21:05:49 -08:00
Folkert
eda9681982
final fixes 2023-11-18 23:10:21 +01:00
Ayaz Hafiz
44c4797d9a
Parameterize program solving on a FunctionKind
This new flag determines whether we should introduce a new kind to
represent lambda sets, or whether lambdas should be erased. The latter
is not yet implemented.
2023-07-12 13:53:50 -05:00
Folkert
ef39bad7c6
auto clippy fixes 2023-07-10 18:27:08 +02:00
eiei114
bf3f541331
Merge branch 'main' into fix/replace_panic_with_internal_error 2023-06-27 12:48:34 +09:00
eiei114
486558396f
replace panic 2023-06-25 18:13:44 +09:00
eiei114
c1d4a18c00
Revert "replace"
This reverts commit f43e346897.
2023-06-25 17:50:05 +09:00
eiei114
f43e346897
replace 2023-06-25 17:14:02 +09:00
Ayaz Hafiz
41597cbab7
Do not make LayoutInterner mutable 2023-06-17 18:13:03 -05:00
Ayaz Hafiz
250f4ea046
Correct repl evaluation of toplevel numbers
Closes #5191
2023-04-13 10:48:46 -05:00
Ayaz Hafiz
65ba472646
Add reproducer for bug that's fixed now
Closes #5140
2023-04-12 10:10:22 -05:00
Folkert
c0f49ce62c
correctly add padding between data and tag id 2023-03-28 19:46:26 +02:00
Folkert
fb4a56e916
flip comparison order for better diffs 2023-03-28 19:45:31 +02:00
Richard Feldman
21e14589b0
Update tests 2023-03-26 11:49:45 -04:00
Brendan Hansknecht
f42f61e271
run a toml formatter and then clean it up a bit 2023-03-06 19:47:57 -08:00
Brendan Hansknecht
4a89bee0a5
centralize package versions except for vendor and excluded 2023-03-06 19:29:09 -08:00
Brendan Hansknecht
5485c8a5b0
update to using workspace package spec 2023-03-06 16:36:18 -08:00
Brendan Hansknecht
21af20597e
remove unused dependencies 2023-03-06 12:09:00 -08:00
Ayaz Hafiz
0201b29a5e
Fix expect tests 2023-01-16 10:52:10 -06:00
Folkert de Vries
9a86e7e080
Merge pull request #4896 from roc-lang/expect-crash
reproduce crash in `expect` with Lists of different length
2023-01-14 16:53:52 +01:00
Folkert de Vries
e3a213c0dc
Merge pull request #4882 from roc-lang/weakening-3
Begin weakening let-bindings to non-function, non-number expressions
2023-01-14 15:32:27 +01:00
Folkert
83dc08b3b4
add expected test output 2023-01-14 15:19:25 +01:00
Folkert
148ec3752d
fix bug with record field ordering in repl eval 2023-01-14 15:09:12 +01:00
Folkert
dca1c665ae
fix list elementes being cloned to the wrong place 2023-01-14 14:25:23 +01:00
Ayaz Hafiz
e43ba9bccf
Fix repl expect test 2023-01-12 10:04:55 -06:00
Richard Feldman
4f44209bb8
Fix some tests 2023-01-11 23:18:54 -05:00
Ayaz Hafiz
50826d1a83
Inline interners into the layout interner module
I realized that we'll need to make the layout interner more complicated
to support things like recursive pointers pointing to their parents and
to support lambda set layout caching. Since the layout interner is the
only user of intern crate right now anyway, just inline the whole thing.
2023-01-03 14:19:39 -06:00
Ayaz Hafiz
b60d5c0251
Push wrapped layout interners through 2023-01-03 10:51:33 -06:00
Ayaz Hafiz
972046445b
Lift Niche from just captures-niche to generic niche 2022-12-29 18:43:26 -06:00
Ayaz
ea53a50447
Merge pull request #4836 from roc-lang/intern-layouts-2
Intern list element layouts and thread mut layout interner through LLVM backend
2022-12-29 18:41:35 -06:00
Ayaz Hafiz
759f8d86af
Fix lifetime errors due to interner
In the llvm backend, there are the lifetimes `'a` (lifetime of the
global arena) and `'ctx` (lifetime of constructed LLVM values). `'a`
lives longer than `'ctx`, but the compiler didn't enforce this until
the layout interner was introduced, for some reason. We have to make
sure that containers of lifetime `'a` have no `'ctx` references.
2022-12-29 11:38:34 -06:00
Folkert
26e5ac85d4
remove argument from the from_str functions 2022-12-29 16:50:19 +01:00
Ayaz Hafiz
2dc19207a3
Throw away usage of stored variables on receiver side 2022-12-14 17:00:37 -06:00
Ayaz Hafiz
fe90355265
Store specialized variables of expect lookups in expect frames 2022-12-14 17:00:36 -06:00
Folkert
a72556b927
refactor entry point 2022-12-09 15:10:25 +01:00
Folkert
3bae4145d9
do expect/dbg with atomics 2022-12-08 00:41:20 +01:00
Ayaz Hafiz
304b88cdb2
Fix bug in expect test 2022-12-02 16:20:56 -06:00
Ayaz Hafiz
f49b0cd207
Update repl expect test to work around Dec copy bug 2022-12-01 13:26:08 -06:00
Richard Feldman
b2beeb770e
Merge remote-tracking branch 'origin/main' into https-packages 2022-11-25 19:50:06 -05:00