Bug #2967

SCRIPT_LINES__ is not included in constants()

Added by Shri Borde almost 2 years ago. Updated 10 months ago.

[ruby-core:28678]
Status:Rejected Start date:03/16/2010
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:-
Target version:1.9.1
ruby -v:ruby 1.9.1p129 (2009-05-12 revision 23412) [i386-mswin32]

Description

d:\bugs>irb
irb(main):001:0> RUBY_VERSION
=> "1.8.6"
irb(main):002:0> SCRIPT_LINES__ = {}
=> {}
irb(main):003:0> Object.constants.include? 'SCRIPT_LINES__'
=> true
irb(main):004:0> exit

d:\bugs>irb19
irb(main):001:0> RUBY_VERSION
=> "1.9.1"
irb(main):002:0> SCRIPT_LINES__ = {}
=> {}
irb(main):003:0> Object.constants.include? 'SCRIPT_LINES__'
=> false
irb(main):006:0> exit

History

Updated by Shri Borde almost 2 years ago

Using symbols works. ie Object.constants.include? :SCRIPT_LINES__. So this is not a bug. My bad.

Updated by Nobuyoshi Nakada almost 2 years ago

  • Status changed from Open to Rejected
Use const_defined? which can work either on 1.8 and 1.9, and faster.

Also available in: Atom PDF