[ruby/prism] Fix splat after kwsplat

https://github.com/ruby/prism/commit/70c1cd480f
This commit is contained in:
Haldun Bayhantopcu 2024-11-07 23:36:32 +01:00 committed by git
parent 4b4c94b17c
commit 6767117b07
2 changed files with 6 additions and 0 deletions

View File

@ -14190,6 +14190,9 @@ parse_arguments(pm_parser_t *parser, pm_arguments_t *arguments, bool accepts_for
if (match4(parser, PM_TOKEN_PARENTHESIS_RIGHT, PM_TOKEN_COMMA, PM_TOKEN_SEMICOLON, PM_TOKEN_BRACKET_RIGHT)) {
pm_parser_scope_forwarding_positionals_check(parser, &operator);
argument = (pm_node_t *) pm_splat_node_create(parser, &operator, NULL);
if (parsed_bare_hash) {
pm_parser_err_previous(parser, PM_ERR_ARGUMENT_SPLAT_AFTER_ASSOC_SPLAT);
}
} else {
pm_node_t *expression = parse_value_expression(parser, PM_BINDING_POWER_DEFINED, false, false, PM_ERR_EXPECT_EXPRESSION_AFTER_SPLAT, (uint16_t) (depth + 1));

View File

@ -0,0 +1,3 @@
def f(*, **); p(**, *); end
^ unexpected `*` splat argument after a `**` keyword splat argument