Skip to content

Commit

Permalink
Revert "Allow simple R-assign in endless def"
Browse files Browse the repository at this point in the history
This reverts commit 67bcac8.
  • Loading branch information
nobu committed Apr 22, 2020
1 parent d6ec8da commit 02ad393
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 18 deletions.
20 changes: 3 additions & 17 deletions parse.y
Expand Up @@ -1104,7 +1104,7 @@ static int looking_at_eol_p(struct parser_params *p);
%type <node> string_contents xstring_contents regexp_contents string_content
%type <node> words symbols symbol_list qwords qsymbols word_list qword_list qsym_list word
%type <node> literal numeric simple_numeric ssym dsym symbol cpath def_name defn_head defs_head
%type <node> top_compstmt top_stmts top_stmt begin_block rassign arg_rassign
%type <node> top_compstmt top_stmts top_stmt begin_block rassign
%type <node> bodystmt compstmt stmts stmt_or_begin stmt expr arg primary command command_call method_call
%type <node> expr_value expr_value_do arg_value primary_value fcall rel_expr
%type <node> if_tail opt_else case_body case_args cases opt_rescue exc_list exc_var opt_ensure
Expand Down Expand Up @@ -1195,7 +1195,6 @@ static int looking_at_eol_p(struct parser_params *p);

%nonassoc tLOWEST
%nonassoc tLBRACE_ARG
%left tASSOC

%nonassoc modifier_if modifier_unless modifier_while modifier_until keyword_in
%left keyword_or keyword_and
Expand Down Expand Up @@ -1537,19 +1536,6 @@ rassign : arg_value tASSOC lhs
}
;

arg_rassign : arg tASSOC lhs %prec tLOWEST
{
/*%%%*/
$$ = node_assign(p, $3, $1, &@$);
/*% %*/
/*% ripper: assign!($3, $1) %*/
}
| arg %prec tLOWEST
{
$$ = $1;
}
;

command_asgn : lhs '=' command_rhs
{
/*%%%*/
Expand Down Expand Up @@ -2459,7 +2445,7 @@ arg : lhs '=' arg_rhs
/*% %*/
/*% ripper: ifop!($1, $3, $6) %*/
}
| defn_head f_arglist_opt '=' arg_rassign
| defn_head f_arglist_opt '=' arg
{
restore_defun(p, $<node>1->nd_defn);
/*%%%*/
Expand All @@ -2468,7 +2454,7 @@ arg : lhs '=' arg_rhs
/*% ripper: def!(get_value($1), $2, $4) %*/
local_pop(p);
}
| defs_head f_arglist_opt '=' arg_rassign
| defs_head f_arglist_opt '=' arg
{
restore_defun(p, $<node>1->nd_defn);
/*%%%*/
Expand Down
1 change: 0 additions & 1 deletion test/ruby/test_syntax.rb
Expand Up @@ -1419,7 +1419,6 @@ def test_methoddef_endless
assert_valid_syntax('private def inc(x) = x + 1')
assert_valid_syntax('private def obj.foo = 42')
assert_valid_syntax('private def obj.inc(x) = x + 1')
assert_valid_syntax('private def obj.inc(x) = x + 1 => @x')
end

def test_methoddef_in_cond
Expand Down

0 comments on commit 02ad393

Please sign in to comment.