diff options
Diffstat (limited to 'gdb/hpread.c')
-rw-r--r-- | gdb/hpread.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/gdb/hpread.c b/gdb/hpread.c index 40875f7..246f77e 100644 --- a/gdb/hpread.c +++ b/gdb/hpread.c @@ -1,6 +1,6 @@ /* Read hp debug symbols and convert to internal format, for GDB. - Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, + 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GDB. @@ -4160,16 +4160,19 @@ hpread_read_struct_type (dnttpointer hp_type, union dnttentry *dn_bufp, list->field.name = VT (objfile) + fieldp->dfield.name; - /* A FIELD by itself (without a GENFIELD) can also be a static member */ - FIELD_STATIC_KIND (list->field) = 0; + /* A FIELD by itself (without a GENFIELD) can also be a static + member. Mark it as static with a physname of NULL. + fix_static_member_physnames will assign the physname later. */ if (fieldp->dfield.staticmem) { - FIELD_BITPOS (list->field) = -1; + SET_FIELD_PHYSNAME (list->field, NULL); + FIELD_BITPOS (list->field) = 0; FIELD_BITSIZE (list->field) = 0; } else /* Non-static data member */ { + FIELD_STATIC_KIND (list->field) = 0; FIELD_BITPOS (list->field) = fieldp->dfield.bitoffset; if (fieldp->dfield.bitlength % 8) FIELD_BITSIZE (list->field) = fieldp->dfield.bitlength; |