Commit Graph

34 Commits

Author SHA1 Message Date
Fred Fish 2dbde378c4 * Makefile.in (DEMANGLING_STYLE): New define to set default
demangling style for C++.  Defaults to "auto".
	* Makefile.in (DEMANGLE_OPTS):  Use DEMANGLING_STYLE.
	* Makefile.in (SFILES_MAINDIR):  Add demangle.c
	* Makefile.in (OBS):  Add demangle.o
	* cplus-dem.c (GNU_DEMANGLING, ARM_DEMANGLING, LUCID_DEMANGLING):
	Remove compile time decisions about demangling style and replace
	with runtime decisions using current_demangling_style.
	* cplus-dem.c (main):  Expand code included during building of
	standalone demangler to recognize demangling style options.
	* dbxread.c (demangle.h):  Include.
	* dbxread.c (read_ofile_symtab, process_one_symbol):  Set GNU C++
	demangling style if processing g++ code and current demangling style
	is auto (Note: this feature currently disabled.)
	* demangle.c:  New file, generic demangling control.
	* demangle.h (demangling_styles):  New enumeration to select one
	of several demangling styles.  Also define string names for each
	style.
	* demangle.h (set_demangling_style):  Add prototype.
	* dwarfread.c (demangle.h):  Include.
	* dwarfread.c (GPLUS_PRODUCER, LCC_PRODUCER, CFRONT_PRODUCER):
	New producer string prefixes to recognize.
	* dwarfread.c (handle_producer):  Consolidate actions for specific
	producers.  Set demangling style based on producer string if
	current style is auto.  (Note: this feature currently disabled.)
	* config/ncr3000.mt (DEMANGLE_OPTS):  Remove.
1992-07-14 02:13:12 +00:00
Fred Fish 91fef76b2a * Makefile.in (VERSION): Bump to 4.5.7.
* cplus-dem.c (demangle_args):  Validate index for previously
	seen type to guard against bogus values from malformed manglings.
	* valops.c (value_struct_elt_for_reference):  Guard against
	blindly using NULL return value from lookup_symbol.
1992-07-05 17:21:13 +00:00
Fred Fish 4ed3a9ea66 * breakpoint.c, buildsym.c, c-exp.y, coffread.c, command.c,
core.c, cplus-dem.c, dbxread.c, dwarfread.c, elfread.c, environ.c,
	eval.c, findvar.c, gdbtypes.c, hppabsd-tdep.c, hppahpux-tdep.c,
	i386-tdep.c, ieee-float.c, infcmd.c, inflow.c, infptrace.c,
	infrun.c, m2-exp.y, mipsread.c, objfiles.c, parse.c, procfs.c,
	putenv.c, remote-mm.c, remote-vx.c, solib.c, sparc-tdep.c,
	sparc-xdep.c, stack.c, symfile.c, symtab.c, symtab.h, target.c,
	tm-i386v.h, tm-sparc.h, utils.c, valarith.c, valops.c, valprint.c,
	values.c, xcoffread.c:
	Remove "(void)" casts from function calls where the return value
	is ignored, in accordance with GNU coding standards.
1992-07-04 03:22:08 +00:00
Fred Fish 51b57ded88 * dbxread.c, i386-pinsn.c, i386-tdep.c, regex.c, solib.c, symmisc.c,
symtab.h, tm-i386v4.h, valprint.c, values.c:  Lint.
	* breakpoint.c, c-exp.y, coffread.c, command.c, environ.c, eval.c,
	findvar.c, infcmd.c, infptrace.c, infrun.c, m2-exp.y, parse.c,
	putenv.c, solib.c, sparc-xdep.c, symtab.c, tm-i386v.h, tm-sparc.h,
	utils.c, valarith.c, valops.c, valprint.c, values.c:
	Replace bcopy() use with memcpy(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
	* breakpoint.c, buildsym.c, coffread.c, dbxread.c, i386-tdep.c,
	ieee-float.c, infcmd.c, sparc-tdep.c, stack.c, symtab.c, symtab.h,
	target.c, values.c:
	Replace bzero() use with memset(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
	* i386-tdep.c, main.c, valprint.c:
	Replace bcmp() use with memcmp(), which is more standard and can
	take advantage of gcc's builtin functions for increased performance.
1992-06-29 23:34:38 +00:00
Fred Fish 4c07f28d77 * Makefile.in (VERSION): Bump to 4.5.5.
* symtab.c (decode_line_1):  Until C++ support stabilizes, when
	C++ lookups fail, print possibly helpful hint about completion.
	* cplus-dem.c (demangle_signature):  Fix ARM style demangling
	for static data members.
	* dbxread.c (dbx_psymtab_to_symtab_1):  Fix prototype.
	* config/ncr3000.mh (INSTALL):  Don't use /usr/ucb/install,
	it's broken on ncr3000's.
1992-06-15 19:25:13 +00:00
Fred Fish 1c92ca6f3b * dwarfread.c (decode_modified_type): Change type of first arg.
Change 'modifier' to char from unsigned char.  Cast single use
that needs to be unsigned char.
* symtab.h (SYMBOL_BASEREG_VALID):  Explain disabling.
* utils.c (strdup_demangled):  Add function.
* defs.h (strdup_demangled):  Add prototype.
* stack.c (return_command):  Demangle C++ function names for query.
* infcmd.c (jump_command):  Demangle C++ function names for query.
* cplus-dem.c (consume_count):  New function and prototype.
* cplus-dem.c (demangle_class, gnu_special, demangle_func_type,
do_type):  Replace conversion code with consume_count().
* cplus-dem.c (gnu_special):  Fix demangled of static members.
* source.c (list_command):  Print demangled function names
when appropriate.  Fix supplied by Peter Schauer.
1992-06-15 14:26:57 +00:00
Steve Chamberlain ae0ea72ee2 Changes to support GDB running on DOS using GO32 and H8 support
* defs.h: if xm.h doesn't define FOPEN_RB, include "fopen-same.h",
	allowing hosts with different text and binary file formats to
	work.
	* coffread.c (read_coff_symtab): changed calling convention and
	operation - now it opens its own file with FOPEN_RB rather than
	duping and fdopening the provided handle.
	* dbxread.c, cplus-dem.c: #include mangling.
	* exec.c: If O_BINARY isn't defined, set it to 0, call openp for
	binary files oring in the right bit.
	* utils.c, terminal.h, inflow.c: hackery because dos doesn't have terminals.
	* remote-hms.c: cleanup to use the new remote serial stuff
	* serial.h, ser-termios.c, ser-go32.c: newfiles to provide host
	independent remote terminal I/O.
	* remote.c: if DONT_USE_REMOTE is defined, then don't use it.
	* source.c (openp): fix off by one problem removing / - can now
	open a source file in the root directory with DOS.
	* values.c (value_as_pointer): remove bogus address bits from
	long. (unpack_long): unpack into unsigned long/short if pointer.
1992-05-13 01:12:18 +00:00
Fred Fish 7fd31a8480 * cplus-dem.c (demangle_signature): Recognize misplaced '_' to
avoid infinite loops while demangling bogus mangled names.
	* valprint.c (type_print_base):  Minor fix for GNU style guide
	conformance.
1992-05-11 20:32:03 +00:00
Fred Fish f9b5584c8e * Makefile.in (VERSION): Bump to 4.5.3
* Makefile.in (DEMANGLE_OPTS):  Remove obsolete -Dnounderscore
	* Makefile.in (demangle):  New target to create standalone
	demangler with same code and options as internal demangler.
	* cplus-dem.c:  Massive restructuring, rewriting, cleanups, etc
	to support ARM style and Lucid style demangling, improve
	maintainability, fix several demangling bugs.  More changes
	to follow.
	* defs.h (strstr):  Add ANSI compatible prototype.
	* valprint.c (type_print_1):  Demangle using ansi option.
	* config/ncr3000.mt (DEMANGLE_OPTS):  Remove -Dnounderscore.
1992-05-10 01:43:04 +00:00
Fred Fish 55b3ef9a57 * cplus-dem.c (do_args): Handle void args the same as others.
* objfiles.c (free_objfile):  Only try to unmap files when
	reusable objfiles are supported.
	* valprint.c (type_print_varspec_suffix):  Add parameter that
	specifies if C++ demangling included function arguments.  Use
	it to suppress printing extra pair of ()'s.
	* valprint.c (type_print_1):  Fix problem with printing demangled
	C++ function types where demangled type includes the function
	args.
1992-05-06 21:16:11 +00:00
Fred Fish 8f793aa541 * 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.
1992-05-05 18:16:23 +00:00
Per Bothner f536aa3956 Various fixes to cplus_demangle(); see ChangeLog. 1992-04-29 22:32:12 +00:00
John Gilmore be772100b5 Lint 1992-03-29 23:26:47 +00:00
Per Bothner 04f27ddc6d * c-exp.y, gdbtypes.h: Add builtin_type_signed_char.
* cplus-dem.c:  Support "Sc" meaning "signed char".
1992-03-26 08:33:43 +00:00
Fred Fish 318bf84ffe Globs of changes. See the ChangeLog for details. Most related to
using the new mmalloc package.
1992-03-15 01:09:14 +00:00
Michael Tiemann d747e0af3d Tue Mar 3 15:11:52 1992 Michael Tiemann (tiemann@cygnus.com)
* All GDB files that #include defs.h: Removed stdio.h.
	(defs.h): #include stdio.h.

This has been tested by building GDBs for all targets hosted on Sun4.
None of the build problems were related to stdio.h inclusion.  (n.b.
many configurations don't build for other reasons.)
1992-03-03 23:26:26 +00:00
John Gilmore 1ab3bf1b14 * Check in Fred Fish's changes in these modules. Fred
will make ChangeLog entries for all of them.
1992-02-22 01:46:16 +00:00
John Gilmore 088c3a0b74 * defs.h: Include ansidecl.h and PARAMS macro. Use PARAMS
to make prototypes for all functions declared here.
* cplus-dem.c:  Avoid declaring xmalloc and xrealloc.
* c-exp.y:  Rename SIGNED, OR, and AND to avoid conflict.
* environ.c:  Include <stdio.h> before defs.h.  Minor cleanup.
* ieee-float.h:  Use PARAMS for prototypes; make some params const.
* ieee-float.c, valarith.c:  Include <stdio.h>.  Lint.  b*=>mem*.
* m2-exp.y:  Remove unused CONST; Rename OR and AND.
* utils.c:  Avoid declaring malloc and realloc.  Lint.
(request_quit):  Accept signal-number parameter.
1992-02-20 19:23:42 +00:00
Michael Tiemann 0eb0a82097 Fix demangling of destructors, and fix a minor indentation problem. 1992-01-20 16:55:45 +00:00
Michael Tiemann 1cca172985 Fix off-by-one error in cplus name demangling. 1991-12-06 03:01:12 +00:00
John Gilmore 7d9884b927 * defs.h: Incorporate param.h. All users changed.
* param-no-tm.h:  Change users to define TM_FILE_OVERRIDE instead.
* param.h, param-no-tm.h:  Removed.
* Update copyrights in all changed files.
* dbxread.c, dwarfread.c, inflow.c, infrun.c, m2-exp.y, putenv.c,
solib.c, symtab.h, tm-umax.h, valprint.c:  Lint.
* tm-convex.h, tm-hp300hpux.h, tm-merlin.h, tm-sparc.h,
xm-merlin.h:  Avoid host include files in target descriptions.
* getpagesize.h:  Removed, libiberty copes now.
1991-11-21 18:42:05 +00:00
Fred Fish 1a18a1856b Supply missing third arg to instance of call to do_type(). 1991-11-18 18:18:30 +00:00
Michael Tiemann 572acbbedc Make changes needed to handle code which uses ANSI-mangled names (and
new G++ 1.95 dbxout output).
1991-11-18 00:32:34 +00:00
David Henkel-Wallace 4c53d9ca84 ansi name abuse changes 1991-11-15 23:16:29 +00:00
Stu Grossman 61a7292f6f lint 1991-08-22 22:50:50 +00:00
John Gilmore ef98d5ac06 Mostly MIPS symbol-reading and general symbol-reading fixups. 1991-07-21 13:02:48 +00:00
John Gilmore 99a7de40cb Change GDB over to GNU General Public License version 2. 1991-06-04 07:31:55 +00:00
John Gilmore d11c44f1ee Roll in Tiemann changes for gcc -ansi. Fix assorted bugs. See ChangeLog. 1991-05-30 08:52:52 +00:00
Jim Kingdon 2cb3be2c94 * cplus-dem.c [__STDC__]: Make x{m,re}alloc return void*. 1991-05-03 06:03:54 +00:00
John Gilmore 8ffd75c8a9 Mips bringup and general cleanup
* cplus-dem.c:  Move CPLUS_MARKER define to after defs.h.
        * infptrace.c (PT_WRITE_D, PT_READ_D):  Use correct values.
        (This still doesn't seem to make MIPS bkpts work.)
        * mipsread.c:  Remove dup "Reading symbol data..." msg.
        (symbol_file_command, add_file_command):  Remove, obsol.
        * printcmd.c (ptype_command):  Say "an enum" rather than "a enum".
        Wrap output appropriately.
        * stack.c (locals_info, catch_info, args_info):  Check
        selected_frame rather than target_has_stack or coredumping.
        * valprint.c (type_print_varspec_suffix):  Wrap "ptype" output of
        enums appropriately.
1991-05-03 01:07:12 +00:00
Jim Kingdon e1ce8aa5ed The list of changes is too long to fit in the cvs log (since it truncates!).
Look at the ChangeLog for Apr 30 and May 1.
1991-05-02 04:28:42 +00:00
Jim Kingdon 55838914fd * cplus-dem.c (optable): Add "nw", "dl", "compound".
(cplus_mangle_opname): New function.
	(do_type): Add case 'Q'.
	* vax-opcode.h, expread.y, expprint.c, cplus-dem.c: Declare some
	things "const".
1991-04-26 22:58:14 +00:00
Jim Kingdon f88e7af831 * utils.c: Use CPLUS_MARKER not '$'.
* cplus-dem.c: Use CPLUS_MARKER not '$'.  If CPLUS_MARKER isn't
	defined, define it to '$'.
1991-04-19 23:50:06 +00:00
K. Richard Pixley dd3b648e8b Johns release 1991-03-28 16:28:29 +00:00