Commit Graph

8567 Commits

Author SHA1 Message Date
Ayaz Hafiz
4339d50480
Improve cycle error message
Closes #2513
2022-05-10 12:11:32 -04:00
Ayaz Hafiz
1fb6718c00
Improve error type context field name 2022-05-10 11:32:45 -04:00
Ayaz Hafiz
3ddb14184d
Move dead code removal 2022-05-10 11:29:10 -04:00
Ayaz Hafiz
a9507cf917
Consolidate variable pretty printing 2022-05-10 11:24:41 -04:00
Ayaz Hafiz
3de35f7aa2
Loosen recursion var rank restriction in presence of errors 2022-05-10 11:15:21 -04:00
Ayaz Hafiz
3497237c99
Print recursion vars correctly 2022-05-10 10:40:37 -04:00
Ayaz Hafiz
7306e131b9
Add test for resolved issue
Closes #2371
2022-05-10 09:42:35 -04:00
Ayaz Hafiz
32814cbb37
Add test for resolved bug
Closes #2389
2022-05-10 09:29:28 -04:00
Brian Carroll
ca7d916065 Delete llvm feature from roc_build and roc_cli 2022-05-09 20:40:57 +01:00
Ayaz Hafiz
b92e3a07ac
Remove irrelevant errors 2022-05-09 09:48:30 -04:00
Ayaz Hafiz
b0734c3d80
Disallow abilities on toplevel of scope 2022-05-09 09:45:02 -04:00
Richard Feldman
df7df4ccf8
Merge branch 'trunk' into mfonism/rename-num-float-type-to-frac 2022-05-08 20:54:33 -04:00
Ayaz
3e7702df01
Merge pull request #2910 from rtfeldman/i/2880
Ability codegen for Encode/Decode
2022-05-08 19:10:45 -04:00
Richard Feldman
c7037db6d5
Merge pull request #3013 from rtfeldman/hostgen
Introduce bindgen CLI
2022-05-08 17:51:20 -04:00
Folkert de Vries
5d3b83f5a6
Merge pull request #2268 from rtfeldman/update_zig_09
Update to Zig 0.9 + LLVM 13
2022-05-08 23:29:45 +02:00
ayazhafiz
f2d3865315 Fix can AST walk 2022-05-08 15:17:59 -04:00
Ayaz Hafiz
4bfbe479c9 Useless comment 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
798c28fccd Dryasdust was a popular word in 1860 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
e31e89ac66 Mark and clear specializations 2022-05-08 15:08:20 -04:00
Ayaz Hafiz
da604e978e Use SpecializationId to mark specializations 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
2cacda00eb Add some internal error assertions 2022-05-08 15:08:19 -04:00
Ayaz
d0bd08dbe0 Typo 2022-05-08 15:08:19 -04:00
Ayaz
4858979d6b Remove stale comment 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
08beedb648 Improve codelink comment 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
b3845c21bd Print able type variables correctly 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
154b17d9f0 Correct instantiation of delayed opaques
I didn't realize that delayed instantiation of aliases instantiates
their real var, not the whole alias type. So prior to this, we were
wrapping all opaques in a structural `Alias(..)`. Which is okay from a
typechecking perspective because Aliases are transparent, but is
wasteful.
2022-05-08 15:08:19 -04:00
Ayaz Hafiz
a47dc711f3 Remove a couple vec allocs 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
5cc6727e9f Simplify introduced variables in ability member 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
4a623a48dc Simpl decoder a bit 2022-05-08 15:08:19 -04:00
Ayaz Hafiz
e08b5fa91e Specializer->Resolver 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
08710c8153 Decoders now code-generate 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
13884c4ce6 Fix solve test 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
1a53daa665 Remove ability todo in mono 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
8bff2875b0 Account for ability specialization in reuse_symbol 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
5a5fc0162d FlexAble must always constrain a Flex 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
85b3110bea Typecheck decoder 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
f208f7b4a1 Ability members are functions too 2022-05-08 15:08:18 -04:00
Ayaz Hafiz
638c446c2f Fix constraints 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
bc0b82b97c Expand encode gen test 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
474c18ab83 Handle recursion 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
30ef59a591 Fix test import 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
53c8ec3a57 Correctly aliasing of ability members 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
645c0f2738 Don't eagerly walk down let bindings to specialize an ability 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
e5eae75ad6 Ignore gen test, for now 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
025d501cfd Determine ability specializations before walking a body 2022-05-08 15:08:17 -04:00
Ayaz Hafiz
edee222763 Add AbilityMember can variant for resolving ability specializations 2022-05-08 15:08:16 -04:00
Ayaz Hafiz
ebbcd57022 Make visitors public 2022-05-08 15:08:16 -04:00
Ayaz Hafiz
d2eb5e17ec Fill out can traversals 2022-05-08 15:08:16 -04:00
Ayaz Hafiz
f48792a173 Add encoder tests 2022-05-08 15:08:16 -04:00
Ayaz Hafiz
c1b1f60630 Coupon cutting 2022-05-08 15:08:16 -04:00