Commit graph

112 commits

Author SHA1 Message Date
Folkert
4ff06ebac5 remove duplication in solve.rs 2020-12-26 17:06:29 +01:00
Richard Feldman
572c7cb3dd Report an error for lookups of unexposed values 2020-12-10 23:59:15 -05:00
Folkert
bde82c3bb6 add Store constraint that does not report errors 2020-11-12 15:47:56 +01:00
Folkert
cf80e2852f add test for transitive alias import 2020-11-11 01:20:30 +01:00
Folkert
3aa6455795 fix problem with recursive definition constraint gen 2020-11-10 19:40:35 +01:00
Folkert
33820dd82e record alias data in Annotation 2020-11-04 20:06:57 +01:00
Folkert
c09b66a9cc add HostExposedAlias 2020-11-04 13:19:57 +01:00
Folkert
8b3b677439 remove aliases from Let and LetCon 2020-10-31 15:27:24 +01:00
Folkert
22319aa116 deliberately ignore uniqueness tests with rigids/recursive tag unions 2020-10-30 01:50:37 +01:00
Folkert
ef1cee6c41 HUGE WIP 2020-10-28 01:13:04 +01:00
Folkert
e176385169 make sure structure variable is copied/references the copy 2020-10-26 16:19:08 +01:00
Folkert
5fbcfe18d3 new recvar design 2020-10-26 16:16:01 +01:00
Folkert
7d2cc3aac2 WIP 2020-10-25 22:16:27 +01:00
Folkert
48d13a7b12 refactor how we solve LetCon 2020-10-19 22:18:20 +02:00
Folkert
894f7de009 changes to closure parameter rank 2020-10-18 23:37:21 +02:00
Folkert
e1290835de use the full alias body to determine the rank 2020-10-18 23:05:03 +02:00
Folkert
81af929f8f always unify full alias body, even when alias names match 2020-10-18 21:16:22 +02:00
Folkert
1439c1a21d clippy complaints 2020-10-17 22:37:15 +02:00
Folkert
cfb2064868 rip out unneeded tracking of symbol variable mapping 2020-10-17 21:55:37 +02:00
Folkert
607799b96e steps towards closures and Effects 2020-10-17 20:53:57 +02:00
Folkert
edfc96628e WIP 2020-10-17 14:53:57 +02:00
Folkert
d931c8994a fix most type inference issues 2020-10-16 20:50:42 +02:00
Folkert
9b83c3ad58 optional record fields in patterns are bound 2020-10-16 15:29:21 +02:00
Folkert
ca2efc27bd Merge remote-tracking branch 'origin/trunk' into sized-functions-inference 2020-10-15 14:34:32 +02:00
Folkert
b440ab90f6 infer closure size! 2020-10-14 23:26:44 +02:00
Folkert
de8ad07f2e Merge branch 'top-level-thunks' into sized-functions-inference 2020-10-14 21:58:53 +02:00
Folkert de Vries
391f5b5e17
Merge branch 'trunk' into clippy 2020-10-14 12:09:27 +02:00
Brendan Hansknecht
eb7e39bf7b Make clippy happy 2020-10-13 20:26:00 -07:00
Folkert
f07fe1879b fix problem with specializing rigids 2020-10-14 02:21:33 +02:00
Folkert
2da2c25d32 research bug with linked list and uniqueness 2020-10-14 00:49:14 +02:00
Folkert
973a632c25 add helper that instantiates rigids to flex vars 2020-10-12 23:52:41 +02:00
Folkert
4f9b27b694 sketch of a proof of concept 2020-10-11 01:54:50 +02:00
Folkert
79d3b0ac01 cross module specialization WIP 2020-10-11 01:23:52 +02:00
Folkert
d346482b76 fix new clippy warnings 2020-10-10 19:59:58 +02:00
Folkert
e9f5c1a73c actually infer the size 2020-10-02 22:33:31 +02:00
Folkert
c00cd2f415 hook everything up in the gen tests 2020-10-02 21:04:42 +02:00
Folkert
05d1f28e83 add logic to generate/solve closure size constraints 2020-10-02 20:46:47 +02:00
Folkert
2e1e87ad6a add closure size variable 2020-10-02 00:53:02 +02:00
Folkert
ba186bfe09 can store, but not load recursive fields 2020-08-22 16:01:04 +02:00
Folkert
b45b39af5e optional fields improvements 2020-07-21 15:25:21 +02:00
Richard Feldman
a05ebbf36b Solve optional fields 2020-07-18 13:49:06 -04:00
Folkert
27317110f2 add comment describing solving process 2020-07-14 23:13:37 +02:00
Folkert
bd086e5c9b fix rank issue for uniqueness 2020-06-29 00:18:50 +02:00
Folkert
41621bc509 fix test outputs
in some cases for aliases the outputs are not entirely correct yet. That's future work
2020-06-27 21:01:51 +02:00
Folkert
79f01e0604 loads of things 2020-06-27 16:20:30 +02:00
Folkert
e5997c4047 fix mutual recursive types
I'll write a bit more about this in the PR message
2020-06-26 01:03:55 +02:00
Folkert
055b01c463 rewrite uniqueness logic 2020-06-24 23:06:34 +02:00
Richard Feldman
a4338f0406 Remove lots of unnecessary clones (thanks clippy!) 2020-06-07 15:43:07 -04:00
Richard Feldman
c386192e8b Reorganize when solving and constraint gen happen 2020-05-26 00:04:42 -04:00
Folkert
f6af66f342 record, tag, alias errors
- duplicate fields and tags are reported
- circular aliases are reported
2020-04-13 20:53:16 +02:00