aboutsummaryrefslogtreecommitdiff
path: root/gas/write.c
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1997-01-31 15:47:41 +0000
committerIan Lance Taylor <ian@airs.com>1997-01-31 15:47:41 +0000
commita75abb6f0ad78833199bd16476e6babbd70738be (patch)
tree173093f63e87ff4f026c052ee53a7b39203bf3b4 /gas/write.c
parent8275482ce0340bf13293a1b7bb6bf3c03ed79873 (diff)
downloadgdb-a75abb6f0ad78833199bd16476e6babbd70738be.zip
gdb-a75abb6f0ad78833199bd16476e6babbd70738be.tar.gz
gdb-a75abb6f0ad78833199bd16476e6babbd70738be.tar.bz2
* write.c (relax_segment): Give an error if a .space symbol is
common or undefined. * read.c (read_a_source_file): Don't handle mri_pending_align if the handler is s_globl or s_ignore.
Diffstat (limited to 'gas/write.c')
-rw-r--r--gas/write.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gas/write.c b/gas/write.c
index 7f2b74d..0cd68c3 100644
--- a/gas/write.c
+++ b/gas/write.c
@@ -2202,8 +2202,11 @@ relax_segment (segment_frag_root, segment)
if (symbolP)
{
growth = S_GET_VALUE (symbolP);
- if (symbolP->sy_frag != &zero_address_frag)
- as_bad (".space specifies non-absolute value");
+ if (symbolP->sy_frag != &zero_address_frag
+ || S_IS_COMMON (symbolP)
+ || ! S_IS_DEFINED (symbolP))
+ as_bad_where (fragP->fr_file, fragP->fr_line,
+ ".space specifies non-absolute value");
fragP->fr_symbol = 0;
if (growth < 0)
{