From b1a86a997eb13363622ec2a8d8d4b5917272ecfe Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 23 May 2001 13:37:50 -0400 Subject: [PATCH] * dbxout.c (dbxout_type_methods): Do still group methods by name. From-SVN: r42504 --- gcc/ChangeLog | 4 ++++ gcc/dbxout.c | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 77d424c9648..4ff07a2df6d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2001-05-23 Jason Merrill + + * dbxout.c (dbxout_type_methods): Do still group methods by name. + 2001-05-23 Zack Weinberg * diagnostic.c (vnotice): Kill. diff --git a/gcc/dbxout.c b/gcc/dbxout.c index 0d0fd64412a..78c45a2d88b 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -771,6 +771,8 @@ dbxout_type_methods (type) while (fndecl) { + int need_prefix = 1; + /* Group together all the methods for the same operation. These differ in the types of the arguments. */ for (last = NULL_TREE; @@ -802,10 +804,25 @@ dbxout_type_methods (type) if (DECL_IGNORED_P (fndecl) || DECL_ABSTRACT (fndecl)) continue; + /* Redundantly output the plain name, since that's what gdb + expects. */ + if (need_prefix) + { + tree name = DECL_NAME (fndecl); + fprintf (asmfile, "%s::", IDENTIFIER_POINTER (name)); + CHARS (IDENTIFIER_LENGTH (name) + 2); + need_prefix = 0; + } + dbxout_type (TREE_TYPE (fndecl), 0); dbxout_type_method_1 (fndecl, debug_name); } + if (!need_prefix) + { + putc (';', asmfile); + CHARS (1); + } } } -- 2.30.2