Commit graph

921 commits

Author SHA1 Message Date
Ayaz Hafiz
7167b58e9e
Import declared implementations in correct order 2022-07-25 11:01:46 -04:00
Ayaz Hafiz
75ce40c67d
Make sure ability defs that are possibly recursive are marked as such 2022-07-25 10:52:55 -04:00
Ayaz Hafiz
0525c6d616
Import both specializations and declared ability mappings 2022-07-25 10:06:49 -04:00
Ayaz Hafiz
e2454f497f
Store declared implementations, both custom and derived, in abilities store 2022-07-25 09:09:01 -04:00
Ayaz Hafiz
6035e45f25
Store derivable ability members statically 2022-07-25 09:09:00 -04:00
Richard Feldman
a790db6159
Merge pull request #3613 from rtfeldman/i3263
Allow underscores in assignment patterns, and warn on assignments that don't add anything new
2022-07-25 08:59:40 -04:00
Ayaz Hafiz
0d13dcb1af
Update can tests 2022-07-24 16:11:05 -04:00
Ayaz Hafiz
0de32ac5a9
Warn on definitions that introduce no new variables 2022-07-24 16:11:04 -04:00
Ayaz Hafiz
beccc92c87
Support underscores in assignment patterns 2022-07-24 16:11:03 -04:00
Folkert
29a260a4b3
pass the right region along with inline expects 2022-07-24 11:25:02 +02:00
Ayaz Hafiz
838ba14581
Clippy 2022-07-22 18:16:57 -04:00
Ayaz Hafiz
4031770836
Mark branch patterns degenerate when they don't bind symbols body needs 2022-07-22 17:26:45 -04:00
Richard Feldman
b7d78d9237
Merge pull request #3598 from rtfeldman/i3558
Compile variables bound in multiple patterns of a branch, and detect unbound patterns
2022-07-21 16:45:52 -04:00
Ayaz Hafiz
961cff94d1
Only permit shadowing past first pattern 2022-07-21 14:35:16 -04:00
Richard Feldman
fac29615c8
Merge pull request #3590 from rtfeldman/update-wording
Update wording on a type mismatch
2022-07-21 14:29:23 -04:00
Ayaz Hafiz
0259c3cf92
s/occurences/occurrences/g 2022-07-21 12:29:09 -04:00
Ayaz Hafiz
4839c1f1ce
Clippy doesn't like stack spills. Sorry clippy! 2022-07-21 12:26:42 -04:00
Ayaz Hafiz
78dc82867a
Report errors for identifiers not bound in all patterns of a branch 2022-07-21 12:15:05 -04:00
Ayaz Hafiz
bf8fc0d0de
Permit binding variables multiple itmes in when branches 2022-07-21 11:06:40 -04:00
Folkert
5a93da5a11
some work on expect comment regions 2022-07-21 10:42:57 -04:00
Folkert
7597d11b59
parse the region of the preceding comment for an expect 2022-07-21 10:42:57 -04:00
Folkert
b6f1fd6f40
constrain expects in the right order 2022-07-21 10:42:57 -04:00
Richard Feldman
3972664e48
Rename Category::Float to Category::Frac 2022-07-20 10:49:05 -04:00
Ayaz Hafiz
8f5580c0a5
Clippy 2022-07-19 15:04:01 -04:00
Ayaz Hafiz
cf158d21ed
Fix comment 2022-07-19 14:30:20 -04:00
Ayaz Hafiz
7586a8a083
Check complete ability implementations during canonicalization 2022-07-19 14:30:20 -04:00
Ayaz Hafiz
37ab06b0a3
Reject implementations that don't point to abilities 2022-07-19 14:30:19 -04:00
Ayaz Hafiz
a53de2e05c
Add a comment 2022-07-19 14:30:19 -04:00
Ayaz Hafiz
e4af8af1a3
Report duplicate implementations for ability members 2022-07-19 14:30:19 -04:00
Ayaz
7b9b855dcc
Merge pull request #3579 from rtfeldman/can-abilities
Canonicalize syntactic abilities
2022-07-19 13:30:12 -05:00
Ayaz Hafiz
666becad87
Clippy 2022-07-19 08:14:12 -04:00
Folkert
fc891c0956
the lazier thing 2022-07-18 22:13:25 -04:00
Ayaz Hafiz
d2da395619
Syntactic ability links in solve 2022-07-18 18:33:28 -04:00
Ayaz Hafiz
f8cd56da41
Register specializing symbol in can opaques 2022-07-18 17:55:01 -04:00
Ayaz Hafiz
c2154ac311
Support shorthand ability implementation syntax 2022-07-18 17:55:01 -04:00
Ayaz Hafiz
96b32c36cb
Introdue ability member names before other value names 2022-07-18 17:55:01 -04:00
Ayaz Hafiz
e672ce9ebd
First pass at canonicalizing and reporting syntactic abilities 2022-07-18 17:55:01 -04:00
Ayaz Hafiz
d118e5afbc
More can abilities 2022-07-18 17:55:01 -04:00
Ayaz Hafiz
e798eb3037
Lookup symbols in scope when the module ID is already known 2022-07-18 17:55:00 -04:00
Richard Feldman
c859ce0b23
Use Opaque over Alias 2022-07-18 17:55:00 -04:00
Folkert de Vries
98dbd236fb
Merge pull request #3546 from rtfeldman/syntactic-ability-specializations
Parse and format "has-abilities" clauses in opaque types
2022-07-16 02:06:00 +02:00
Folkert de Vries
460b822caa
Merge pull request #3501 from rtfeldman/derive-tag-union-encoding-gen
Derive tag union encoding gen
2022-07-15 15:57:41 +02:00
Folkert
b9ebd4fa27 Merge remote-tracking branch 'origin/trunk' into pretty-expect-output 2022-07-15 09:12:04 +02:00
Folkert
b6224a3806
ugly hack to make the docs build 2022-07-14 22:15:19 +02:00
Folkert de Vries
1b1b63aad0
Merge branch 'trunk' into assoc-list-dict 2022-07-14 16:47:50 +02:00
Ayaz Hafiz
d4d073d8c6
Rename Derived to HasAbility 2022-07-14 10:38:37 -04:00
Ayaz Hafiz
3f7c91f988
Where there's clippy, there's no way 2022-07-14 09:24:08 -04:00
Ayaz Hafiz
94ab904b6f
Fix compile errors 2022-07-14 09:02:37 -04:00
Ayaz Hafiz
ad5d6a4f84
Copy patterns 2022-07-14 08:49:45 -04:00
Ayaz
a9243720da
Merge pull request #3496 from rtfeldman/derive-w-mono
Monomorphize and compile derived implementations
2022-07-14 07:45:21 -05:00