http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54856
Bug #: 54856 Summary: Corrupted LTO type merging Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassig...@gcc.gnu.org ReportedBy: hubi...@gcc.gnu.org Created attachment 28385 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28385 patch to trigger the ice Hi, with the patch attached that adds double check that when types are equivalent their argument types are equivalent, too. The GCC fails to compile sqlite: jan@linux-e0ml:~/trunk/build/gcc> ./xgcc -B ./ -flto=24 -r -nostdlib -fno-fat-lto-objects -fPIC -pedantic -fno-strict-aliasing -ffunction-sections -fdata-sections -pthread -O3 -fomit-frame-pointer sqlite3.i /abuild/jh/mozilla-central2/mozilla-central/db/sqlite3/src/sqlite3.c:819:16: warning: ISO C90 does not support ‘long long’ [-Wlong-long] /abuild/jh/mozilla-central2/mozilla-central/db/sqlite3/src/sqlite3.c:820:26: warning: ISO C90 does not support ‘long long’ [-Wlong-long] ^A^Plto1: internal compiler error: in uniquify_nodes, at lto/lto.c:1971 0x51a5ac uniquify_nodes ../../gcc/lto/lto.c:1970 0x51ac0b lto_read_decls ../../gcc/lto/lto.c:2069 0x51b49b lto_file_finalize ../../gcc/lto/lto.c:2322 0x51b4e8 lto_create_files_from_ids ../../gcc/lto/lto.c:2332 0x51b60c lto_file_read ../../gcc/lto/lto.c:2372 0x51e07d read_cgraph_and_symbols ../../gcc/lto/lto.c:2939 0x51ec1a lto_main() ../../gcc/lto/lto.c:3344 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. make: *** [/tmp/cchAJFdX.ltrans6.ltrans.o] Error 1 make: *** Waiting for unfinished jobs.... lto-wrapper: make returned 2 exit status /usr/lib64/gcc/x86_64-suse-linux/4.7/../../../../x86_64-suse-linux/bin/ld: lto-wrapper failed collect2: error: ld returned 1 exit status