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/