Hi,

2011/10/17 Luis Lavena <luislavena / gmail.com>

> On Mon, Oct 17, 2011 at 11:59 AM, Heesob Park <phasis / gmail.com> wrote:
> >
> > Issue #5407 has been updated by Heesob Park.
> >
> >
> > After some trial and error, it turns out this bug is GCC 4.6.1
> optimization flag issue.
> >
> > According to the document of gcc 4.6.1(
> http://gcc.gnu.org/onlinedocs/gcc-4.6.1/gcc/Optimize-Options.html#index-fomit_002dframe_002dpointer-691
> ):
> > "Starting with GCC version 4.6, the default setting (when not optimizing
> for size) for 32-bit Linux x86 and 32-bit Darwin x86 targets has been
> changed to -fomit-frame-pointer. The default can be reverted to
> -fno-omit-frame-pointer by configuring GCC with the --enable-frame-pointer
> configure option."
> >
> > The work around is adding -fno-omit-frame-pointer flag like this:
> > make optflags='-O3 -fno-omit-frame-pointer'
> >
> > I think this also applies to the Bug #5375.
>
> Thank you Heesob, what is interesting is that this do not happen on trunk.
>
> Perhaps there is something else we are missing?
>

I tried to build trunk on Windows XP with gcc-4.6.1 and it failed to build
too.
Here is the log

c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:108: [BUG] Segmentation fault
ruby 1.9.4dev (2011-10-14 trunk 33469) [i386-mingw32]

-- Control frame information -----------------------------------------------
c:0030 p:---- s:0216 b:0216 l:000215 d:000215 CFUNC  :==
c:0029 p:---- s:0214 b:0214 l:000213 d:000213 CFUNC  :delete
c:0028 p:0015 s:0210 b:0210 l:000209 d:000209 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby_tools.rb:108
c:0027 p:0030 s:0206 b:0205 l:000204 d:000204 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby_tools.rb:142
c:0026 p:0085 s:0201 b:0201 l:000200 d:000200 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:996
c:0025 p:0777 s:0186 b:0186 l:000185 d:000185 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1323
c:0024 p:0680 s:0173 b:0173 l:000172 d:000172 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:655
c:0023 p:0711 s:0156 b:0156 l:000155 d:000155 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1313
c:0022 p:0187 s:0143 b:0143 l:000136 d:000142 BLOCK
 c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1118
c:0021 p:0019 s:0141 b:0141 l:000140 d:000140 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby_tools.rb:140
c:0020 p:0277 s:0137 b:0137 l:000136 d:000136 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1095
c:0019 p:0777 s:0122 b:0122 l:000121 d:000121 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1323
c:0018 p:0117 s:0109 b:0109 l:000108 d:000108 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1225
c:0017 p:0744 s:0099 b:0099 l:000098 d:000098 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1317
c:0016 p:0414 s:0086 b:0086 l:000085 d:000085 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:626
c:0015 p:0711 s:0069 b:0069 l:000068 d:000068 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1313
c:0014 p:0081 s:0056 b:0056 l:000055 d:000055 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1505
c:0013 p:0014 s:0051 b:0051 l:000039 d:000050 BLOCK
 c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1660
c:0012 p:---- s:0046 b:0046 l:000045 d:000045 FINISH
c:0011 p:---- s:0044 b:0044 l:000043 d:000043 CFUNC  :catch
c:0010 p:0023 s:0040 b:0040 l:000039 d:000039 METHOD
c:/work/snapshot/lib/rdoc/p
arser/ruby.rb:1658
c:0009 p:0164 s:0037 b:0037 l:000036 d:000036 METHOD
c:/work/snapshot/lib/rdoc/r
doc.rb:334
c:0008 p:0020 s:0028 b:0028 l:000019 d:000027 BLOCK
 c:/work/snapshot/lib/rdoc/r
doc.rb:379
c:0007 p:---- s:0025 b:0025 l:000024 d:000024 FINISH
c:0006 p:---- s:0023 b:0023 l:000022 d:000022 CFUNC  :map
c:0005 p:0095 s:0020 b:0020 l:000019 d:000019 METHOD
c:/work/snapshot/lib/rdoc/r
doc.rb:377
c:0004 p:0222 s:0014 b:0014 l:000013 d:000013 METHOD
c:/work/snapshot/lib/rdoc/r
doc.rb:434
c:0003 p:0067 s:0008 b:0008 l:001d84 d:001104 EVAL   ./bin/rdoc:22
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001d84 d:001d84 TOP

-- Ruby level backtrace information ----------------------------------------
./bin/rdoc:22:in `<main>'
c:/work/snapshot/lib/rdoc/rdoc.rb:434:in `document'
c:/work/snapshot/lib/rdoc/rdoc.rb:377:in `parse_files'
c:/work/snapshot/lib/rdoc/rdoc.rb:377:in `map'
c:/work/snapshot/lib/rdoc/rdoc.rb:379:in `block in parse_files'
c:/work/snapshot/lib/rdoc/rdoc.rb:334:in `parse_file'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1658:in `scan'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1658:in `catch'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1660:in `block in scan'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1505:in
`parse_top_level_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1313:in `parse_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:626:in `parse_class'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1317:in `parse_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1225:in `parse_module'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1323:in `parse_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1095:in `parse_method'
c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:140:in `token_listener'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1118:in `block in parse_method'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1313:in `parse_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:655:in `parse_class'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:1323:in `parse_statements'
c:/work/snapshot/lib/rdoc/parser/ruby.rb:996:in `parse_method'
c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:142:in `token_listener'
c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:108:in
`remove_token_listener'
c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:108:in `delete'
c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb:108:in `=='

-- C level backtrace information -------------------------------------------
F:\WINDOWS\system32\ntdll.dll(KiFastSystemCallRet+0x0) [0x7c93e514]
F:\WINDOWS\system32\kernel32.dll(WaitForSingleObject+0x12) [0x7c7d2542]

-- Other runtime information -----------------------------------------------

* Loaded script: ./bin/rdoc

* Loaded features:

    0 enumerator.so
    1 c:/work/snapshot/.ext/i386-mingw32/enc/encdb.so
    2 c:/work/snapshot/.ext/i386-mingw32/enc/cp949.so
    3 c:/work/snapshot/.ext/i386-mingw32/enc/trans/transdb.so
    4 c:/work/snapshot/lib/rdoc.rb
    5 c:/work/snapshot/lib/rdoc/encoding.rb
    6 c:/work/snapshot/.ext/i386-mingw32/strscan.so
    7 c:/work/snapshot/lib/rdoc/text.rb
    8 c:/work/snapshot/lib/rdoc/code_object.rb
    9 c:/work/snapshot/lib/rdoc/context.rb
   10 c:/work/snapshot/lib/rdoc/top_level.rb
   11 c:/work/snapshot/lib/rdoc/class_module.rb
   12 c:/work/snapshot/lib/rdoc/normal_class.rb
   13 c:/work/snapshot/lib/rdoc/normal_module.rb
   14 c:/work/snapshot/lib/rdoc/anon_class.rb
   15 c:/work/snapshot/lib/rdoc/single_class.rb
   16 c:/work/snapshot/lib/rdoc/method_attr.rb
   17 c:/work/snapshot/lib/rdoc/token_stream.rb
   18 c:/work/snapshot/lib/rdoc/any_method.rb
   19 c:/work/snapshot/lib/rdoc/alias.rb
   20 c:/work/snapshot/lib/rdoc/ghost_method.rb
   21 c:/work/snapshot/lib/rdoc/meta_method.rb
   22 c:/work/snapshot/lib/rdoc/attr.rb
   23 c:/work/snapshot/lib/rdoc/constant.rb
   24 c:/work/snapshot/lib/rdoc/require.rb
   25 c:/work/snapshot/lib/rdoc/include.rb
   26 c:/work/snapshot/lib/rdoc/code_objects.rb
   27 c:/work/snapshot/lib/rdoc/markup/blank_line.rb
   28 c:/work/snapshot/lib/rdoc/markup/document.rb
   29 c:/work/snapshot/lib/rdoc/markup/heading.rb
   30 c:/work/snapshot/lib/rdoc/markup/list.rb
   31 c:/work/snapshot/lib/rdoc/markup/list_item.rb
   32 c:/work/snapshot/lib/rdoc/markup/raw.rb
   33 c:/work/snapshot/lib/rdoc/markup/paragraph.rb
   34 c:/work/snapshot/lib/rdoc/markup/indented_paragraph.rb
   35 c:/work/snapshot/lib/rdoc/markup/rule.rb
   36 c:/work/snapshot/lib/rdoc/markup/verbatim.rb
   37 c:/work/snapshot/lib/rdoc/markup/parser.rb
   38 c:/work/snapshot/lib/rdoc/markup/attribute_manager.rb
   39 c:/work/snapshot/lib/rdoc/markup/inline.rb
   40 c:/work/snapshot/lib/rdoc/markup.rb
   41 c:/work/snapshot/lib/rdoc/markup/pre_process.rb
   42 c:/work/snapshot/lib/rdoc/stats.rb
   43 c:/work/snapshot/lib/rdoc/parser/simple.rb
   44 c:/work/snapshot/lib/rdoc/parser.rb
   45 c:/work/snapshot/lib/rdoc/ruby_token.rb
   46 c:/work/snapshot/lib/e2mmap.rb
   47 c:/work/snapshot/lib/irb/output-method.rb
   48 c:/work/snapshot/lib/irb/notifier.rb
   49 c:/work/snapshot/lib/irb/slex.rb
   50 c:/work/snapshot/.ext/i386-mingw32/stringio.so
   51 c:/work/snapshot/lib/rdoc/ruby_lex.rb
   52 c:/work/snapshot/lib/rdoc/parser/ruby_tools.rb
   53 c:/work/snapshot/lib/rdoc/parser/ruby.rb
   54 c:/work/snapshot/lib/rdoc/known_classes.rb
   55 c:/work/snapshot/lib/rdoc/parser/c.rb
   56 c:/work/snapshot/lib/optparse.rb
   57 c:/work/snapshot/.ext/i386-mingw32/etc.so
   58 c:/work/snapshot/lib/fileutils.rb
   59 c:/work/snapshot/lib/rdoc/ri/store.rb
   60 c:/work/snapshot/lib/rdoc/ri.rb
   61 c:/work/snapshot/rbconfig.rb
   62 c:/work/snapshot/lib/rdoc/ri/paths.rb
   63 c:/work/snapshot/lib/rdoc/options.rb
   64 c:/work/snapshot/lib/find.rb
   65 c:/work/snapshot/.ext/i386-mingw32/date_core.so
   66 c:/work/snapshot/.ext/common/date/format.rb
   67 c:/work/snapshot/.ext/common/date.rb
   68 c:/work/snapshot/lib/time.rb
   69 c:/work/snapshot/rubygems.rb
   70 c:/work/snapshot/.ext/i386-mingw32/pathname.so
   71 c:/work/snapshot/.ext/common/pathname.rb
   72 c:/work/snapshot/lib/erb.rb
   73 c:/work/snapshot/lib/rdoc/erbio.rb
   74 c:/work/snapshot/lib/rdoc/generator.rb
   75 c:/work/snapshot/lib/rdoc/markup/formatter.rb
   76 c:/work/snapshot/lib/cgi/core.rb
   77 c:/work/snapshot/lib/cgi/cookie.rb
   78 c:/work/snapshot/lib/cgi/util.rb
   79 c:/work/snapshot/lib/cgi.rb
   80 c:/work/snapshot/lib/rdoc/markup/to_html.rb
   81 c:/work/snapshot/lib/rdoc/cross_reference.rb
   82 c:/work/snapshot/lib/rdoc/markup/to_html_crossref.rb
   83 c:/work/snapshot/lib/rdoc/generator/markup.rb
   84 c:/work/snapshot/lib/rdoc/generator/darkfish.rb
   85 c:/work/snapshot/lib/rdoc/generator/ri.rb
   86 c:/work/snapshot/lib/rdoc/rdoc.rb
   87 c:/work/snapshot/lib/rdoc/stats/quiet.rb
   88 c:/work/snapshot/lib/rdoc/stats/normal.rb
   89 c:/work/snapshot/.ext/i386-mingw32/enc/utf_16le.so
   90 c:/work/snapshot/.ext/i386-mingw32/enc/trans/single_byte.so
   91 c:/work/snapshot/.ext/i386-mingw32/enc/trans/utf_16_32.so

[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


This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.
make: *** [rdoc] Error 3


Regards,
Park Heesob