aboutsummaryrefslogtreecommitdiff
path: root/gas/symbols.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1996-07-26 15:58:57 +0000
committerIan Lance Taylor <ian@airs.com>1996-07-26 15:58:57 +0000
commit5ca547dc2399a0a5d9f20626d4bf5547c3ccfddd (patch)
treebd95185d3aa300c83c4374536b5542e201e81446 /gas/symbols.c
parent21b849e3cdc6245db536f7cd3754407bf124f49f (diff)
downloadgdb-5ca547dc2399a0a5d9f20626d4bf5547c3ccfddd.zip
gdb-5ca547dc2399a0a5d9f20626d4bf5547c3ccfddd.tar.gz
gdb-5ca547dc2399a0a5d9f20626d4bf5547c3ccfddd.tar.bz2
* symbols.c (S_SET_EXTERNAL): Let .weak override.
(S_CLEAR_EXTERNAL): Likewise. (S_SET_WEAK): Remove error; just let .weak override.
Diffstat (limited to 'gas/symbols.c')
-rw-r--r--gas/symbols.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/gas/symbols.c b/gas/symbols.c
index da83e99..fa2fadb 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -1379,7 +1379,7 @@ S_SET_EXTERNAL (s)
{
if ((s->bsym->flags & BSF_WEAK) != 0)
{
- as_bad ("%s already declared as weak", S_GET_NAME (s));
+ /* Let .weak override .global. */
return;
}
s->bsym->flags |= BSF_GLOBAL;
@@ -1392,7 +1392,7 @@ S_CLEAR_EXTERNAL (s)
{
if ((s->bsym->flags & BSF_WEAK) != 0)
{
- as_bad ("%s already declared as weak", S_GET_NAME (s));
+ /* Let .weak override. */
return;
}
s->bsym->flags |= BSF_LOCAL;
@@ -1403,11 +1403,6 @@ void
S_SET_WEAK (s)
symbolS *s;
{
- if ((s->bsym->flags & BSF_GLOBAL) != 0)
- {
- as_bad ("%s already declared as global", S_GET_NAME (s));
- return;
- }
s->bsym->flags |= BSF_WEAK;
s->bsym->flags &= ~(BSF_GLOBAL|BSF_LOCAL);
}