diff --git a/gas/ChangeLog b/gas/ChangeLog
index c4848424930..2506e6870c1 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,7 @@
+2005-09-20  Richard Henderson  <rth@redhat.com>
+
+	* dwarf2dbg.c (process_entries): Fix uninitialized variable warning.
+
 2005-09-20  Richard Henderson  <rth@redhat.com>
 
 	* dwarf2dbg.c (struct line_entry): Replace frag and frag_ofs
diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c
index be59eba5db7..c7d99c5997b 100644
--- a/gas/dwarf2dbg.c
+++ b/gas/dwarf2dbg.c
@@ -1058,10 +1058,10 @@ process_entries (segT seg, struct line_entry *e)
   unsigned flags = DWARF2_LINE_DEFAULT_IS_STMT ? DWARF2_FLAG_IS_STMT : 0;
   fragS *last_frag = NULL, *frag;
   addressT last_frag_ofs = 0, frag_ofs;
-  symbolS *last_lab, *lab;
+  symbolS *last_lab = NULL, *lab;
   struct line_entry *next;
 
-  while (e)
+  do
     {
       int line_delta;
 
@@ -1129,6 +1129,7 @@ process_entries (segT seg, struct line_entry *e)
       free (e);
       e = next;
     }
+  while (e);
 
   /* Emit a DW_LNE_end_sequence for the end of the section.  */
   frag = last_frag_for_seg (seg);