http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46940
Summary: asm aliases with linker plugin segfaults Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: lto AssignedTo: unassig...@gcc.gnu.org ReportedBy: hubi...@gcc.gnu.org extern __attribute__((visibility("hidden"))) void _moz_foo (void); extern __typeof (_moz_foo) _moz_foo __asm__ ("" "INT__foo") __attribute__((__visibility__("hidden"))) ; void _moz_foo(void) { printf ("blah\n"); } extern __typeof (_moz_foo) EXT__foo __asm__("" "_moz_foo") __attribute__((__alias__("" "INT__foo"))); evans:/abuild/jh/trunk-3/build-inst2/gcc/:[0]# more t2.c extern void _moz_foo (void); main() { _moz_foo (); } evans:/abuild/jh/trunk-3/build-inst2/gcc/:[0]# ./xgcc -B ./ -O2 -flto t.c t2.c -fuse-linker-plugin t.c: In function ?_moz_foo?: t.c:5:3: warning: incompatible implicit declaration of built-in function ?printf? [enabled by default] lto1: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. lto-wrapper: ./xgcc returned 1 exit status lto-wrapper failedcollect2: ld returned 1 exit status The problem here is that we get prevailing definition of _moz_foo to be alias that has no cgraph node (nor alias node) attached. Bah.