* read.c (emit_expr): Grow frag before filling it so that
authorNick Clifton <nickc@redhat.com>
Fri, 14 Nov 2008 13:03:25 +0000 (13:03 +0000)
committerNick Clifton <nickc@redhat.com>
Fri, 14 Nov 2008 13:03:25 +0000 (13:03 +0000)
        dot_value remains valid.

gas/ChangeLog
gas/read.c

index 1ab7773cb962bf933d0de2410d3fd5cc5efce608..5a1973748b7c74f811008b9fc09eb30b9a2b0a96 100644 (file)
@@ -1,3 +1,8 @@
+2008-11-14  Mat Hostetter  <mat@lcs.mit.edu>
+
+       * read.c (emit_expr): Grow frag before filling it so that
+       dot_value remains valid.
+
 2008-11-14  Peter Jansen  <pwjansen@yahoo.com>
 
        PR 7026
index 1cf5e9a02eec8cdefc70cdb15bc2b05c22a2a438..c6f04d08a18240fffdf660ad1019d89b383862df 100644 (file)
@@ -3934,6 +3934,9 @@ emit_expr (expressionS *exp, unsigned int nbytes)
   if (need_pass_2)
     return;
 
+  /* Grow the current frag now so that dot_value does not get invalidated
+     if the frag were to fill up in the frag_more() call below.  */
+  frag_grow (nbytes);
   dot_value = frag_now_fix ();
 
 #ifndef NO_LISTING