diff options
| author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2023-12-25 15:38:12 +0900 |
|---|---|---|
| committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2023-12-25 18:28:21 +0900 |
| commit | 596db9c1f486d6609a4e97d82c8c71b54609fb6f (patch) | |
| tree | 9697785982d539e2fa9383d2050a5c1a42bdcf73 /parse.y | |
| parent | 6e13cde457cbf9b678191e7a7b8684fc83bf392c (diff) | |
[Feature #19370] Blocks without anonymous parameters should not affect
Diffstat (limited to 'parse.y')
| -rw-r--r-- | parse.y | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -15070,13 +15070,13 @@ forwarding_arg_check(struct parser_params *p, ID arg, ID all, const char *var) args = p->lvtbl->args; while (vars && !DVARS_TERMINAL_P(vars->prev)) { + conflict |= (vtable_included(args, arg) && !(all && vtable_included(args, all))); vars = vars->prev; args = args->prev; - conflict |= (vtable_included(args, arg) && !(all && vtable_included(args, all))); } bool found = false; - if (vars && vars->prev == DVARS_INHERIT) { + if (vars && vars->prev == DVARS_INHERIT && !found) { found = (rb_local_defined(arg, p->parent_iseq) && !(all && rb_local_defined(all, p->parent_iseq))); } |
