PR gas/619
authorAlan Modra <amodra@gmail.com>
Wed, 29 Dec 2004 10:21:58 +0000 (10:21 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 29 Dec 2004 10:21:58 +0000 (10:21 +0000)
* read.c (s_comm_internal): Don't zero end of name until size
expression has been parsed.

gas/ChangeLog
gas/read.c

index b25be84841731ea9b57f61927466743e5d269b20..5cb31836ba046f7a2faf9d66ca18f240928bab1d 100644 (file)
@@ -1,3 +1,9 @@
+2004-12-29  Alan Modra  <amodra@bigpond.net.au>
+
+       PR gas/619
+       * read.c (s_comm_internal): Don't zero end of name until size
+       expression has been parsed.
+
 2004-12-25  Marek Michalkiewicz  <marekm@amelek.gda.pl>
 
        * config/tc-avr.c (mcu_types): Move attiny{13,2313} from avr4 to avr2.
index 524156260aa28c066b1aa24f0b1f89c0b133159f..e6cee541114f92735bc72535b714211dfa3b6e7d 100644 (file)
@@ -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))
     {