Folkert
c47460d792
use VecSet in recursive alias correction
2022-04-17 20:27:47 +02:00
Folkert
304b7fd569
use VecSet for exposed_symbols
2022-04-17 20:23:29 +02:00
Folkert
39aa112fd5
more VecSet
2022-04-17 20:14:25 +02:00
Folkert
f772c87c4b
more VecSet use, in canonical Env this time
2022-04-17 20:08:06 +02:00
Folkert
be1aff390c
use VecSet in canonicalizing annotations
2022-04-17 20:06:07 +02:00
Folkert
cc6c63355a
optimize for empty and singleton extends
2022-04-17 20:02:40 +02:00
Folkert
dda4f46e67
use VecSet in References
2022-04-17 19:37:10 +02:00
Folkert
aa21186997
add VecSet type to collections
2022-04-17 19:36:31 +02:00
Richard Feldman
718b999751
Merge pull request #2857 from rtfeldman/abilities-mono
...
Codegen for abilities
2022-04-16 22:59:16 -04:00
Sean Hagstrom
37d3e355ca
refactor the logic for pretty printing float types into one function
2022-04-15 16:37:39 +01:00
Sean Hagstrom
c67a1bb8d4
fix(repl) and fix(pretty_print): update pretty_print output for Num FloatingPoint *
to be Float *
instead of F64
2022-04-15 16:37:39 +01:00
Ayaz Hafiz
e6b0d9a820
Fix typo
2022-04-15 10:54:35 -04:00
Richard Feldman
ae59eab55b
Merge pull request #2850 from rtfeldman/issue-2646/Num-toStr
...
Issue 2646 - Num.toStr crash
2022-04-15 10:54:20 -04:00
Ayaz Hafiz
95783e03a1
Handle aliasing of ability members
2022-04-15 10:21:35 -04:00
Ayaz Hafiz
491ec0034a
Don't try to send type problems over module boundaries
...
Closes #2863
Closes #2858
2022-04-15 10:01:26 -04:00
Ayaz Hafiz
00e5205d4c
More debugging for unified types
2022-04-15 09:53:23 -04:00
Ayaz Hafiz
7d4a006377
Bugfix sorting must implement constraints
...
Also makes things go faster
2022-04-15 09:29:12 -04:00
Ayaz Hafiz
fbe7ccf4c8
Use error macro
2022-04-15 08:51:29 -04:00
Ayaz Hafiz
8f335c3278
Add solve test for aliasing ability
2022-04-14 17:25:44 -04:00
Ayaz Hafiz
8694ea9d33
Add first ability gen tests
2022-04-14 17:06:19 -04:00
Ayaz Hafiz
b79b351136
The first ability... compiles
2022-04-14 16:50:41 -04:00
Ayaz Hafiz
6b4294307f
Start saving ability signature on designated variable again
2022-04-14 16:22:54 -04:00
Ayaz Hafiz
eb81c68bcb
Pass abilities store to mono
2022-04-14 16:20:55 -04:00
Richard Feldman
62f1cbed59
Merge pull request #2853 from rtfeldman/abilities-typechecking3
...
Abilities typechecking bug fixes
2022-04-14 13:53:38 -04:00
Richard Feldman
953c7aa9ff
Merge pull request #2855 from rtfeldman/outdented-parse
...
Make sure outdented records parse
2022-04-14 13:53:11 -04:00
Richard Feldman
b796b2e92d
Merge pull request #2839 from rtfeldman/target-triple
...
changes to --target
2022-04-14 13:52:27 -04:00
Richard Feldman
629d17c3ae
Restore old IR name for wasm32
2022-04-14 13:21:24 -04:00
Ayaz
5652e72f99
Missing test
2022-04-14 12:50:28 -04:00
Richard Feldman
be725d6421
Revert changes to IR filenames
2022-04-14 10:55:25 -04:00
Ayaz Hafiz
233ea23979
Revert "Detect outdents too far"
...
This reverts commit 1c2ca2e3f5ae12d114cc72970035caf937d6e413.
2022-04-14 10:47:20 -04:00
Ayaz Hafiz
dc2d9ceeac
Detect outdents too far
2022-04-14 10:47:20 -04:00
Ayaz Hafiz
362ca1d914
Fix parse tests
2022-04-14 10:47:18 -04:00
Ayaz Hafiz
0c21821b04
Make sure outdented records parse
2022-04-14 09:31:55 -04:00
Ayaz Hafiz
3c03b7004c
Test for outdented list parse
2022-04-14 09:31:26 -04:00
Ayaz Hafiz
8f906826fc
Include parent ability in specialization tests
2022-04-14 08:57:32 -04:00
Ayaz
6472e32173
Merge pull request #2842 from rtfeldman/abilities-typechecking2
...
Additional checking and reporting for abilities, behind #2838
2022-04-14 08:44:57 -04:00
Jared Cone
b35debee70
fixed formatting
2022-04-13 23:36:00 -07:00
Jared Cone
cb3ea8641c
Fixed strFromIntHelp. std.math.minInt is 0 for unsigned types, so buffer size was being set to only 1.
2022-04-13 23:20:09 -07:00
Jared Cone
17e5ec85aa
Num.toStr unit tests
2022-04-13 23:18:00 -07:00
Richard Feldman
4ea4aa4708
Merge pull request #2838 from rtfeldman/abilities-typechecking
...
Inference and checking for abilities
2022-04-13 22:03:44 -04:00
Richard Feldman
75ed66b4a8
Merge pull request #2843 from rtfeldman/i/2812
...
Propogate errors in record fields to layout error
2022-04-13 21:56:53 -04:00
Richard Feldman
882107908e
Merge pull request #2849 from rtfeldman/i/2818
...
Specialize bodies with body var, not function var
2022-04-13 20:28:26 -04:00
Ayaz Hafiz
41dd7d0b4d
Specialize bodies with body var, not function var
...
I'm surprised code generation worked so well without this, before...
Closes #2818
2022-04-13 18:35:50 -04:00
Ayaz Hafiz
6343382af5
Propogate errors in record fields to layout error
...
Closes #2812
Unfortunately we don't have a great way to test this without scaffolding
a host since this happens while processing a variable exposed to the
host. In tests the root cause just yields a type error first and codegen
works, just bails during the runtime. But this works.
2022-04-13 16:23:13 -04:00
Ayaz Hafiz
d630562d99
forgive me clippy
2022-04-13 15:30:02 -04:00
Ayaz Hafiz
8eec930260
More and smarter checking and error reporting for abilities
2022-04-13 15:25:19 -04:00
Ayaz Hafiz
0792ccbbe8
Calling ability with non-specialized type is an error
2022-04-13 11:49:33 -04:00
Ayaz Hafiz
d110fbde6c
Annotation specializes ability
2022-04-13 10:44:34 -04:00
Ayaz Hafiz
25b3aa7ca7
Typed body specializations solve
2022-04-13 10:42:46 -04:00
Ayaz Hafiz
389c46edcf
Remove unneeded var
2022-04-13 10:12:45 -04:00