こんにちは
中嶋と申します。

ruby 1.4.6 と 1.6.7 とでは、begin-rescue の挙動が異なる
のですが、これはどの段階で変更されたのでしょうか?
ChangeLogをみてもいまいちわからなかったので、変更された
目的とか、経緯について、教えてください。



コード例:

begin
  nil.chop
rescue
  STDERR.print "hoge"
end


 1.4.6ではNameErrorがrescueにひっかかるので hoge が出ます
が、1.6.7 では
aho.rb:2: undefined method `chop' for nil (NameError)
と出て hoge が出ません。 rescue で普通に取れたほうが便利そう
だと思うのですが、何か目的があってこうなったということ
なんでしょうか。


ご回答、よろしくおねがいします。



-------------------------
CommunityEngine Inc.   President 
Kengo Nakajima  (中嶋謙互)
Tel +81-3-5352-6536 
Fax +81-3-5352-6537
 http://www.vce-lab.net/