[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/16504] New: gold: internal error in override_version, at r
From: |
zbyszek at in dot waw.pl |
Subject: |
[Bug binutils/16504] New: gold: internal error in override_version, at resolve.cc:61 with -flto |
Date: |
Sat, 25 Jan 2014 22:14:41 +0000 |
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,address@hidden");
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/16504] New: gold: internal error in override_version, at resolve.cc:61 with -flto,
zbyszek at in dot waw.pl <=