[#41278] [BUG:1.9] BINARY should not be ASCII-compatible — Yugui <yugui@...>

Yuguiです。

15 messages 2010/05/11

[#41407] [Bug #3339] win32ole test failure — Usaku NAKAMURA <redmine@...>

Bug #3339: win32ole test failure

20 messages 2010/05/25
[#41411] Re: [Bug #3339] win32ole test failure — Masaki Suketa <masaki.suketa@...> 2010/05/25

助田です。

[#41412] Re: [Bug #3339] win32ole test failure — "U.Nakamura" <usa@...> 2010/05/25

こんにちは、なかむら(う)です。

[ruby-dev:41330] caller at toplevel

From: Nobuhiro IMAI <nov@...>
Date: 2010-05-16 22:12:27 UTC
List: ruby-dev #41330
いまいです。

るりまのバグ報告を処理していて気づいたのですが、トップレベルで caller
を呼ぶと、1.8系では [] が返っていたのですが、1.9系では nil が返ります。
# http://redmine.ruby-lang.org/issues/show/3301

$ ruby1.8 -ve 'p caller'
ruby 1.8.8dev (2010-05-15 revision 26358) [i686-linux]
[]
$ ruby1.9 -ve 'p caller'
ruby 1.9.3dev (2010-05-16 trunk 27849) [i686-linux]
nil

NEWS などには書いてないようなのですが、これは意図的な変更でしょうか?


意図的だとして、eval.c や vm_eval.c には

 *  call-seq:
 *     caller(start=1)    => array

と書いてあるのですが、トップレベルでなくても引数によっては nil が返る
場合があるので、

 *  call-seq:
 *     caller(start=1)    => Array or nil

と変えるのはどうでしょうか?説明やサンプルコードの追加にいいアイデアが
ないのですが、とりあえず報告します。

ちなみに、ちょっと古いですが、JRuby では、[] が返ります。

$ jruby --1.9 -ve 'p caller'
jruby 1.1.6 (ruby 1.9.1 patchlevel 114) (2009-07-06 rev 6586) [i386-java]
[]
--
Nobuhiro IMAI <nov@yo.rim.or.jp>
Key fingerprint = F39E D552 545D 7C64 D690  F644 5A15 746C BD8E 7106

In This Thread

Prev Next