OSDN Git Service

* dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be
authorbrendan <brendan@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 6 Dec 1999 19:16:52 +0000 (19:16 +0000)
committerbrendan <brendan@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 6 Dec 1999 19:16:52 +0000 (19:16 +0000)
    zero if there was an error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30804 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/dwarf2out.c

index 4880f03..67a0376 100644 (file)
@@ -1,3 +1,8 @@
+1999-12-06  Brendan Kehoe  <brendan@cygnus.com>
+
+       * dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be
+       zero if there was an error.
+
 1999-12-06  Jakub Jelinek  <jakub@redhat.com>
 
        * config/sparc/sparc.md (return_losum_di): Fix typo in asm
index 0a88469..4f8227c 100644 (file)
@@ -6695,6 +6695,14 @@ field_byte_offset (decl)
   bitpos_tree = DECL_FIELD_BITPOS (decl);
   field_size_tree = DECL_SIZE (decl);
 
+  /* If there was an error, the size could be zero.  */
+  if (! field_size_tree)
+    {
+      if (errorcount)
+       return 0;
+      abort ();
+    }
+
   /* We cannot yet cope with fields whose positions are variable, so 
      for now, when we see such things, we simply return 0.  Someday, we may
      be able to handle such cases, but it will be damn difficult.  */