aboutsummaryrefslogtreecommitdiff
path: root/gdb/cplus-dem.c
AgeCommit message (Collapse)AuthorFilesLines
1992-12-08recording file deathK. Richard Pixley1-2280/+0
1992-08-26 * cplus-dem.c: Reorder args to most local functions to make themFred Fish1-201/+242
follow the consistent pattern of struct work_stuff pointer first, followed by pointer into string being demangled, followed by pointer to the string where the result is being stored, followed by other args. Also generally replace most variables of name "type" with "mangled" for consistency. They all pointed to the same string but half were one name and half the other. * cplus-dem.c (LONGERNAMES): Remove #ifndef's. * cplus-dem.c (demangle_qualified): Rewrite to clean up and allow use whenever a qualified name is being demangled. * cplus-dem.c (do_type): Qualified names are treated similarly to fundamental types, not as modifiers of fundamental types.
1992-08-14 * cplus-dem.c (cplus_markers): Add table for gnu style andFred Fish1-54/+221
use throughout, in place of compile time constant CPLUS_MARKER. * cplus-dem.c (ARM_VTABLE_STRING, ARM_VTABLE_STRLEN): Add. * cplus-dem.c (cfront_special): New function, as suggested by pfieland@stratus.com. * cplus-dem.c (forget_types): New function. * cplus-dem.c (cplus_demangle): Call gnu_special, moved from demangle_prefix(). * cplus-dem.c (mop_up): Call forget_types(). * cplus-dem.c (AUTO_DEMANGLING, GNU_DEMANGLING, LUCID_DEMANGLING): Use throughout, instead of checking current_demangling_style. * cplus-dem.c (demangle_signature): When finding an explicit start of function args, forget all remembered types for lucid/cfront style demangling. * cplus-dem.c (demangle_prefix): In a sequence of two or more underbar characters, use last pair as the delimiter. Hoist gnu_special() call up to cplus_demangle(). Call cfront_special() when appropriate. * cplus-dem.c (cplus_special): Fix virtual table name demangling for inherited classes. * cplus-dem.c (demangle_args): Document quirks of numbered references to previously seen types. * dbxread.c (read_ofile_symtab, process_one_symbol): Use AUTO_DEMANGLING rather than explicitly checking current_demangling_style. * demangle.h: Add some comments. * demangle.h (AUTO_DEMANGLING, GNU_DEMANGLING, LUCID_DEMANGLING, CFRONT_DEMANGLING): New macros. * dwarfread.c (LCC_PRODUCER): Remove trailing space, which is not found in the actual producer string produced by lcc. * dwarfread.c (handle_producer): Use AUTO_DEMANGLING rather than explicitly checking current_demangling_style.
1992-07-14 * Makefile.in (DEMANGLING_STYLE): New define to set defaultFred Fish1-77/+125
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-05 * Makefile.in (VERSION): Bump to 4.5.7.Fred Fish1-1/+3
* 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-04 * breakpoint.c, buildsym.c, c-exp.y, coffread.c, command.c,Fred Fish1-1/+1
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-06-29 * dbxread.c, i386-pinsn.c, i386-tdep.c, regex.c, solib.c, symmisc.c,Fred Fish1-15/+24
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-15 * Makefile.in (VERSION): Bump to 4.5.5.Fred Fish1-2/+8
* 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* dwarfread.c (decode_modified_type): Change type of first arg.Fred Fish1-51/+94
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-05-13 Changes to support GDB running on DOS using GO32 and H8 supportSteve Chamberlain1-6/+0
* 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-11 * cplus-dem.c (demangle_signature): Recognize misplaced '_' toFred Fish1-1/+10
avoid infinite loops while demangling bogus mangled names. * valprint.c (type_print_base): Minor fix for GNU style guide conformance.
1992-05-10 * Makefile.in (VERSION): Bump to 4.5.3Fred Fish1-652/+1195
* 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-06 * cplus-dem.c (do_args): Handle void args the same as others.Fred Fish1-4/+2
* 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-05 * Makefile.in (DEMANGLER): Define and default to cplus-dem.Fred Fish1-129/+137
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-04-29Various fixes to cplus_demangle(); see ChangeLog.Per Bothner1-57/+95
1992-03-29LintJohn Gilmore1-1/+0
1992-03-26 * c-exp.y, gdbtypes.h: Add builtin_type_signed_char.Per Bothner1-0/+9
* cplus-dem.c: Support "Sc" meaning "signed char".
1992-03-15Globs of changes. See the ChangeLog for details. Most related toFred Fish1-12/+0
using the new mmalloc package.
1992-03-03Tue Mar 3 15:11:52 1992 Michael Tiemann (tiemann@cygnus.com)Michael Tiemann1-3/+2
* 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-02-22* Check in Fred Fish's changes in these modules. FredJohn Gilmore1-44/+51
will make ChangeLog entries for all of them.
1992-02-20* defs.h: Include ansidecl.h and PARAMS macro. Use PARAMSJohn Gilmore1-2/+2
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-01-20Fix demangling of destructors, and fix a minor indentation problem.Michael Tiemann1-4/+13
1991-12-06Fix off-by-one error in cplus name demangling.Michael Tiemann1-1/+3
1991-11-21* defs.h: Incorporate param.h. All users changed.John Gilmore1-10/+2
* 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-18Supply missing third arg to instance of call to do_type().Fred Fish1-1/+1
1991-11-18Make changes needed to handle code which uses ANSI-mangled names (andMichael Tiemann1-67/+196
new G++ 1.95 dbxout output).
1991-11-15ansi name abuse changesDavid Henkel-Wallace1-16/+214
1991-08-22lintStu Grossman1-6/+3
1991-07-21 Mostly MIPS symbol-reading and general symbol-reading fixups.John Gilmore1-2/+2
1991-06-04Change GDB over to GNU General Public License version 2.John Gilmore1-13/+13
1991-05-30Roll in Tiemann changes for gcc -ansi. Fix assorted bugs. See ChangeLog.John Gilmore1-1/+1
1991-05-03 * cplus-dem.c [__STDC__]: Make x{m,re}alloc return void*.Jim Kingdon1-2/+4
1991-05-03 Mips bringup and general cleanupJohn Gilmore1-7/+7
* 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-02The list of changes is too long to fit in the cvs log (since it truncates!).Jim Kingdon1-5/+7
Look at the ChangeLog for Apr 30 and May 1.
1991-04-26 * cplus-dem.c (optable): Add "nw", "dl", "compound".Jim Kingdon1-4/+37
(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-19 * utils.c: Use CPLUS_MARKER not '$'.Jim Kingdon1-4/+11
* cplus-dem.c: Use CPLUS_MARKER not '$'. If CPLUS_MARKER isn't defined, define it to '$'.
1991-03-28Johns releaseK. Richard Pixley1-0/+1001