aboutsummaryrefslogtreecommitdiff
path: root/gas/read.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2001-03-28 17:24:01 +0000
committerH.J. Lu <hjl.tools@gmail.com>2001-03-28 17:24:01 +0000
commit440ecb3800d2eeafb4f64047c22947faa8f9db1e (patch)
treeb719735244452f320a6b1db8858fb496b78d166f /gas/read.c
parent8a238888b453627b099318bd83c3d9dd3baaf257 (diff)
downloadfsf-binutils-gdb-440ecb3800d2eeafb4f64047c22947faa8f9db1e.zip
fsf-binutils-gdb-440ecb3800d2eeafb4f64047c22947faa8f9db1e.tar.gz
fsf-binutils-gdb-440ecb3800d2eeafb4f64047c22947faa8f9db1e.tar.bz2
2001-03-28 H.J. Lu <hjl@gnu.org>
* read.c (equals): Set to local for COFF only if it hasn't been defined before.
Diffstat (limited to 'gas/read.c')
-rw-r--r--gas/read.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gas/read.c b/gas/read.c
index cb4c7e3..beb761f 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -4857,6 +4857,13 @@ equals (sym_name, reassign)
}
else
{
+#ifdef OBJ_COFF
+ int local;
+
+ symbolP = symbol_find (sym_name);
+ local = symbolP == NULL;
+ if (local)
+#endif /* OBJ_COFF */
symbolP = symbol_find_or_make (sym_name);
/* Permit register names to be redefined. */
if (!reassign
@@ -4866,7 +4873,8 @@ equals (sym_name, reassign)
#ifdef OBJ_COFF
/* "set" symbols are local unless otherwise specified. */
- SF_SET_LOCAL (symbolP);
+ if (local)
+ SF_SET_LOCAL (symbolP);
#endif /* OBJ_COFF */
pseudo_set (symbolP);