aboutsummaryrefslogtreecommitdiff
path: root/gas/read.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2004-12-29 10:21:58 +0000
committerAlan Modra <amodra@gmail.com>2004-12-29 10:21:58 +0000
commita207757ebf9a8c63b5d1fd8a52e4a755514e3aad (patch)
tree0347216587dac51dcfa193b1dae6c97e71f51661 /gas/read.c
parent2af59babed0287ed3f95340d33e31e71bd4d4507 (diff)
downloadfsf-binutils-gdb-a207757ebf9a8c63b5d1fd8a52e4a755514e3aad.zip
fsf-binutils-gdb-a207757ebf9a8c63b5d1fd8a52e4a755514e3aad.tar.gz
fsf-binutils-gdb-a207757ebf9a8c63b5d1fd8a52e4a755514e3aad.tar.bz2
PR gas/619
* read.c (s_comm_internal): Don't zero end of name until size expression has been parsed.
Diffstat (limited to 'gas/read.c')
-rw-r--r--gas/read.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/gas/read.c b/gas/read.c
index 5241562..e6cee54 100644
--- a/gas/read.c
+++ b/gas/read.c
@@ -1377,7 +1377,6 @@ s_comm_internal (int param,
if (*input_line_pointer == ',')
input_line_pointer++;
- *p = 0;
temp = get_absolute_expr (&exp);
size = temp;
#ifdef BFD_ASSEMBLER
@@ -1386,18 +1385,17 @@ s_comm_internal (int param,
if (exp.X_op == O_absent)
{
as_bad (_("missing size expression"));
- *p = c;
ignore_rest_of_line ();
goto out;
}
else if (temp != size || !exp.X_unsigned)
{
as_warn (_("size (%ld) out of range, ignored"), (long) temp);
- *p = c;
ignore_rest_of_line ();
goto out;
}
+ *p = 0;
symbolP = symbol_find_or_make (name);
if (S_IS_DEFINED (symbolP) && !S_IS_COMMON (symbolP))
{