Bug #2214: Segfault with Range of Symbols in IRB
http://redmine.ruby-lang.org/issues/show/2214

Author: Run Paint Run Run
Status: Open, Priority: High
Category: core
ruby -v: ruby 1.9.2dev (2009-10-14 trunk 25330) [i686-linux]

This is very similar to http://redmine.ruby-lang.org/issues/show/1891 .

  $ cat /tmp/segfault.rb 
  (:a..:zzzzzz).to_a; true
  (:a..:zzzzz)
  $ irb -v
  irb 0.9.6(09/06/30)
  $ irb </tmp/segfault.rb 
  Switch to inspect mode.
  (:a..:zzzzzz).to_a; true
  RuntimeError: symbol table overflow (symbol doecf)
	from (irb):1:in `upto'
	from (irb):1:in `each'
	from (irb):1:in `to_a'
	from (irb):1
	from /usr/local/bin/irb:12:in `<main>'
  (:a..:zzzzz)
  (irb):2: [BUG] Segmentation fault
  ruby 1.9.2dev (2009-10-14 trunk 25330) [i686-linux]
  
  -- control frame ----------
  c:0024 p:---- s:0084 b:0084 l:000083 d:000083 CFUNC  :<=>
  c:0023 p:0008 s:0082 b:0082 l:000d14 d:000081 EVAL   (irb):2
  c:0022 p:---- s:0080 b:0080 l:000079 d:000079 FINISH
  c:0021 p:---- s:0078 b:0078 l:000077 d:000077 CFUNC  :eval
  c:0020 p:0028 s:0071 b:0071 l:000070 d:000070 METHOD   /usr/local/lib/ruby/1.9.1/irb/workspace.rb:80
  c:0019 p:0033 s:0064 b:0063 l:000062 d:000062 METHOD /usr/local/lib/ruby/1.9.1/irb/context.rb:252
  c:0018 p:0031 s:0058 b:0058 l:001fdc d:000057 BLOCK  /usr/local/lib/ruby/1.9.1/irb.rb:157
  c:0017 p:0042 s:0050 b:0050 l:000049 d:000049 METHOD /usr/local/lib/ruby/1.9.1/irb.rb:271
  c:0016 p:0011 s:0045 b:0045 l:001fdc d:000044 BLOCK  /usr/local/lib/ruby/1.9.1/irb.rb:154
  c:0015 p:0144 s:0041 b:0041 l:000024 d:000040 BLOCK  /usr/local/lib/ruby/1.9.1/irb/ruby-  lex.rb:244
  c:0014 p:---- s:0038 b:0038 l:000037 d:000037 FINISH
  c:0013 p:---- s:0036 b:0036 l:000035 d:000035 CFUNC  :loop
  c:0012 p:0009 s:0033 b:0033 l:000024 d:000032 BLOCK  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:230
  c:0011 p:---- s:0031 b:0031 l:000030 d:000030 FINISH
  c:0010 p:---- s:0029 b:0029 l:000028 d:000028 CFUNC  :catch
  c:0009 p:0023 s:0025 b:0025 l:000024 d:000024 METHOD /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229
  c:0008 p:0046 s:0022 b:0022 l:001fdc d:001fdc METHOD /usr/local/lib/ruby/1.9.1/irb.rb:153
  c:0007 p:0011 s:0019 b:0019 l:002364 d:000018 BLOCK  /usr/local/lib/ruby/1.9.1/irb.rb:70
  c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH
  c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC  :catch
  c:0004 p:0183 s:0011 b:0011 l:002364 d:002364 METHOD /usr/local/lib/ruby/1.9.1/irb.rb:69
  c:0003 p:0039 s:0006 b:0006 l:0015f4 d:00041c EVAL   /usr/local/bin/irb:12
  c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
  c:0001 p:0000 s:0002 b:0002 l:0015f4 d:0015f4 TOP   
  ---------------------------
  /usr/local/bin/irb:12:in `<main>'
  /usr/local/lib/ruby/1.9.1/irb.rb:69:in `start'
  /usr/local/lib/ruby/1.9.1/irb.rb:69:in `catch'
  /usr/local/lib/ruby/1.9.1/irb.rb:70:in `block in start'
  /usr/local/lib/ruby/1.9.1/irb.rb:153:in `eval_input'
  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `each_top_level_statement'
  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `catch'
  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:230:in `block in each_top_level_statement'
  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:230:in `loop'
  /usr/local/lib/ruby/1.9.1/irb/ruby-lex.rb:244:in `block (2 levels) in each_top_level_statement'
  /usr/local/lib/ruby/1.9.1/irb.rb:154:in `block in eval_input'
  /usr/local/lib/ruby/1.9.1/irb.rb:271:in `signal_status'
  /usr/local/lib/ruby/1.9.1/irb.rb:157:in `block (2 levels) in eval_input'
  /usr/local/lib/ruby/1.9.1/irb/context.rb:252:in `evaluate'
  /usr/local/lib/ruby/1.9.1/irb/workspace.rb:80:in `evaluate'
  /usr/local/lib/ruby/1.9.1/irb/workspace.rb:80:in `eval'
  (irb):2:in `irb_binding'
  (irb):2:in `<=>'
  
  -- C level backtrace information -------------------------------------------
  irb(rb_vm_bugreport+0xb6) [0x81687b6]
  /lib/tls/i686/cmov/libc.so.6(_IO_2_1_stderr_+0x47) [0xb7ed15a7]
  
  [NOTE]
  You may have encountered a bug in the Ruby interpreter or extension libraries.
  Bug reports are welcome.
  For details: http://www.ruby-lang.org/bugreport.html
  
  Aborted


----------------------------------------
http://redmine.ruby-lang.org