Folkert
1814a69c30
remove closure that is used once
2022-05-21 14:42:48 +02:00
Folkert
8c44661bc2
use set_content_unchecked; replace modify with a single set
2022-05-21 14:06:43 +02:00
Folkert
f1e1c45f2f
some more unchecked operations
2022-05-21 13:52:44 +02:00
Folkert
a1894195d3
refactoring trivial copy detection
2022-05-21 13:48:28 +02:00
Brian Carroll
fc5d71c20c
wasm: Create parse
module and move SkipBytes trait into it
2022-05-21 10:53:50 +01:00
Brian Carroll
1e68ca88d0
fix warning on wasm tests in gen_abilities
2022-05-21 10:34:52 +01: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
Richard Feldman
4f43210218
Use target_info for discriminant alignment
2022-05-20 23:36:55 -04:00
Richard Feldman
c685acd3cd
Derive Eq for PtrWidth
2022-05-20 23:36:54 -04:00
Richard Feldman
f6b1d3b592
Add TargetInfo::ptr_size
2022-05-20 23:36:54 -04:00
Ayaz Hafiz
4a77ce9eca
<clip>
2022-05-20 17:47:21 -04:00
Ayaz Hafiz
ababfa4129
Use two caches instead of a unified one for obligation checking
2022-05-20 17:39:09 -04:00
Folkert
a705d6a6e8
unchecked in making the rank table
2022-05-20 23:28:56 +02:00
Folkert
e20ac3f38f
use unchecked operations in generalization
2022-05-20 23:18:27 +02:00
Folkert
6bedf126ae
unchecked variants of functions (don't check the rootness of the key
2022-05-20 23:06:47 +02:00
Folkert
d291a87945
more efficient use of Subs api
2022-05-20 22:55:00 +02:00
Folkert
a99489fb57
implement get_rank_set_mark natively
2022-05-20 22:54:51 +02:00
Folkert
afedc4ab01
implement .modify() natively
2022-05-20 22:54:33 +02:00
Folkert
ac30ec5489
inline OptVariable functions
2022-05-20 22:53:56 +02:00
Folkert
e9bdf0e5de
re-enable builtin module caching
2022-05-20 22:24:21 +02:00
Ayaz Hafiz
a4c122d5db
Validate derives clauses after solving
2022-05-20 15:56:55 -04:00
Ayaz Hafiz
4cf87510c8
Cleanup abilities_in_scope
and rename to pending_abilities_in_scope
...
`abilities_in_scope` is a buffer we use to keep track of locally-defined
abilities before we've fully resolved them. We do this because we
canonicalize ability members signatures before we've registered an
ability to the abilities store, and canonicalization of signatures must
report `has` bounds that don't reference abilities.
So, this buffer is more appropriately named `pending_abilities_in_scope`.
There is also no reason to export it, because it is only relevant
during canonicalization of type defs in a module.
2022-05-20 15:56:55 -04:00
Ayaz Hafiz
9712cfe342
Canonicalize deriving
2022-05-20 15:55:45 -04:00
Folkert
2b94eeed60
switch to new unification table
2022-05-20 21:54:22 +02:00
Folkert
4550f3fa88
update deep_copy_var_help
2022-05-20 21:44:46 +02:00
Folkert
be104d25eb
update instantiate rigid
2022-05-20 21:36:05 +02:00
Folkert
f2deb37a30
update instantiate rigid
2022-05-20 21:18:52 +02:00
Folkert
22ca51c881
get/set copy
2022-05-20 21:14:33 +02:00
Folkert
dc155ea95a
update generalize
2022-05-20 21:05:17 +02:00
Folkert
4489a308e4
use modify over getting a mutable reference
2022-05-20 21:02:53 +02:00
Richard Feldman
56ff925e4e
Merge pull request #3106 from rtfeldman/revise-error-message
...
Revise error message for Not Found
2022-05-20 12:49:06 -04:00
Richard Feldman
94ab1e99c2
Merge pull request #3102 from rtfeldman/bindgen-reference-matrix
...
use ReferenceMatrix for topological sort
2022-05-20 12:48:55 -04:00
Folkert
8a361bb68a
disable caching of builtin modules for now
2022-05-20 18:41:23 +02:00
Folkert
39c156b970
add our own custom unification table
2022-05-20 18:39:26 +02:00
Richard Feldman
3212ca3949
Revise error message for Not Found
2022-05-20 11:30:57 -04:00
Ayaz Hafiz
22bf650685
Cleanup abilities_in_scope
and rename to pending_abilities_in_scope
...
`abilities_in_scope` is a buffer we use to keep track of locally-defined
abilities before we've fully resolved them. We do this because we
canonicalize ability members signatures before we've registered an
ability to the abilities store, and canonicalization of signatures must
report `has` bounds that don't reference abilities.
So, this buffer is more appropriately named `pending_abilities_in_scope`.
There is also no reason to export it, because it is only relevant
during canonicalization of type defs in a module.
2022-05-20 09:57:31 -04:00
Ayaz
eb706d2863
Merge pull request #3100 from rtfeldman/solve-copy-sequence
...
use macro in copy_var to clean up logic
2022-05-20 08:50:42 -04:00
Folkert
515e836cdb
formatting
2022-05-20 13:15:33 +02:00
Folkert
c785577636
fix comment
2022-05-20 13:14:42 +02:00
Folkert
c190bfa2fe
use ReferenceMatrix for topological sort
2022-05-20 13:02:28 +02:00
Folkert
1e7c4b21b0
simd small string interner search
2022-05-20 12:35:24 +02:00
Folkert
9d21343227
use macro to clean logic up a bit
2022-05-20 10:29:41 +02:00
Ayaz
8c358332c8
Merge pull request #3093 from rtfeldman/derivable-abilities
...
Typecheck deriving of abilities for types
2022-05-19 21:18:04 -04:00
Ayaz
e5eb9c9f1c
Merge pull request #3052 from rtfeldman/build-encode
...
Encode/JSON in standard library typechecks
2022-05-19 21:16:59 -04:00
ayazhafiz
7a732c7d4a
Fix ability formatting
2022-05-19 18:30:36 -04:00
Ayaz Hafiz
c7dacb879c
Ignore derived for now
2022-05-19 18:29:31 -04:00
Ayaz Hafiz
e78b345ee0
Format has-derived clauses
2022-05-19 18:29:31 -04:00
Ayaz Hafiz
fcf464e9da
Parse has-derived clauses
2022-05-19 18:29:31 -04:00
Ayaz Hafiz
768121e431
Don't allocate for missing or existing members by default
...
- Missing members are zero in the happy case
- Existing members will always be populated in the happy case, but I
don't think they improve the error message, so just get rid of it.
2022-05-19 18:25:42 -04:00