* Makefile.in (DEMANGLER): Define and default to cplus-dem.

Allows selection of C++ demangler to be a configuration option
	until multiple demanglers are supported.
	* demangle.h:  New include file for extended demangler support.
	* breakpoint.c, gdbtypes.c, printcmd.c, stack.c, symtab.c,
	utils.c, valprint.c:  Include "demangle.h" and change all calls
	to cplus_demangle() or fputs_demangled() to use individual
	demangling options.
	* valprint.c (type_print_1):  Change options to cplus_demangle
	to print demangled function args.  Still broken, but now less so.
	* cplus-dem.c:  Include demangle.h, reorganize and update some
	comments to reflect reality.
	* cplus-dem.c (cplus_demangle, cplus_mangle_opname):  Change
	second arg from fixed integer to bit based multiple options.
	* cplus-dem.c (optable):  Reformat and replace ansi members with
	bit based options.
	* cplus-dem.c (do_type):  Fix bug with parsing missing return type.
This commit is contained in:
Fred Fish 1992-05-05 18:16:23 +00:00
parent 939a343342
commit 8f793aa541
7 changed files with 195 additions and 137 deletions

View file

@ -29,6 +29,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "language.h"
#include "target.h"
#include "value.h"
#include "demangle.h"
/* Alloc a new type structure and fill it with some defaults. If
OBJFILE is non-NULL, then allocate the space for the type structure
@ -739,7 +740,7 @@ check_stub_method (type, i, j)
{
struct fn_field *f;
char *mangled_name = gdb_mangle_name (type, i, j);
char *demangled_name = cplus_demangle (mangled_name, 0);
char *demangled_name = cplus_demangle (mangled_name, DMGL_PARAMS);
char *argtypetext, *p;
int depth = 0, argcount = 1;
struct type **argtypes;