summaryrefslogtreecommitdiff
path: root/gas/symbols.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1999-06-10 21:26:10 +0000
committerIan Lance Taylor <ian@airs.com>1999-06-10 21:26:10 +0000
commit9b4d630bb93fd309537c0decab6cd84d89760c03 (patch)
treecd9f3f3c91c962a88eb444ba69883e56d51c2c75 /gas/symbols.c
parent8ee99f93eb3fb17ce611b0c3b97f49007da12a1a (diff)
downloadbinutils-gdb-9b4d630bb93fd309537c0decab6cd84d89760c03.tar.gz
* symbols.c (resolve_symbol_value): Don't permit subtraction of
undefined symbols.
Diffstat (limited to 'gas/symbols.c')
-rw-r--r--gas/symbols.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gas/symbols.c b/gas/symbols.c
index 71b8df69410..d47371ed67a 100644
--- a/gas/symbols.c
+++ b/gas/symbols.c
@@ -1040,8 +1040,11 @@ resolve_symbol_value (symp, finalize)
expressions, such as IEEE-695. */
/* Don't emit messages unless we're finalizing the symbol value,
otherwise we may get the same message multiple times. */
- if ((seg_left != absolute_section || seg_right != absolute_section)
- && (op != O_subtract || seg_left != seg_right)
+ if ((seg_left != absolute_section
+ || seg_right != absolute_section)
+ && (op != O_subtract
+ || seg_left != seg_right
+ || seg_left == undefined_section)
&& finalize)
{
char *file;