aboutsummaryrefslogtreecommitdiff
path: root/gdb/cp-valprint.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2002-09-14 02:09:39 +0000
committerDaniel Jacobowitz <drow@false.org>2002-09-14 02:09:39 +0000
commitde17c821b37ffda295746b31cf47e19ca2303b78 (patch)
tree1c69fa6e900eda6a81b068cca5588cc7a0183b20 /gdb/cp-valprint.c
parent94202ba54eea91a125962d653a5d8b0ba0b1c335 (diff)
downloadgdb-de17c821b37ffda295746b31cf47e19ca2303b78.zip
gdb-de17c821b37ffda295746b31cf47e19ca2303b78.tar.gz
gdb-de17c821b37ffda295746b31cf47e19ca2303b78.tar.bz2
* gdbtypes.c (check_stub_method): Make static.
(check_stub_method_group): New function. * gdbtypes.h: Update prototypes. * cp-support.c: New file. * cp-support.h: New file. * stabsread.c: Include "cp-abi.h" and "cp-support.h". (update_method_name_from_physname): New function. (read_member_functions): Correct method names for operators and v3 constructors/destructors. Separate v2 constructors and destructors. * Makefile.in (stabsread.o): Update dependencies. (SFILES): Add cp-support.c. (COMMON_OBS): Add cp-support.o. (cp_support_h, cp-support.o): Add. * cp-valprint.c (cp_print_class_method): Call check_stub_method_group instead of check_stub_method. Remove extraneous QUITs. * p-valprint.c (pascal_object_print_class_method): Likewise. * valops.c (search_struct_method): Likewise. (find_method_list, value_struct_elt_for_reference): Likewise.
Diffstat (limited to 'gdb/cp-valprint.c')
-rw-r--r--gdb/cp-valprint.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/gdb/cp-valprint.c b/gdb/cp-valprint.c
index b7922da..ff4be8c 100644
--- a/gdb/cp-valprint.c
+++ b/gdb/cp-valprint.c
@@ -97,13 +97,11 @@ cp_print_class_method (char *valaddr,
f = TYPE_FN_FIELDLIST1 (domain, i);
len2 = TYPE_FN_FIELDLIST_LENGTH (domain, i);
+ check_stub_method_group (domain, i);
for (j = 0; j < len2; j++)
{
- QUIT;
if (TYPE_FN_FIELD_VOFFSET (f, j) == offset)
{
- if (TYPE_FN_FIELD_STUB (f, j))
- check_stub_method (domain, i, j);
kind = "virtual ";
goto common;
}
@@ -129,15 +127,11 @@ cp_print_class_method (char *valaddr,
f = TYPE_FN_FIELDLIST1 (domain, i);
len2 = TYPE_FN_FIELDLIST_LENGTH (domain, i);
+ check_stub_method_group (f, j);
for (j = 0; j < len2; j++)
{
- QUIT;
- if (TYPE_FN_FIELD_STUB (f, j))
- check_stub_method (domain, i, j);
if (STREQ (SYMBOL_NAME (sym), TYPE_FN_FIELD_PHYSNAME (f, j)))
- {
- goto common;
- }
+ goto common;
}
}
}