From: Ryan Davis Date: 2009-07-17T11:28:08+09:00 Subject: [ruby-core:24398] Re: [Bug #1785] ObjectSpace::define_finalizer on Fixnum segfaults with recent ruby On Jul 16, 2009, at 15:08 , Kirk Haines wrote: > On Thu, Jul 16, 2009 at 3:42 PM, Pascal Terjan lang.org> wrote: >> Bug #1785: ObjectSpace::define_finalizer on Fixnum segfaults with >> recent ruby >> http://redmine.ruby-lang.org/issues/show/1785 >> >> Author: Pascal Terjan >> Status: Open, Priority: Normal >> ruby -v: ruby 1.8.7 (2009-06-12 patchlevel 174) [i586-linux] >> >> $ ruby -e 'ObjectSpace::define_finalizer(4, proc {})' >> -e:1:in `define_finalizer': cannot define finalizer for Fixnum >> (ArgumentError) >> from -e:1 >> -e:1: [BUG] Segmentation fault >> ruby 1.8.7 (2009-06-12 patchlevel 174) [i586-linux] > > I can confirm that this error occurs on 1.8.6 at least with pl368 and > up. I have not had a chance to check other patch levels. Both 1.8.7-p160, 1.8.6-p368 segfault. 1.9.1 is listed as a failure, but that is only based on exit code, so it shouldn't be counted as incorrect: 502 % multiruby -e 'ObjectSpace::define_finalizer(4, proc {})' VERSION = 1.8.6-p287 CMD = ~/.multiruby/install/1.8.6-p287/bin/ruby -e ObjectSpace::define_finalizer(4, proc {}) RESULT = 0 VERSION = 1.8.6-p368 CMD = ~/.multiruby/install/1.8.6-p368/bin/ruby -e ObjectSpace::define_finalizer(4, proc {}) -e:1:in `define_finalizer': cannot define finalizer for Fixnum (ArgumentError) from -e:1 -e:1: [BUG] Bus Error ruby 1.8.6 (2009-03-31) [i686-darwin9.7.0] RESULT = 6 VERSION = 1.8.7-p160 CMD = ~/.multiruby/install/1.8.7-p160/bin/ruby -e ObjectSpace::define_finalizer(4, proc {}) -e:1:in `define_finalizer': cannot define finalizer for Fixnum (ArgumentError) from -e:1 -e:1: [BUG] Bus Error ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-darwin9.7.0] RESULT = 6 VERSION = 1.8.7-p72 CMD = ~/.multiruby/install/1.8.7-p72/bin/ruby -e ObjectSpace::define_finalizer(4, proc {}) RESULT = 0 VERSION = 1.9.1-p129 CMD = ~/.multiruby/install/1.9.1-p129/bin/ruby -e ObjectSpace::define_finalizer(4, proc {}) -e:1:in `define_finalizer': cannot define finalizer for Fixnum (ArgumentError) from -e:1:in `
' RESULT = 256 TOTAL RESULT = 3 failures out of 5 Passed: 1.8.6-p287, 1.8.7-p72 Failed: 1.9.1-p129, 1.8.7-p160, 1.8.6-p368