From 427259102840f4ba492d4fd07ef0ba0595edef7d Mon Sep 17 00:00:00 2001 From: Daniel Jacobowitz Date: Thu, 16 May 2002 03:59:58 +0000 Subject: [PATCH] 2002-05-16 Daniel Jacobowitz * gdbtypes.h (struct cplus_struct_type): Remove args field. * hpread.c (hpread_read_struct_type): Remove assignments to args. (fixup_class_method_type): Likewise. --- gdb/ChangeLog | 6 ++++++ gdb/gdbtypes.h | 7 ------- gdb/hpread.c | 23 +---------------------- 3 files changed, 7 insertions(+), 29 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4617bd4f782..dbeec7a2465 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2002-05-16 Daniel Jacobowitz + + * gdbtypes.h (struct cplus_struct_type): Remove args field. + * hpread.c (hpread_read_struct_type): Remove assignments to args. + (fixup_class_method_type): Likewise. + 2002-05-15 Daniel Jacobowitz From Martin Pool : diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h index 87b529e67ea..4c207243886 100644 --- a/gdb/gdbtypes.h +++ b/gdb/gdbtypes.h @@ -604,13 +604,6 @@ struct cplus_struct_type struct type *type; - /* The argument list. Only valid if is_stub is clear. Contains - the type of each argument, including `this', and ending with - a NULL pointer after the last argument. Should not contain - a `this' pointer for static member functions. */ - - struct type **args; - /* For virtual functions. First baseclass that defines this virtual function. */ diff --git a/gdb/hpread.c b/gdb/hpread.c index 45a00a6c417..98869a8eb12 100644 --- a/gdb/hpread.c +++ b/gdb/hpread.c @@ -3961,7 +3961,6 @@ hpread_read_struct_type (dnttpointer hp_type, union dnttentry *dn_bufp, if (TYPE_INCOMPLETE (memtype)) { fn_p->field.fn_fields[ix].type = NULL; - fn_p->field.fn_fields[ix].args = NULL; } else { @@ -3979,18 +3978,8 @@ hpread_read_struct_type (dnttpointer hp_type, union dnttentry *dn_bufp, /* void termination */ TYPE_TYPE_SPECIFIC (fn_p->field.fn_fields[ix].type) .arg_types[TYPE_NFIELDS (memtype)] = builtin_type_void; - - /* pai: It's not clear why this args field has to be set. Perhaps - * it should be eliminated entirely. */ - fn_p->field.fn_fields[ix].args = - (struct type **) obstack_alloc (&objfile->type_obstack, - sizeof (struct type *) * (TYPE_NFIELDS (memtype) + 1)); - for (i = 0; i < TYPE_NFIELDS (memtype); i++) - fn_p->field.fn_fields[ix].args[i] - = TYPE_FIELDS (memtype)[i].type; - /* null-terminated, unlike arg_types above e */ - fn_p->field.fn_fields[ix].args[TYPE_NFIELDS (memtype)] = NULL; } + /* For virtual functions, fill in the voffset field with the * virtual table offset. (This is just copied over from the * SOM record; not sure if it is what GDB expects here...). @@ -4475,16 +4464,6 @@ fixup_class_method_type (struct type *class, struct type *method, /* void termination */ TYPE_TYPE_SPECIFIC (TYPE_FN_FIELD_TYPE (TYPE_FN_FIELDLIST1 (class, i), j)).arg_types[TYPE_NFIELDS (method)] = builtin_type_void; - /* pai: It's not clear why this args field has to be set. Perhaps - * it should be eliminated entirely. */ - (TYPE_FN_FIELD (TYPE_FN_FIELDLIST1 (class, i), j)).args - = (struct type **) obstack_alloc (&objfile->type_obstack, - sizeof (struct type *) * (TYPE_NFIELDS (method) + 1)); - for (k = 0; k < TYPE_NFIELDS (method); k++) - (TYPE_FN_FIELD (TYPE_FN_FIELDLIST1 (class, i), j)).args[k] = TYPE_FIELDS (method)[k].type; - /* null-terminated, unlike arg_types above */ - (TYPE_FN_FIELD (TYPE_FN_FIELDLIST1 (class, i), j)).args[TYPE_NFIELDS (method)] = NULL; - /* Break out of both loops -- only one method to fix up in a class */ goto finish; } -- 2.30.2