http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60820
--- Comment #1 from Martin Liška <mliska at suse dot cz> --- testcase: cat a.c: #include <netinet/in.h> #include <stdio.h> static const struct in6_addr local_in6addr_any = IN6ADDR_ANY_INIT; #pragma weak in6addr_any = local_in6addr_any __attribute__ ((used)) void foo() { fprintf (stderr, "v1: %p, v2: %p\n", &local_in6addr_any, &in6addr_any); } gcc -flto -O2 -c a.c -o a.o gcc -flto -O2 -c a.c -o b.o gcc -flto -O2 a.o b.o