http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50351
Bug #: 50351 Summary: An internal compiler error when building gcc4.6 using "-flto -fuse-linker-plugin" on Win7 mingw64 target Classification: Unclassified Product: gcc Version: 4.6.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassig...@gcc.gnu.org ReportedBy: xunxun1...@gmail.com Host: *-*-mingw* Target: *-*-mingw* Build: *-*-mingw* Hi, all When I use mingw64 gcc build gcc4.6.2 20110909 using "-flto -fuse-linker-plugin", an internal compiler error came out: ---------------------------------------------------------------------------------------------------------- i686-w64-mingw32-gcc -pipe -g0 -O2 -fomit-frame-pointer -finline-functions -minline-all-stringops -flto -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -Wl,-O1 -Wl,--as-needed -s -Wl,--large-address-aware -flto -fuse-linker-plugin -o cc1.exe c-lang.o c-family/stub-objc.o attribs.o c-errors.o c-decl.o c-typeck.o c-convert.o c-aux-info.o c-objc-common.o c-parser.o tree-mudflap.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o i386-c.o msformat-c.o \ cc1-checksum.o main.o libbackend.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a ../libcpp/libcpp.a /mingw/lib/libiconv.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -lstdc++ -lcloog-isl -lisl -lppl_c -lppl -lgmpxx -lmpc -lmpfr -lgmp -lstdc++ -lz In file included from :1011:0: source/isl/constraints.c: In function 'cloog_constraint_set_defining_inequalities': isl_constraint.c:170:15: warning: 'l' may be used uninitialized in this function [-Wuninitialized] source/isl/constraints.c:154:25: note: 'l' was declared here isl_constraint.c:166:9: warning: 'u' may be used uninitialized in this function [-Wuninitialized] source/isl/constraints.c:153:25: note: 'u' was declared here In file included from ../.././gcc/c-decl.c:6139:0, from ../.././gcc/c-decl.c:489, from :5284: ../.././libcpp/lex.c: In function 'search_line_sse2': ../.././libcpp/lex.c:370:15: internal compiler error: in convert_move, at expr.c:326 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. lto-wrapper: e:\MyPack\MinGW\bin\i686-w64-mingw32-gcc.exe returned 1 exit status e:/mypack/mingw/bin/../lib/gcc/i686-w64-mingw32/4.6.2/../../../../i686-w64-mingw32/bin/ld.exe: lto-wrapper failed collect2: ld returned 1 exit status make[2]: *** [cc1.exe] Error 1 make[2]: Leaving directory `/e/new/gcc/gcc4.6/build/host-i686-w64-mingw32/gcc' make[1]: *** [all-gcc] Error 2 make[1]: Leaving directory `/e/new/gcc/gcc4.6/build' make: *** [all] Error 2 ------------------------------------------------------------------------------------------------------------------------------------------- my gcc is configured as: ------------------------------------------------------------------------------------------------------------------------------------------- Target: i686-w64-mingw32 Configured with: ./configure --prefix=/mingw --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --with-lto-plugin --with-host-libstdcxx=-lstdc++ --disable-bootstrap --disable-werror --with-arch=i686 --with-tune=generic --enable-languages=c,c++,fortran --enable-libgomp --enable-threads=posix --enable-lto --with-system-zlib --enable-libstdcxx-debug --enable-version-specific-runtime-libs --enable-fully-dynamic-string --disable-sjlj-exceptions --with-dwarf2 --disable-symvers --enable-checking=release --enable-cloog-backend=isl --enable-static --disable-shared --enable-cxx-flags='-fno-function-sections -fno-data-sections' --enable-libquadmath-support --enable-libquadmath --disable-multilib --disable-nls --disable-win32-registry ------------------------------------------------------------------------------------------------------------------------------------------- my binutils edition is : 2.21.53.20110910 Is this the LTO bug in gcc4.6 or ld bug? The error seems like PR45475, but PR45475 don't use LTO. Thanks.