From: nagachika00@... Date: 2014-02-15T14:57:30+00:00 Subject: [ruby-core:60762] [ruby-trunk - Bug #8756] SEGFAULT caused by `p Struct.new(:q?).instance_methods` Issue #8756 has been updated by Tomoyuki Chikanaga. Additionally r44926 was backported ruby_2_0_0 at r44975. ---------------------------------------- Bug #8756: SEGFAULT caused by `p Struct.new(:q?).instance_methods` https://bugs.ruby-lang.org/issues/8756#change-45179 * Author: Trent Ogren * Status: Closed * Priority: Normal * Assignee: Masaki Matsushita * Category: core * Target version: * ruby -v: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.4.0] * Backport: 1.9.3: DONTNEED, 2.0.0: DONE ---------------------------------------- Printing the instance methods for a Struct with a member name ending in a question mark causes a seg fault. I've confirmed this using the 2.0.0p247 on OS X and linux. Here's the minimal test case for reproducing from a shell: $ ruby -e 'p Struct.new(:q?).instance_methods' -e:1: [BUG] Segmentation fault ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin12.4.0] -- Crash Report log information -------------------------------------------- See Crash Report log file under the one of following: * ~/Library/Logs/CrashReporter * /Library/Logs/CrashReporter * ~/Library/Logs/DiagnosticReports * /Library/Logs/DiagnosticReports the more detail of. -- Control frame information ----------------------------------------------- c:0005 p:---- s:0012 e:000011 CFUNC :inspect c:0004 p:---- s:0010 e:000009 CFUNC :inspect c:0003 p:---- s:0008 e:000007 CFUNC :p c:0002 p:0018 s:0004 E:0014b8 EVAL -e:1 [FINISH] c:0001 p:0000 s:0002 E:000768 TOP [FINISH] -e:1:in `<main>' -e:1:in `p' -e:1:in `inspect' -e:1:in `inspect' -- C level backtrace information ------------------------------------------- -- Other runtime information ----------------------------------------------- * Loaded script: -e * Loaded features: 0 enumerator.so 1 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.4.0/enc/encdb.bundle 2 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.4.0/enc/trans/transdb.bundle 3 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/x86_64-darwin12.4.0/rbconfig.rb 4 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/compatibility.rb 5 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/defaults.rb 6 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/deprecate.rb 7 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/errors.rb 8 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/version.rb 9 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/requirement.rb 10 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/platform.rb 11 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/specification.rb 12 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/exceptions.rb 13 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/core_ext/kernel_gem.rb 14 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb 15 ~/.rbenv/versions/2.0.0-p247/lib/ruby/2.0.0/rubygems.rb [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 Abort trap: 6 -- http://bugs.ruby-lang.org/