# \[BUG:1.9\] irb/xmp with empty input aborts

**URL:** <https://www.ruby-forum.com/t/bug-1-9-irb-xmp-with-empty-input-aborts/157980>\
**Category:** Development\
**Created:** [January 17, 2009, 9:02am UTC](https://www.ruby-forum.com/t/bug-1-9-irb-xmp-with-empty-input-aborts/157980 "2009-01-17T09:02:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Yugui\_SYuki\_S.S](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/dec6dc/32.png) [@Yugui\_SYuki\_S.S](https://www.ruby-forum.com/u/Yugui_SYuki_S.S)\
**Post date:** [January 17, 2009, 9:02am UTC](https://www.ruby-forum.com/t/bug-1-9-irb-xmp-with-empty-input-aborts/157980/1 "2009-01-17T09:02:40Z")

</div>

Yuguie$B$G$9!#\<!$N$h$&$K$9$k$He(B[BUG]e$B$,=P$^$9!#e(B

% ruby-1.9.1 -rirb/xmp \< /dev/null  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:210: [BUG]  
get\_local\_var\_idx: -1  
ruby 1.9.1p0 (2009-01-16 revision 21600) [i386-darwin9.6.0]

## – control frame ---------- c:0019 p:---- s:0052 b:0052 l:000051 d:000051 CFUNC :module\_eval c:0018 p:0041 s:0048 b:0048 l:000047 d:000047 METHOD /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:210 c:0017 p:0016 s:0042 b:0042 l:000033 d:000041 BLOCK /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:205 c:0016 p:---- s:0039 b:0039 l:000038 d:000038 FINISH c:0015 p:---- s:0037 b:0037 l:000036 d:000036 CFUNC :each c:0014 p:0012 s:0034 b:0034 l:000033 d:000033 METHOD /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:204 c:0013 p:0098 s:0030 b:0030 l:000029 d:000029 CLASS /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:222 c:0012 p:0021 s:0028 b:0028 l:000027 d:000027 CLASS /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:192 c:0011 p:0009 s:0026 b:0026 l:000025 d:000025 TOP /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:11 c:0010 p:---- s:0024 b:0024 l:000023 d:000023 FINISH c:0009 p:---- s:0022 b:0022 l:000021 d:000021 CFUNC :require c:0008 p:0047 s:0018 b:0018 l:000017 d:000017 TOP /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb.rb:15 c:0007 p:---- s:0016 b:0016 l:000015 d:000015 FINISH c:0006 p:---- s:0014 b:0014 l:000013 d:000013 CFUNC :require c:0005 p:0011 s:0010 b:0010 l:000009 d:000009 TOP /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/xmp.rb:12 c:0004 p:---- s:0008 b:0008 l:000007 d:000007 FINISH c:0003 p:---- s:0006 b:0006 l:000005 d:000005 CFUNC :require c:0002 p:-587640 s:0004 b:0004 l:000003 d:000003 TOP c:0001 p:0000 s:0002 b:0002 l:002634 d:002634 TOP :38964

– Ruby level backtrace  
information-----------------------------------------  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:210:in  
`module_eval' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:210:in `def\_extend\_command’  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:205:in  
`block in install_extend_commands' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:204:in `each’  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:204:in  
`install_extend_commands' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:222:in `module:ContextExtender’  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:192:in  
`<module:IRB>' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/extend-command.rb:11:in `\<top (required)\>’  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb.rb:15:in `require' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb.rb:15:in `\<top (required)\>’  
/Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/xmp.rb:12:in `require' /Users/yugui/local/lib/ruby-1.9.1/1.9.1/irb/xmp.rb:12:in `\<top  
(required)\>’  
ruby-1.9.1:0:in `require’

## – C level backtrace information

0x116522 0 ruby-1.9.1 0x00116522  
rb\_vm\_bugreport + 82  
0x2baec 1 ruby-1.9.1 0x0002baec rb\_warning +  
444  
0x2bb4b 2 ruby-1.9.1 0x0002bb4b rb\_bug + 43  
0xf0841 3 ruby-1.9.1 0x000f0841  
ruby\_iseq\_translate\_threaded\_code + 1345  
0xf38a4 4 ruby-1.9.1 0x000f38a4  
rb\_parse\_in\_main + 6356  
0xfa842 5 ruby-1.9.1 0x000fa842  
ruby\_iseq\_compile + 994  
0xfe15b 6 ruby-1.9.1 0x000fe15b  
ruby\_debug\_breakpoint + 3579  
0xf072e 7 ruby-1.9.1 0x000f072e  
ruby\_iseq\_translate\_threaded\_code + 1070  
0xf86f2 8 ruby-1.9.1 0x000f86f2  
rb\_parse\_in\_main + 26402  
0xf23ad 9 ruby-1.9.1 0x000f23ad  
rb\_parse\_in\_main + 989  
0xfa8dc 10 ruby-1.9.1 0x000fa8dc  
ruby\_iseq\_compile + 1148  
0xfe15b 11 ruby-1.9.1 0x000fe15b  
ruby\_debug\_breakpoint + 3579  
0x1017b7 12 ruby-1.9.1 0x001017b7  
rb\_iseq\_compile\_with\_option + 183  
0x101937 13 ruby-1.9.1 0x00101937  
rb\_iseq\_compile + 39  
0x10ebba 14 ruby-1.9.1 0x0010ebba  
vm\_invoke\_proc + 1562  
0x1123cb 15 ruby-1.9.1 0x001123cb  
rb\_mod\_module\_exec + 283  
0x101d75 16 ruby-1.9.1 0x00101d75  
rb\_iseq\_compile + 1125  
0x10669d 17 ruby-1.9.1 0x0010669d rb\_funcall2

- 1773  
0x108e0b 18 ruby-1.9.1 0x00108e0b rb\_funcall2
- 11867  
0x10e1fb 19 ruby-1.9.1 0x0010e1fb rb\_funcall2
- 33355  
0x1117c6 20 ruby-1.9.1 0x001117c6 rb\_yield +  
486  
0x6452 21 ruby-1.9.1 0x00006452 rb\_ary\_each +  
66  
0x10669d 22 ruby-1.9.1 0x0010669d rb\_funcall2
- 1773  
0x108e0b 23 ruby-1.9.1 0x00108e0b rb\_funcall2
- 11867  
0x10e1fb 24 ruby-1.9.1 0x0010e1fb rb\_funcall2
- 33355  
0x10e538 25 ruby-1.9.1 0x0010e538 rb\_iseq\_eval
- 264  
0x324b9 26 ruby-1.9.1 0x000324b9 rb\_load + 345  
0x32a3a 27 ruby-1.9.1 0x00032a3a  
rb\_require\_safe + 890  
0x10669d 28 ruby-1.9.1 0x0010669d rb\_funcall2
- 1773  
0x108e0b 29 ruby-1.9.1 0x00108e0b rb\_funcall2
- 11867  
0x10e1fb 30 ruby-1.9.1 0x0010e1fb rb\_funcall2
- 33355  
0x10e538 31 ruby-1.9.1 0x0010e538 rb\_iseq\_eval
- 264  
0x324b9 32 ruby-1.9.1 0x000324b9 rb\_load + 345  
0x32a3a 33 ruby-1.9.1 0x00032a3a  
rb\_require\_safe + 890  
0x10669d 34 ruby-1.9.1 0x0010669d rb\_funcall2
- 1773  
0x108e0b 35 ruby-1.9.1 0x00108e0b rb\_funcall2
- 11867  
0x10e1fb 36 ruby-1.9.1 0x0010e1fb rb\_funcall2
- 33355  
0x10e538 37 ruby-1.9.1 0x0010e538 rb\_iseq\_eval
- 264  
0x324b9 38 ruby-1.9.1 0x000324b9 rb\_load + 345  
0x32a3a 39 ruby-1.9.1 0x00032a3a  
rb\_require\_safe + 890  
0x10f3c9 40 ruby-1.9.1 0x0010f3c9 rb\_f\_eval +  
697  
0x1060cb 41 ruby-1.9.1 0x001060cb rb\_funcall2
- 283  
0xb8a42 42 ruby-1.9.1 0x000b8a42  
ruby\_init\_loadpath + 258  
0xbace2 43 ruby-1.9.1 0x000bace2  
ruby\_init\_loadpath + 9122  
0x2f3f9 44 ruby-1.9.1 0x0002f3f9 rb\_ensure +  
121  
0xbaffd 45 ruby-1.9.1 0x000baffd  
ruby\_init\_loadpath + 9917  
0xbb9dc 46 ruby-1.9.1 0x000bb9dc ruby\_set\_argv
- 1420  
0x1059cf 47 ruby-1.9.1 0x001059cf  
rb\_vm\_call\_cfunc + 175  
0xbbf66 48 ruby-1.9.1 0x000bbf66  
ruby\_process\_options + 166  
0x30e5b 49 ruby-1.9.1 0x00030e5b ruby\_options
- 123  
0x1c57 50 ruby-1.9.1 0x00001c57 main + 87  
0x1bc6 51 ruby-1.9.1 0x00001bc6 start + 54

[NOTE]  
You may encounter a bug of Ruby interpreter. Bug reports are welcome.  
For details: [http://www.ruby-lang.org/bugreport.html](http://www.ruby-lang.org/bugreport.html)

---

<div class="post-metadata">

**Author:** ![Yugui\_SYuki\_S.S](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/dec6dc/32.png) [@Yugui\_SYuki\_S.S](https://www.ruby-forum.com/u/Yugui_SYuki_S.S)\
**Post date:** [January 19, 2009, 5:48am UTC](https://www.ruby-forum.com/t/bug-1-9-irb-xmp-with-empty-input-aborts/157980/2 "2009-01-19T05:48:35Z")

</div>

e$B%A%1%C%He(B #1021 e$B$,99?7$5$l$^$7$?!#e(B (by Koichi Sasada)

e$B%9%F!\<%?%9e(B Opene$B$+$ie(BClosede$B$KJQ99e(B  
e$B?JD=e(B % 0e$B$+$ie(B100e$B$KJQ99e(B

## Applied in changeset r21661.

[http://redmine.ruby-lang.org/issues/show/1021](http://redmine.ruby-lang.org/issues/show/1021)
