forked from Imagelibrary/binutils-gdb
Also disallow global alias of common symbol
We can't create alias of common symbol. Local alias of common symbol has been disallowed. But global alias of common symbol is disallowed when the common symbol is seen first and silently dropped otherwise. This patch disallows alias of common symbol in all cases. gas/ PR gas/21667 * read.c (pseudo_set): Update error message for alias of common symbol. * write.c (write_object_file): Disallow both local and global aliases of common symbol. * testsuite/gas/elf/common5a.d: New file. * testsuite/gas/elf/common5a.l: Likewise. * testsuite/gas/elf/common5a.s: Likewise. * testsuite/gas/elf/common5b.d: Likewise. * testsuite/gas/elf/common5b.l: Likewise. * testsuite/gas/elf/common5b.s: Likewise. * testsuite/gas/elf/common5c.d: Likewise. * testsuite/gas/elf/common5c.s: Likewise. * testsuite/gas/elf/common5d.d: Likewise. * testsuite/gas/elf/common5d.s: Likewise. * testsuite/gas/elf/elf.exp: Run common5a, common5b, common5c and common5d.
This commit is contained in:
@@ -3870,7 +3870,7 @@ pseudo_set (symbolS *symbolP)
|
||||
symbolS *s = exp.X_add_symbol;
|
||||
|
||||
if (S_IS_COMMON (s))
|
||||
as_bad (_("`%s' can't be equated to common symbol '%s'"),
|
||||
as_bad (_("`%s' can't be equated to common symbol `%s'"),
|
||||
S_GET_NAME (symbolP), S_GET_NAME (s));
|
||||
|
||||
S_SET_SEGMENT (symbolP, seg);
|
||||
|
||||
Reference in New Issue
Block a user