[ruby-dev:49289] [Ruby trunk - Bug #11456] Hash リテラル中で rescue をもちいると SyntaxError になる

From: nobu@...
Date: 2015-10-07 13:29:57 UTC
List: ruby-dev #49289
Issue #11456 has been updated by Nobuyoshi Nakada.


Tomoyuki Chikanaga wrote:
> trunk でも `{ %q"key": value }` を復活させようということでしょうか?

どうしても復活させたいというわけでもないですが、互換性を保つべきだということであれば。

----------------------------------------
Bug #11456: Hash リテラル中で rescue をもちいると SyntaxError になる
https://bugs.ruby-lang.org/issues/11456#change-54386

* Author: Koichi ITO
* Status: Closed
* Priority: Normal
* Assignee: 
* ruby -v: ruby 2.3.0dev (2015-08-18 trunk 51622) [x86_64-darwin13]
* Backport: 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: DONE
----------------------------------------
ruby 2.3.0dev (2015-08-18 trunk 51622) にて、Hash リテラル中で rescue をもちいると SyntaxError になりました。

まず、ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin13] の実行結果です。

~~~ruby
% irb
irb(main):001:0> {foo: ("" rescue "")}
=> {:foo=>""}
~~~

次に、ruby 2.3.0dev (2015-08-18 trunk 51622) [x86_64-darwin13] の実行結果です。

~~~ruby
% irb
irb(main):001:0> {foo: ("" rescue "")}
SyntaxError: (irb):1: syntax error, unexpected modifier_rescue, expecting ')'
{ foo: ('' rescue '') }
                 ^
        from /Users/koic/.rbenv/versions/2.3.0-dev/bin/irb:11:in `<main>'
~~~

こちらの挙動について期待している振る舞いかどうか判断がつかなかったため、レポートとさせてください。




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

In This Thread

Prev Next