Project

General

Profile

Backport #2475

InstructionSequence#to_a fails for duparray

Added by cout (Paul Brannan) over 9 years ago. Updated over 8 years ago.

Status:
Closed
Priority:
Normal
[ruby-core:27151]

Description

=begin
irb(main):003:0> i = RubyVM::InstructionSequence.compile("a = [ 1, 2, 3 ]; foo(a)")
=> RubyVM::InstructionSequence:<compiled@>
irb(main):004:0> i.to_a
NotImplementedError: method inspect' called on terminated object (0x984de08)
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:302:in
inspect'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:302:in inspect'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:302:in
inspect'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:302:in output_value'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:150:in
block (2 levels) in eval_input'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:263:in signal_status'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:146:in
block in eval_input'
from /usr/local/lib/ruby1.9.1/1.9.1/irb/ruby-lex.rb:244:in block (2 levels) in each_top_level_statement'
from /usr/local/lib/ruby1.9.1/1.9.1/irb/ruby-lex.rb:230:in
loop'
from /usr/local/lib/ruby1.9.1/1.9.1/irb/ruby-lex.rb:230:in block in each_top_level_statement'
from /usr/local/lib/ruby1.9.1/1.9.1/irb/ruby-lex.rb:229:in
catch'
from /usr/local/lib/ruby1.9.1/1.9.1/irb/ruby-lex.rb:229:in each_top_level_statement'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:145:in
eval_input'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:69:in block in start'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:68:in
catch'
from /usr/local/lib/ruby1.9.1/1.9.1/irb.rb:68:in start'
from /usr/local/bin/irb1.9.1:12:in
'Maybe IRB bug!!

I think #to_a does not hanndle the hidden_obj_p case correctly.
=end

History

#1

Updated by naruse (Yui NARUSE) over 9 years ago

=begin
This is already fixed in p376, isn't it?
=end

#2

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Assignee set to yugui (Yuki Sonoda)

=begin
r22395 & r22640
=end

#3

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Category set to core

=begin

=end

#4

Updated by yugui (Yuki Sonoda) over 9 years ago

  • Status changed from Open to Closed

=begin
fixed at r26570.

=end

#5

Updated by judofyr (Magnus Holm) about 9 years ago

=begin
I'm having this issue in ruby 1.9.1p378 (2010-01-10 revision 26273) [i386-darwin10.3.0]:

ruby -e'RubyVM::InstructionSequence.compile("a = [ 1, 2, 3 ]; foo(a)").to_a.inspect'
-e:1:in inspect': methodinspect' called on terminated object (0x00000100844f20) (NotImplementedError)
from -e:1:in inspect'
from -e:1:in
inspect'
from -e:1:in `'

=end

#6

Updated by rogerdpack (Roger Pack) about 9 years ago

=begin

fixed at r26570.

I'm having this issue in ruby 1.9.1p378 (2010-01-10 revision 26273)
[i386-darwin10.3.0]:

Looks like it won't work until another revision of 1.9.1 is released. So you can either build 1.9.1 from its branch, or use 1.9.2 preview, or wait.
Cheers.
-rp
=end

Also available in: Atom PDF