without masking, since it is signed and will later be compared
against signed quantities. The right fix is probably to make
it all unsigned, but this is a small, safe fix for this release.
FIXME -- make the real change sometime soon.
(Imported from progressive.)
* tm-m88k.h, tm-umax.h: Avoid sizeof() in REGISTER_xxx macros,
since they define the target, not the host.
* m88k-pinsn.c: Fix typo.
Patches by Paul Eggert <eggert@twinsun.com>.
* valarith.c (value_zerop): -0.0 is still zero.
* eval.c (evaluate_subexp): Avoid NaN anomalies in float compares.
disconnecting from controlling terminal, to avoid gdb hanging
on SVR4. Fixes bug reported by Oliver Okrongli.
* procfs.c (PROC_NAME_FMT): Change format to match default used
by system, as suggested by Oliver Okrongli.
* tm-68k.h (FRAME_FIND_SAVED_REGS): Apply missing parentheses
bug fix from Brent Townshend (bst%tt@cam.ORG).
* c-exp.y (nonempty_typelist): Fix memory overrun bug reported
by turlais@rechser.total.fr.
* dwarfread.c (decode_subscr_data): Fix bug in calculation of
length of non-zero lowerbound arrays. Bug fix from Peggy Fieland.
* objfiles.h (unlink_objfile): Add prototype.
* objfiles.c (unlink_objfile): Add function.
* objfiles.c (free_objfile): Call unlink_objfile.
* objfiles.c (allocate_objfile): Call unlink_objfile on newly
remapped objfiles. Bug reported by hahn@sunshine.labs.tek.com.
Also, discard old possibly bogus sf struct.
* symfile.c (symbol_file_add): Call init_entry_point_info() and
find_sym_fns() for remapped symbol files, in case of any changes
since the last mapping.
* 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.
It gets permanently stuck in many OSes.
* breakpoint.c, infcmd.c, infrun.c, utils.c: Change many printfs
to printf_filtered.
* breakpoint.c: Improve help text for info breakpoints.
It gets permanently stuck in many OSes.
* breakpoint.c, infcmd.c, infrun.c: Change many printfs to printf_filtered.
* breakpoint.c: Improve help text for info breakpoints.
* 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.
29k-share/dfe/yank.c, vx-share/xdr_ptrace.c, vx-share/xdr_regs.c:
Remove -I29k-share, -Ivx-share from Makefile.in. Make #includes
relative to each source file.
* 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.
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.
* Makefile.in (DEMANGLE_OPTS): Add, default to -Dnounderscore.
* configure.in: Simplify ncr3000 gdb_host logic, add gdb_target.
* dwarfread.c (struct_type): Apply fix from Peggy Fieland for
proper handling of bit fields.
* gdbtypes.h (struct type): Clarify use of field.bitpos.
* symtab.h: Fix couple of misspellings in comments.
* value.h (struct value): Clarify use of bitpos.
* value.h (unpack_field_as_long): Change prototype, returns
LONGEST.
* values.c (unpack_field_as_long): Change return type to LONGEST,
sign extend unpacked fields that are signed, other rewriting.
* config/ncr3000.mt: New target config file.
functions which handle overwriting of forward-referenced types
for stabs file reading.
(lookup_{reference,pointer,function}_type): These just call
the make_*_type functions with a null storage alloc parameter.
* gdbtypes.h (make_{reference,pointer,function}_type): Declare.
* xcoffread.c (smash_to_pointer_type): Remove, no longer used.
* buildsym.c (dbx_lookup_type): Zero result for (-1,-1) arg.
(dbx_alloc_type): Make it easier to understand. No funct change.
(define_symbol: 't'): Don't put the typedef name into the name of
the struct, union, or enum. Bugfix.
(read_type: '*', '&', 'f'): Add comments. Use make_XXX_type
routines to properly handle overwriting preallocated types so that
forward references will work.
(read_enum_type): Force enum values to file scope, due to bug in
Sun compiler output. FIXME, fix later.
Remove unused header_file_prev_index mechanism. It was already
obsolete in gdb-3.5. These comments appeared in 3.5:
/* This code was used before I knew about the instance codes.
My first hypothesis is that it is not necessary now
that instance codes are handled. */
* dbxread.c (add_new_header_file): Remove header_file_prev_index.
* buildsym.h: Remove it and prev_index that saves it.
* buildsym.c (push_subfile, pop_subfile, start_symtab): Remove it.
* solib.c (special_symbol_handling): When called from core files,
must set up debug_addr. Don't print error messages, just return.
* symmisc.c (print_symbol): Less ascii diarrhea for enums, please.
libiberty/strsignal.c. Widespread changes to use libiberty/strerror.c
functions for errno manipulations and libiberty/strsignal.c for signo
(signals) manipulations.
and use it to decide when to print the actual type name rather than
trying to invent the name of a fundamental type. This clears up the
confusion between int/long when they are the same sizes, removes one
obstacle to multi-language support (previously valprint.c thought
everything was a C type), and allows gdb to support distinctions between
explicitly and implicitly signed types when the compiler supports such
distinction in the debug output (as does every ANSI compiler I tested
except for gcc).
and fix all usages to be independent of host/target integer size
mismatches. However, cross debugging will still not work until the
sign extension issue is resolved either by fixing the bfd library
or implementing sign extension in the gdb code.
too high or when skipping `forwards' moves us backwards.
(parse_type): Print mis-guessed tag name in complaint.
(parse_external): Eliminate cur_stab and obscure top_stack clobbers.
(parse_procedure): Do not attempt to create symbols; just fill in
the SYMBOL_VALUE field of a .gdbinfo. symbol if we can find one.
(psymtab_to_symtab_1): Split up `stabs' from `native ecoff' code
for clarity. Set top_stack before calling parse_external. In
stabs, sort symbols before calling parse_procedure.
* mipsread.c: Lint.
* symmisc.c (std_in, std_out, std_err): Add vars to access std
FILE *'s when debugging GDB (e.g. as args to dump_symtab).
* Makefile.in: Remove stage* targets. Avoid echo on recursive
makes. Eliminate doc/Makefile from tar.Z file if doc/Makefile.in
exists.
* mipsread.c: Cleanup. Add more complaints for unhandled cases.
Remove new symbol types and such to ../include/coff/symconst.h.
(parse_symbol): Simplify code for parsing struct/enum/unions.
(parse_type): Handle `long long' types.
(upgrade_type): Handle `const' qualifier.
(parse_partial_symbols): fix indentation, clean a bit.