tried to read symbols from a file, for mapped objfiles. This fixes a
memory leak (actually a constant memory growth) due to reading symbol
files with no debug info and thus generating no psymtabs or symtabs.
Most typically happened with shared libraries.
(such as isupper(x)), instead of hard-wiring in ASCII-isms
(such as (x >= 'A' && x <= 'Z')).
(There are still more of these in other files.)
* main.c (defined_command): Lower-case the user's
new command before entering it. Needed because
command lookup is case-insensitive (and also lower-cases).
(Based on Metin's earlier patch.)
flags to disable use of GNU malloc/mmalloc.
* munch: Change SYSV rule to allow .text before the label,
as well as after, to work for AIX.
* gdbtypes.h: Minor clarifiction.
basis. See comments in objfiles.h and details in ChangeLog. Also remove
redundant definitions of FRAME_CHAIN_VALID from most of the tm-* files and
use a default definition in frame.h.
elfread.c (coff_symfile_finish): Add function, prototype, and
add to the xxxx_sym_fns struct for each file type. Also reformat
the xxxx_sym_fns vector to a standard format and add comments.
* coffread.c, mipsread.c, xcoffread.c, coffread.c, dbxread.c,
elfread.c (xxx_symfile_new_init, xxx_symfile_init, xxx_symfile_read):
Pass pointer to struct objfile rather than pointer to sym_fns.
Change references inside each function accordingly. Allocate any
symbol file specific info in the per-objfile memory region.
* dbxread.c (free_and_init_header_files): Break function into
free_header_files(), called from dbx_symfile_finish(), and
init_header_files(), called from dbx_new_init().
* dbxread.c (dbx_new_init): Move deallocation things to new
dbx_symfile_finish function.
* elfread.c (elf_new_init): Call buildsym_new_init().
* objfiles.c (free_objfile): Call the appropriate symfile_finish()
routine for the objfile before deallocating other stuff.
* sparc-tdep.c (get_longjmp_target): Cast target_read_memory arg.
* symfile.h: Move struct sym_fns to before struct objfile def.
Add sym_finish function pointer and change prototypes of other
function pointers to reflect passing struct objfile pointer rather
than struct sym_fns pointer.
* symfile.c: Remove now obsolete symtab_fns pointer.
* symfile.c (symfile_init): Renamed to find_sym_fns, and now only
locates the correct sym_fns struct for the given objfile.
* symfile.c (syms_from_objfile, symbol_file_add): Restructured
for better support of mapped symbol tables.
* symfile.c (symbol_file_command): Remove obsolete code using
symfile_fns.
* symfile.h: Remove duplicate declarations for symfile_objfile,
entry_point, and object_files.
* target.c (target_info): Compare symfile_objfile to NULL.
* xcoffread.c (aixcoff_new_init): Move deallocation stuff to
aixcoff_symfile_finish().
* symtab.c (list_symbols): demangle before pattern matching.
* symtab.c: Other fixes to improve handing of operators.
* valprint.c (type_print_base): Fix test for constructor.
* values.c (value_static_field): Allow evaluation of
CLASS::METHOD, returning a function pointer.
(2) Add fnf to GDB credits for SVr4 stuff. (Need to sift ChangeLog again for
more recent credits).
(3) document "mapped", "readnow" keywords (with file or symbol-file commands;
for now no mention of add-symbol-file in this context), -m and -mapped
cmd-line options, and associated explanations.
printpsyms.
(2) Fix errors found by makeinfo.
(3) Initial docn for "info proc" and its subcommands. Should probably
be expanded somewhat after implementation complete.
lucid.m4: config for Lucid/NCR (like "all.m4" but also turns on _LUCID__)
none.m4: turn _LUCID__ off by default
gdb.texinfo:
1) Use bold rather than italic for user input in intro, to avoid discord
with meta-variable convention throughout manual (jim@wrs.com suggestion).
2) Some mumbling about using GDB under Energize/Cadillac.
(conditionalized on _LUCID__, not included yet in general-doc config)
3) more remarks about debugging optimized code, incl vanishing unused vars
(rms/gnu/net suggestion).
4) @emph replaces @i in a few spots (emphasis should affect info file as
well as printed manual).
5) "memory tracing", "breakpoint on variable modification" index entries
added, pointing to watchpoints (gnu suggestion).
6) Less passive, more index entries, in breakpoint-number description
7) doc new convenience var $bpnum (due to grossman?)
8) Update "info breakpoints" to describe new Grossman format; note now
synonymous with "info watchpoints".
9) Describe negative (GDB internal) breakpoints and new "info all-breakpoints"
10) Slight change to description of colon-colon GDB expression notation,
describing function::var as well as file::var and noting var is static
(lmb question, gnu suggestion)
11) Doc Per's new &(&foo) for debugging C++
12) Rephrase paragraph in configure appendix to avoid overfull box
(in *large* format!)
13) Additional warning re VPATH feature required for --srcdir= config.
(gnu suggestion)
checked in earlier. These are Makefiles relevant to the progressive
release currently in progress.
* added exec_prefix
* default bindir now exec_prefix/bin
* default libdir now exec_prefix/lib
* default mandir now prefix/man
* default infodir now prefix/info
* added oldincludedir, default NULL
* remove all traces of the old -subdirs and -namesubdir support,
including code, for loops, and all subdir/unsubdir stuff.
* remove old style staging targets {de-}stage[1234], comparison,
bootstrapN, from all but the bootstrappable tools.
* added check targets.
* removed any "Last Mod" lines.
* forced copyrights to '92 and shifted some from Cygnus to FSF.
* added tooldir and program_prefix where needed.
* updated texinfo and man pages, removed all references to multiple
hosts or targets.