Commit graph

7151 commits

Author SHA1 Message Date
Folkert de Vries
27f367ec23
Merge pull request #2656 from rtfeldman/type-to-var-tco
Optimize type_to_variable
2022-03-06 20:44:14 +01:00
hafiz
de9da2d8a5
Merge pull request #2657 from rtfeldman/i/2567
Register accessor closures when they are bound
2022-03-06 12:59:55 -05:00
hafiz
cc5c734c20
Merge pull request #2603 from rtfeldman/exhaustiveness-fixes
Exhaustiveness checking with guard
2022-03-06 11:26:55 -05:00
Richard Feldman
2a6a197fdf
Merge pull request #2653 from rtfeldman/def-types-tweaks
Def types tweaks
2022-03-06 11:25:37 -05:00
ayazhafiz
cc8c945762 Remove stray dbg 2022-03-06 11:16:03 -05:00
ayazhafiz
0692caf7ba Consolidate Accessor data 2022-03-06 11:07:31 -05:00
ayazhafiz
3bff99b0a2 Register accessor closures when they are bound
Previously we only registered record accessor closures in anonymous
contexts, where we assume they must already be specialized based on the
surrounding contexts. This is not true in general since one might bind
an accessor to a name.

Closes #2567
2022-03-06 10:53:12 -05:00
Richard Feldman
da5fdf6d2f
Merge pull request #2655 from rtfeldman/issues-2580/format-new-line-end-of-file
Issues 2580/format new line end of file
2022-03-06 10:35:10 -05:00
Folkert
0f5c339b4f
and roc_result_to_var 2022-03-06 15:29:23 +01:00
Folkert
eec92204f1
optimize type_to_union_tags 2022-03-06 15:13:39 +01:00
Folkert
8b526e4f58
clippy 2022-03-06 14:54:19 +01:00
Folkert
592a5ace19
optimize recursive call 2022-03-06 14:14:47 +01:00
Folkert
a37a895016
optimize tag name cache 2022-03-06 14:11:33 +01:00
Folkert
7ad55d67e2
Make type_to_variable manually tail-recursive
by using a work stack and reserving variables. fun stuff
2022-03-06 13:15:50 +01:00
Folkert de Vries
21ca144de9
formatting 2022-03-06 01:04:54 +01:00
Folkert
628f14fa7b
fix accidentally remove line 2022-03-06 00:35:45 +01:00
Folkert
4806dc378f
add comment and assert back 2022-03-05 23:49:21 +01:00
Folkert
6906d64ec3
optimize occurs 2022-03-05 23:45:15 +01:00
Folkert
0351b9fce7
improvements to adjust_rank 2022-03-05 23:45:07 +01:00
Folkert
97d9027271
improve pool_to_rank_table 2022-03-05 23:44:57 +01:00
Philippe Vinchon
813845e7d1 Trim end and add empty line for POSIX 2022-03-05 22:31:57 +00:00
Folkert
9f11245b22
add comment 2022-03-05 22:29:30 +01:00
Folkert
6380a9edf9
remove collection that went unused 2022-03-05 22:29:22 +01:00
Folkert
587c89e003
use empty array for empty DefTypes sequence 2022-03-05 21:51:20 +01:00
Folkert
c7c9a90d65
restructure how def_types are stored in Constraints 2022-03-05 21:47:49 +01:00
Folkert
6392e42166
prevent frequent expectation cloning 2022-03-05 21:32:22 +01:00
Folkert
dc8a077fff
constraint.rs tweaks 2022-03-05 21:32:13 +01:00
hafiz
cad02d878c
Merge pull request #2645 from rtfeldman/solve-fully-tail-recursive
make solve fully tail recursive
2022-03-05 14:35:39 -05:00
hafiz
dcb1d97173
Merge pull request #2651 from rtfeldman/can-def-cloning
Reduce can def cloning
2022-03-05 13:52:22 -05:00
Folkert
1b66247303
renaming 2022-03-05 19:30:15 +01:00
ayazhafiz
81481e2599 Report non-exhaustive patterns with guards 2022-03-05 13:30:02 -05:00
Folkert
fc4212310f
Merge remote-tracking branch 'origin/trunk' into solve-fully-tail-recursive 2022-03-05 18:34:09 +01:00
Folkert
53962a4799
mark infer variables as flex 2022-03-05 17:27:33 +01:00
Folkert
0285a1b0ea
cleanup 2022-03-05 16:41:29 +01:00
Folkert
cd203d20a3
also remove clones for Body 2022-03-05 16:12:19 +01:00
Folkert
87e1b5bba6
formatting 2022-03-05 15:53:24 +01:00
Folkert
06ff93cace
Revert "remove clones in most cases in can/def"
This reverts commit 5e48577d29.
Will put it into a separate PR
2022-03-05 15:50:41 +01:00
Folkert
b421df2a28
transform TypedDef to use fewer clones 2022-03-05 15:50:00 +01:00
Folkert
5e48577d29
remove clones in most cases in can/def 2022-03-05 15:32:55 +01:00
Folkert
80956061dd
fix formatting bug in type pretty-print 2022-03-05 15:03:59 +01:00
Folkert
48b0bbe874
cleanup 2022-03-05 14:55:45 +01:00
Folkert
97b0e3df9b
more efficient approach for finding new rigids 2022-03-05 14:50:23 +01:00
Folkert
6370a80c62
make sure lambda sets within aliases are in IntroducedVariables 2022-03-05 14:29:34 +01:00
Folkert
012a2d07a6
add Inferred variables to IntroducedVariables 2022-03-05 14:27:45 +01:00
Folkert
7c83e940bd
leave a TODO 2022-03-05 13:55:30 +01:00
Folkert
d7eee71402
track lambda set variables; only use annotation variables in annotations... 2022-03-05 13:47:01 +01:00
Folkert
9302f2ca5e
partially revert to working state 2022-03-05 13:18:35 +01:00
Folkert
477fe5a48e
Merge remote-tracking branch 'origin/trunk' into instantiate-rigids-speedup-again 2022-03-05 13:12:55 +01:00
ayazhafiz
e0aa246c5e Merge remote-tracking branch 'origin/trunk' into instantiate-rigids-speedup-again 2022-03-04 21:55:16 -05:00
Folkert
d158702e1a
Merge remote-tracking branch 'origin/trunk' into take-scratchpad-bug 2022-03-05 02:15:46 +01:00