[MacRuby] #1062: Segfault occurs when calls Rational#rationalize with no arguments.

MacRuby ruby-noreply at macosforge.org
Sat Dec 18 08:25:15 PST 2010


#1062: Segfault occurs when calls Rational#rationalize with no arguments.
----------------------------------+-----------------------------------------
 Reporter:  watson1978@…          |       Owner:  lsansonetti@…        
     Type:  defect                |      Status:  new                  
 Priority:  blocker               |   Milestone:                       
Component:  MacRuby               |    Keywords:                       
----------------------------------+-----------------------------------------
 Test Script:
 {{{
 #!ruby
 # it "returns self with no argument"
 p Rational(12,3).rationalize  #.should == Rational(12,3)
 }}}

 BackTrace:
 {{{
 $ DYLD_LIBRARY_PATH=. gdb --args ./macruby ~/tmp/tt.rb

 Program received signal EXC_BAD_ACCESS, Could not access memory.
 Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000
 0x000000010002992f in rb_scan_args (argc=1359816, argv=0x0,
 fmt=0x1008f5d90 "01") at class.c:1222
 1222                    if (var) *var = argv[i];
 (gdb) bt
 #0  0x000000010002992f in rb_scan_args (argc=1359816, argv=0x0,
 fmt=0x1008f5d90 "01") at class.c:1222
 #1  0x00000001000b199d in f_abs [inlined] () at
 /Users/watson/src/MacRuby/rational.c:1485
 #2  0x00000001000b199d in nurat_rationalize (self=8590162400,
 sel=0x102e596d0, argc=1359816, argv=0x0) at rational.c:1486
 #3  0x000000010014c976 in rb_vm_dispatch (_vm=0x100d1e6d0,
 cache=0x100cc9ba0, top=8590069760, self=8590162400, klass=0x2000b29e0,
 sel=0x102e596d0, block=0x0, opt=0 '\0', argc=<value temporarily
 unavailable, due to optimizations>, argv=0x0) at dispatcher.cpp:159
 #4  0x0000000100171548 in rb_vm_call0 [inlined] () at
 /Users/watson/src/MacRuby/vm.h:604
 #5  0x0000000100171548 in RoxorInterpreter::interpret_call
 (this=0x100d25550, call=<value temporarily unavailable, due to
 optimizations>) at vm.h:279
 #6  0x0000000100171d7a in RoxorInterpreter::interpret_instruction
 (this=0x100d25550, insn=0x102e8d1e0) at interpreter.cpp:180
 #7  0x0000000100171fc4 in RoxorInterpreter::interpret_basicblock
 (this=0x100d25550, bb=0x102e8bef0) at interpreter.cpp:276
 #8  0x0000000100171bb6 in RoxorInterpreter::interpret_instruction
 (this=0x100d25550, insn=0x102e8bf80) at interpreter.cpp:164
 #9  0x0000000100171fc4 in RoxorInterpreter::interpret_basicblock
 (this=0x100d25550, bb=0x102e8bcb0) at interpreter.cpp:276
 #10 0x0000000100164266 in rb_vm_run (fname=0x20004ebe0
 "/Users/watson/tmp/tt.rb", node=0x20003c5a0, binding=0x0,
 inside_eval=false) at vm.cpp:3924
 #11 0x0000000100040ff0 in ruby_run_node (n=0x20003c5a0) at eval.c:211
 #12 0x0000000100000d28 in main (argc=2, argv=0x100d1de40, envp=<value
 temporarily unavailable, due to optimizations>) at main.cpp:40
 Current language:  auto; currently c
 (gdb)
 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/1062>
MacRuby <http://macruby.org/>



More information about the macruby-tickets mailing list