[MacRuby] #1067: Segfault occurs when calls Struct#hash with recursive structs.
#1067: Segfault occurs when calls Struct#hash with recursive structs. ----------------------------------+----------------------------------------- Reporter: watson1978@… | Owner: lsansonetti@… Type: defect | Status: new Priority: blocker | Milestone: Component: MacRuby | Keywords: ----------------------------------+----------------------------------------- Test Script: {{{ #!ruby # "recursive structs" Car = Struct.new(:make, :model, :year) car = Car.new("Honda", "Accord", "1998") car[:make] = car p car.hash }}} BackTrace: {{{ $ DYLD_LIBRARY_PATH=. gdb --args ./macruby ~/tmp/tt.rb Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5f3ff958 0x0000000100136d4b in rb_vm_dispatch () at dispatcher.cpp:582 582 int argc, const VALUE *argv) (gdb) bt 20 #0 0x0000000100136d4b in rb_vm_dispatch () at dispatcher.cpp:582 #1 0x00000001000469d9 in rb_vm_call0 (vm=0x100e1e6d0, top=0, self=8590170016, klass=0x200059ac0, sel=0x7fff8751dbe0, block=0x0, opt=2 '\002', argc=0, argv=0x0) at vm.h:603 #2 0x0000000100046861 in rb_vm_call (self=8590170016, sel=0x7fff8751dbe0, argc=0, argv=0x0) at vm.h:610 #3 0x0000000100046783 in rb_hash_code (obj=8590170016) at hash.c:59 #4 0x0000000100046aba in rb_hash (obj=8590170016) at hash.c:75 #5 0x00000001000bda81 in rb_struct_hash (s=8590290688, sel=0x7fff8751dbe0) at struct.c:861 #6 0x0000000100138304 in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-trunk-svn/dispatcher.cpp:159 #7 0x0000000100138304 in ruby_dispatch [inlined] () at /Users/watson/src /macruby-trunk-svn/dispatcher.cpp:466 #8 0x0000000100138304 in rb_vm_dispatch () at dispatcher.cpp:849 #9 0x00000001000469d9 in rb_vm_call0 (vm=0x100e1e6d0, top=0, self=8590290688, klass=0x2000397a0, sel=0x7fff8751dbe0, block=0x0, opt=2 '\002', argc=0, argv=0x0) at vm.h:603 #10 0x0000000100046861 in rb_vm_call (self=8590290688, sel=0x7fff8751dbe0, argc=0, argv=0x0) at vm.h:610 #11 0x0000000100046783 in rb_hash_code (obj=8590290688) at hash.c:59 #12 0x0000000100046aba in rb_hash (obj=8590290688) at hash.c:75 #13 0x00000001000bdae9 in rb_struct_hash (s=8590290688, sel=0x7fff8751dbe0) at struct.c:864 #14 0x0000000100138304 in __rb_vm_rcall [inlined] () at /Users/watson/src /macruby-trunk-svn/dispatcher.cpp:159 #15 0x0000000100138304 in ruby_dispatch [inlined] () at /Users/watson/src /macruby-trunk-svn/dispatcher.cpp:466 #16 0x0000000100138304 in rb_vm_dispatch () at dispatcher.cpp:849 #17 0x00000001000469d9 in rb_vm_call0 (vm=0x100e1e6d0, top=0, self=8590290688, klass=0x2000397a0, sel=0x7fff8751dbe0, block=0x0, opt=2 '\002', argc=0, argv=0x0) at vm.h:603 #18 0x0000000100046861 in rb_vm_call (self=8590290688, sel=0x7fff8751dbe0, argc=0, argv=0x0) at vm.h:610 #19 0x0000000100046783 in rb_hash_code (obj=8590290688) at hash.c:59 (More stack frames follow...) Current language: auto; currently objective-c++ (gdb) }}} -- Ticket URL: <http://www.macruby.org/trac/ticket/1067> MacRuby <http://macruby.org/>
#1067: Segfault occurs when calls Struct#hash with recursive structs. ----------------------------------+----------------------------------------- Reporter: watson1978@… | Owner: lsansonetti@… Type: defect | Status: closed Priority: blocker | Milestone: MacRuby 0.9 Component: MacRuby | Resolution: fixed Keywords: | ----------------------------------+----------------------------------------- Changes (by lsansonetti@…): * status: new => closed * resolution: => fixed * milestone: => MacRuby 0.9 Comment: Should be fixed in r5066. -- Ticket URL: <http://www.macruby.org/trac/ticket/1067#comment:1> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby