Commit graph

43 commits

Author SHA1 Message Date
Richard Feldman
2f2e67059b
Merge branch 'trunk' into fuzz 2020-11-01 08:57:19 -05:00
Folkert
8b3b677439 remove aliases from Let and LetCon 2020-10-31 15:27:24 +01:00
Brendan Hansknecht
d00189530a Add fuzzing to the parser.
As part of this, todos and panics where moved outside of this module
to elsewhere when they would cause fuzzing to fail.
2020-10-30 22:04:54 -07:00
Folkert
93a1baad1d use only references (no Vec) in canonical AST 2020-10-26 01:03:33 +01:00
Folkert
7d2cc3aac2 WIP 2020-10-25 22:16:27 +01:00
Folkert
f13c28fe7f collect and instantiate hidden variables 2020-10-25 19:11:03 +01:00
Folkert
c05ae4929f make sure aliases are added to the scope 2020-10-24 01:20:22 +02:00
Folkert
d931c8994a fix most type inference issues 2020-10-16 20:50:42 +02:00
Folkert
e656363cc0 restrain the set of captured variables further 2020-10-16 01:42:06 +02:00
Folkert
40ffca2b7b IT WORKS 2020-10-16 00:18:40 +02:00
Folkert
b7e099a6c8 add captured symbols field to Closure 2020-10-15 16:08:35 +02:00
Folkert
e9f5c1a73c actually infer the size 2020-10-02 22:33:31 +02:00
Folkert
2e1e87ad6a add closure size variable 2020-10-02 00:53:02 +02:00
Richard Feldman
3c39a331d7 Remove obsolete parse::ast::TypedBody 2020-09-07 09:19:25 -04:00
Richard Feldman
71f929aba2 Count default exprs as having used things 2020-07-20 21:58:05 -04:00
Richard Feldman
1cd49689c2 Merge remote-tracking branch 'origin/trunk' into low-level-ops 2020-07-07 21:09:50 -04:00
Folkert
58dfeba043 accept a newline and body when patterns are different 2020-07-07 17:26:45 +02:00
Folkert
0c7a4179aa report malformed int and float patterns 2020-07-04 20:29:37 +02:00
Folkert
98ac988e99 use symbols instead of identifiers; prevents cloning 2020-07-03 19:23:58 +02:00
Folkert
667233a00d report error for invalid alias argument patterns 2020-07-03 16:54:28 +02:00
Folkert
0cfb16c7d5 implement canonicalization error when signature pattern does not match definition pattern. 2020-07-02 23:24:10 +02:00
Richard Feldman
8c96d12661 Merge trunk 2020-06-29 22:10:46 -04: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
Richard Feldman
1b3b9ee1c4 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 23:54:30 -04:00
Richard Feldman
269da82840 Make VarStore no longer use atomics 2020-06-13 21:59:01 -04:00
Richard Feldman
245a9fc951 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 21:03:38 -04:00
Richard Feldman
a4338f0406 Remove lots of unnecessary clones (thanks clippy!) 2020-06-07 15:43:07 -04:00
Richard Feldman
0a9989e75f wip 2020-06-06 23:41:12 -04:00
Folkert
63bc923b37 remove panic 2020-04-13 22:54:24 +02: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
Folkert
7632a4b484 highlight code snippets better 2020-04-12 20:59:16 +02:00
Richard Feldman
d99fda3845 Union references in TypedBody
Fixes #298
2020-04-05 23:30:39 -04:00
Richard Feldman
9cead44b39 Add PendingDef::ShadowedAlias 2020-04-05 17:26:56 -04:00
Chad Stearns
e4b9e0d6e7 Commented out incomplete code 2020-04-05 15:24:45 -04:00
Chad Stearns
89c949a9fd Clean up 2020-04-05 15:20:01 -04:00
Chad Stearns
d8511e3285 Two shadowing report tests 2020-04-05 15:19:43 -04:00
Folkert
2e697ee8f9 add whole_var to tag union/record
the existing var is for the extension (ext_var). during mono we need the whole type to look up the layout, so store that as well
2020-03-13 23:28:36 +01:00
Folkert
f02193b962 fix new clippy warnings 2020-03-12 22:56:58 +01:00
Richard Feldman
3ecbe0325c Plain number literals (e.g. 5) are now Num * 2020-03-10 22:27:13 -04:00
Folkert
4848eb5901 refactor introduced variables
This has lead to so many problems, so I made a special-purpose type for it
2020-03-06 23:55:31 +01:00
Folkert
fefac9580e expose rigids introduced by builtins
they aren't used yet, because their names can 'leak'. Not sure what the best way forward is here
2020-03-06 13:48:52 +01:00
Richard Feldman
908e485fca Move constrain and its deps into their own crates 2020-03-06 01:43:39 -05:00
Richard Feldman
3b6ed43126 Extract can/ into its own crate, plus its deps 2020-03-05 23:01:32 -05:00
Renamed from compiler/src/can/def.rs (Browse further)