Bug #2474

The __FILE__ constant equals a relative path when required using a relative path FAILED on 1.8.8dev

Added by ujihisa . about 2 years ago. Updated 10 months ago.

[ruby-dev:39872]
Status:Closed Start date:12/12/2009
Priority:Normal Due date:
Assignee:Akinori MUSHA % Done:

100%

Category:core
Target version:Ruby 1.8.8
ruby -v:ruby 1.8.8dev (2009-12-07 revision 26034) [i386-darwin9.8.0]

Description

Ruby 1.8.7と1.8.8devで、requireされたファイルの__FILE__が異なる値を持ちます。

$ cat a.rb                                                                                               [19:50:07]
p __FILE__
require __FILE__
$ ruby187 -v a.rb                                                                                        [20:00:31]
ruby 1.8.7 (2009-07-30 patchlevel 192) [i686-darwin9.7.0]
"a.rb"
"./a.rb"
"./a.rb"
$ ruby188 -v a.rb                                                                                        [20:00:37]
ruby 1.8.8dev (2009-12-07 revision 26034) [i386-darwin9.8.0]
"a.rb"
"/Users/ujihisa/a.rb"
"/Users/ujihisa/a.rb"

ChangeLogを見ましたが、いつこの変更が行なわれたのか分かりませんでした。

この変更により、ruby 1.8.8devはspec/rubyspec/language/file_spec.rbに通りません。
もしもこの変更が意図的ならものでしたら、RubySpec側を変更します。

History

Updated by Nobuyoshi Nakada about 2 years ago

r18242です。意図的だったはずです。

Updated by ujihisa . about 2 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100
ありがとうございます。RubySpecの方を修正しておきました。

Also available in: Atom PDF