diff options
author | Peter Schauer <Peter.Schauer@mytum.de> | 1995-03-10 11:21:32 +0000 |
---|---|---|
committer | Peter Schauer <Peter.Schauer@mytum.de> | 1995-03-10 11:21:32 +0000 |
commit | a1a0d9748466c84c988529cf9fa192822151d272 (patch) | |
tree | 9671506adfce8e823e5fb97e0bb37cdb0119c934 /gdb/c-valprint.c | |
parent | 45d6f6230e92308144b8455db8a00b21145580e7 (diff) | |
download | gdb-a1a0d9748466c84c988529cf9fa192822151d272.zip gdb-a1a0d9748466c84c988529cf9fa192822151d272.tar.gz gdb-a1a0d9748466c84c988529cf9fa192822151d272.tar.bz2 |
Fix problems with infinite recursion when printing a class
that contains a static instance of the class.
* cp-valprint.c (dont_print_vb_obstack): Renamed from
dont_print_obstack, made static.
(dont_print_statmem_obstack): New obstack, controls printing
of static member classes.
(_initialize_cp_valprint): Initialize it.
(cp_print_static_field): New function, handles printing of
static members.
(cp_print_value_fields): New parameter dont_print_statmem to
handle recursive printing of static member classes, use
cp_print_static_field to handle printing of static members.
* c-valprint.c (cp_print_value_fields): Update prototype and
call to include additional dont_print_statmem parameter.
* c-valprint.c, f-valprint.c (dont_print_obstack): Remove unused
extern declaration.
* alpha-tdep.c, findvar.c, infptrace.c: Include <string.h>.
* config/alpha/tm-alpha.h (FRAME_FIND_SAVED_REGS): Call
alpha_find_saved_regs if fi->saved_regs is still NULL.
* elfread.c (elf_symtab_read): Ensure that the filename field
of a minsym is nonempty. Ignore solib trampoline symbols from
the main symbol table, they might have a bogus value.
* procfs.c (set_proc_siginfo), config/alpha/alpha-osf2.mh:
Fix typos in comments.
Diffstat (limited to 'gdb/c-valprint.c')
-rw-r--r-- | gdb/c-valprint.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/gdb/c-valprint.c b/gdb/c-valprint.c index 5e5791b..5c50124 100644 --- a/gdb/c-valprint.c +++ b/gdb/c-valprint.c @@ -1,5 +1,5 @@ /* Support for printing C values for GDB, the GNU debugger. - Copyright 1986, 1988, 1989, 1991, 1992, 1993, 1994 + Copyright 1986, 1988, 1989, 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. This file is part of GDB. @@ -39,7 +39,7 @@ cp_print_class_method PARAMS ((char *, struct type *, GDB_FILE *)); extern void cp_print_value_fields PARAMS ((struct type *, char *, GDB_FILE *, int, int, - enum val_prettyprint, struct type **)); + enum val_prettyprint, struct type **, int)); extern int cp_is_vtbl_ptr_type PARAMS ((struct type *)); @@ -61,8 +61,6 @@ cp_type_print_method_args PARAMS ((struct type **, char *, char *, int, /* END-FIXME */ -extern struct obstack dont_print_obstack; - /* Print data of type TYPE located at VALADDR (within GDB), which came from the inferior at address ADDRESS, onto stdio stream STREAM according to @@ -323,7 +321,7 @@ c_val_print (type, valaddr, address, stream, format, deref_ref, recurse, break; } cp_print_value_fields (type, valaddr, stream, format, recurse, pretty, - 0); + NULL, 0); break; case TYPE_CODE_ENUM: |