[Bug lto/58528] lto1: internal compiler error: in build_abbrev_table, at dwarf2out.c:7478
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Sep 26 11:30:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58528
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
The approach documented only works for ICEs at WPA time. For ICEs
at LTRANS time you'd have to continue after WPA by instead of lto1
invoking the driver with the linker command.
Thus, bisect the object files and libraries in
/usr/bin/g++ -O2 -g -DNDEBUG -static-libstdc++ -flto -O2
CMakeFiles/Fix_Engine_Detail_ut.dir/Message_Index_ut.cpp.o
CMakeFiles/Fix_Engine_Detail_ut.dir/Message_Log_ut.cpp.o
CMakeFiles/Fix_Engine_Detail_ut.dir/Sequential_Message_Log_ut.cpp.o -o
Fix_Engine_Detail_ut -rdynamic ../../libfix_engine.a
../../../middleware/libmiddleware.a /usr/local/gtest/gtest/lib/libgtest.a
../../../test/gtest/libtheme-gtest.a ../../../test/libtheme-test.a
/usr/local/boost/boost_1_54_0/lib/libboost_filesystem.a
/usr/local/boost/boost_1_54_0/lib/libboost_program_options.a
/usr/local/boost/boost_1_54_0/lib/libboost_random.a
/usr/local/boost/boost_1_54_0/lib/libboost_regex.a
/usr/local/boost/boost_1_54_0/lib/libboost_serialization.a
/usr/local/boost/boost_1_54_0/lib/libboost_system.a -lrt -lpthread
../../../attributes/libattributes.a ../../../msgs/libmessages.a
/usr/local/lib/libzmq.a -Wl,--whole-archive -Wl,-Bstatic -libverbs -lmlx4
-Wl,-Bdynamic -Wl,--no-whole-archive -Wl,-Bstatic -libmad -libumad
-Wl,-Bdynamic -ldl ../../../json/libjsoncpp.a ../../../libtheme.a
/usr/local/boost/boost_1_54_0/lib/libboost_filesystem.a
/usr/local/boost/boost_1_54_0/lib/libboost_program_options.a
/usr/local/boost/boost_1_54_0/lib/libboost_system.a -lrt -lpthread
adding -r -nostdlib to it (that is, drop as many objects from it as possible).
If the failure also persists with -flto-partition=1to1 then this reduction
will be much more deterministic.
For the remaining object files and libraries try to build up a compile-and-link
commandline substituting sources for objects and provide preprocessed
source for them.
Hopefully the process ends up in one (unlikely) to three source files needed.
More information about the Gcc-bugs
mailing list