Commit Graph

407 Commits

Author SHA1 Message Date
Richard Feldman
d909cc5961
Update glue to no longer use Nat 2024-01-26 16:06:07 -05:00
Jared Forsyth
bbbbb12e90 Fix syntax errors from RustGlue's tag generated code
```rs
    /// A tag named ``DirReadErr``, with the given payload.
    pub fn DirReadErr(f0: UnwrappedPath, f1: roc_std::RocStr) -> Self {
        Self {
            f0
            f1
        }
    }
```
becomes
```rs
    /// A tag named ``DirReadErr``, with the given payload.
    pub fn DirReadErr(f0: UnwrappedPath, f1: roc_std::RocStr) -> Self {
        Self {
            f0,
            f1
        }
    }
```
2024-01-26 11:00:00 -06:00
On vacation
4ee3431428
Merge branch 'main' into rust-1-72-upgrade 2024-01-26 13:39:34 +01:00
Brendan Hansknecht
abc4fd18cc
add --fuzz option to roc 2024-01-25 15:42:18 -08:00
Brendan Hansknecht
260b94b36d
Merge branch 'main' into rust-1-72-upgrade 2024-01-17 14:36:16 -08:00
Brendan Hansknecht
f9c0d54688
Stop using "rlib"
I don't know if this matters at all, but I don't think we should use "rlib".
The [rust docs](https://doc.rust-lang.org/reference/linkage.html) suggest using "lib" by default.
"lib" probably just aliases to "rlib", but it lets the compiler pick what it wants.
I don't think this will fix anything, but I am half hopeful it will somehow fix #6121.
2024-01-16 22:36:10 -08:00
Brian Teague
60c639b60e
Consolidate gitignore
Keep certain files with no file extension

Keep specific files with no file extension

Delete all gitignore files
2024-01-10 22:16:04 -05:00
Anton-4
c85a25e320
clippy fixes 2024-01-01 19:19:44 +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
Folkert
ee1dd2cd14
disable a glue test that segfaults 2023-12-12 19:35:51 +01:00
Richard Feldman
5aab05aede
Change Running program... message in glue 2023-12-11 14:36:37 -05:00
Richard Feldman
e1697a910c
cargo fmt 2023-12-11 14:35:49 -05:00
Folkert
590282b14f
make glue use a setjmp/longjmp panic handler 2023-12-11 20:33:21 +01:00
Luke Boswell
61a55ad79d
make a start 2023-12-07 11:25:02 +11:00
Brendan Hansknecht
da301df37b
separate emitting debug info from emitting llvm-ir 2023-12-04 13:13:30 -08:00
Brendan Hansknecht
787d7f85ac
switch dbg arg ordering to make it backwards compatible 2023-12-02 21:18:32 -08:00
Brendan Hansknecht
602b92d98c
re-add no longer broken glue tests 2023-12-02 21:18:32 -08:00
Brendan Hansknecht
13d2238536
update roc_dbg in platforms 2023-12-02 21:18:31 -08:00
Ayaz
aaba3f4d82
Merge branch 'main' into clippy-1.74 2023-12-02 20:09:06 -06:00
Brendan Hansknecht
9f1f0610d1
disable flaky glue test for now 2023-11-29 23:17:11 -08:00
Brendan Hansknecht
7b53f08e75
hopefully fix glue platform exit code issue 2023-11-29 22:45:12 -08:00
Brendan Hansknecht
88106d1659
add basic roc_dbg impl to c platforms 2023-11-29 22:02:27 -08:00
Brendan Hansknecht
3e66254b25
update zig and rust platforms to have correct roc_panic and roc_dbg 2023-11-29 21:49:34 -08:00
Folkert
cfeac8922e
remove clippy warning that does not exist in 1.71 2023-11-18 23:27:54 +01:00
Folkert
554f84f97f
remove clippy warning that does not exist in 1.71 2023-11-18 23:24:26 +01:00
Folkert
eda9681982
final fixes 2023-11-18 23:10:21 +01:00
Folkert
c019ced31d
various 2023-11-18 23:05:55 +01:00
Richard Feldman
79e87339b3
Merge pull request #5974 from roc-lang/drop-old-glue
Remove obsolete rust_glue and tests
2023-11-12 21:20:14 -05:00
Brendan Hansknecht
3c68221da5
add test case for glue generation of closures 2023-11-12 11:15:07 -08:00
Brendan Hansknecht
97a7c30eb9
remove constant function name 2023-11-11 16:17:44 -08:00
Brendan Hansknecht
72ddfb036d
correctly handle functions that don't return functions 2023-11-11 15:56:18 -08:00
Brendan Hansknecht
681a130b54
add file header to glue lib file 2023-11-11 15:56:17 -08:00
Brendan Hansknecht
a474423a48
correct the closure rust glue to deal with size and bytes 2023-11-11 15:56:17 -08:00
Richard Feldman
8e1e9e216f
Remove obsolete rust_glue and tests 2023-11-10 14:31:18 -05:00
Richard Feldman
0eefbac8e3
Merge remote-tracking branch 'origin/main' into output-flag 2023-10-22 17:50:02 -04:00
Anton-4
c393429b94
ignore nullable_unwrapped,nullable_wrapped 2023-10-21 19:40:26 +02:00
Richard Feldman
eebec8a378
Add --output to build, default to app filename 2023-10-19 20:42:28 -04:00
Richard Feldman
cecde60a5e
Revert "glue: find platform main file"
This reverts commit 7be590fae9.
2023-09-08 12:02:25 -04:00
Folkert
7be590fae9
glue: find platform main file 2023-08-28 21:31:50 +02:00
Richard Feldman
738e54ebba
Merge pull request #5763 from roc-lang/glue-unsized-skeleton
skeleton for unsized glue
2023-08-21 12:47:56 -04:00
Folkert
2c22786dc2
remove hardcoded type name 2023-08-16 18:09:01 +02:00
Richard Feldman
3ea195db12
Use List.walkWithIndex in some places 2023-08-15 02:29:25 -04:00
Folkert
609d76529a
skeleton for unsized glue 2023-08-14 22:24:47 +02:00
Richard Feldman
aed1c26e72
Situationally gen Eq/Ord/Hash glue for tag unions 2023-08-10 12:50:07 -04:00
Folkert
bec0e52f1e
make glue and mono look at the same type 2023-08-08 19:57:11 +02:00
Folkert
dc67593d80
regress on test that only worked by coincidence 2023-07-24 22:44:50 +02:00
Richard Feldman
d39711cc7d
Drop () in RustGlue function arguents 2023-07-23 15:30:49 -04:00
Richard Feldman
77a89a23e1
Use ManuallyDrop to fix ownership bug in RustGlue 2023-07-19 14:36:38 -04:00
Ayaz Hafiz
7ea85e44d2
Add Layout::Erased 2023-07-12 14:43:24 -05:00
Ayaz Hafiz
6312d75ee0
Add FunctionPointer layout 2023-07-12 13:59:50 -05:00
Ayaz Hafiz
6e5a308557
Content variant ErasedLambda 2023-07-12 13:57:17 -05: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
Folkert
6d2d65bb1e
remove Boxed layout 2023-07-09 15:47:28 +02:00
Richard Feldman
1fff1cd2a1
Fix some glue fixtures 2023-06-26 20:05:59 -04:00
Richard Feldman
0af548a66f
Drop unnecessary thunk
(plus it's not FFI-safe)
2023-06-26 16:30:33 -04:00
Richard Feldman
fb17e57f7c
Mark disciminant enums as pub in RustGlue 2023-06-26 16:30:19 -04:00
Richard Feldman
28591da79a
Update glue tests 2023-06-26 16:28:10 -04:00
Richard Feldman
abaed60326
Improve debug_assert message 2023-06-26 16:10:35 -04:00
Richard Feldman
ff4d47f293
Fix typo 2023-06-26 14:49:46 -04:00
Richard Feldman
416d8e21b0
Have RustGlue bundle roc_std 2023-06-26 09:48:27 -04:00
Folkert
17512873e8
add LayoutRepr::Ptr 2023-06-24 14:49:45 +02:00
Folkert
f66a20ecff
make examples/glue work 2023-06-19 20:54:06 +02:00
Ayaz Hafiz
f07cf97128
Use arch-specific interner in glue 2023-06-17 18:13:03 -05:00
Ayaz Hafiz
d10893947f
Use rust 2018 macros 2023-06-17 18:13:03 -05:00
Ayaz Hafiz
bc41db2a34
Get rid of passing target_info a bunch 2023-06-17 18:13:00 -05:00
Ayaz Hafiz
5274dbcd00
Add a Newtype variant to LayoutWrapper 2023-06-06 16:03:52 -05:00
Ayaz Hafiz
dd94d6ba16
Stray dbg 2023-06-06 16:01:28 -05:00
Ayaz Hafiz
457cdabc5c
Make repr private and accessible only via the interner 2023-06-06 16:01:27 -05:00
Brendan Hansknecht
75a035e12d
remove all definitions of roc_memcpy 2023-06-02 15:23:05 -07:00
Brendan Hansknecht
481fc2b78c
Merge pull request #5417 from dlsmith/cli-ld-warning
Consistent handling of ld chained fixup warning in cli/glue tests
2023-05-17 15:27:53 +00:00
David Smith
051fca2f68
Share stripping of ignorable strings in has_error helper 2023-05-17 10:08:16 -04:00
David Smith
58cb8352bb
Consistent handling of ld chained fixup warning in cli/glue tests 2023-05-16 17:12:13 -04:00
Ayaz Hafiz
a67c148be7
Convert LayoutRepr::Struct into a tuple variant 2023-05-16 11:58:16 -05:00
Ayaz Hafiz
c3eeb5e2cc
Wrap layouts in a LayoutRepr constructor
Part 1 of support semantic layout representations.
2023-05-10 13:22:10 -05:00
Folkert
d13ca51095
add --dev flag to glue 2023-05-01 18:39:11 +02:00
Folkert
caf11e58fa
more code sharing between mono and glue 2023-04-21 20:59:35 +02:00
Folkert
b5bd0f4fb0
find extern names using the variables (not layouts) 2023-04-21 18:21:01 +02:00
Folkert
f63460eb69
remove some UB 2023-04-06 16:10:31 +02:00
Folkert
92c2931678
make all glue tests run! 2023-04-05 23:19:17 +02:00
Folkert
84d61a0a64
implement enough of non-nullable unwrapped 2023-04-05 17:23:51 +02:00
Folkert
3151a08edb
full implementation for nullable unwrapped 2023-04-05 15:02:53 +02:00
Folkert
64f96c4182
formatting 2023-04-04 20:27:20 +02:00
Folkert
dc7f1c32c8
remove crash from canDerivePartialEq 2023-04-04 20:26:47 +02:00
Folkert
bf4ac1cbf6
re-enable non-recursive tag union tests 2023-04-04 19:48:40 +02:00
Folkert
995e14747b
fix ManuallyDrop usage in tag unions 2023-04-04 15:18:03 +02:00
Folkert
9a6f9ad26e
functions in structs, in general 2023-04-04 15:01:17 +02:00
Folkert
b7119e9b3a
return record containing function 2023-04-03 23:45:30 +02:00
Folkert
178e5ad425
glue + tests for result and option 2023-04-03 19:47:41 +02:00
Folkert
38566a2b9f
add example with arguments 2023-04-02 22:06:04 +02:00
Folkert
3ff17aa0ea
generate signature for the entry points 2023-04-02 20:47:28 +02:00
Folkert
4419e961c8
remove unneeded extern definitions 2023-03-30 21:36:30 +02:00
Folkert
d66ec6d34d
move RustGlue.roc closer to what we have on the ts branch 2023-03-30 21:20:45 +02:00
Folkert
99a3c08911
bake roc_alloc and friends into the dynamic library for glue 2023-03-29 19:43:59 +02:00
Brendan Hansknecht
f0a7ca8d29
use cfg to avoid pulling unix only data into windows builds 2023-03-28 14:15:53 -07:00
Richard Feldman
5cb2202f6b
Fix typo in comment 2023-03-25 13:28:54 -04:00
Richard Feldman
8f5d18a673
clippy 2023-03-25 13:07:22 -04:00
Richard Feldman
49058c8209
cargo fmt on glue 2023-03-25 11:41:43 -04:00
Richard Feldman
977b7394f5
Reorder roc glue arguments and add a default 2023-03-24 22:17:54 -04:00
Richard Feldman
0149e7231c
Temporarily disable some glue tests 2023-03-24 20:55:09 -04:00