From: foo bar Date: 2012-01-27T17:29:02+09:00 Subject: [ruby-core:42244] [Backport93 - Backport #5938][Open] irb crashes on 2nd level tab complete if Module#name returns regexp Issue #5938 has been reported by foo bar. ---------------------------------------- Backport #5938: irb crashes on 2nd level tab complete if Module#name returns regexp https://bugs.ruby-lang.org/issues/5938 Author: foo bar Status: Open Priority: Normal Assignee: Category: Target version: >ruby -v ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux] Copy this into irb and press tab :) module Foo def self.name /foo/ end end [1].first. In irb/completion.rb line 177: name = m.name (where m is the module) later /some|stuff/ =~ name If name is a regexp, boom. Probably name = m.name should be name = m.name.to_s Since if that causes an exception it is already handled and name is set to "" or it will be harmlessly converted to a string. Or the next if condition should also have a being/rescue around it. -- http://bugs.ruby-lang.org/