Ayaz Hafiz
b0c602eb8d
Clippy
2022-06-02 09:44:38 -05:00
Ayaz Hafiz
bde107da49
Remove TagName
in favor of explicit TagName or Closure
...
Note that we still need a `TagOrClosure` enum for phases past mono, but
at least we get rid of the branches in the front end.
2022-06-02 09:44:34 -05:00
Ayaz Hafiz
5e35609369
Remove mono/src/exhaustive.rs
2022-06-01 17:39:16 -05:00
Ayaz Hafiz
591528d8a3
Handle case where lambda set is unbound
2022-06-01 13:18:55 -05:00
Ayaz Hafiz
c66f989467
Recursive closure layout working again in effect test
2022-06-01 13:18:54 -05:00
Ayaz Hafiz
2e70c9aba4
Getting closer. Checking in for a break.
2022-06-01 13:18:53 -05:00
Ayaz Hafiz
790eb8e20c
Lambda sets don't need extension vars
2022-06-01 13:18:03 -05:00
Ayaz Hafiz
c2a2ce690c
Lift lambda sets as their own type
...
This prepares for unspecialized lambda set in the type system in
general.
2022-06-01 13:17:22 -05:00
Richard Feldman
524ae1e3d8
Use RocType::TagUnionPayload for tag union payloads
2022-05-28 19:17:10 -04:00
Richard Feldman
4eec34becf
Update to use new square brace formatting
2022-05-22 23:15:54 -04:00
Folkert
98ce9f4d09
remove the snapshots
2022-05-21 20:42:19 +02:00
Folkert de Vries
e3b6a38394
Merge pull request #3114 from rtfeldman/less-u128-special-casing
...
Less U128 special-casing
2022-05-21 18:18:42 +02:00
Richard Feldman
3cdaa52a30
Merge pull request #3110 from rtfeldman/handcrafted-unification-table
...
Handcrafted unification table
2022-05-21 11:39:58 -04:00
Richard Feldman
b4e949ca2e
Don't special-case so many U128 literals
2022-05-21 10:36:45 -04:00
Richard Feldman
489fb31cc2
Combine aarch64 and non-aarch64 mono size assertions
2022-05-21 00:53:47 -04:00
Richard Feldman
49aea9d639
Use [u8; 16] to avoid number alignment bumps
2022-05-21 00:53:47 -04:00
Folkert
2b94eeed60
switch to new unification table
2022-05-20 21:54:22 +02:00
Folkert
4489a308e4
use modify over getting a mutable reference
2022-05-20 21:02:53 +02:00
Ayaz Hafiz
cf56b5015a
Fix existing reporting tests
2022-05-19 18:23:02 -04:00
Ayaz Hafiz
6d19f31574
Remove mono-related changes for now
2022-05-19 18:21:43 -04:00
Ayaz Hafiz
3f4336d15a
Save ability specializations
...
Unfortunately not enough...
2022-05-19 18:21:42 -04:00
Ayaz Hafiz
95395ffc5f
Remove debugs
2022-05-19 18:21:41 -04:00
Ayaz Hafiz
f1e09fbe78
Pass ability specializations back down
2022-05-19 18:21:41 -04:00
Richard Feldman
0f3709da6f
Merge pull request #3090 from rtfeldman/expr-blank
2022-05-18 21:25:07 -04:00
Folkert
f285e7ce93
add a TypedHole node to Expr, for use in the editor
2022-05-18 16:39:24 +02:00
Ayaz Hafiz
6a9d7e07e7
Mono problems aren't a thing anymore
2022-05-18 10:07:59 -04:00
Anton-4
0f59f3097a
cargo fix --edition
2022-05-16 17:04:17 +02:00
Richard Feldman
9bc1e320dc
Fix --release warnings
2022-05-15 21:50:49 -04:00
Richard Feldman
d26f6f600f
Merge pull request #3065 from rtfeldman/bindgen-recursive-tag-unions
...
Bindgen unwrapped pointer recursive tag unions
2022-05-14 16:09:40 -04:00
Folkert
c161140aec
Merge remote-tracking branch 'origin/trunk' into more-tyck
2022-05-14 14:48:54 +02:00
Richard Feldman
de14c9b979
Correctly unwrap cons list payloads in bindgen
2022-05-13 23:55:13 -04:00
Richard Feldman
c9f06a9172
Ad some docs to tag union layouts
2022-05-13 13:06:33 -04:00
Richard Feldman
e6efbdfe7c
Merge pull request #3055 from rtfeldman/bindgen-multi-tag-unions
...
Bindgen tag unions with payloads
2022-05-12 17:56:53 -04:00
Ayaz Hafiz
710a10a29c
Check for invalid cycles after type solving recursive defs
...
Disallow cycles that pass through a non-function value. Since we
evaluate eagerly, having one such cycle means there is at least one path
in the program that (likely) has unbounded recursion. Of course we can't
be certain (halting problem), but it's very likely, and avoids stuff
like #1926 . Also, mono (as it's done today) won't work if things in a
cycle aren't functions.
Closes #1926
2022-05-11 14:57:01 -04:00
Ayaz Hafiz
9777886376
Fill out pattern traversals, add symbol discovery
2022-05-11 14:53:39 -04:00
Ayaz
d485869954
Merge pull request #3039 from rtfeldman/specializations-at-the-front
...
Opportunistically resolve specializations during solving
2022-05-11 13:42:19 -04:00
Richard Feldman
a380afd4dc
Merge remote-tracking branch 'origin/trunk' into bindgen-multi-tag-unions
2022-05-11 10:52:52 -04:00
Richard Feldman
8da0e219b9
Merge pull request #3049 from rtfeldman/clippy-for-tests
...
clippy --tests
2022-05-11 10:52:00 -04:00
Richard Feldman
b9c07aef27
Use internal_error over unreachable
2022-05-11 10:51:27 -04:00
Richard Feldman
5ff3bfbbf9
Expose the logic for choosing discriminant size
2022-05-11 10:47:56 -04:00
Richard Feldman
dbc6302681
Fix a bunch of errors from clippy --tests
2022-05-11 10:47:55 -04:00
Ayaz Hafiz
49c61a6f4a
Fix ignored field
2022-05-11 08:56:04 -04:00
Ayaz Hafiz
afb1f826b1
Correct walking of even specialized symbols in mono
2022-05-11 08:53:16 -04:00
Ayaz Hafiz
da00c47102
Opportunistically resolve specializations during solving
2022-05-11 08:53:15 -04:00
Folkert de Vries
b2e045bf9a
Merge pull request #3042 from rtfeldman/specialization-under-let
...
Lift mono of let-bindings to separate function
2022-05-11 14:50:40 +02:00
Richard Feldman
fd40fed937
Fix a bunch of errors from clippy --tests
2022-05-10 15:21:48 -04:00
Richard Feldman
1649680fbd
Share sorting code between bindgen and code gen
2022-05-09 18:42:38 -04:00
Richard Feldman
3ce0fc59d4
Remove a continue
`
2022-05-09 18:42:37 -04:00
Richard Feldman
b174ea9ab0
Extract cmp_fields function
2022-05-09 18:42:37 -04:00
Richard Feldman
2f2230a9f3
Avoid an intermediate vector in some cases
2022-05-09 18:42:37 -04:00