aboutsummaryrefslogtreecommitdiff
path: root/gdb/c-typeprint.c
diff options
context:
space:
mode:
authorFred Fish <fnf@specifix.com>1996-02-16 06:14:15 +0000
committerFred Fish <fnf@specifix.com>1996-02-16 06:14:15 +0000
commit81afee37d0a016cd3e671693c165916893ac3e60 (patch)
tree43af22fde990502fd3478fc11b354c1f2daaee04 /gdb/c-typeprint.c
parent14b22711be24b3832e3282347207467471cb42ab (diff)
downloadfsf-binutils-gdb-81afee37d0a016cd3e671693c165916893ac3e60.zip
fsf-binutils-gdb-81afee37d0a016cd3e671693c165916893ac3e60.tar.gz
fsf-binutils-gdb-81afee37d0a016cd3e671693c165916893ac3e60.tar.bz2
* demangle.c (is_cplus_marker): New function, checks if a
character is one of the commonly used C++ marker characters. * defs.h (is_cplus_marker): Add prototype. * c-typeprint.c (c_type_print_base), ch-lang.c (chill_demangle), cp-valprint.c (cp_print_class_method), mdebugread.c (parse_symbol), stabsread.c (define_symbol, read_member_functions, read_struct_fields), symtab.h (OPNAME_PREFIX_P, VTBL_PREFIX_P, DESTRUCTOR_PREFIX_P), values.c (vb_match): Use is_cplus_marker instead of comparison with CPLUS_MARKER.
Diffstat (limited to 'gdb/c-typeprint.c')
-rw-r--r--gdb/c-typeprint.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gdb/c-typeprint.c b/gdb/c-typeprint.c
index 9be2d52..a7a5341 100644
--- a/gdb/c-typeprint.c
+++ b/gdb/c-typeprint.c
@@ -1,5 +1,5 @@
/* Support for printing C and C++ types for GDB, the GNU debugger.
- Copyright 1986, 1988, 1989, 1991, 1993, 1994
+ Copyright 1986, 1988, 1989, 1991, 1993, 1994, 1995, 1996
Free Software Foundation, Inc.
This file is part of GDB.
@@ -582,8 +582,8 @@ c_type_print_base (type, stream, show, level)
{
QUIT;
/* Don't print out virtual function table. */
- if ((TYPE_FIELD_NAME (type, i))[5] == CPLUS_MARKER &&
- !strncmp (TYPE_FIELD_NAME (type, i), "_vptr", 5))
+ if (STREQN (TYPE_FIELD_NAME (type, i), "_vptr", 5)
+ && is_cplus_marker ((TYPE_FIELD_NAME (type, i))[5]))
continue;
/* If this is a C++ class we can print the various C++ section
@@ -737,7 +737,7 @@ c_type_print_base (type, stream, show, level)
free (mangled_name);
}
else if (TYPE_FN_FIELD_PHYSNAME (f, j)[0] == '_'
- && TYPE_FN_FIELD_PHYSNAME (f, j)[1] == CPLUS_MARKER)
+ && is_cplus_marker (TYPE_FN_FIELD_PHYSNAME (f, j)[1]))
cp_type_print_method_args (TYPE_FN_FIELD_ARGS (f, j) + 1,
"~", method_name, 0, stream);
else