https://sourceware.org/bugzilla/show_bug.cgi?id=16504
Bug ID: 16504 Summary: gold: internal error in override_version, at resolve.cc:61 with -flto Product: binutils Version: 2.24 Status: NEW Severity: normal Priority: P2 Component: binutils Assignee: unassigned at sourceware dot org Reporter: zbyszek at in dot waw.pl ==> liba.c <== const char* sd_get_seats(void) {return "bla bla";} ==> liba.sym <== LIBSYSTEMD_209 { global: sd_get_seats; }; ==> libb.c <== void new_sd_get_seats(void); __asm__(".symver new_sd_get_seats,sd_get_seats@LIBSYSTEMD_209"); static void (*resolve_sd_get_seats(void)) (void) { return new_sd_get_seats; } void sd_get_seats(void) __attribute__((ifunc("resolve_sd_get_seats"))); ==> libb.sym <== LIBSYSTEMD_208 { global: sd_get_seats; }; ==> Makefile <== $(CC) $(LIBCFLAGS) -o $@ $< -Wl,--version-script=libb.sym -L. -la test1: test1.c libb.so gcc -Wl,-rpath -Wl,. -L. -lb -o $@ $< run: test1 ./test1 clean: rm -f *.so *.o test1 ==> test1.c <== #include <stdio.h> const char* sd_get_seats(void); int main(int argc, char **argv) { printf("%s\n", sd_get_seats()); return 0; } $ make gcc -fPIC -shared -flto -Wl,-fuse-ld=gold -o liba.so liba.c -Wl,--version-script=liba.sym gcc -fPIC -shared -flto -Wl,-fuse-ld=gold -o libb.so libb.c -Wl,--version-script=libb.sym -L. -la /usr/bin/ld.gold: internal error in override_version, at resolve.cc:61 collect2: error: ld returned 1 exit status make: *** [libb.so] Error 1 ld.bfd seems to work fine. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils