* [ruby-dev:44963] [ruby-trunk - Bug #5738][Open] if false; BEGIN {}; end が syntax error になる
@ 2011-12-10 4:32 Sho Hashimoto
2011-12-10 13:10 ` [ruby-dev:44964] [ruby-trunk - Bug #5738][Rejected] " Yukihiro Matsumoto
2011-12-10 13:34 ` [ruby-dev:44965] [ruby-trunk - Bug #5738] " Sho Hashimoto
0 siblings, 2 replies; 5+ messages in thread
From: Sho Hashimoto @ 2011-12-10 4:32 UTC (permalink / raw
To: ruby developers list
Issue #5738 has been reported by Sho Hashimoto.
----------------------------------------
Bug #5738: if false; BEGIN {}; end が syntax error になる
http://redmine.ruby-lang.org/issues/5738
Author: Sho Hashimoto
Status: Open
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3dev (2011-07-31 revision 32789) [i686-linux]
1.8 の時と異なり、以下のコードが syntax error になります。
if false; BEGIN {}; end
test/ruby/test_beginendblock.rb や過去の NEWS に記述がない事などから、もしかしたらバグかもしれないと考えています。1.9 からの仕様であれば reject してやってください。
なお、以下についても syntax error になりますが、1.8 の時と異なり、yyerror("BEGIN in method"); に到達しない事からチケットを発行する事にしました。
def foo; BEGIN {}; end
--
http://redmine.ruby-lang.org
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ruby-dev:44964] [ruby-trunk - Bug #5738][Rejected] if false; BEGIN {}; end が syntax error になる
2011-12-10 4:32 [ruby-dev:44963] [ruby-trunk - Bug #5738][Open] if false; BEGIN {}; end が syntax error になる Sho Hashimoto
@ 2011-12-10 13:10 ` Yukihiro Matsumoto
2011-12-10 14:25 ` [ruby-dev:44966] " Shugo Maeda
2011-12-10 13:34 ` [ruby-dev:44965] [ruby-trunk - Bug #5738] " Sho Hashimoto
1 sibling, 1 reply; 5+ messages in thread
From: Yukihiro Matsumoto @ 2011-12-10 13:10 UTC (permalink / raw
To: ruby developers list
Issue #5738 has been updated by Yukihiro Matsumoto.
Status changed from Open to Rejected
エラーのタイプは異なりますが、この変更は意図的です。ifでくくってあってもBEGINはコンパイル時に登録されます。ので、トップレベルでしか登録できないように文法が変更されました。
----------------------------------------
Bug #5738: if false; BEGIN {}; end が syntax error になる
http://redmine.ruby-lang.org/issues/5738
Author: Sho Hashimoto
Status: Rejected
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3dev (2011-07-31 revision 32789) [i686-linux]
1.8 の時と異なり、以下のコードが syntax error になります。
if false; BEGIN {}; end
test/ruby/test_beginendblock.rb や過去の NEWS に記述がない事などから、もしかしたらバグかもしれないと考えています。1.9 からの仕様であれば reject してやってください。
なお、以下についても syntax error になりますが、1.8 の時と異なり、yyerror("BEGIN in method"); に到達しない事からチケットを発行する事にしました。
def foo; BEGIN {}; end
--
http://redmine.ruby-lang.org
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ruby-dev:44965] [ruby-trunk - Bug #5738] if false; BEGIN {}; end が syntax error になる
2011-12-10 4:32 [ruby-dev:44963] [ruby-trunk - Bug #5738][Open] if false; BEGIN {}; end が syntax error になる Sho Hashimoto
2011-12-10 13:10 ` [ruby-dev:44964] [ruby-trunk - Bug #5738][Rejected] " Yukihiro Matsumoto
@ 2011-12-10 13:34 ` Sho Hashimoto
1 sibling, 0 replies; 5+ messages in thread
From: Sho Hashimoto @ 2011-12-10 13:34 UTC (permalink / raw
To: ruby developers list
Issue #5738 has been updated by Sho Hashimoto.
了解です。ありがとうございます。
----------------------------------------
Bug #5738: if false; BEGIN {}; end が syntax error になる
http://redmine.ruby-lang.org/issues/5738
Author: Sho Hashimoto
Status: Rejected
Priority: Normal
Assignee:
Category:
Target version:
ruby -v: ruby 1.9.3dev (2011-07-31 revision 32789) [i686-linux]
1.8 の時と異なり、以下のコードが syntax error になります。
if false; BEGIN {}; end
test/ruby/test_beginendblock.rb や過去の NEWS に記述がない事などから、もしかしたらバグかもしれないと考えています。1.9 からの仕様であれば reject してやってください。
なお、以下についても syntax error になりますが、1.8 の時と異なり、yyerror("BEGIN in method"); に到達しない事からチケットを発行する事にしました。
def foo; BEGIN {}; end
--
http://redmine.ruby-lang.org
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ruby-dev:44966] Re: [ruby-trunk - Bug #5738][Rejected] if false; BEGIN {}; end が syntax error になる
2011-12-10 13:10 ` [ruby-dev:44964] [ruby-trunk - Bug #5738][Rejected] " Yukihiro Matsumoto
@ 2011-12-10 14:25 ` Shugo Maeda
2011-12-12 4:02 ` [ruby-dev:44970] " Yukihiro Matsumoto
0 siblings, 1 reply; 5+ messages in thread
From: Shugo Maeda @ 2011-12-10 14:25 UTC (permalink / raw
To: ruby developers list
前田です。
2011年12月10日22:10 Yukihiro Matsumoto <matz@ruby-lang.org>:
> エラーのタイプは異なりますが、この変更は意図的です。ifでくくってあってもBEGINはコンパイル時に登録されます。ので、トップレベルでしか登録できないように文法が変更されました。
エラーメッセージがわかりにくくなっている気がするのですが、こんな感じで
エラーメッセージを表示してはどうでしょうか。
https://gist.github.com/1455275
せめて、以下のパスは通らないので削った方がいいように思います。
if (in_def || in_single) {
yyerror("BEGIN in method");
}
--
Shugo Maeda
^ permalink raw reply [flat|nested] 5+ messages in thread
* [ruby-dev:44970] Re: [ruby-trunk - Bug #5738][Rejected] if false; BEGIN {}; end が syntax error になる
2011-12-10 14:25 ` [ruby-dev:44966] " Shugo Maeda
@ 2011-12-12 4:02 ` Yukihiro Matsumoto
0 siblings, 0 replies; 5+ messages in thread
From: Yukihiro Matsumoto @ 2011-12-12 4:02 UTC (permalink / raw
To: ruby developers list; +Cc: shugo
まつもと ゆきひろです
In message "Re: [ruby-dev:44966] Re: [ruby-trunk - Bug #5738][Rejected] if false; BEGIN {}; end が syntax error になる"
on Sat, 10 Dec 2011 23:25:19 +0900, Shugo Maeda <shugo@ruby-lang.org> writes:
|エラーメッセージがわかりにくくなっている気がするのですが、こんな感じで
|エラーメッセージを表示してはどうでしょうか。
|
| https://gist.github.com/1455275
なるほど。それでもいいかもしれませんね。コミットしてください。
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2011-12-12 4:17 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-10 4:32 [ruby-dev:44963] [ruby-trunk - Bug #5738][Open] if false; BEGIN {}; end が syntax error になる Sho Hashimoto
2011-12-10 13:10 ` [ruby-dev:44964] [ruby-trunk - Bug #5738][Rejected] " Yukihiro Matsumoto
2011-12-10 14:25 ` [ruby-dev:44966] " Shugo Maeda
2011-12-12 4:02 ` [ruby-dev:44970] " Yukihiro Matsumoto
2011-12-10 13:34 ` [ruby-dev:44965] [ruby-trunk - Bug #5738] " Sho Hashimoto
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).