summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--parse.y26
2 files changed, 8 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index ddf6cf3e3f..747c23edf3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Tue Mar 6 01:24:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * parse.y (block_command, block_call): simplified rules.
+
Mon Mar 5 18:28:35 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/ruby/test_regexp.rb (TestRegexp#test_source): fix typo.
diff --git a/parse.y b/parse.y
index 6b2c7111d7..f81819c9e5 100644
--- a/parse.y
+++ b/parse.y
@@ -1326,21 +1326,12 @@ command_call : command
;
block_command : block_call
- | block_call '.' operation2 command_args
+ | block_call dot_or_colon operation2 command_args
{
/*%%%*/
$$ = NEW_CALL($1, $3, $4);
/*%
- $$ = dispatch3(call, $1, ripper_id2sym('.'), $3);
- $$ = method_arg($$, $4);
- %*/
- }
- | block_call tCOLON2 operation2 command_args
- {
- /*%%%*/
- $$ = NEW_CALL($1, $3, $4);
- /*%
- $$ = dispatch3(call, $1, ripper_intern("::"), $3);
+ $$ = dispatch3(call, $1, $2, $3);
$$ = method_arg($$, $4);
%*/
}
@@ -3856,21 +3847,12 @@ block_call : command do_block
$$ = method_add_block($1, $2);
%*/
}
- | block_call '.' operation2 opt_paren_args
+ | block_call dot_or_colon operation2 opt_paren_args
{
/*%%%*/
$$ = NEW_CALL($1, $3, $4);
/*%
- $$ = dispatch3(call, $1, ripper_id2sym('.'), $3);
- $$ = method_optarg($$, $4);
- %*/
- }
- | block_call tCOLON2 operation2 opt_paren_args
- {
- /*%%%*/
- $$ = NEW_CALL($1, $3, $4);
- /*%
- $$ = dispatch3(call, $1, ripper_intern("::"), $3);
+ $$ = dispatch3(call, $1, $2, $3);
$$ = method_optarg($$, $4);
%*/
}