From 50352c9c62fd4b48e237d809ecf1a1e25de3fe30 Mon Sep 17 00:00:00 2001 From: Brendan Kehoe Date: Mon, 6 Dec 1999 19:16:52 +0000 Subject: [PATCH] dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be zero if there was an error. * dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be zero if there was an error. From-SVN: r30804 --- gcc/ChangeLog | 5 +++++ gcc/dwarf2out.c | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4880f039b09..67a0376ec8f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +1999-12-06 Brendan Kehoe + + * dwarf2out.c (field_byte_offset): As with dwarfout.c, size can be + zero if there was an error. + 1999-12-06 Jakub Jelinek * config/sparc/sparc.md (return_losum_di): Fix typo in asm diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 0a8846999fa..4f8227c76a9 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -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. */ -- 2.30.2