Project

General

Profile

Actions

Bug #9003

closed

Range.new on objects without <=> but with Comparable does raise SystemStackError, and if this is catched it crash in "Segmentation fault"

Added by Hanmac (Hans Mackowiak) over 10 years ago. Updated about 10 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 2.1.0dev (2013-10-09) [x86_64-darwin12.5.0]
[ruby-core:57736]

Description

this code causes "Segmentation fault: 11"

o1=Object.new
o1.extend(Comparable)
o2=Object.new
o2.extend(Comparable)

begin
p Range.new(o1,o2) # raises Stack Error
rescue SystemStackError
end

begin
p Range.new(o1,o2) # Segmentation fault: 11
rescue SystemStackError
end

i tested also other ruby versions:

Crashs for versions:
ruby 2.1.0dev (2013-10-09) [x86_64-darwin12.5.0]
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.3.0]
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]

works for versions:
ruby 2.1.0dev (2013-09-22 trunk 43011) [i686-linux]
ruby 2.0.0p247 (2013-06-27) [i386-mingw32]
ruby 2.0.0p0 (2013-02-24 revision 39474) [i686-linux]

from what i can see it looks like an 64bit problem on MRI

it seems to work on rubinius 64bit

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0