Commit graph

1231 commits

Author SHA1 Message Date
Richard Feldman
7e12bcff1d
Rename variant_var to tag_union_var 2022-08-15 11:11:32 -05:00
Ayaz Hafiz
c81eecd644
Print back records without trailing comma 2022-08-15 11:11:31 -05:00
Ayaz Hafiz
0fd467ca01
Print back record updates 2022-08-15 11:11:31 -05:00
Richard Feldman
6e008cf718
Finish building expressions for decoder_record 2022-08-15 11:11:31 -05:00
Richard Feldman
d3e96e9aa8
Expand record deriving decoding 2022-08-15 11:11:31 -05:00
Richard Feldman
0bff2c6674
Support converting Lowercase to Box<str> 2022-08-15 11:11:31 -05:00
Ayaz Hafiz
e1359c3025
Print back tags appropriately 2022-08-15 11:11:31 -05:00
Richard Feldman
bff2852639
Add an initial record decoding test 2022-08-15 11:11:31 -05:00
Richard Feldman
bf8c253b13
Add some basic record decoding 2022-08-15 11:11:31 -05:00
Richard Feldman
6af6006cdd
Give TagName a From<&str> 2022-08-15 11:11:30 -05:00
Ayaz Hafiz
aa5e1e6a27
Build derive keys for derivable records 2022-08-15 11:11:30 -05:00
Ayaz Hafiz
275391c065
Move check_ext_var to utility module 2022-08-15 11:11:30 -05:00
Ayaz Hafiz
583829eaf5
Pass stepper function explicitly, for now 2022-08-15 11:11:30 -05:00
Ayaz Hafiz
29793fac32
Begin working on JSON record decoding
And we've hit a borrow panic 😍
2022-08-15 11:11:29 -05:00
Ayaz
0d96f4fc7d
Merge pull request #3806 from roc-lang/dependabot/cargo/encode_unicode-1.0.0
Bump encode_unicode from 0.3.6 to 1.0.0
2022-08-15 08:16:49 -05:00
dependabot[bot]
cd3e2c8d36
Bump hashbrown from 0.12.2 to 0.12.3
Bumps [hashbrown](https://github.com/rust-lang/hashbrown) from 0.12.2 to 0.12.3.
- [Release notes](https://github.com/rust-lang/hashbrown/releases)
- [Changelog](https://github.com/rust-lang/hashbrown/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/hashbrown/compare/v0.12.2...v0.12.3)

---
updated-dependencies:
- dependency-name: hashbrown
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-15 05:30:58 +00:00
dependabot[bot]
be82551719
Bump encode_unicode from 0.3.6 to 1.0.0
Bumps [encode_unicode](https://github.com/tormol/encode_unicode) from 0.3.6 to 1.0.0.
- [Release notes](https://github.com/tormol/encode_unicode/releases)
- [Changelog](https://github.com/tormol/encode_unicode/blob/master/RELEASES.md)
- [Commits](https://github.com/tormol/encode_unicode/compare/v0.3.6...v1.0.0)

---
updated-dependencies:
- dependency-name: encode_unicode
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-15 05:30:40 +00:00
Folkert de Vries
f2a6310137
Merge pull request #3735 from roc-lang/turn-on-abilities-wasm-tests
Turn abilities tests for wasm dev and wasm LLVM back on
2022-08-14 16:18:48 +02:00
Brian Carroll
fe0dad1136
Merge pull request #3772 from RossSmyth/Layouts
Fix some layout reprs
2022-08-14 10:50:48 +01:00
Ayaz
11f0de21e1
Merge pull request #3781 from roc-lang/dependabot/cargo/insta-1.18.2
Bump insta from 1.15.0 to 1.18.2
2022-08-13 13:36:32 -07:00
Ayaz Hafiz
c0969e5ff8
Reuse allocations in fixing closures 2022-08-13 10:38:53 -07:00
Ayaz Hafiz
d19c9107b2
swap_remove rather than removing in place 2022-08-13 10:30:58 -07:00
Ayaz Hafiz
7215acdbac
Ensure that field layouts passed to closure unwrapping are sorted 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
9ffe6eb6dd
Print function argument layouts in pretty mode 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
991b99250c
Clippy 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
6bcd682dde
Support captures between mutually recursive closures 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
4b55416ca1
Add test for outer scope transient captures 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
5ead673cfc
Add gen tests for transient closure captures 2022-08-13 10:25:18 -07:00
Ayaz Hafiz
e97ce32b88
Fixup transient closure captures during canonicalization
Closure captures can be transient, but previously, we did not handle
that correctly. For example, in

```
x = ""
inner = \{} -> x
outer = \{} -> inner {}
```

`outer` captures `inner`, but `inner` captures `x`, and in the body of
`outer`, we would not construct the closure data for `inner` correctly
before calling it.

There are a couple ways around this.

1. Update mono to do something when we are passed the captured
   environment of a closure, rather than attempting to construct a
   call-by-name's captured environment before callign it.
2. Fix-up closures during canonicalization to remove captured closures
   that themselves capture, and replace them with their captures.

This patch does (2), since (1) is much more involved and is not likely
to bring a lot of wins. In general I think it's reasonable to expect
captured environments, even if transient, to be fairly shallow, so I
don't think this will produce very large closure environments.

Closes #2894
2022-08-13 10:25:17 -07:00
Folkert
d78fc47b7a
use bindgen binary again 2022-08-13 19:06:23 +02:00
dependabot[bot]
7ab742dd1a
Bump insta from 1.15.0 to 1.18.2
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.15.0 to 1.18.2.
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.15.0...1.18.2)

---
updated-dependencies:
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-13 16:49:28 +00:00
Folkert
4bb653d389
bump the wasm function stack size in our fork of wasm3 2022-08-13 14:37:02 +02:00
Ross Smyth
80f14f61df
Add safe layout reprs and safety comments about layout 2022-08-13 03:49:12 -04:00
Richard Feldman
99a22d6bbd
Merge pull request #3747 from roc-lang/i2419
Add regression tests for #2419
2022-08-12 19:53:53 -04:00
Ayaz Hafiz
89457f9faf
Add Wasm32Result for Infallible 2022-08-12 15:42:20 -07:00
Ayaz Hafiz
aa26a0da44
Add regression tests for #2419
Closes #2419
2022-08-12 15:42:19 -07:00
dependabot[bot]
f0c83f730b
Bump im from 14.3.0 to 15.1.0 in /crates/compiler/parse/fuzz
Bumps [im](https://github.com/bodil/im-rs) from 14.3.0 to 15.1.0.
- [Release notes](https://github.com/bodil/im-rs/releases)
- [Changelog](https://github.com/bodil/im-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bodil/im-rs/compare/v14.3.0...v15.1.0)

---
updated-dependencies:
- dependency-name: im
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-12 21:09:40 +00:00
Richard Feldman
58c3575e44
Fix mono tests 2022-08-12 15:28:05 -04:00
Richard Feldman
7b2c1a7e64
s/trunk/main/g 2022-08-12 15:24:37 -04:00
Richard Feldman
97e2900bf5
s/rtfeldman/roc-lang/g in links to GitHub repos 2022-08-12 15:24:09 -04:00
Richard Feldman
641daab02c
Merge pull request #3754 from rtfeldman/avx512_valgrind_fix
valgrind fix for newer intel processors
2022-08-12 10:59:01 -04:00
Anton-4
72e60bceea
valgrind fix for newer intel processors 2022-08-12 12:06:31 +02:00
Anton-4
720f02372c
use most compatible bash shebang 2022-08-12 11:45:02 +02:00
Folkert de Vries
0798f787c5
Merge pull request #3736 from rtfeldman/i3687
Creation of a record whose type has an optional value is an error
2022-08-11 15:51:41 +02:00
Folkert
5b10ebeeb7
Merge remote-tracking branch 'origin/trunk' into i2453 2022-08-11 10:44:26 +02:00
Folkert de Vries
448c8ced53
Merge pull request #3749 from rtfeldman/i2165
Regression test for #2165
2022-08-11 10:23:45 +02:00
Folkert de Vries
ae0e90c8f3
Merge pull request #3738 from rtfeldman/i3444
Layout generation for recursive lambda sets
2022-08-11 10:22:07 +02:00
Ayaz Hafiz
a1445c25bd
Update solve test 2022-08-10 20:24:20 -07:00
Ayaz Hafiz
b3d4c8f09b
Parse explicit optional field types as rigid optionals 2022-08-10 20:24:19 -07:00
Ayaz Hafiz
b69051c90e
Print rigid optional types correctly 2022-08-10 20:24:19 -07:00