Folkert
b1612384c7
implement constrain crate
2022-03-17 19:17:52 +01:00
ayazhafiz
3da34fc843
Report unbound type variables in aliases, opaques
...
Closes #2726
2022-03-14 17:42:45 -05:00
Richard Feldman
422a88eced
Merge pull request #2722 from rtfeldman/various-bug-fixes
...
Various recently filed bug fixes
2022-03-13 22:18:39 -04:00
ayazhafiz
5670fe06cd
Deal with destructuring tag unions behind opaques correctly
...
Closes #2702
2022-03-13 18:44:38 -05:00
Folkert
872d32652a
remove clone, yay
2022-03-13 22:58:16 +01:00
Folkert
f7ba9918fa
use equal_types_with_storage in opaque type constraining
2022-03-13 22:54:13 +01:00
Folkert
80af910c4f
use equal_types_with_storage in tag constraining
2022-03-13 22:53:22 +01:00
Folkert
7df4465a6e
use equal_types_with_storage in Lambda constraining
2022-03-13 22:47:25 +01:00
Folkert
f23945ad94
use equal_types_with_storage in record constraining
2022-03-13 22:47:07 +01:00
Folkert
e8bf5fa378
prevent clone for all function signatures
2022-03-13 22:35:56 +01:00
Folkert
97742b3238
clarify variable name
2022-03-13 17:59:44 +01:00
Folkert
61b4ee054a
rename function
2022-03-13 13:54:03 +01:00
Folkert
f97b10c6f3
clarify why builtins are skipped
2022-03-13 13:51:25 +01:00
Folkert
ed247c9da3
Merge remote-tracking branch 'origin/trunk' into type-checking-storage-subs
2022-03-13 13:43:00 +01:00
Folkert
8b2c1707d4
don't even create a type if we only need a variable
2022-03-13 02:12:45 +01:00
Folkert
b3d9f9c2de
use EitherIndex<Type, Variable> to halve number of types stored
2022-03-13 01:46:49 +01:00
Folkert
e463afe0d9
comments on datastructures in module.rs
2022-03-12 13:43:26 +01:00
Folkert
49408d3a56
fix reporting tests
2022-03-11 22:56:29 +01:00
Folkert
26953c0420
move stdlib solved type usage to use site
2022-03-11 22:01:25 +01:00
Folkert
20ae9ff1e3
hollow out ConstrainableImports
2022-03-11 21:29:50 +01:00
Folkert
9333d0a0e0
remove solved types from ExposedModuleTypes
2022-03-11 21:06:12 +01:00
Folkert
18d7f32aa3
do nothing, prepare for refactor
2022-03-11 21:03:55 +01:00
Folkert
afcd176d58
clone storage subs less
2022-03-11 20:56:13 +01:00
Folkert
c79ecec56e
make SubsByModule opaque
2022-03-11 20:16:55 +01:00
Folkert
d4da4fed88
cleanup
2022-03-11 19:41:30 +01:00
Folkert
30e7d94c95
clarify old constraint gen is now just for the builtins
2022-03-11 19:25:42 +01:00
Folkert
aebb3a162e
it's alive!
2022-03-11 17:27:44 +01:00
Folkert
9054546d27
move things in place to go storage_subs -> subs
2022-03-11 10:49:22 +01:00
Folkert
973e3ac7ed
bring storage subs into solve again
2022-03-11 10:28:10 +01:00
Folkert
78f5526db3
add storage subs to ExposedModuleTypes
2022-03-11 10:15:33 +01:00
hafiz
de9da2d8a5
Merge pull request #2657 from rtfeldman/i/2567
...
Register accessor closures when they are bound
2022-03-06 12:59:55 -05:00
ayazhafiz
0692caf7ba
Consolidate Accessor
data
2022-03-06 11:07:31 -05:00
ayazhafiz
3bff99b0a2
Register accessor closures when they are bound
...
Previously we only registered record accessor closures in anonymous
contexts, where we assume they must already be specialized based on the
surrounding contexts. This is not true in general since one might bind
an accessor to a name.
Closes #2567
2022-03-06 10:53:12 -05:00
Folkert
9f11245b22
add comment
2022-03-05 22:29:30 +01:00
Folkert
6380a9edf9
remove collection that went unused
2022-03-05 22:29:22 +01:00
Folkert
587c89e003
use empty array for empty DefTypes sequence
2022-03-05 21:51:20 +01:00
Folkert
6392e42166
prevent frequent expectation cloning
2022-03-05 21:32:22 +01:00
Folkert
53962a4799
mark infer variables as flex
2022-03-05 17:27:33 +01:00
Folkert
48b0bbe874
cleanup
2022-03-05 14:55:45 +01:00
Folkert
97b0e3df9b
more efficient approach for finding new rigids
2022-03-05 14:50:23 +01:00
Folkert
9302f2ca5e
partially revert to working state
2022-03-05 13:18:35 +01:00
ayazhafiz
e0aa246c5e
Merge remote-tracking branch 'origin/trunk' into instantiate-rigids-speedup-again
2022-03-04 21:55:16 -05:00
Folkert
39c4b878e5
remove comment
2022-03-04 23:27:05 +01:00
Folkert
db06c10b5f
be smarter
2022-03-04 23:02:10 +01:00
Folkert
38d3d3169a
drop final suffixes
2022-03-02 21:30:38 +01:00
Folkert
828483393a
move expr/pattern constraint gen
2022-03-02 21:25:13 +01:00
Folkert
0eb98a4c59
move over constraint
2022-03-02 21:19:58 +01:00
Folkert
8d2e0a738c
exploiting exactsizeiterator
2022-03-02 21:08:14 +01:00
Folkert
c52029c2d1
the debugging begins
2022-03-02 20:30:42 +01:00
Folkert
73bd647a7d
constrain module stuff
2022-03-02 19:56:30 +01:00