[#45637] [ruby-trunk - Feature #6440][Open] 引数にIOを渡した場合のMarshal.loadにバッファを持たせたい — "Glass_saga (Masaki Matsushita)" <glass.saga@...>

14 messages 2012/05/16

[#45670] [ruby-trunk - Bug #6479][Open] ipaddr.rbの受け付ける書式が、プラットフォームによって異なる — "kachick (Kenichi Kamiya)" <kachick1+ruby@...>

9 messages 2012/05/22

[ruby-dev:45626] [ruby-trunk - Bug #6403][Open] self という名前のメソッド定義で SyntaxError

From: "wanabe (_ wanabe)" <s.wanabe@...>
Date: 2012-05-05 01:29:05 UTC
List: ruby-dev #45626
Issue #6403 has been reported by wanabe (_ wanabe).

----------------------------------------
Bug #6403: self という名前のメソッド定義で SyntaxError
https://bugs.ruby-lang.org/issues/6403

Author: wanabe (_ wanabe)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 
ruby -v: ruby 2.0.0dev (2012-05-05 trunk 35541) [i686-linux]


http://toro.2ch.net/test/read.cgi/tech/1328648447/925-931
で指摘されていたのですが、self という名前のメソッドの定義で
メソッド内部先頭にシンボルがある場合 SyntaxError になります。
また、セミコロンか改行をはさむと正常にパースされます。

def self;   :foo; end #<= NG
def self;;  :foo; end #<= OK
def self()  :foo; end #<= OK
def self(); :foo; end #<= OK
def hoge;   :foo; end #<= OK
def class;  :foo; end #<= OK

parse.y の f_arglist に関する規則の部分で、
'(' f_args rparen の時には lex_state を変更しているのに
f_args term の時には $$ = $1; しかしていないあたりが
怪しいように思うのですがどうでしょうか。


-- 
http://bugs.ruby-lang.org/

In This Thread

Prev Next