# Irb: Segmentation fault

**URL:** <https://www.ruby-forum.com/t/irb-segmentation-fault/101114>\
**Category:** Ruby\
**Created:** [August 3, 2006, 1:02pm UTC](https://www.ruby-forum.com/t/irb-segmentation-fault/101114 "2006-08-03T13:02:59Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![elgato](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/b487fb/32.png) [@elgato](https://www.ruby-forum.com/u/elgato)\
**Post date:** [August 3, 2006, 1:02pm UTC](https://www.ruby-forum.com/t/irb-segmentation-fault/101114/1 "2006-08-03T13:02:59Z")

</div>

Hello folks,

in the following two cases irb fails (I’ve removed spaces from the  
=~/^irb/ lines to prevent line breaks):

$ irb  
irb(main):001:0\>“ahoj”.split(//).join(’|’)  
=\> “a|h|o|j”  
irb(main):002:0\>“ahoj”.split(/(?\<=(?![Cc][Hh]).)/).join(’|’)  
SyntaxError: compile error  
(irb):2: undefined (?..) sequence: /(?\<=(?![Cc][Hh]).)/  
from (irb):2  
irb(main):003:0\>“ahoj”.split(/(?!ch)/).join(’|’)  
=\> “a|h|o|j”  
irb(main):004:0\>“achoj”.split(/(?!ch)/).join(’|’)  
=\> “ac|h|o|j”  
irb(main):005:0\>“achoj”.gsub(/([Cc])([Hh])/,’$1\_$2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|$|1|_|$|2|o|j"  
irb(main):006:0\>“achoj”.gsub(/([Cc])([Hh])/,’\1\_\2’).split(/(?!\_[Hh])/).join(’|’)  
/usr/lib/ruby/1.8/irb/ruby-lex.rb:979: [BUG] Segmentation fault  
ruby 1.8.2 (2005-04-11) [i386-linux]

Neúspì¹nì ukonèen (SIGABRT)  
$

$ irb  
irb(main):001:0\>“ahoj”.split(//).join(’|’)  
=\> “a|h|o|j”  
irb(main):002:0\>“ahoj”.split(/(?\<=(?![Cc][Hh]).)/).join(’|’)  
SyntaxError: compile error  
(irb):2: undefined (?..) sequence: /(?\<=(?![Cc][Hh]).)/  
from (irb):2  
irb(main):003:0\>“ahoj”.split(/(?!ch)/).join(’|’)  
=\> “a|h|o|j”  
irb(main):004:0\>“achoj”.gsub(/([Cc])([Hh])/,’$1\_$2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|$|1|_|$|2|o|j"  
irb(main):005:0\>“achoj”.gsub(/([Cc])([Hh])/,’\1\_\2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|c_|h|o|j"  
/usr/lib/ruby/1.8/irb.rb:265: [BUG] Segmentation fault  
ruby 1.8.2 (2005-04-11) [i386-linux]

Neúspì¹nì ukonèen (SIGABRT)  
$

[“Neúspì¹nì ukonèen” is perhaps some Czech translation of SIGABRT]

If I repeat it exactly as shown, irb fails. I’ve tried to skip some  
statements, but only the fourth could be skipped to get Segmentation  
fault — and even in this case the error message differed (and return  
value was got compared to the first case). Skipping whichever else does  
not lead to failure. I haven’t tried simplifying of the statements too  
much (only a bit, but unsuccessfully with respect to retain the irb  
failure).

Please, could someone test it with current version of ruby/irb?

Where should one post such bugreports?

Regards,

P.

---

<div class="post-metadata">

**Author:** ![elgato](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/e/b487fb/32.png) [@elgato](https://www.ruby-forum.com/u/elgato)\
**Post date:** [August 3, 2006, 1:04pm UTC](https://www.ruby-forum.com/t/irb-segmentation-fault/101114/2 "2006-08-03T13:04:44Z")

</div>

Pavel S. wrote:

> (irb):2: undefined (?..) sequence: /(?\<=(?![Cc][Hh]).)/  
> /usr/lib/ruby/1.8/irb/ruby-lex.rb:979: [BUG] Segmentation fault  
> ruby 1.8.2 (2005-04-11) [i386-linux]
> 
> Neúspì¹nì ukonèen (SIGABRT)  
> $

Works for me:

$ irb -v  
irb 0.9(02/07/03)  
$ ruby -v  
ruby 1.8.2 (2004-12-25) [i586-linux-gnu]  
$ irb  
irb(main):001:0\> “ahoj”.split(//).join(’|’)  
=\> “a|h|o|j”  
irb(main):002:0\> “ahoj”.split(/(?\<=(?![Cc][Hh]).)/).join(’|’)  
SyntaxError: compile error  
(irb):2: undefined (?..) sequence: /(?\<=(?![Cc][Hh]).)/  
from (irb):2  
irb(main):003:0\> “ahoj”.split(/(?!ch)/).join(’|’)  
=\> “a|h|o|j”  
irb(main):004:0\> “achoj”.split(/(?!ch)/).join(’|’)  
=\> “ac|h|o|j”  
irb(main):005:0\>  
“achoj”.gsub(/([Cc])([Hh])/,’$1\_$2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|$|1|_|$|2|o|j"  
irb(main):006:0\>  
“achoj”.gsub(/([Cc])([Hh])/,’\1\_\2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|c_|h|o|j"  
irb(main):007:0\> quit

> =\> "a|$|1|_|$|2|o|j"  
> irb(main):005:0\>“achoj”.gsub(/([Cc])([Hh])/,’\1_\2’).split(/(?!\_[Hh])/).join(’|’)
> 
> =\> “a|c\_|h|o|j”  
> /usr/lib/ruby/1.8/irb.rb:265: [BUG] Segmentation fault  
> ruby 1.8.2 (2005-04-11) [i386-linux]
> 
> Neúspì¹nì ukonèen (SIGABRT)  
> $

Works for me:  
$ irb  
irb(main):001:0\> “ahoj”.split(//).join(’|’)  
=\> “a|h|o|j”  
irb(main):002:0\> “ahoj”.split(/(?\<=(?![Cc][Hh]).)/).join(’|’)  
SyntaxError: compile error  
(irb):2: undefined (?..) sequence: /(?\<=(?![Cc][Hh]).)/  
from (irb):2  
irb(main):003:0\> “ahoj”.split(/(?!ch)/).join(’|’)  
=\> “a|h|o|j”  
irb(main):004:0\>  
“achoj”.gsub(/([Cc])([Hh])/,’$1\_$2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|$|1|_|$|2|o|j"  
irb(main):005:0\>  
“achoj”.gsub(/([Cc])([Hh])/,’\1\_\2’).split(/(?!_[Hh])/).join(’|’)  
=\> "a|c_|h|o|j"  
irb(main):006:0\>

> Please, could someone test it with current version of ruby/irb?
> 
> Where should one post such bugreports?
> 
> Regards,
> 
> P.

Maybe you just need a slightly newer version?

-Justin
