Ayaz Hafiz
|
83c6c3a17d
|
Remove Lowercase from Alias and Opaque
|
2022-04-29 11:36:31 -04:00 |
|
Ayaz Hafiz
|
ca7c9ec5e6
|
No more lowercase for opaques
|
2022-04-29 10:41:27 -04:00 |
|
Ayaz Hafiz
|
5f8834d6b4
|
I dont got no references
|
2022-04-28 20:34:04 -04:00 |
|
Ayaz Hafiz
|
12234c36ad
|
Remove unnecessary var introduction
|
2022-04-28 20:34:04 -04:00 |
|
Ayaz Hafiz
|
2cc47f184f
|
Remove unncessary variable introduction
|
2022-04-28 20:34:04 -04:00 |
|
Ayaz Hafiz
|
9dac9e4bc2
|
Coalesce
|
2022-04-28 20:34:03 -04:00 |
|
Ayaz Hafiz
|
bd4f004cea
|
Some marks are always known
|
2022-04-28 20:33:48 -04:00 |
|
Ayaz Hafiz
|
51c8702820
|
Smarter marks
|
2022-04-28 20:33:48 -04:00 |
|
Ayaz Hafiz
|
2f1306afd1
|
Redundant and exhaustive marks in mono
|
2022-04-28 20:33:48 -04:00 |
|
Ayaz Hafiz
|
98869b557d
|
Exhaustive and redundant marks
|
2022-04-28 20:33:48 -04:00 |
|
Folkert
|
fb9d60226d
|
store `exposed_ident_ids in the scope itself
|
2022-04-28 20:30:02 +02:00 |
|
Ayaz Hafiz
|
752b3ee042
|
Bugfix merge conflicts
|
2022-04-25 19:04:10 -04:00 |
|
Ayaz Hafiz
|
17e7b10267
|
Fought against clippy and lost
|
2022-04-25 19:04:09 -04:00 |
|
Ayaz Hafiz
|
7d908dc99c
|
Remove unused line
|
2022-04-25 19:04:09 -04:00 |
|
Ayaz Hafiz
|
85e3373d8b
|
Move exhaustiveness checking to type checking
|
2022-04-25 19:04:09 -04:00 |
|
Ayaz Hafiz
|
f7e04490c0
|
Remove stale comment
|
2022-04-25 19:04:09 -04:00 |
|
Ayaz Hafiz
|
356616d834
|
Move exhaustiveness checking to type solving phase with solve tests
|
2022-04-25 19:04:08 -04:00 |
|
Ayaz Hafiz
|
e73ebfba3e
|
Add a way to view solved types of arbitrary expressions/patterns in a program
|
2022-04-25 19:03:25 -04:00 |
|
Ayaz Hafiz
|
f94d91b8ab
|
Fix region and save an alloc
|
2022-04-24 10:25:32 -04:00 |
|
Ayaz Hafiz
|
cd89902e7a
|
Smarter about region calculation
|
2022-04-24 10:19:47 -04:00 |
|
Ayaz Hafiz
|
9a341e3d75
|
Improve non-exhaustive typechecking errors
We will replace this with proper exhaustiveness checking when we have
that in the typechecking phase, but for now this should do.
|
2022-04-23 10:56:54 -04:00 |
|
Ayaz Hafiz
|
633bdd5520
|
Fix failing reporting tests
|
2022-04-23 10:56:54 -04:00 |
|
Ayaz Hafiz
|
44aa1fca1c
|
s/constriants/constraints/g
|
2022-04-23 10:56:53 -04:00 |
|
Ayaz Hafiz
|
627d73e4c0
|
Clippy
|
2022-04-23 10:56:53 -04:00 |
|
Ayaz Hafiz
|
504c3f9b49
|
Delay add "is open" constraint until we know a type variable
|
2022-04-23 10:56:53 -04:00 |
|
Ayaz Hafiz
|
7b2b41869f
|
Add a way to view solved types of arbitrary expressions/patterns in a program
|
2022-04-23 10:56:53 -04:00 |
|
Ayaz Hafiz
|
0387eeed23
|
Make sure we're generating correct code with has annotations
|
2022-04-20 17:45:41 -04:00 |
|
Ayaz Hafiz
|
b81bbefa75
|
Make sure we solve all variables in all patterns before all bodies
|
2022-04-18 12:56:48 -04:00 |
|
Ayaz Hafiz
|
2856a38236
|
Solve all when branch pattern constraints before solving their bodies
Closes #2886
|
2022-04-18 11:03:25 -04:00 |
|
Richard Feldman
|
e9acbe983f
|
Use array over vec for exists_many
|
2022-04-09 10:09:03 -04:00 |
|
Richard Feldman
|
dd56fdb61c
|
Fix regression with ZeroArgumentTag constraint gen
Turns out it can't share quite that much code with Tag,
because doing so skips the important function-based
constraints.
|
2022-04-08 21:31:19 -04:00 |
|
Richard Feldman
|
b2ff785a5e
|
Another clip bites the clip
|
2022-04-08 19:56:43 -04:00 |
|
Richard Feldman
|
45b5df3a23
|
Extract constrain_tag helper function
|
2022-04-08 11:52:57 -04:00 |
|
Folkert
|
7b86a4b29e
|
optimize variable substitution in instantiate_rigids
|
2022-03-21 23:57:40 +01:00 |
|
hafiz
|
418e71e95c
|
Merge pull request #2755 from rtfeldman/dense-let-constraints
Constraint gen tweaks
|
2022-03-19 20:39:55 -04:00 |
|
Folkert
|
a1dbdf34d5
|
simplify empty let constraint
|
2022-03-19 23:41:56 +01:00 |
|
Folkert
|
a20a828ee1
|
refactor typed function constraint gen
|
2022-03-19 23:41:33 +01:00 |
|
Folkert
|
9b63e6a3a9
|
simplify IntroducedVariables
|
2022-03-18 23:47:39 +01:00 |
|
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 |
|
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
|
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 |
|
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 |
|