Project

General

Profile

Actions

Bug #15416

closed

配列リテラル内の引数を伴う括弧なしのメソッド呼び出しで syntax error

Added by shuujii (Shuji KOBAYASHI) almost 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.6.0rc1 (2018-12-06 trunk 66253) [x86_64-linux]
[ruby-core:90539]

Description

以下のような配列リテラル内の引数を伴う括弧なしのメソッド呼び出しで syntax error が発生します。

$ ruby -ce '[p 1]'
-e:1: syntax error, unexpected tINTEGER, expecting do or '{' or '('
[p 1]
   ^

メソッドの [][]= の中ではエラーにならないので許容されたほうが良いと思います。

$ ruby -ce '{}[p 1]'
Syntax OK

$ ruby -ce '{}[p 1]=1'
Syntax OK

なお、Ruby 1.8 ではエラーになりませんでした。

$ ruby187 -vce '[p 1]'
ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]
Syntax OK

添付のパッチで許容されるようになった気がします。


Files

Actions

Also available in: Atom PDF