Ayaz Hafiz
a102a7497e
Support box/unbox for types that are typically only on the stack
...
Closes #2786
2022-04-09 16:22:01 -04:00
Brian Carroll
ab3a75b754
wasm: fix WasmLayout for LambdaSet
2022-04-05 00:02:05 +01:00
Brian Carroll
a63e55e023
wasm: fix stack order in higher-order wrapper
2022-04-05 00:02:05 +01:00
Folkert de Vries
5e9e7f3ad5
Merge pull request #2760 from rtfeldman/wasm-reset-reuse
...
Wasm reset & reuse
2022-03-21 23:02:28 +01:00
Brian Carroll
9b6b81a438
WIP
2022-03-20 11:17:34 +00:00
Folkert
0b74fcd07b
add test of alias of alias with type variables but without lambda set
2022-03-18 20:10:49 +01:00
Folkert
6543c9bbc6
Merge remote-tracking branch 'origin/trunk' into box-all-the-things
2022-03-09 00:00:15 +01:00
Folkert
be28ee2a64
add test
2022-03-08 22:21:37 +01:00
Brian Carroll
7ccc5ec768
Merge branch 'trunk' of github.com:rtfeldman/roc into wasm-runtime-error
2022-02-27 22:57:23 +00:00
Tom Dohrmann
788c8a6af2
reimplement RocList
and RocStr
2022-02-23 16:02:13 +01:00
Brian Carroll
0d08c97e44
wasm: enable a test that has a Stmt::RuntimeError
2022-02-09 17:23:36 +00:00
Brian Carroll
abfa4b1522
test_gen: allow non-llvm tests to expect errors
2022-02-09 17:23:36 +00:00
Richard Feldman
a55ff62e6c
Merge remote-tracking branch 'origin/trunk' into expect-dont-panic
2022-01-30 20:22:26 -05:00
Chelsea Troy
4f8d0776b3
We got a test working for panicking with the appropriate number fo failures. Ultimatly we want:
...
+ An error maessage that says what the failures were
+ Not panicking (so these are effectively error productions)
2022-01-30 18:55:09 -06:00
ayazhafiz
47a59c560c
Make test use an i64
2022-01-29 15:04:22 -05:00
ayazhafiz
5943873654
Inline polymorphic calls at usage sites
...
This is a bit.. ugly, or at least seems suboptimal, but I can't think of
a better way to do it currently aside from demanding a uniform
representation, which we probably don't want to do.
Another option is something like the defunctionalization we perform
today, except also capturing potential uses of nested functions in the
closure tag of an encompassing lambda. So for example,
```
f = \x -> \y -> 1
```
would now record a lambdaset with the data `[Test.f
[TypeOfInnerClos1]]`, where `TypeOfInnerClos1` is e.g.
`[Test.f.innerClos1 I8, Test.f.innerClos1 I16]`, symbolizing that the
inner closure may be specialized to take an I8 or I16. Then at the time
that we create the capture set for `f`, we create a tag noting what
specialization should be used for the inner closure, and apply the
current defunctionalization algorithm. So effectively, the type of the
inner closure becomes a capture.
I'm not sure if this is any better, or if it has more problems.
@folkertdev any thoughts?
Closes #2322
2022-01-28 23:49:19 -05:00
ayazhafiz
8fd139ba67
Handle unspecialized symbols captured in closures
2022-01-20 00:34:11 -05:00
Chelsea Troy
085c02ffee
Infrastructure to test and implement the replacement of an 'expect' failure with an error production
...
Last command run was 'cargo test expect_fail'
2022-01-16 22:01:22 -06:00
Richard Feldman
54eb9ef669
Merge pull request #2307 from rtfeldman/make-tag-recursive-loop
...
Make tag recursive loop
2022-01-03 21:44:50 -05:00
Joshua Warner
e1c0acb650
Fix region formatting test issues
2022-01-02 09:13:04 -08:00
Folkert
2c97c840fc
walk the chain till we find a tag union to make recursive
2021-12-31 14:26:23 +01:00
ayazhafiz
f56754a539
Remove bad test
...
We shouldn't expect to generate code for tag destructures that are type
errors
2021-12-30 20:59:59 -06:00
Folkert
d70e803dff
add test
2021-12-24 21:19:09 +01:00
Brian Carroll
dcd4914ac1
Fix and enable tests involving empty records
2021-11-29 00:57:28 +00:00
Brian Carroll
a2abf9c3d2
More accurate model of the Wasm VM's stack machine, with control flow blocks
2021-11-14 12:29:54 +00:00
Brian Carroll
78a7e45b8f
Fix a type error in Switch statement condition
2021-11-12 17:51:45 +00:00
Brian Carroll
b77563867f
Enable some gen_primitive tests for wasm
2021-11-12 17:44:31 +00:00
Brendan Hansknecht
1028e1593a
Fix unused import
2021-11-08 19:49:33 -08:00
Brendan Hansknecht
360974398a
Merge test_dev, test_wasm, and test_wasm_util into test_gen
2021-11-08 19:31:20 -08:00
Kevin Sjöberg
f6d055dc62
Correct minor spelling mistakes
2021-11-06 15:29:08 +01:00
Richard Feldman
90401477c9
Fix List.walkUntil arg order
2021-10-06 07:32:56 -04:00
Folkert de Vries
3d82369bcd
Merge branch 'trunk' into nested-rigid-introduced-twice
2021-10-03 23:55:23 +02:00
Folkert
267f88626f
add failing test
2021-09-26 13:05:45 +02:00
Folkert
23e8f6c687
only introduce rigid once!
2021-09-24 21:53:41 +02:00
Folkert
e5e6ac79fe
add comments
2021-09-18 01:12:21 +02:00
Folkert
d1c074cefe
add test
2021-09-18 01:11:48 +02:00
Folkert
7416cc4e81
don't pass closure argument if not expected
2021-09-17 22:51:51 +02:00
Folkert
03d0fa524c
add test
2021-09-15 23:25:08 +02:00
Richard Feldman
f619932255
Merge pull request #1699 from rtfeldman/effect-after
...
Fix closures only monomorphizing once
2021-09-13 19:50:50 -04:00
Folkert
52d36cbe72
fix closure weirdness (skipping or infinite looping)
2021-09-13 22:50:48 +02:00
Folkert
0b893eb972
remove alignment bump again
2021-09-12 14:01:41 +02:00
Folkert
b7db53a8d9
remove wasm tests (they would obviously fail CI)
2021-08-31 12:36:50 +02:00
Anton-4
3f148fe4eb
removed wasm tests relying on unreleased zig version
2021-08-31 12:33:22 +02:00
Folkert
b416e854ef
Merge remote-tracking branch 'origin/trunk' into wasm-gen-test
2021-08-29 23:14:03 +02:00
Folkert
d77c695e45
turn off wasm testing
2021-08-29 23:08:16 +02:00
Folkert
4ced5ce2c0
updates for tests
2021-08-29 23:06:23 +02:00
Folkert
5150e9e819
make primitive tests work under wasm
2021-08-29 15:24:46 +02:00
Folkert
71c0a325ee
wasm test harnass
2021-08-29 00:36:16 +02:00
Joshua Hoeflich
4e57b1edf2
Bump expect to run Rust fn
2021-08-28 11:10:02 -05:00
Folkert
0d7d006cd7
hooking things up
2021-08-28 17:58:05 +02:00