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: [email protected]
ReportedBy: [email protected]
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