aboutsummaryrefslogtreecommitdiff
path: root/gas/config/obj-aout.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2003-12-15 12:02:38 +0000
committerNick Clifton <nickc@redhat.com>2003-12-15 12:02:38 +0000
commit8d8199c3110e24159be80561d243efe948f23a04 (patch)
treea00e2abe816fcd2ed874abe1ce3630b2808cd75b /gas/config/obj-aout.c
parent25c80428af3311e761c87d8f706596b9701602ec (diff)
downloadgdb-8d8199c3110e24159be80561d243efe948f23a04.zip
gdb-8d8199c3110e24159be80561d243efe948f23a04.tar.gz
gdb-8d8199c3110e24159be80561d243efe948f23a04.tar.bz2
(obj_crawl_symbol_chain): Skip defined symbols which resolve to symbolic values.
Diffstat (limited to 'gas/config/obj-aout.c')
-rw-r--r--gas/config/obj-aout.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gas/config/obj-aout.c b/gas/config/obj-aout.c
index 3a73d75..6e5fd29 100644
--- a/gas/config/obj-aout.c
+++ b/gas/config/obj-aout.c
@@ -469,9 +469,13 @@ obj_crawl_symbol_chain (headers)
resolve_symbol_value (symbolP);
/* Skip symbols which were equated to undefined or common
- symbols. */
+ symbols. Also skip defined uncommon symbols which can
+ be resolved since in this case they should have been
+ resolved to a non-symbolic constant. */
if (symbolP->sy_value.X_op == O_symbol
- && (! S_IS_DEFINED (symbolP) || S_IS_COMMON (symbolP)))
+ && (! S_IS_DEFINED (symbolP)
+ || S_IS_COMMON (symbolP)
+ || symbol_resolved_p (symbolP)))
{
*symbolPP = symbol_next (symbolP);
continue;