Commit Graph

14142 Commits

Author SHA1 Message Date
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
Richard Feldman
d23d5f249f
Merge pull request #2851 from rtfeldman/editor-freeze-fix
fix editor freeze
2022-04-14 15:05:53 -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
Anton-4
3fc777a7be
made changes to keep performance and not freeze 2022-04-14 18:15:35 +02:00
Richard Feldman
be725d6421 Revert changes to IR filenames 2022-04-14 10:55:25 -04:00
Richard Feldman
dca2fedbd4 Give more information when surgical linking fails 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
ff3f54b3eb
Bugfix report message 2022-04-14 08:59:41 -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
Anton-4
84ff4ec1ed
fix editor freeze 2022-04-14 13:15:57 +02: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
Richard Feldman
157c77962e
Merge pull request #2840 from rtfeldman/rename-divInt
Rename internal NUM_DIV_INT references to NUM_DIV_FLOOR.
2022-04-13 16:42:28 -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
de9d97c5d1
Ability specialization checks against annotation 2022-04-13 10:46:41 -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
Ayaz Hafiz
5e1ab8225e
Report when ability member binds >1 variable to parent 2022-04-13 10:11:24 -04:00
Ayaz Hafiz
a1c1dc1a9f
Ask rustc to please always inline 2022-04-13 08:49:27 -04:00
Ayaz Hafiz
03d4d81f8d
Remove unnecessary condition 2022-04-13 08:41:45 -04:00
Kevin Gillette
2c4a83788c
Rename internal NUM_DIV_INT references to NUM_DIV_FLOOR.
This balances with NUM_DIV_CEIL
(which is another form of integer division).
2022-04-13 02:48:57 -06:00
Richard Feldman
e9d4a4134a
Give more info when copying obj files fails 2022-04-13 01:26:10 -04:00
Richard Feldman
412eb763bb
Add support for x64 linux 2022-04-13 01:21:12 -04:00
Richard Feldman
e1a88f190c
Add a target triple for 32-bit musl linux 2022-04-13 01:21:12 -04:00
Richard Feldman
c7f5beb0ad
Rename generated .bc files to have target triples 2022-04-13 01:21:12 -04:00
Richard Feldman
9f8be769fb
Specify environments on linux targets 2022-04-13 01:21:12 -04:00
Richard Feldman
746fb6ce88
Make --target flags be linux32 and linux64 2022-04-13 01:21:12 -04:00
Richard Feldman
2e1b384bdc
Drop unused import 2022-04-13 01:21:12 -04:00
Richard Feldman
76e98f7add
Add Into<Triple> for Target 2022-04-13 01:21:12 -04:00
Ayaz Hafiz
0336b6ad27
Clippy 2022-04-12 19:02:58 -04:00
Ayaz Hafiz
67b5ab7fe7
Add test for when specialization types conflict 2022-04-12 19:01:36 -04:00
Ayaz Hafiz
cf1a6691dd
Fix solve tests 2022-04-12 18:54:12 -04:00
Ayaz Hafiz
d94556d807
Report overly general specializations 2022-04-12 18:52:49 -04:00
Ayaz Hafiz
16d0060824
Report errors for type errors in specializations outside of ability impl 2022-04-12 18:41:20 -04:00