This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: strong aliases for data do not work properly in shared libs
On Thu, Apr 13, 2006 at 12:00:04PM -0400, Mike Frysinger wrote:
> On Thursday 13 April 2006 11:29, Mike Frysinger wrote:
> > the attached testcases shows the issue pretty clearly
>
> sent that e-mail prematurely ... testcase attached
>
> the difference in func addresses is expected as each address refers to a
> unique PLT entry and both PLT entries refer back to the proper symbol
>
> what i'm looking at here is the FAIL in prog-dynamic-lib with strong data
> -mike
It is because of copy relocation. On ia64, I got
Running dynamic program (w/lib):
./prog-dynamic-lib
strong data address: PASS (0x2000000000050cb8 == 0x2000000000050cb8)
strong data value : PASS (2 == 2)
weak data address: PASS (0x2000000000050cbc == 0x2000000000050cbc)
weak data value : PASS (2 == 2)
strong func address: FAIL (0x200000000003b430 != 0x200000000003b420)
strong func value : PASS (123 == 123)
weak func address: FAIL (0x200000000003b410 != 0x200000000003b400)
weak func value : PASS (321 == 321)
make: [run] Error 2 (ignored)
H.J.