なかだです。 At Sun, 19 Aug 2007 15:54:50 +0900, Tanaka Akira wrote in [ruby-dev:31502]: > 以下がエラーになりません。 > > % ./ruby -vce 'm() {|(a,a)|}' > ruby 1.9.0 (2007-08-19 patchlevel 0) [i686-linux] > Syntax OK > > duplicated argument name ではないでしょうか。 いっそduplicated argument nameをなくしちゃうってのはどうですか。
Index: parse.y =================================================================== --- parse.y (revision 13128) +++ parse.y (working copy) @@ -4155,4 +4155,5 @@ f_norm_arg : tCONSTANT | tIDENTIFIER { + shadowing_lvar($1); $$ = $1; } @@ -4164,5 +4165,4 @@ f_arg_item : f_norm_arg if (!is_local_id($1)) yyerror("formal argument must be local variable"); - shadowing_lvar($1); arg_var($1); $$ = NEW_ARGS_AUX($1, 1);
-- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦