Commit graph

2900 commits

Author SHA1 Message Date
Ayaz Hafiz
a58d128d9e
Cover mode when unifying variable slices 2022-11-01 12:06:59 -05:00
Ayaz Hafiz
08d04e8c79
Update reporting tests 2022-11-01 12:06:59 -05:00
Ayaz Hafiz
92a3c48ce5
Implement sketching and pattern specialization for list patterns 2022-11-01 12:06:59 -05:00
Ayaz Hafiz
fbdf76e490
Report type errors in list pattern matches 2022-11-01 12:06:59 -05:00
Ayaz Hafiz
f9cb71fcf7
Report list element pattern type mismatches 2022-11-01 12:06:59 -05:00
Ayaz Hafiz
283f6e8e1e
Give localized region for expected list elem pattern 2022-11-01 12:06:59 -05:00
Ayaz
cb61f51814
Merge pull request #4441 from roc-lang/can-list-patterns
Canonicalization + Constraining of list patterns
2022-11-01 09:13:08 -05:00
Brian Carroll
9ebf934ee7
Merge pull request #4444 from roc-lang/windows-cli-tests
Windows cli tests
2022-11-01 06:43:23 +00:00
Richard Feldman
50d9755758
Merge pull request #4429 from austinclem1/main
add missing indent when formatting single-quoted char in pattern
2022-10-31 17:56:06 -07:00
Richard Feldman
5e00522a47
Merge pull request #4443 from joshuawarner32/move-min_indent-to-parse-pr
Refactor Parser trait to pass min_indent
2022-10-31 17:46:05 -07:00
Folkert
a44cd68419
update comments 2022-10-31 23:56:53 +01:00
Folkert
bb893a70a0
actually put in the chkstk helper 2022-10-31 23:47:06 +01:00
Folkert
708de4136b
add assembly bytes for ___chkstk_ms 2022-10-31 23:28:14 +01:00
Ayaz Hafiz
9ab5d0efb8
Constraining of list patterns 2022-10-31 17:05:08 -05:00
Ayaz Hafiz
7b87d0093e
Update reporting tests 2022-10-31 17:05:08 -05:00
Ayaz Hafiz
058d1f0b5d
Add tests for multiple rest pattern errors 2022-10-31 17:05:07 -05:00
Ayaz Hafiz
b0a8b85de3
Canonicalization of list patterns 2022-10-31 17:04:47 -05:00
Folkert
0cada70627
add comment about removeing \r 2022-10-31 22:48:50 +01:00
Folkert de Vries
55ea3bbea2
Merge pull request #4437 from roc-lang/windows-effect-loop-scratchpad
windows: working cli benchmark tests
2022-10-31 22:33:10 +01:00
Joshua Warner
07be8ec000
Refactor Parser trait to pass min_indent
This removes the need to explicitly pass thru min_indent when using the parser combinators.

My ultimate goal here is to evolve the current parser closer toward a purely combinator-based parser,
at which point we can more easily transition smoothly to a formal(ish) grammar, or expand the meanings of combinators
to include things like:
* Incremental (re)parsing
* Unified parsing and formatting code
* Better error recovery
* Using the main parser directly for syntax highlighting
2022-10-31 13:31:47 -07:00
Richard Feldman
bc2ec738a0
Merge pull request #4281 from lucacervello/suggest-lambda-operator
Add suggest lambda operator instead of when
2022-10-31 10:29:46 -07:00
Ayaz Hafiz
5e891a3501
Add comment on when heuristic can be removed 2022-10-31 09:48:25 -05:00
Ayaz Hafiz
04e8e26faf
Fix env var typo 2022-10-31 09:46:07 -05:00
Ayaz Hafiz
bb02104436
Fix typo 2022-10-31 09:44:22 -05:00
Ayaz Hafiz
b3956569a6
Add comment on inlining 2022-10-31 09:43:28 -05:00
Ayaz Hafiz
07f5d0c7fd
Clarify TODO 2022-10-31 09:39:29 -05:00
Ayaz Hafiz
508ee8d428
Update repl test with OIOP 2022-10-31 09:38:23 -05:00
Ayaz Hafiz
a526fd92aa
inferred extension vars are material if they're not flex or empty 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
4f367e2608
Clippers lose to the Thunder, I lose to Clippy 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
9854f5f2ac
Print alias's underlying structures if OIOP vars are material 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
e1b6e0334b
Generate OIOP vars correctly 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
f37868256d
Update repl test 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
985bd7d23f
Format the codes 2022-10-31 09:38:22 -05:00
Ayaz Hafiz
bedb26124d
Update load tests 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
debe6332c5
Support OIOP for type aliases 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
6ee2fb496d
Do not check named arguments in both alias args and real typ 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
aa8a7b1ebc
Less aggressive inlining in debug builds
Being too aggressive about inlining in debug builds can result in huge
stack frames building up when inlined functions are contained in
non-tail-recursive, non-inlined function calls. This easily hits stack
overflows, so avoid it.
2022-10-31 09:38:21 -05:00
Ayaz Hafiz
91dd47c5e4
Store OIOP variables in a unique buffer 2022-10-31 09:38:21 -05:00
Ayaz Hafiz
cfe7c8e5ef
Warn on the presence of unnecessary wildcards in output positions 2022-10-31 09:38:20 -05:00
Ayaz Hafiz
d55dbbf0ae
Update load test to work around constraining bug 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
b98cfa3bd6
Update roc_ast constraining tests 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
85e58440de
Allow too many args 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
8d5678151d
Implement open-in-output-position for non-alias type annotations 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
0707739cfc
Prefer "tags are missing" error messages 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
ec4285c1dd
Work around constraining bug in gen test 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
42058c3067
Add note on bug in constraining 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
e7c7eb623e
Fail builds if builtins have type errors 2022-10-31 09:37:41 -05:00
Ayaz Hafiz
bb1f4cd5e8
Fix bug in closing heuristic 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
7b9ce492c3
Better estimate polarity in exhaustiveness checking 2022-10-31 09:37:40 -05:00
Ayaz Hafiz
69114cc820
Apply a heuristic for opening/closing types before exhaustiveness checking 2022-10-31 09:37:40 -05:00