[Bug c++/36414] New: g++ causes segmentation violation on template test program

kemal dot ebcioglu at acm dot org gcc-bugzilla@gcc.gnu.org
Sun Jun 1 21:31:00 GMT 2008


g++ version 3.4.4 leads to an internal compiler error/segmentation violation
on cygwin/vista with -O option, on the  C++ template test program
testBug2.cpp (to be attached to be message).



Output of

g++ -v -save-temps -O testBug2.cpp

is shown below:
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with: /usr/build/package/orig/test.respin/gcc-3.4.4-3/configure
--verbose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib
--libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info
--enable-languages=c,ada,c++,d,f77,pascal,java,objc --enable-nls
--without-included-gettext --enable-version-specific-runtime-libs --without-x
--enable-libgcj --disable-java-awt --with-system-zlib --enable-interpreter
--disable-libgcj-debug --enable-threads=posix --enable-java-gc=boehm
--disable-win32-registry --enable-sjlj-exceptions --enable-hash-synchronization
--enable-libstdcxx-debug
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1plus.exe -E -quiet -v -D__CYGWIN32__
-D__CYGWIN__ -Dunix -D__unix__ -D__unix -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api -idirafter
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api
testBug2.cpp -mtune=pentiumpro -O -o testBug2.ii
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory
"/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/include"
ignoring duplicate directory
"/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32api"
#include "..." search starts here:
#include <...> search starts here:
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/i686-pc-cygwin
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/backward
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include
 /usr/include
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api
End of search list.
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1plus.exe -fpreprocessed testBug2.ii
-quiet -dumpbase testBug2.cpp -mtune=pentiumpro -auxbase testBug2 -O -version
-o testBug2.s
GNU C++ version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
(i686-pc-cygwin)
        compiled by GNU C version 3.4.4 (cygming special, gdc 0.12, using dmd
0.125).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
testBug2.cpp: In member function `Iter<S, T, advnc, retrv> Iter<S, T, advnc,
retrv>::operator++() [with S = Test, T = char, int (*advnc)(int, S*) =
Test::advance, T (*retrv)(int, S*) = Test::retrieve]':
testBug2.cpp:144:   instantiated from here
testBug2.cpp:56: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://cygwin.com/problems.html> for instructions.

By the way,

g++ testBug2.cpp

works. The error apparently only occurs with the -O option.

The attached program testBug2.cpp is self-contained and does not need include
files.


-- 
           Summary: g++ causes segmentation violation on template test
                    program
           Product: gcc
           Version: 3.4.4
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: kemal dot ebcioglu at acm dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36414



More information about the Gcc-bugs mailing list