[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/26978] New: Inconsistency for defined foo@v1 and foo@@v1
From: |
i at maskray dot me |
Subject: |
[Bug ld/26978] New: Inconsistency for defined foo@v1 and foo@@v1 |
Date: |
Mon, 30 Nov 2020 00:15:11 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=26978
Bug ID: 26978
Summary: Inconsistency for defined foo@v1 and foo@@v1
Product: binutils
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: i at maskray dot me
Target Milestone: ---
cat > ./def1.s <<eof
.globl foo
.symver foo, foo@@@v1
foo:
eof
cat > ./def1w.s <<eof
.weak foo
.symver foo, foo@@@v1
foo:
eof
cat > ./hid1.s <<eof
.globl foo_v1
.symver foo_v1, foo@v1
foo_v1:
ret
eof
cat > ./hid1w.s <<eof
.weak foo_v1
.symver foo_v1, foo@v1
foo_v1:
ret
eof
cat > ./ver <<eof
v1 {};
eof
gcc -c *.s
% ld.bfd -shared --version-script=ver def1.o hid1.o
ld.bfd: hid1.o: in function `foo_v1':
(.text+0x0): multiple definition of `foo@@v1'; def1.o:(.text+0x0): first
defined here
% ld.bfd -shared --version-script=ver def1w.o hid1.o
ld.bfd: hid1.o: in function `foo_v1':
(.text+0x0): multiple definition of `foo@v1'
ld.bfd: hid1.o:(*IND*+0x0): multiple definition of `foo'
% ld.bfd -shared --version-script=ver def1.o hid1w.o
% ld.bfd -shared --version-script=ver def1w.o hid1w.o
If weak foo@@v1 + global foo@v1 errors, global foo@@v1 + weak foo@v1 should
error as well.
An alternative design is that weak foo@@v1 + global foo@v1 should not error. Of
the 4 combinations, only global foo@@v1 + global foo@v1 errors.
--
You are receiving this mail because:
You are on the CC list for the bug.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Bug ld/26978] New: Inconsistency for defined foo@v1 and foo@@v1,
i at maskray dot me <=