From: "mame (Yusuke Endoh)" Date: 2012-04-23T19:34:20+09:00 Subject: [ruby-core:44542] [ruby-trunk - Bug #6333] Ruby 1.9.3 (P0, P125,P194) Segmentation fault when compiled with GCC 4.7.0 Issue #6333 has been updated by mame (Yusuke Endoh). File gcc470-on-win.patch added Assignee changed from luislavena (Luis Lavena) to usa (Usaku NAKAMURA) Hello, phasis68 (Heesob Park) wrote: > And I found the main reason is invalid szInternalCmds array initialization on GCC 4.7.0. Good catch! Could you please test the patch attached? -- Yusuke Endoh ---------------------------------------- Bug #6333: Ruby 1.9.3 (P0, P125,P194) Segmentation fault when compiled with GCC 4.7.0 https://bugs.ruby-lang.org/issues/6333#change-26092 Author: raylinn@gmail.com (ray linn) Status: Assigned Priority: Normal Assignee: usa (Usaku NAKAMURA) Category: Target version: ruby -v: ruby 1.9.3p194 (2012-04-20) [x64-mingw32] Compiled Ruby 1.9.3 with GCC 4.7.0 (MinGW64) , when miniruby.exe execute ./win32/mkexports.rb, Segmentation fault occurs, the error message is as following: CC = gcc LD = ld LDSHARED = gcc -shared CFLAGS = -Ofast -I/usr/local/include XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hi dden -DRUBY_EXPORT CPPFLAGS = -I/usr/local/icnlude -Ofast -I. -I.ext/include/x64-mingw32 -I./include -I. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-i mplib=libx64-msvcrt-ruby191.dll.a x64-msvcrt-ruby191.def SOLIBS = x64-msvcrt-ruby191.res.o -lshell32 -lws2_32 -limagehlp generating x64-msvcrt-ruby191.def ./win32/mkexports.rb:143: [BUG] Segmentation fault ruby 1.9.3p194 (2012-04-20) [x64-mingw32] -- Control frame information ----------------------------------------------- c:td p:---- s:td b:td l:td d:td CFUNC :foreach c:td p:td s:td b:td l:td d:td METHOD ./win32/mkexports.rb:143 c:td p:td s:td b:td l:td d:td METHOD ./win32/mkexports.rb:85 c:td p:td s:td b:td l:tx d:tx METHOD ./win32/mkexports.rb:150 c:td p:td s:td b:td l:td d:td METHOD ./win32/mkexports.rb:159 c:td p:td s:td b:td l:tx d:tx METHOD ./win32/mkexports.rb:40 c:td p:---- s:td b:td l:td d:td FINISH c:td p:---- s:td b:td l:td d:td CFUNC :new c:td p:td s:td b:td l:td d:td METHOD ./win32/mkexports.rb:21 c:td p:td s:td b:td l:td d:td METHOD ./win32/mkexports.rb:25 c:td p:td s:td b:td l:tx d:td BLOCK ./win32/mkexports.rb:166 c:td p:---- s:td b:td l:td d:td FINISH c:td p:td s:td b:td l:tx d:tx TOP -- Ruby level backtrace information ---------------------------------------- ./win32/mkexports.rb:166:in `block in
' ./win32/mkexports.rb:25:in `extract' ./win32/mkexports.rb:21:in `create' ./win32/mkexports.rb:21:in `new' ./win32/mkexports.rb:40:in `initialize' ./win32/mkexports.rb:159:in `each_export' ./win32/mkexports.rb:150:in `each_export' ./win32/mkexports.rb:85:in `objdump' ./win32/mkexports.rb:143:in `each_line' ./win32/mkexports.rb:143:in `foreach' -- C level backtrace information ------------------------------------------- C:\windows\SYSTEM32\ntdll.dll(NtWaitForSingleObject+0xa) [0x0000000077B3135A] C:\windows\system32\KERNELBASE.dll(WaitForSingleObjectEx+0x9c) [0x000007FEFE0310 DC] [0x000000000056A574] [0x000000000043FAEB] [0x0000000000440996] [0x00000000004F7BA4] [0x0000000000587275] C:\windows\SYSTEM32\ntdll.dll(_C_specific_handler+0x9c) [0x0000000077AF85A8] C:\windows\SYSTEM32\ntdll.dll(RtlDecodePointer+0xbd) [0x0000000077B09D0D] C:\windows\SYSTEM32\ntdll.dll(RtlUnwindEx+0xbbf) [0x0000000077AF91AF] C:\windows\SYSTEM32\ntdll.dll(KiUserExceptionDispatcher+0x2e) [0x0000000077B3127 8] C:\windows\system32\msvcrt.dll(strcmp+0x43) [0x000007FEFE905963] C:\windows\system32\msvcrt.dll(bsearch+0x89) [0x000007FEFE8F47D9] [0x000000000057E52B] [0x0000000000477E3D] [0x0000000000478401] [0x0000000000478673] [0x0000000000478A55] [0x0000000000478F43] [0x0000000000565ACC] [0x000000000055DA6A] [0x0000000000560B05] [0x0000000000561CDE] [0x0000000000562EEA] [0x0000000000496CF4] [0x0000000000565ACC] [0x000000000055DA6A] [0x0000000000560B05] [0x0000000000561827] [0x000000000044D5A0] [0x00000000004470CE] [0x0000000000447188] [0x0000000000447557] [0x000000000044794B] [0x000000000058B6B7] [0x00000000004013C9] [0x00000000004014E8] C:\windows\system32\kernel32.dll(BaseThreadInitThunk+0xd) [0x000000007788652D] -- Other runtime information ----------------------------------------------- * Loaded script: ./win32/mkexports.rb * Loaded features: 0 enumerator.so 1 C:/msys/1.0/home/beta/ruby-1.9.3-p194/rbconfig.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 This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. make: *** [x64-msvcrt-ruby191.def] Error 3 just make clean, and roll back the GCC to 4.6.3, recompile (just type make, no reconfiguration), then everything is ok. change Ofast to O2, issue is still, and try P0, P125, P194, issue is the same. -- http://bugs.ruby-lang.org/