Commit graph

2701 commits

Author SHA1 Message Date
Richard Feldman
a1f3036fc8
Reduce some allocations in glue 2022-09-07 13:00:07 -04:00
Folkert
af8f54bfbd
find and decode the dynamic relocations in .exe files 2022-09-07 17:52:19 +02:00
Brendan Hansknecht
31eb03ab22
Merge pull request #3963 from roc-lang/elf-dummy-ex-nihilo
Elf dummy ex nihilo
2022-09-07 15:31:50 +00:00
Folkert de Vries
828e3b05c5
Merge pull request #3985 from roc-lang/pass-string-byval-host
allow passing of RocStr by-value from a host
2022-09-07 16:23:47 +02:00
Folkert
6fff224c77
PE cleanup after review elsewhere 2022-09-07 14:07:52 +02:00
Folkert
8a2aa076ee
cleanup 2022-09-07 14:07:52 +02:00
Folkert
c46f8a0073
create a dummy elf .so from scratch 2022-09-07 14:07:52 +02:00
Folkert de Vries
8bbeb34792
Merge pull request #3981 from roc-lang/use-copy-table
Cache variables sent to a module's external specializations in mono
2022-09-07 12:28:17 +02:00
Folkert de Vries
83d45fa859
Merge pull request #3982 from roc-lang/i3955
Lose rigidity of annotated optional fields before generalization
2022-09-07 12:20:53 +02:00
Folkert
2762457e10
allow passing of RocStr by-value from a host 2022-09-07 12:14:13 +02:00
Ayaz Hafiz
eebe5234f6
Correctly perform record updates that come from thunks
Closes #3908
2022-09-06 18:07:22 -05:00
Ayaz Hafiz
c2452ff751
Lose rigidity of annotated optional fields before generalization
We have this idea of "rigid optional" fields to annotate record fields
that must necessarily be optional. That avoids the admission of programs
we cannot faithfully compile, like

```
f : {a: Str, b ? U64}
f = {a: "b", b: 1}
```

We want to lose the rigidity restriction when a generalized symbol is
used as at a specialized site; for example it should be possible to call
`f : {x ? Str} -> {}` with both `{}` and `{x : Str}`, neither of which
have a rigidly optional field unless they were to be annotated.

Prior to this commit we would loosen the rigidity restriction upon
specialization of a generalized type at a use site. However, what we
really want to do is apply the loosening during calculation of
generalization. The reason is that otherwise, we must make types that
would be ground (like `{x ? Str} -> {}`) generalized just for the sake
of the optional field annotation. But since the rigidity constraint is
irrelevant after an annotated body has been checked, we can loosen the
rigidity restriction then, which conveniently happens to coincide with
the generalization calculation.

Closes #3955
2022-09-06 17:44:04 -05:00
Ayaz Hafiz
58dd58aa5d
Clippy 2022-09-06 15:53:04 -05:00
Ayaz Hafiz
4ed579d7a6
Use default instead of new 2022-09-06 15:48:59 -05:00
Ayaz Hafiz
a3f3771326
Add the storage module 2022-09-06 14:36:36 -05:00
Ayaz Hafiz
53e1551cd1
Move external specializations storage subs into its own struct 2022-09-06 14:33:41 -05:00
Folkert de Vries
1a9a0d5d01
Merge pull request #3974 from roc-lang/dependabot/cargo/either-1.8.0
remove either
2022-09-06 21:24:16 +02:00
Ayaz Hafiz
882d589d5f
Basic caching of variables saved into storage subs 2022-09-06 14:11:03 -05:00
Ayaz Hafiz
265c1c058f
Loosen bound on VecMap from-iterator 2022-09-06 14:06:41 -05:00
Folkert de Vries
bdbaa9dda2
Merge pull request #3956 from roc-lang/refactor-surgery
minor cleanup of surgery
2022-09-06 19:17:02 +02:00
Folkert
d78be3f863
remove either dependency 2022-09-06 18:52:43 +02:00
dependabot[bot]
ee81b73ea5
Bump either from 1.7.0 to 1.8.0
Bumps [either](https://github.com/bluss/either) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/bluss/either/releases)
- [Commits](https://github.com/bluss/either/compare/1.7.0...1.8.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 16:50:25 +00:00
Folkert de Vries
6dc86513a1
Merge pull request #3973 from roc-lang/dependabot/cargo/libc-0.2.132
Bump libc from 0.2.126 to 0.2.132
2022-09-06 18:48:36 +02:00
Folkert de Vries
b8f6d84dc3
Merge pull request #3928 from roc-lang/windows-surgical-dll
windows surgical dll
2022-09-06 13:19:23 +02:00
Brian Carroll
fda33fc70d
Fix CLI test 2022-09-06 09:01:48 +01:00
dependabot[bot]
095505ee15
Bump libc from 0.2.126 to 0.2.132
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.126 to 0.2.132.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.126...0.2.132)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 07:27:05 +00:00
Anton-4
3f3de74250
Merge pull request #3970 from roc-lang/dependabot/cargo/serde_json-1.0.85
Bump serde_json from 1.0.82 to 1.0.85
2022-09-06 09:26:35 +02:00
Anton-4
8de43887b5
Merge pull request #3969 from roc-lang/dependabot/cargo/dircpy-0.3.13
Bump dircpy from 0.3.12 to 0.3.13
2022-09-06 09:25:45 +02:00
Anton-4
322ae187bc
Merge branch 'main' into markdown
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-09-06 08:31:49 +02:00
Richard Feldman
eac04dfbc7
Merge pull request #3957 from roc-lang/dev-backend-bitwise-logical
dev backend: bitwise logical operators
2022-09-05 20:28:56 -07:00
Richard Feldman
f2d8dc1d35
Merge pull request #3967 from roc-lang/editor-idea-logbook
logbook plugin idea
2022-09-05 17:59:26 -07:00
Jan Van Bruggen
1272503bec
Merge pull request #3943 from sandprickle/move-examples-3912
Move Platform Examples (3912)
2022-09-05 10:38:24 -06:00
dependabot[bot]
646c0d3ffa
Bump serde_json from 1.0.82 to 1.0.85
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.82 to 1.0.85.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.82...v1.0.85)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-05 14:02:45 +00:00
dependabot[bot]
d061730960
Bump dircpy from 0.3.12 to 0.3.13
Bumps [dircpy](https://github.com/woelper/dircpy) from 0.3.12 to 0.3.13.
- [Release notes](https://github.com/woelper/dircpy/releases)
- [Commits](https://github.com/woelper/dircpy/commits)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-05 14:02:27 +00:00
Folkert de Vries
92847fd7c6
Merge pull request #3965 from roc-lang/windows-dec-add
windows RocDec & Zig
2022-09-05 13:06:24 +02:00
Anton-4
5eda173763
logbook plugin idea
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-09-05 11:46:14 +02:00
Folkert de Vries
33ae4c2655
Merge branch 'main' into windows-surgical-dll
Signed-off-by: Folkert de Vries <folkert@folkertdev.nl>
2022-09-05 11:31:19 +02:00
Bryce Miller
9c6c8de5b4
remove special handling of platform-switching examples 2022-09-04 21:53:01 -04:00
Brian Carroll
f3c268abac
Merge pull request #3935 from roc-lang/dependabot/cargo/glyph_brush-0.7.5
Bump glyph_brush from 0.7.4 to 0.7.5
2022-09-04 23:04:06 +01:00
Folkert
df7db18008
make test slighly different so it has a distinct hash 2022-09-04 19:49:11 +02:00
Folkert de Vries
95b00048bf
Merge pull request #3964 from roc-lang/list-map-load-opaque
list map load opaque
2022-09-04 19:12:13 +02:00
Folkert
cc1a5af70d
cleanup 2022-09-04 19:04:48 +02:00
Folkert
76f82a6175
remove debugging code 2022-09-04 19:02:13 +02:00
Folkert
828ded8ebc
fix get scalar unsafe for windows 2022-09-04 18:57:56 +02:00
Folkert
a52a148424
fix llvm issues in all windows num tests 2022-09-04 18:42:59 +02:00
Folkert
6404f308f9
add windows llvm check mode (hacky) 2022-09-04 18:30:48 +02:00
Folkert
08b25cb935
fix dec calling convention for windows 2022-09-04 18:26:04 +02:00
Brian Carroll
517223e12a
Merge pull request #3962 from roc-lang/capacity-realloc
Use capacity better for realloc
2022-09-04 17:00:37 +01:00
Brian Carroll
fe8ea970e8
static-site-gen: report successes & errors, and update roc_cli test 2022-09-04 16:53:01 +01:00
Folkert
5a078eee4f
fix bug in loading of an opaque pointer 2022-09-04 17:22:43 +02:00