2004-01-07 Michael Chastain <mec.gnu@mindspring.com>

* hpread.c (hpread_read_struct_type): Call SET_FIELD_PHYSNAME
	properly for static fields.
This commit is contained in:
Michael Chastain 2004-01-07 13:22:09 +00:00
parent 753ccc7a8b
commit 9f9057daef
2 changed files with 13 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* hpread.c (hpread_read_struct_type): Call SET_FIELD_PHYSNAME
properly for static fields.
2004-01-06 Jeff Johnston <jjohnstn@redhat.com>
Jason Molenda <jmolenda@apple.com>

View File

@ -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;