* command.c (do_setshow_command): var_uintegers are unsigned.
* sparc-tdep.c (save_insn_opcodes, restore_insn_opcodes):
unsigned, since they use hex values with the high bit set.
size field a define (DBX_STRINGTAB_SIZE_SIZE). Ensure that the
offset to the string table is nonzero and handle the nonexistant
string table case, should it occur. Ensure that the string table
size read from the file is reasonable, with a minimum lower bound
of DBX_STRINGTAB_SIZE_SIZE instead of zero.
(FLAGS_TO_PASS): Added CXX and CXXFLAGS.
(CC_FOR_TARGET, CXX, CXX_FOR_TARGET): New variables.
(TARGET_FLAGS_TO_PASS): New variable.
(SUBDIRS): Added testsuite.
(all): Build testsuite using TARGET_FLAGS_TO_PASS, so that
testsuite is compiled with CC_FOR_TARGET rather than CC.
reported by mycroft@gnu.ai.mit.edu.
(Ultrix 2.2 support from Michael Rendell <michael@mercury.cs.mun.ca>)
* configure.in (vax-*-ultrix2*): New triplet.
* config/vaxult2.mh: New file.
* xm-vaxult2.h: New file.
* demangle.c: Change all references to cfront to ARM, since the
actual algorithm is the one specified in the Annotated Reference
Manual. This was confusing users into thinking that full cfront
support was implemented.
* dwarfread.c (CFRONT_PRODUCER): Remove, was never really used.
* eval.c (evaluate_subexp): For STRUCTOP_PTR pass the arg type
directly to lookup_struct_elt_type, which will do the
dereferencing itself.
* gdbtypes.c (lookup_struct_elt_type): Expand comments. Fix
NULL dereferencing bug for unnamed structs, comment out
questionable code.
so that it only happens on big-endian targets; so that it only
happens if the short or char argument is aligned on an int
boundary; and so that it changes the location, rather than the
type, of the argument. These changes tend to parallel similar
(old) changes in stabsread.c.
* coffread.c (coff_read_enum_type): Use the specified size for
enums, don't assume that they are int-sized.
* c-valprint.c (c_val_print): Don't assume enums are the same as
ints.
Renamed gdb.t*/in-gdbme* to gdb.t*/gdbme*. Changed to use CC, CXX
instead of CC_FOR_TARGET, CXX_FOR_TARGET. Added mostlyclean and
distclean targets. Built executables via .o files. Adjusted
tests to account for source files in $(srcdir) rather than
$(objdir).
* lib/gdb.exp (runto): Don't expect () after the function name,
because it may have arguments.
of demangled name fields to NULL if no demangling exists for
a symbol. SYMBOL_INIT_LANGUAGE_SPECIFIC does this for new
symbols if their language is known at the time they are created,
but sometimes the language is not known until later.
gdb.t03/ptype.exp, gdb.t06/break.exp, gdb.t12/scope.exp: Added
expected failures for mips-idt-* and mips-sgi-*.
* gdb.t00/default.exp (attach): Kill process if requested.
* gdb.t00/help.exp (help target core, help target): Accept a gdb
that does not read core files.
* gdb.t01/run.exp: Removed checks for exit status code.
* gdb.t03/in-gdbme.c: Make explicit call to malloc to ensure that
it is linked in.
* gdb.t03/ptype.exp: Increase timeout when calling malloc.
* gdb.t04/setvar.exp, gdb.t05/expr.exp: Use runto function where
appropriate, rather than doing it by hand.
* gdb.t07/watchpoint.exp: If mips-idt-*, reload file after first
execution.
* gdb.t10/crossload.exp: Kill existing program if needed.
* gdb.t15/funcargs.exp: Use delete_breakpoints function where
appropriate, rather than doing it by hand. Always increase
timeout for this test, not just for VxWorks.
* gdb.t31/chillvars.exp (test_structs): New proc to test printing
of Chill STRUCT types and STRUCT values.
* gdb.t31/chillvars.exp (test_strings): Expect "CHAR" now, rather
than "char".
* gdb.t31/in-gdbme.ch (simple_struct, nested_struct, struct1,
struct2): New struct definitions and initializations to test
simple Chill STRUCT types.
**** end-sanitize-chill ****
* ch-typeprint.c (chill_print_type_base): Name changed to
chill_type_print_base to match pattern for C and C++ names.
* ch-typeprint.c (chill_print_type): Change "char" to "CHAR"
to be consistent with other usages.
* ch-typeprint.c (chill_type_print_base): Add support for
printing Chill STRUCT types.
* ch-valprint.c: Include values.h.
* ch-valprint.c (chill_print_value_fields): New function and
prototype for printing Chill STRUCT values.
* ch-valprint.c (chill_val_print): Fix call to val_print_string
that was being called with two args instead of three.
* ch-valprint.c (chill_val_print): Call chill_print_value_fields
to print Chill STRUCT values.
**** end-sanitize-chill ****
the null byte at the end of strings.
* gdb.t00/default.exp: Make show version insensitive to copyright
date.
* gdb.t16/in-gdbme.c (ctable1, ctable2): Make explicitly unsigned
to avoid dependencies on target char signedness.
* gdb.t16/printcmds.exp: Update expected results for explicitly
unsigned char.
* gdb.t16/printcmds.exp: Remove setup_xfails for i960 that should
now work.
* gdb.t21/demangle.exp: Add many more patterns for template
demangling, most of them being expected failures.
* gdb.t21/demangle.exp (proc demangle): Quote the demangled
string we are matching for, to match on the whole string.
* gdb.t21/demangle.exp: Add many new test strings to demangle,
and fix a whole bunch that had incorrect expected output but were
passing anyway because of the bug in "proc demangle".
**** start-sanitize-chill ****
* gdb.t31/chillvars.exp: Remove setup_xfail for printing string
type.
* gdb.t31/in-gdbme.ch: Uncomment string4, now compiles.
**** end-sanitize-chill ****
change that now emits debugging info with the type long for Chill
longs.
* dwarfread.c (read_tag_string_type): Rewrite to allow forward
references of TAG_string_type DIEs in user defined types.
protocol.
* config/idt.mt: New file; uses remote-mips.c
* configure.in (mips-idt-ecoff): New target; uses idt.mt.
* mips-tdep.c (mips_fpu): New variable; controls use of MIPS
floating point coprocessor.
(mips_push_dummy_frame): If not mips_fpu, don't save floating
point registers.
(mips_pop_frame): If not mips_fpu, don't restore floating point
registers.
(_initialize_mips_tdep): New function; let the user reset mips_fpu
variable.
* tm-mips.h (EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE): If not
mips_fpu, don't use fp0 as floating point return register.
(FIX_CALL_DUMMY): If not mips_fpu, don't save floating point
registers.
Also added remote-mips.c to .Sanitize file.
Migrated dejagnu testcases and support files for testing nm to
gdb/testsuite from deja-gnu. These files were moved "as is"
with no modifications. This migration is part of a major overhaul
of dejagnu. The modifications to these testcases, etc., which
will allow them to work with the new version of dejagnu will be
made in a future update.
* main.c (print_gdb_version): Update copyright year to 1993.
* nm-hp300bsd.h: Decide whether this is BSD 4.3 or 4.4,
conditionalize this file on it. FIXME, right way is to split
these into two config files.
(ATTACH_DETACH): Define for BSD 4.4
(PTRACE_ARG_TYPE): caddr_t for BSD 4.4, unset for 4.3.
(U_REGS_OFFSET): Revise for 4.4.
(REGISTER_U_ADDR): Separate for 4.4, but it doesn't work yet.
* xm-hp300bsd.h: Move definitions of UINT_MAX, INT_MAX, INT_MIN,
LONG_MAX into this file to avoid cpp "redefinition" warnings.
* m68k-pinsn.c (BREAK_UP_BIG_DECL, AND_OTHER_PART): #if __GNUC__,
define to kludge the large opcode table into two smaller tables,
since GCC take exponential space to build the table. Lint.
(NOPCODES): Remove, use "numopcodes" from opcode/m68k.h instead.
* config/hp300bsd.mh (REGEX, REGEX1): Define.
* m68k-pinsn.c (BREAK_UP_BIG_DECL, AND_OTHER_PART): #if __GNUC__,
define to kludge the large opcode table into two smaller tables,
since GCC take exponential space to build the table. Lint.
(NOPCODES): Remove, use "numopcodes" from opcode/m68k.h instead.
* xm-hp300bsd.h: Define PSIGNAL_IN_SIGNAL_H and put a compatible
definition here, to handle both BSD 4.3 and 4.4 systems.
* tm-i386bsd.h (NUM_REGS): There are only eleven, not twelve.
of initial connection attempt with INTERRUPT. Treat a timeout
while waiting for remote packet like a retry, unless the remote
side is actively running user code. Fix a few long printf_filtered's.
* xcoffread.c (read_xcoff_symtab): Don't use null symbol name for
trampoline symbols.
* buildsym.c (start_subfile): Allow null file name.
* stabsread.c (dbx_lookup_type): Handle negative type numbers.
Previously, would bogusly index off the bottom of type_vector.
(rs6000_builtin_type): Accept type number as argument.
(read_type, case '-'): Handle negatives like any other type number.
* symfile.c (deduce_language_from_filename): Handle null name.
this struct symbol. Set it up in initialize_xcoffread.
[This broke when Fred changed "struct symbol".]
(read_xcoff_symtab, xcoff_symfile_read): Surround code that only
works on real rs/6000 target with #ifndef FAKING_RS6000.
xcoffread.c:builtin_type.
* xcoffread.c (builtin_type): Move to stabsread. Remove
IBM6000_HOST dependency. Move misplaced comments.
(various): Change printf's to complaints.
(patch_block_stabs, process_xcoff_symbol case C_DECL): Add
objfile argument to read_type calls under #if 0.
(process_xcoff_symbol case C_RSYM): Fix typo in #ifdef.
* xcoffexec.c (map_vmap): Don't allocate an objfile for the exec_file.
* Makefile.in: xcoffread.o is not built by default.
* config/rs6000.mh (NATDEPFILES): xcoffread.o is native only.
* doc/gdbint.texinfo: Eliminate IBM6000_HOST, document
IBM6000_TARGET.
VALUE_LVAL to be lval_memory so that we don't try to modify wild
register numbers when user tries to modify elements in structs
passed as arguments.
* inflow.c (child_terminal_info): Move banner outside of system
specific #ifdefs.
* tm-hppa.h (REG_STRUCT_HAS_ADDR): Define this for HPPA, which
passes struct/union arguments by address.
* Based on patch from Martin Walker <maw@netcom.com>:
* nm-i386sco4.h: New file. Like nm-i386sco.h, but define
ATTACH_DETACH, PTRACE_ATTACH and PTRACE_DETACH.
* config/i386sco4.mh (NAT_FILE): Use nm-i386sco4.h.
that begin with CPLUS_MARKER (often '$'), but don't die. Fix
suggested by gb@cs.purdue.edu (Gerald Baumgartner).
(read_cpp_abbrev): Don't use the class name as part of the
vtable pointer member name (_vptr$) in $vf abbrevs or unrecognized
abbrevs. Inspired by Mike Tiemann.
(read_tilde_fields): Comment. Remove ancient dead code.
Remove erroneous but non-dead code. Simplify. Add complaints.
(in general): Remove extraneous (parentheses) in return
statements.
<Ulf.Lunde@kvatro.no> and Dag H. Wanvik <Dag.H.Wanvik@kvatro.no>.
* coffread.c (getfilename): Eliminate COFF_NO_LONG_FILE_NAMES
test, which is apparently left over from when we used native
include files and couldn't depend on the member names being there.
* tm-3b1.h, tm-altos.h, tm-i386v.h: Don't set it.
ALso fix this in tm-i860.h which isn't ChangeLogged since it's sanitized out
for lack of paperwork.
(*.tab.c): Change dependency on Makefile to depend on
Makefile.in, otherwise it always rebuilds after configuring.
Force output *.tab.c file into current directory even in "make"
versions that rewrite dependent file names used in command lines.
* TODO: Remove some things we did.
* am29k-opcode.h, convx-opcode: Remove; now in ../include/opcode.
* os68k-xdep.c: Remove; useless file (os68k is a target only).
* convex-pinsn.c: Use ../include/opcode/convex.h. Add CONST.
* symtab.h: Eliminate unnamed unions and structs.
* c-exp.y (exp): Use lcurly and rcurly for arrays and UNOP_MEMVAL
constructs.
* parse.c (free_funcalls): Moved prototype from parser-defs.h,
made function static.
* parse.c (struct funcall): Moved struct def from parser-defs.h.
* parse.c (funcall_chain): Moved from parser-defs.h, made static.
* parse.c (start_arglist):
* parser-defs.h (free_funcalls): Moved prototype to parse.c.
* parser-defs.h (struct funcall): Moved struct def to parse.c.
* parser-defs.h (funcall_chain): Moved to parse.c.
* printcmd.c (print_frame_nameless_args): Fix prototype.
* tm-mips.h (setup_arbitrary_frame): Fix prototype.
* tm-sparc.h (setup_arbitrary_frame): Fix prototype.
* valops.c (typecmp): Moved prototype from values.h.
* value.h (typecmp): Moved prototype to valops.c, made static.
**** start-sanitize-chill ****
* ch-exp.y (yylex): Change way control sequences are disabled.
**** end-sanitize-chill ****
inside_entry_func): PC of zero is always "bottom of stack".
* printcmd.c (print_frame_args, print_frame_nameless_args):
Let print_frame_nameless_args decide whether there are any,
laying groundwork for possibly later printing 29K args for
functions where we have tag words but no symbols.
Let print_frame_nameless_args decide whether there are any,
laying groundwork for possibly later printing 29K args for
functions where we have tag words but no symbols.
as there are (up to MAXARGS). Pass all of them in argc, argv
format to SETUP_ARBITRARY_FRAME. Put the burden of checking how
many there were, onto SETUP_ARBITRARY_FRAME.
* tm-mips.h, tm-sparc.h: Corresponding changes.
* mips-tdep.c, sparc-tdep.c: Ditto.
* mipsread.c (parse_partial_symbols): Complain about block
indexes that go backwards. Fix from Peter Schauer.
* symfile.c (syms_from_objfile, symbol_file_add): Allow a
symbol-file that has no linkage symbols to be read.
* tm-rs6000.h, xm-rs6000.h: (SIGWINCH_HANDLER and friends): Move
from tm- file to xm-file, since they're host dependent.
* valarith.c (value_binop): Typo.
an integral number of times.
* language.c (binop_type_check): Extend BINOP_CONCAT for self
concatenation case.
* valarith.c (value_concat): Rewrite to support self
concatenation an integral number of times.
**** start-sanitize-chill ****
* Makefile.in (ch-exp.tab.c): Change "expect" message.
* ch-exp.y (FIXME's): Make all FIXME tokens distinct, to
eliminate hundreds of spurious shift/reduce and reduce/reduce
conflicts that mask the 5 real ones.
* ch-exp.y (STRING, CONSTANT, SC): Remove unused tokens.
* ch-exp.y (integer_literal_expression): Remove production,
no longer used.
**** end-sanitize-chill ****
Formatting these files now depends on the recently designed
Texinfo conditionals: to format successfully, you must use very
recent versions (not yet distributed by FSF) of texinfo.tex and makeinfo.c.
The new Texinfo commands are @set, @clear, @ifset, @ifclear, and @value.
Recent texinfo-2 Beta distributions contained partial implementations.
texi2roff does not yet support these commands.
There are miscellaneous clean-ups to Makefile.in as well.
implied that "no side effects" was nonfunctional.
* eval.c (evaluate_subexp): Add BINOP_CONCAT case to deal with
character string and bitstring concatenation.
* expprint.c (dump_expression): Add case for BINOP_CONCAT.
* expression.h (exp_opcode): Add BINOP_CONCAT.
* gdbtypes.h (type_code): Add TYPE_CODE_BITSTRING.
* language.c (string_type): Add function to determine if a type
is a string type.
* language.c (binop_type_check): Add case for BINOP_CONCAT.
* valarith.c (value_concat): New function to concatenate two
values, such as character strings or bitstrings.
* valops.c (value_string): Remove error stub and implement
function body.
* value.h (value_concat): Add prototype.
**** start-sanitize-chill ****
* ch-exp.y (operand_3): Add actions for SLASH_SLASH (//).
* ch-exp.y (yylex): Recognize SLASH_SLASH.
* ch-lang.c (chill_op_print_tab): Add SLASH_SLASH (//) as
BINOP_CONCAT.
**** end-sanitize-chill ****
of array constants using the obvious syntax.
* c-valprint.c (c_val_print): Set printed string length.
* dwarfread.c (read_tag_string_type): New prototype and
function that handles TAG_string_type DIEs.
* dwarfread.c (process_dies): Add case for TAG_string_type
that calls new read_tag_string_type function.
* expprint.c (print_subexp): Add support for OP_ARRAY.
* gdbtypes.c (create_range_type, create_array_type): Inherit
objfile from the index type.
**** start-sanitize-chill ****
* ch-typeprint.c (chill_print_type): Add case for
TYPE_CODE_STRING.
* ch-valprint.c (chill_val_print): Fix case for
TYPE_CODE_STRING.
**** end-sanitize-chill ****
constants with an explicit null byte terminator. OP_STRING is
now used for real string types.
* c-lang.c (builtin_type_*): Move declarations to lang.c since
they are used by all languages.
* c-lang.c (_initialize_c_language): Move initializations of
builtin_type_* to lang.c.
* c-typeprint.c (c_type_print_varspec_prefix,
c_type_print_varspec_suffix): TYPE_CODE_PASCAL_ARRAY renamed
to TYPE_CODE_STRING.
* c-valprint.c (c_val_print): Change the way character arrays
are printed as strings to be consistent with the way strings
are printed when pointer-to-char types are dereferenced.
Remove test of print_max before calling val_print_string, which
now does it's own test.
* eval.c (evaluate_subexp): Add case for OP_ARRAY.
* expprint.c (print_subexp, dump_expression): Add case for OP_ARRAY.
* expression.h (enum exp_opcode): Add OP_ARRAY and document.
* gdbtypes.c (builtin_type_*): Add declarations moved from
c-lang.c.
* gdbtypes.c (create_string_type): New function to create real
string types.
* gdbtypes.c (recursive_dump_type): TYPE_CODE_PASCAL_ARRAY
renamed to TYPE_CODE_STRING.
* gdbtypes.c (_initialize_gdbtypes): Add initializations of
builtin_type_* types moved from c-lang.c.
* gdbtypes.h (enum type_code): TYPE_CODE_PASCAL_ARRAY renamed
to TYPE_CODE_STRING.
* gdbtypes.h (builtin_type_string): Add extern declaration.
* gdbtypes.h (create_string_type): Add prototype.
* m2-lang.c (m2_create_fundamental_type): TYPE_CODE_PASCAL_ARRAY
renamed to TYPE_CODE_STRING.
* m88k-tdep.c (pushed_size): TYPE_CODE_PASCAL_ARRAY renamed to
TYPE_CODE_STRING.
* mipsread.c (_initialize_mipsread): TYPE_CODE_PASCAL_ARRAY
renamed to TYPE_CODE_STRING.
* parse.c (length_of_subexp, prefixify_subexp): Add case for
OP_ARRAY.
* printcmd.c (print_formatted): Recognize TYPE_CODE_STRING.
* typeprint.c (print_type_scalar): TYPE_CODE_PASCAL_ARRAY renamed
to TYPE_CODE_STRING.
* valops.c (allocate_space_in_inferior): New function and
prototype, using code ripped out of value_string.
* valops.c (value_string): Rewritten to use new function
allocate_space_in_inferior, but temporarily disabled until some
other support is in place.
* valops.c (value_array): New function to create array constants.
* valprint.c (val_print_string): Add comment to document use,
complete rewrite to fix several small buglets.
* value.h (value_array): Add prototype.
* value.h (val_print_string): Change prototype to match rewrite.
**** start-sanitize-chill ****
* ch-valprint.c (chill_val_print): Add case for TYPE_CODE_STRING.
* ch-exp.y (match_character_literal): Disable recognition of
control sequence form of character literals and document why.
**** end-sanitize-chill ****
read_memory to get byte order right.
* hppah-tdep.c (find_unwind_info): Don't read in unwind info
anymore. This is done in paread.c now. We expect unwind info
to hang off of objfiles, and search all of the objfiles when until
we find a match.
* (skip_trampoline_code): Cast arg to target_read_memory.
* objfiles.h (struct objfile): Add new field obj_private to hold
per object file private data (unwind info in this case).
* paread.c (read_unwind_info): New routine to read unwind info
for the objfile. This data is hung off of obj_private.
* tm-hppa.h: Define struct obj_unwind_info, to hold pointers to
the unwind info for this objfile. Also define OBJ_UNWIND_INFO to
make this easier to access.
* c-valprint.c (c_val_print): Extract code for printing methods
and move it to cp_print_class_method in cp-valprint.c.
* c-valprint.c (c_val_print): Extract code to print strings and
move it to val_print_string in valprint.c.
* cp-valprint.c (cp_print_class_method): New function using
code extracted from c_val_print.
* valprint.c (val_print_string): New function using code
extracted from c_val_print.
* value.h (val_print_string): Add prototype.
**** start-sanitize-chill ****
* ch-exp.y (CHARACTER_STRING_LITERAL): Set correct token type.
* ch-exp.y (literal): Add action for CHARACTER_STRING_LITERAL.
* ch-exp.y (tempbuf, tempbufsize, tempbufindex, GROWBY_MIN_SIZE,
CHECKBUF, growbuf_by_size): New variables, macros, and support
functions for implementing a dynamically expandable temp buffer.
* ch-exp.y (match_string_literal): New lexer function.
* ch-exp.y (match_bitstring_literal): Dynamic buffer code
removed and replaced with new CHECKBUF macro.
* ch-exp.y (yylex): Call match_string_literal when appropriate.
* ch-valprint.c (ch_val_print): Add code for TYPE_CODE_PTR.
**** end-sanitize-chill ****
comment.
* gdbtypes.h, gdbtypes.c: Use const in decl of
cplus_struct_default, now that pa-gas assembler has been fixed.
* hppah-nat.c: Formatting.
* hppah-tdep.c: Remove lots of useless externs for variables we
don't use.
* (find_unwind_entry): Speed up by using binary search, and a one
entry cache.
* (rp_saved): New routine to see what unwind info says about RP
being saved on the stack frame.
* (frame_saved_pc): Look for prologue to see if we need to
examine the stack for the saved RP or not.
* (init_extra_frame_info): Check for prologue, instead of
framesize to determine if we are frameless or not.
* (frame_chain_valid): Stop backtraces when we run into _start.
* (push_dummy_frame): Reformat to make more readable.
* (find_dummy_frame_regs): ditto.
* (hp_pop_frame): ditto.
* (hp_restore_pc_queue): small cleanup.
* (hp_push_arguments): ditto.
* (pa_do_registers_info): ditto.
* (skip_prologue): New routine created from SKIP_PROLOGUE macro.
* tm-hppa.h: Move contents of SKIP_PROLOGUE into hppah-tdep.c.
* Define FRAME_CHAIN_VALID.
* Turn on BELIEVE_PCC_PROMOTION so that we can access char args
passed to functions.
* paread.c (pa_symtab_read): Use new bfd conventions for
accessing linker symbol table.
* (pa_symfile_init): Access embedded STAB info via BFD section
mechanism and related macros.
* Handle recursive traps.
* Remove all trap init code. This needs to be done by the
environment.
* (set_mem_fault_trap): Call exceptionHandler() to setup this
trap.
* (handle_exception): See if we are at breakinst, if so, then
advance PC sp that users can just step out of breakpoint().
* (case 'G'): Don't let GDB hack CWP. Also, copy saved regs to
new place if SP has changed.
* (case 's'): Get rid of this, we can't do it yet.
* (case 't'): New command to test any old random feature.
* (case 'r'): New command to reset the system.
* (breakpoint): Add label to breakpoint trap instruction so that
handle_exception() can detect where we are and get past the
breakpoint trivially.
binary files oring in the right bit.
* main.c, source.c, state.c, symmisc.c: use macros defined in
fopen-{bin|both} when fopening files.
* remote-hms.c, remote-sim.c: lint
from a configuration file (typically including <limits.h>), or to
TARGET_CHAR_BIT if CHAR_BIT is not defined.
* eval.c (evaluate_subexp): Use new BYTES_TO_EXP_ELEM macro.
* eval.c (evaluate_subexp): Add case for OP_BITSTRING.
* expprint.c (print_subexp): Use new BYTES_TO_EXP_ELEM macro.
* exppritn.c (print_subexp, dump_expression): Add case for
OP_BITSTRING.
* expression.h (OP_BITSTRING): New expression element type for
packed bitstrings.
* expression.h (EXP_ELEM_TO_BYTES, BYTES_TO_EXP_ELEM): New
macros to convert between number of expression elements and bytes
to store that many elements.
* i960-tdep.c (leafproc_return): Use new macros to access
minimal symbol name and address fields.
* m88k-pinsn.c (sprint_address): Use new macros to access
minimal symbol name and address fields.
* nindy-tdep.c (nindy_frame_chain_valid): Use new macro to access
minimal symbol address field.
* parse.c (write_exp_elt, write_exp_string, prefixify_expression,
parse_exp_1): Use new EXP_ELEM_TO_BYTES macro.
* parse.c (write_exp_string, length_of_subexp, prefixify_expression):
Use new BYTES_TO_EXP_ELEM macro.
* parse.c (write_exp_bitstring): New function to write packed
bitstrings into the expression element vector.
* parse.c (length_of_subexp, prefixify_subexp): Add case for
OP_BITSTRING.
* parser-defs.h (struct stoken): Document that it is used for
OP_BITSTRING as well as OP_STRING.
* parser-defs.h (write_exp_bitstring): Add prototype.
**** start-sanitize-chill ****
* ch-exp.y (BIT_STRING_LITERAL): Change token type to sval.
* ch-exp.y (NUM, PRED, SUCC, ABS, CARD, MAX, MIN, SIZE, UPPER,
LOWER, LENGTH): New tokens for keywords.
* ch-exp.y (chill_value_built_in_routine_call, mode_argument,
upper_lower_argument, length_argument, array_mode_name,
string_mode_name, variant_structure_mode_name): New non-terminals
and productions.
* ch-exp.y (literal): Useful production for BIT_STRING_LITERAL.
* ch-exp.y (match_bitstring_literal): New lexer support function
to recognize bitstring literals.
* ch-exp.y (tokentab6): New token table for 6 character keywords.
* ch-exp.y (tokentab5): Add LOWER, UPPER.
* ch-exp.y (tokentab4): Add PRED, SUCC, CARD, SIZE.
* ch-exp.y (tokentab3): Add NUM, ABS, MIN, MAX.
* ch-exp.y (yylex): Check tokentab6.
* ch-exp.y (yylex): Call match_bitstring_literal.
**** end-sanitize-chill ****
* eval.c (evaluate_subexp): Handle new BINOP_MOD.
* expprint.c (dump_expression): Handle new BINOP_MOD.
* language.c (binop_type_check): Handle new BINOP_MOD.
* main.c (float_handler): Re-enable float handler when hit.
* valarith.c (language.h): Include, need current_language.
* valarith.c (TRUNCATION_TOWARDS_ZERO): Define default macro
for integer divide truncates towards zero for negative results.
* valarith.c (value_x_binop): Handle BINOP_MOD if seen.
* valarith.c (value_binop): Allow arithmetic operations on
TYPE_CODE_CHAR variables. Add case to handle new BINOP_MOD.
**** start-sanitize-chill ****
* ch-exp.y (operand_4): Add useful actions for MOD and REM.
* ch-exp.y (tokentab3): Add MOD and REM.
* ch-exp.y (yylex): Set innermost_block for symbols found
in local scopes. Return LOCATION_NAME for local symbols.
* ch-lang.c (chill_op_print_tab): Fix MOD entry to use
BINOP_MOD instead of BINOP_REM. Add REM entry, using BINOP_REM.
**** end-sanitize-chill ****
don't create or use fork if CANT_FORK is defined.
* serial.h, ser-go32.c: now compiles, but "the obvious problems of
code written for the IBM PC" remain.
* xm-go32.h: define CANT_FORK
* eval.c (evaluate_subexp_with_coercion): Only coerce arrays
to pointer types when the current language is C. It loses for
other languages when the lower index bound is nonzero.
* valarith.c (value_subscript): Take array lower bounds into
account when performing subscripting operations.
* valops.c (value_coerce_array): Add comment describing why
arrays with nonzero lower bounds are dealt with in value_subscript,
rather than in value_coerce_array.
* expprint.c (print_subexp): Rename BINOP_MULTI_SUBSCRIPT to
MULTI_SUBSCRIPT.
* expprint.c (dump_expression): New function for dumping
expression vectors during gdb debugging.
* expression.h (BINOP_MULTI_SUBSCRIPT): Name changed to
MULTI_SUBSCRIPT and moved out of BINOP range.
* expression.h (DUMP_EXPRESSION): New macro that calls
dump_expression if DEBUG_EXPRESSIONS is defined.
* m2-exp.y (BINOP_MULTI_SUBSCRIPT): Changed to MULTI_SUBSCRIPT.
* parse.c (length_of_subexp, prefixify_subexp): Change
BINOP_MULTI_SUBSCRIPT to MULTI_SUBSCRIPT.
* parse.c (parse_exp_1): Call DUMP_EXPRESSION before and after
prefixify'ing the expression.
* printcmd.c (print_command_1): Add comment.
**** start-sanitize-chill ****
* ch-exp.y (expression_list): Add useful actions.
* ch-exp.y (value_array_element): Add useful actions.
* ch-exp.y (array_primitive_value): Add production.
* ch-exp.y (yylex): Recognize ',' as a token.
**** end-sanitize-chill ****
* tm-sysv4.h (CPLUS_MARKER): By default, g++ uses '.' as the
CPLUS_MARKER for all SVR4 systems, so follow suit.
* defs.h (strdup_demangled): Remove prototype.
* dwarfread.c (enum_type, synthesize_typedef): Use new macro
SYMBOL_INIT_LANGUAGE_SPECIFIC.
* dwarfread.c (new_symbol): Use SYMBOL_INIT_DEMANGLED_NAME.
* minsyms.c (install_minimal_symbols, prim_record_minimal_symbol,
prim_record_minimal_symbol_and_info): Use new macro
SYMBOL_INIT_LANGUAGE_SPECIFIC.
* minsyms.c (install_minimal_symbols): Use new macro
SYMBOL_INIT_DEMANGLED_NAME.
* stabsread.c (define_symbol): Use new macro
SYMBOL_INIT_DEMANGLED_NAME.
* symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list):
Use new macro SYMBOL_INIT_DEMANGLED_NAME.
* symfile.h (ADD_PSYMBOL_VT_TO_LIST): Use new macro
SYMBOL_INIT_DEMANGLED_NAME.
* symmisc.c (dump_msymbols, dump_symtab, print_partial_symbol):
SYMBOL_DEMANGLED_NAME now tests language itself.
* symtab.c (COMPLETION_LIST_ADD_SYMBOL): SYMBOL_DEMANGLED_NAME
now tests language itself.
* symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): New macro that does
what SYMBOL_DEMANGLED_NAME used to do, directly access the C++
mangled name member in the language dependent portion of a symbol.
* symtab.h (SYMBOL_DEMANGLED_NAME): New macro that returns the
mangled name member appropriate for a symbol's language.
* symtab.h (SYMBOL_SOURCE_NAME, SYMBOL_LINKAGE_NAME,
SYMBOL_MATCHES_NAME, SYMBOL_MATCHES_REGEXP):
SYMBOL_DEMANGLED_NAME now tests language itself.
* symtab.h (SYMBOL_INIT_LANGUAGE_SPECIFIC): New macro that
initializes language dependent portion of symbol.
* symtab.h (SYMBOL_INIT_DEMANGLED_NAME): New macro that
demangles and caches the demangled form of symbol names.
* utils.c (fputs_demangled, fprint_symbol): Use current language
to select an appropriate demangling algorithm.
* utils.c (strdup_demangled): Remove, no longer used.
**** start-sanitize-chill ****
* symtab.h (SYMBOL_CHILL_DEMANGLED_NAME): New macro that directly
access the Chill mangled name member in the language dependent
portion of a symbol.
* ch-lang.c (chill_demangle): New function, simple demangler.
* defs.h (chill_demangle): Add prototype.
* symtab.h (language_dependent_info): Add struct for Chill.
**** end-sanitize-chill ****
must include the "-y" option.
* c-exp.y, m2-exp.y (yyrule, yyname, yyss, yyssp, yyvs, yyvsp):
Remove defines to remap non-yacc symbols, thus backing out of
previous recent changes. Standard policy is that non-yacc parser
generators get fixed, rather than adding bug workarounds in gdb
for each new one that pops up. Expand comment to note this.
* c-exp.y, m2-exp.y (YYDEBUG): Revert back to disabled by default.
code.
* dbxread.c: Remove almost all HPPA/HPUX symbol reading code.
* (dbx_symfile_init): Use sizeof(long) instead of 4.
* (dbx_symfile_offsets): Make static.
* (pastab_build_psymtabs): New interface routine for paread to
send stabs into dbxread.
* gdb-stabs.h: Remove gobs of HPPA cruft.
* c-exp.y, m2-exp.y (YYDEBUG): Define if MAINTENANCE_CMDS is defined
and YYDEBUG is not already defined.
* c-exp.y (strncmp): Replace throughout with STREQN, missed
them during the previous replacements.
* printcmd.c (_initialize_printcmd): Update internal documentation
for "set" command to note that the assignment syntax is language
dependent.
**** start-sanitize-chill ****
* ch-exp.y (yyreds, yytoks): Remap like other yy* names.
* ch-exp.y (YYDEBUG): Define if MAINTENANCE_CMDS is defined
and YYDEBUG is not already defined.
* ch-exp.y (GDB_REGNAME, GDB_LAST, GDB_VARIABLE, GDB_ASSIGNMENT,
single_assignment_action): New terminals and nonterminal for gdb
extensions to chill expression grammer.
* ch-exp.y (match_dollar_tokens): Lexer routine to match all
tokens that start with '$' (register names, convenience vars, etc).
* ch-exp.y (tokentab2): Add GDB_ASSIGNMENT.
* ch-exp.y (yylex): Call match_dollar_tokens.
**** end-sanitize-chill ****
accessing minimal symbol data.
* infcmd.c (read_pc): Use #ifdef, not #if.
* symfile.c (syms_from_objfile): Add CONST to decl for targets.
* tm-hppa.h (FIX_CALL_DUMMY): Use new macros for accessing
minimal symbol data.
frame. Use find_return_regnum to find the caller.
* (find_unwind_entry): New routine to locate stack frame info
associated with a procedure. This looks in the $UNWIND_START$
section in the SOM file.
* (find_return_regnum): New routine. Uses find_unwind_entry() to
figure out where the caller's return address is stored.
* (find_proc_framesize): New routine. Uses find_unwind_entry()
to figure out the frame size for a procedure.
* (saved_pc_after_call): New routine, moved from tm-hppa.h.
* (init_extra_frame_info): New routine. Corrects PC and FP for
outermost frame if necessary.
* (frame_chain): New routine, moved from tm-hppa.h.
* (skip_trampoline_code): Handle computed function calls (ie:
calls from $$dyncall).
* (unwind_command): Temporary support function to allow user
to control/observe aspects of the unwind (stack frame) info.
* infcmd.c (read_pc): (Temporary), put a hack in to see if the PC
was in a system call, if so, then read the PC from r31.
* tm-hppah.h (SKIP_TRAMPOLINE_CODE, IN_SOLIB_TRAMPOLINE): Deal
with extra arg for skip_trampoline_code().
* (INIT_EXTRA_FRAME_INFO): Define to point at subr (see above).
* (FRAME_CHAIN, FRAME_CHAIN_VALID): Turn into real subroutines.
* tm-hppa.h (SAVED_PC_AFTER_CALL): Turn into real subroutine.
Call new bfd_get_size() and verify that string table is no larger
than the file that is supposed to contain it.
* symfile.c (syms_from_objfile): Only complain about configured
NAMES_HAVE_UNDERSCORE differences between gdb and bfd if the
current target is the default BFD target.
* solib.c (bkpt_names): New array of symbol names to try to
use for the "mapping complete" breakpoint. Configurable
define SOLIB_BKPT_NAME is first one to try.
* solib.c (find_solib): Test debug_base for nonzero rather
than just greater than zero.
* solib.c (enable_break): Use bkpt_names to look up address
at which to set "mapping complete" breakpoint.
* defs.h (demangle_and_match): Remove prototype.
* dwarfread.c (STREQ, STREQN): Remove macros, replaced with STREQ
and STREQN defined in defs.h.
* dwarfread.c (set_cu_language): For completely unknown languages,
try to deduce the language from the filename. Retain behavior
that for known languages we don't know how to handle, we use
language_unknown.
* dwarfread.c (enum_type, symthesize_typedef): Initialize language
and demangled name fields in symbol.
* dwarfread.c, mipsread.c, partial-stab.h: For all usages of
ADD_PSYMBOL_TO_LIST, add language and objfile parameters.
* dwarfread.c (new_symbol): Attempt to demangle C++ symbol names
and cache the results in SYMBOL_DEMANGLED_NAME for the symbol.
* elfread.c (STREQ): Remove macro, use STREQ defined in defs.h.
Replace usages throughout.
* elfread.c (demangle.h): Include.
* elfread.c (record_minimal_symbol): Remove prototype and function.
* gdbtypes.h, symtab.h (B_SET, B_CLR, B_TST, B_TYPE, B_BYTES,
B_CLRALL): Moved from symtab.h to gdbtypes.h.
* infcmd.c (jump_command): Remove code to demangle name and add
it to a cleanup list. Now just use SYMBOL_DEMANGLED_NAME.
* minsyms.c (demangle.h): Include.
* minsyms.c (lookup_minimal_symbol): Indent comment to match code.
* minsyms.c (install_minimal_symbols): Attempt to demangle symbol
names as C++ names, and cache them in SYMBOL_DEMANGLED_NAME.
* mipsread.c (psymtab_language): Add static variable.
* stabsread.c (demangle.h): Include.
* stabsread.c (define_symbol): Attempt to demangle C++ symbol
names and cache them in the SYMBOL_DEMANGLED_NAME field.
* stack.c (return_command): Remove explicit demangling of name
and use of cleanups. Just use SYMBOL_DEMANGLED_NAME.
* symfile.c (demangle.h): Include.
* symfile.c (add_psymbol_to_list, add_psymbol_addr_to_list): Fix
to match macros in symfile.h and allow them to be compiled
if INLINE_ADD_PSYMBOL is not true.
* symfile.h (INLINE_ADD_PSYMBOL): Default to true if not set.
* symfile.h (ADD_PSYMBOL_*): Add language and objfile parameters.
Add code to demangle and cache C++ symbol names. Use macro form
if INLINE_ADD_PSYMBOL is true, otherwise use C function form.
* symmisc.c (add_psymbol_to_list, add_psymbol_addr_to_list):
Remove, also defined in symfile.c, which we already fixed.
* symtab.c (expensive_mangler): Remove prototype and function.
* symtab.c (find_methods): Remove physnames parameter and fix
prototype to match.
* symtab.c (completion_list_add_symbol): Name changed to
completion_list_add_name.
* symtab.c (COMPLETION_LIST_ADD_SYMBOL): New macro, adds both
the normal symbol name and the cached C++ demangled name.
* symtab.c (lookup_demangled_partial_symbol,
lookup_demangled_block_symbol): Remove prototypes and functions.
* symtab.c (lookup_symbol): Remove use of expensive_mangler,
use lookup_block_symbol instead of lookup_demangled_block_symbol.
Remove code to try demangling names and matching them.
* symtab.c (lookup_partial_symbol, lookup_block_symbol):
Fix to try matching the cached demangled name if no match is
found using the regular symbol name.
* symtab.c (find_methods): Remove unused physnames array.
* symtab.c (name_match, NAME_MATCH): Remove function and macro,
replaced with SYMBOL_MATCHES_REGEXP from symtab.h.
* symtab.c (completion_list_add_symbol): Rewrite to use cached
C++ demangled symbol names.
* symtab.h: Much reformatting of structures and such to add
whitespace to make them more readable, and make them more
consistent with other gdb structure definitions.
* symtab.h (general_symbol_info): New struct containing fields
common to all symbols.
* symtab.h (SYMBOL_LANGUAGE, SYMBOL_DEMANGLED_NAME,
SYMBOL_SOURCE_NAME, SYMBOL_LINKAGE_NAME, SYMBOL_MATCHES_NAME,
SYMBOL_MATCHES_REGEXP, MSYMBOL_INFO, MSYMBOL_TYPE): New macros.
* symtab. (struct minimal_symbol, struct partial_symbol, struct
symbol): Use general_symbol_info struct.
* utils.c (demangle_and_match): Remove, no longer used.
* valops.c (demangle.h): Include.
* xcoffexec.c (eq): Remove macro, replace usages with STREQ.
* blockframe.c, breakpoint.c, c-exp.y, c-valprint.c, dbxread.c,
infcmd.c, m2-exp.y, minsyms.c, objfiles.h, solib.c, stack.c,
symmisc.c, symtab.c, valops.c: Replace references to minimal
symbol fields with appropriate macros.
* breakpoint.c, buildsym.c, c-exp.y, c-typeprint.c, c-valprint.c,
coffread.c, command.c, convex-tdep.c, cp-valprint.c, dbxread.c,
demangle.c, elfread.c, energize.c, environ.c, exec.c,
gdbtypes.c, i960-tdep.c, infrun.c, infrun-hacked.c, language.c,
main.c, minsyms.c, mipsread.c, partial-stab.h, remote-es1800.c,
remote-nindy.c, remote-udi.c, rs6000-tdep.c, solib.c, source.c,
sparc-pinsn.c, stabsread.c, standalone.c, state.c, stuff.c,
symfile.c, symmisc.c, symtab.c, symtab.h, tm-sysv4.h,
tm-ultra3.h, values.c, xcoffexec.c, xcoffread.c: Replace strcmp
and strncmp usages with STREQ, STREQN, or STRCMP as appropriate.
* breakpoint.c, buildsym.c, c-typeprint.c, expprint.c, findvar.c,
mipsread.c, printcmd.c, source.c, stabsread.c, stack.c,
symmisc.c, tm-29k.h, valops.c, values.c: Replace SYMBOL_NAME
references with SYMBOL_SOURCE_NAME or SYMBOL_LINKAGE_NAME as
appropriate.
* buildsym.c (start_subfile, patch_subfile_names): Default the
source language to what can be deduced from the filename.
* buildsym.c (end_symtab): Update the source language in the
allocated symtab to match what we have been using.
* buildsym.h (struct subfile): Add a language field.
* c-typeprint.c (c_print_type): Remove code to do explicit
demangling.
* dbxread.c (psymtab_language): Add static variable.
* dbxread.c (start_psymtab): Initialize psymtab_language using
deduce_language_from_filename.
about dependency on target byte ordering.
**** start-sanitize-chill ****
* ch-exp.y (value_array_slice): Fix typo.
* ch-valprint.c (chill_val_print): Remove C'ism that arrays of
byte sized ints are assumed to be char strings and printed with
string syntax. In chill, arrays of chars and arrays of
bytes/ubytes are distinquishable, and printed appropriately.
**** end-sanitize-chill ****
branch targets to compute target address using const from previous
instruction if necessary.
* Add `Q' operator to print out bit position field various
instructions.
* hppah-nat.c: #include sys/param.h, and sys/user.h. General
cleanups, use new code from Utah.
* (store_inferior_registers): Update to new code from Utah.
* (initialize_kernel_u_addr): Re-enable decl of struct user u.
* (fetch_register): Clear out priv level when reading PCs.
* hppah-tdep.c: Get rid of gobs of KERNELDEBUG stuff.
* Remove decl of errno, #include wait.h and target.h.
* (frame_saved_pc): Check `flags' pseudo-register to see if we
were inside of a kernel call. If so, then PC is in a different
register. Also, mask out bottom two bits of all PCs so as not to
confuse higher level code.
* (push_dummy_frame): Create from #define in tm-hppa.h.
* (find_dummy_frame_regs): Update from Utah.
* (hp_pop_frame): Create from #define in tm-hppa.h.
* (hp_restore_pc_queue): New, from Utah.
* (hp_push_arguments): Big fixes from Utah.
* (pa_do_registers_info, pa_print_registers): Only print out fp
regs upon request.
* (skip_trampoline_code): New routine to deal with stubs that
live in nowhereland between callers and callees.
* i860-tdep.c: Remove decl of attach_flag.
* infrun.c (wait_for_inferior): Add new macro
INSTRUCTION_NULLIFIED, which can tell if the instruction pointed
at by PC will be nullified. If so, then step the target once more
so as to avoid confusing the user.
* (just before step_over_function:): Use stop_func_start, not
stop_pc when checking for the existance of line number info.
stop_func_start will reflect the proper address of the target
routine, not of the stub that we may be traversing to get there.
* tm-hppa.h: define SKIP_TRAMPOLINE_CODE and IN_SOLIB_TRAMPOLINE
to deal with the stubs that PA compilers sometimes stick between
callers and callees. Also, define FLAGS_REGNUM for access to the
`flags' pseudo-reg.
* (REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Use
memcpy, not bcopy.
* (CANNOT_STORE_REGISTER): New from Utah. Says that we can't
write gr0, PC regs, and PSW!
* (FRAME_FIND_SAVED_REGS): Bug fixes from Utah.
* (PUSH_DUMMY_FRAME, POP_FRAME): Make into real routines in
hppah-nat.c.
* (CALL_DUMMY, FIX_CALL_DUMMY): Fixes from Utah.
* Define struct unwind_table_entry.
* valops.c (call_function_by_hand): Add another arg to
FIX_CALL_DUMMY (under #ifdef GDB_TARGET_IS_HPPA). Why is this
necessary?
* Makefile.in (SFILES_MAINDIR): Add typeprint.c, c-typeprint.c,
m2-typeprint.c, c-valprint.c cp-valprint.c m2-valprint.c.
* Makefile.in (HFILES): Add valprint.h.
* Makefile.in (OBS): Add typeprint.o, c-typeprint.o,
m2-typeprint.o, c-valprint.o, cp-valprint.o m2-valprint.o.
* typeprint.c, typeprint.h: New files for language independent
type printing functions.
* c-typeprint.c, m2-typeprint.c: New files for language dependent
type printing functions and definitions.
* valprint.h: New include file for language independent value
printing definitions.
* c-valprint.c, cp-valprint.c, m2-valprint.c: New files for language
dependent value printing functions.
* c-exp.y (production ptype): Add range_type variable and use new
create_range_type function.
* c-exp.y (tokentab2, tokentab3), c-lang.c (c_op_print_tab),
infcmd.c (path_var_name), language.c (unk_op_print_tab),
m2-lang.c (m2_op_print_tab): Change from ANSI-obsolescent
"const static" to ANSI-conformant "static const".
* c-exp.y (c_create_fundamental_type): Remove unused nbytes.
* c-exp.y (c_language_defn, cplus_language_defn): Add c_print_type,
and c_val_print.
* c-lang.h (c_print_type, c_val_print): Add prototypes.
* coffread.c (decode_type): Add range_type variable and call to
new create_range_type function.
* complaints.c (complain): Remove unused val variable.
* complaints.c (_initialize_complaints): Make it void.
* convex-tdep.c (value_of_trapped_internalvar): Add range_type
variable and call new create_range_type function.
* defs.h (enum val_prettyprint): Move enum from value.h to here
so we can avoid having to include value.h just for prototypes that
need the enum (thanks ANSI).
* dwarfread.c (struct_type): Local anonymous_size variable is
only used if !BITS_BIG_ENDIAN.
* dwarfread.c (decode_subscript_data_item): Add rangetype
variable and call new create_range_type function.
* elfread.c (elf_symfile_read): Remove unused dbx and text_sect
variables.
* eval.c (evaluate_subexp): Remove unused local variable name
and the statement with no side effects that initializes it.
* expprint.c (print_subexp): Change local_printstr to
LA_PRINT_STRING.
* gdbtypes.c (create_range_type): New function that creates
a range type using code fragments from object file readers as
an example of what has to be initialized.
* gdbtypes.c (create_array_type): Removed index_type, low_bound,
and high_bound parameters, replaced with a single range_type
parameter. Change function body to use passed in range_type
rather than handcrafting one.
* gdbtypes.h (create_range_type): Add prototype.
* gdbtypes.h (create_array_type): Change prototype parameters.
* infrun.c (normal_stop): Remove unused local variables tem and c.
* infrun.c (hook_stop_stub): Return 0 rather than random value.
* language.c (unk_lang_print_type, unk_lang_val_print): Add
stub functions that call error if called.
* language.c (unknown_language_defn, auto_language_defn,
local_language_defn): Add initializers unk_lang_print_type and
unk_lang_val_print.
* language.h (struct language_defn): Reformat for larger
comments, add la_print_type and la_val_print members. Add
LA_PRINT_TYPE and LA_VAL_PRINT macros. Change local_printchar
to LA_PRINT_CHAR and local_printstr to LA_PRINT_STRING.
* m2-lang.c (m2_create_fundamental_type): Remove unused local
variable nbytes.
* m2-lang.c (m2_language_defn): Add initializers m2_print_type
and m2_val_print.
* m2-lang.h (m2_print_type, m2_val_print): Add prototypes.
* main.c (execute_command): Remove unused local variable cmdlines.
* main.c (echo_command), stabsread.c (read_type), printcmd.c
(clear_displays), symmisc.c (block_depth), values.c
(clear_value_history):
Make testing of truth value of assignment result explicit.
* mipsread.c (upgrade_type): Update FIXME to include future use
of create_range_type.
* printcmd.c (ptype_command, ptype_eval, whatis_command,
whatis_exp, maintenance_print_type): Move prototypes and functions
to new typeprint.c.
* printcmd.c (_initialize_printcmd): Move add_com calls for
ptype_command and whatis_command to new typeprint.c.
* ser-bsd.c (serial_open): Remove unused variable sgttyb.
* source.c (find_source_lines): Local variable c only used
when LSEEK_NOT_LINEAR is defined.
* stabsread.c (read_array_type): Use new create_range_type
function.
* stabsread.c (read_range_type): Add new index_type variable and
call new create_range_type function rather than handcrafting
range types.
* symmisc.c (type_print_1): Change usages to LA_PRINT_TYPE.
* symtab.c (typedef_print usages): Use c_typedef_print, renamed.
* symtab.c (type_print_base usages): Use c_type_print_base.
* symtab.c (type_print_varspec_prefix usages): Use
c_type_print_varspec_prefix.
* symtab.c (type_print_method_args usages): Use
cp_type_print_method_args.
* valprint.c: Completely ripped apart and the fragments used
to create c-valprint.c, cp-valprint.c, m2-valprint.c, and
valprint.h. Remaining stuff is language independent.
* value.h (struct fn_field): Forward declare for prototypes.
* value.h (type_print_1): Remove prototype.
* value.h (enum val_prettyprint): Moved to defs.h.
* value.h (typedef_print): Prototype renamed to c_typedef_print.
* value.h (baseclass_offset): Add prototype.
**** start-sanitize-chill ****
* Makefile.in (SFILES_MAINDIR): Add ch-typeprint.c, ch-valprint.c.
* Makefile.in (OBS): Add ch-typeprint.o, ch-valprint.o.
* ch-typeprint.c: New file for language dependent type printing.
* ch-valprint.c: New file for language dependent value printing.
* ch-exp.y (parse_number): Remove prototype and stub function.
* ch-exp.y (decode_integer_literal): Removed unused digits and
temp variables.
* ch-exp.y (convert_float): Completely ifdef out for now.
* ch-exp.y (tokentab2, tokentab3, tokentab4, tokentab5),
ch-lang.c (chill_op_print_tab):
Change from ANSI-obsolescent "const static" to ANSI-conformant
"static const".
* ch-exp.y (yylex): Add unhandled storage class enumeration
literals to switch statement for completeness.
* ch-lang.c (chill_create_fundamental_types): Remove unused
nbytes variable. Change dummy type to 2 bytes to match int.
Handle FT_VOID types gratuituously added to chill DWARF by
compiler. Change FT_CHAR case to generate an TYPE_CODE_CHAR
type rather than a one byte TYPE_CODE_INT type.
* ch-lang.c (chill_language_defn): Add chill_print_type and
chill_val_print.
* ch-lang.h (chill_print_type, chill_val_print): Add prototypes.
**** end-sanitize-chill ****