Commit graph

1163 commits

Author SHA1 Message Date
John Gilmore
ece2e98a0c * symtab.h (struct linetable_entry): Remove confusing comment. 1993-03-23 08:13:11 +00:00
David D. Zuhn
80c8fd72ed add installcheck 1993-03-23 08:03:44 +00:00
Fred Fish
1a0edbc7d7 * config/{a29k, arm, convex, gould, h8300, i386, i860, i960, m68k,
m88k, mips, none, ns32k, pa, pyr, romp, rs6000, sparc, tahoe, vax,
	z8k}:  New directories to hold cpu specific configuration files.
	Naming follows gcc convention.
	* config/{*.mt, *.mh}:  All target and host makefile fragment
	config files moved to an appropriate config/<cpu> subdirectory.
	* nm-*, xm-*, tm-*:  All native, host, and target files, which
	get linked to nm.h, xm.h, and tm.h respectively by configure,
	moved to appropriate config/<cpu> subdirectory.
	* nm-sysv4.h, xm-sysv4.h, tm-sysv4.h, tm-sunos.h, nm-trash.h:
	Native, host, and target files that are common across more than
	one cpu architecture and included by one of the configured
	native, host, or target files, get moved to config directory.
	* Makefile.in (INCLUDE_CFLAGS):  Add -I${srcdir}/config to
	pick up native, host, or target include files moved to one of
	the config subdirectories, and that are included by other files.
	* Makefile.in (alldeps.mak):  Modify to account for new config
	directory structure.
	* alldeps.mak, depend:  Update for new config directory structure.
	* config/*/[ntx]m-*.h:  Modify all files that include other
	[ntx]m-*.h files to use path relative to gdb/config.  I.E.
	"a29k/tm-ultra3.h" includes "a29k/tm-29k.h" rather than just
	"tm-29k.h".
	* remote-eb.c (tm-29k.h):  Include a29k/tm-29k.h.
	* mipsread.c (tm-mips.h):  Include mips/tm-mips.h.
	* i860-pinsn.c (tm-i860.h):  Include i860/tm-i860.h.
	* configure.in:  Default gdb_host_cpu to host_cpu, and remap
	the ones where the default is not unique or different than the
	config subdirectory name.  Similarly, handle gdb_target_cpu.
	Modify configure.in as appropriate to make use of gdb_host_cpu
	and gdb_target_cpu to find makefile fragments and make links.
1993-03-23 01:01:49 +00:00
Ian Lance Taylor
5f5341a71f * mipsread.c (compare_blocks): Sort blocks with the same start
address by decreasing ending address.
1993-03-22 20:41:20 +00:00
Peter Schauer
1a3579dfb1 * mipsread.c (parse_procedure, parse_partial_symbols): bug fixes. 1993-03-22 20:25:25 +00:00
John Gilmore
f24c159f1b Lint: * c-exp.y (parse_number): Avoid shift warning.
* serial.h (struct ttystate):  Declare empty one on DOS.
1993-03-20 08:44:42 +00:00
Stu Grossman
733a9015f7 * xm-sun4os4.h: Return type of free() should be void, not int. 1993-03-19 22:13:38 +00:00
Stu Grossman
bc0d4cb9fe Yes John, I haven't heard from Mark Fox yet.
* vx-share/vxWorks.h:  Remove #def of NULL.
1993-03-19 21:03:05 +00:00
Jim Kingdon
deb3f296bc nuke no-op STAB_REG_TO_REGNUM 1993-03-19 19:35:39 +00:00
Steve Chamberlain
52f8e6a0ab (print_insn): Include the new dis-asm header file. 1993-03-19 15:41:31 +00:00
Per Bothner
00cea52f92 * ieee-float.c: Moved to ../libiberty.
* ieee-float.h: Moved to ../include.
	* Makefile.in:  Update accordingly.
	* i386-pinsn.c (print_insn), m68k-pinsn.c (print_insn):
	Convert to stubs that call disassemblers in ../opcodes/*-dis.c.
	* m68k-tdep.c:  Removed definition of ext_format ext_format_68881;
	it is now in ../opcodes/m68881-ext.c.
	* mips-tdep.c (mips_skip_prologue):  Try to skip more of the
	prologue (some callers _do_ care).
	* mips-pinsn.c (print_insn), z8k-tdep.c (print_insn):  Convert to
	new interface of ../opcodes/*-dis.c.
	* ch-exp.y:  Add #include <ctype.h>.
1993-03-19 00:18:55 +00:00
Jim Kingdon
c161de74a5 * xcoffexec.c (exec_close): Don't close exec_bfd twice. 1993-03-18 20:12:08 +00:00
Jim Kingdon
b60b2e3ec6 * xcoffread.c (enter_line_range): endaddr is exclusive, not inclusive. 1993-03-18 20:02:10 +00:00
Stu Grossman
b17e0267c9 Remove test checkin. 1993-03-18 00:43:10 +00:00
Stu Grossman
c6a4d166a7 Just testing checkins. 1993-03-18 00:42:26 +00:00
Jim Kingdon
ecfd2b6091 * xcoffread.c (arrange_linetable): Use x{m,re}alloc not {m,re}alloc. 1993-03-17 20:38:38 +00:00
John Gilmore
3021c40d20 (show_user): Avoid fprintf_filtered botch (AGAIN!). 1993-03-17 20:21:55 +00:00
Steve Chamberlain
2d8d693ab7 New functions from macros in tm-z8k.h. 1993-03-17 19:32:42 +00:00
Fred Fish
898e13c8b9 * valops.c (value_arg_coerce): Apply temporary patch to
fix problem with coercion of array and function types when
	passed as arguments to C functions, pending a more complete
	review of when and how coercion should be done, depending
	upon context and language.
1993-03-17 19:28:59 +00:00
Jim Kingdon
3e57da3826 * xcoffread.c (MIN_TBTABSIZ): Change to 12. 1993-03-17 19:17:47 +00:00
Jim Kingdon
9d61147ec5 * xcoffread.c (xcoff_symfile_read): Only read stringtab and
debugsec if there are a non-zero number of symbols.
1993-03-17 19:06:32 +00:00
Jim Kingdon
8112a7114b * xcoffexec.c (add_vmap): Wrap symbol read in catch_errors. 1993-03-17 04:07:29 +00:00
Stu Grossman
e829d98374 * config/rs6000.mh: Get rid of -Dfd_set=int crock.
This is defined in defs.h if necessary.
	* vx-share/vxWorks.h:  Remove #defs of min and max.
	* vx-share/xdr_ld.c, vx-share/xdr_ptrace.c,
	vx-share/xdr_rdb.c:  include defs.h.
1993-03-16 18:15:25 +00:00
Jim Kingdon
c8ade7191b *** empty log message *** 1993-03-15 17:45:08 +00:00
John Gilmore
01deac1217 Support 68000 series without floating point. (changed config name)
* configure.in (m68000-*-{aout,elf,coff}):  New configs.
1993-03-14 11:06:43 +00:00
John Gilmore
48a522d968 * configure.in (m68k-adobe-*): New config.
* tm-68k-nofp.h:  New file, lacks 68881 support.
* config/m68k-nofp.mt:  New file.
1993-03-14 10:58:48 +00:00
John Gilmore
84a05e5253 Remove a few remaining underscore/no-underscore remnants from config files.
* config/{m68k-un.mt, sparc-un.mt}:  Remove.
* config/m68k-noun.mt: Rename to m68k-fp.mt.
* config/sparc-noun.mt: Rename to sparc-em.mt.
* tm-68k-noun.h, tm-spc-noun.h:  Remove.
* tm-68k-un.h:  Rename to tm-68k-fp.h.
* tm-spc-un.h:  Rename to tm-spc-em.h.
* tm-sun4sol2.h: Cleanup.
* configure.in (m68k-*, sparc-* targets):  Corresponding changes.
1993-03-14 10:49:01 +00:00
John Gilmore
961ee88e92 * symmisc.c (std_in, std_out, std_err): Move initializations
to runtime code, in case they aren't constant.
1993-03-13 23:09:20 +00:00
K. Richard Pixley
aa8f32108d * symtab.c (find_pc_symtab): some object file formats, notably mips,
have holes in the address ranges of symtabs.  Change this algorythm
  from first hit to tightest fit.

Fixes #2217.
1993-03-13 00:50:09 +00:00
K. Richard Pixley
a8172eea3d * mips-tdep.c (heuristic_proc_start): if we walk the pc into the fence
post without finding the enclosing function, then print a warning.
1993-03-13 00:32:10 +00:00
Fred Fish
5e81259d23 * utils.c (fputs_demangled, fprint_symbol): Remove.
* utils.c (fprintf_symbol_filtered):  New function which combines
	the functionality of fputs_demangled and fprint_symbol.  Uses a
	caller provided language parameter to select the appropriate
	demangler, and caller provided args to pass to the demangler.
	* defs.h (fputs_demangled, fprint_symbol):  Remove prototypes.
	* defs.h (fprintf_symbol_filtered):  Add prototype.
	* c-typeprint.c (cp_type_print_method_args):  Replace calls to
	fputs_demangled with call to fprintf_symbol_filtered.
	* cp-valprint.c (demangle.h):  Include
	* cp-valprint.c (cp_print_value_fields):  Replace calls to
	fprint_symbol with calls to fprintf_symbol_filtered.
	* printcmd.c (print_frame_args):  Replace call to fprint_symbol
	with call to fprintf_symbol_filtered.
	* stack.c (print_frame_info, frame_info):  Add language variable
	to pass to fprintf_symbol_demangled and initialize it from the
	symbol's language.  Replace calls to fputs_demangled with calls
	to fprintf_symbol_filtered.
	* symtab.c (find_methods):  Replace call to fputs_demangled with
	call to fprintf_symbol_filtered.
	**** start-sanitize-chill ****
	* ch-valprint.c (demangle.h):  Include.
	* ch-valprint.c (chill_print_value_fields):  Replace call to
	fprint_symbol with call to new fprintf_symbol_filtered.
	**** end-sanitize-chill ****
1993-03-11 19:27:51 +00:00
Fred Fish
bd5d07d94c * utils.c (fputs_demangled): Complete rewrite to clean up and
add a language parameter that is used to select the demangling
	algorithm.
	* defs.h (enum language):  Move further up in file so enum can
	be used in prototypes.
	* defs.h (fputs_demangled):  Update prototype to add lang arg.
	* c-typeprint.c (cp_type_print_method_args):  Add language arg
	to fputs_demangled calls, remove DMGL_PARAMS flag.
	* stack.c (print_frame_info):  Remove obsolete code so we don't
	have to update fputs_demangled usage in it.
	* stack.c (print_frame_info, frame_info):  Add language variable
	to pass to fputs_demangled and initialize it from the symbol's
	language.  Call fputs_demangled with language arg.
	* symtab.c (find_methods):  Add language arg to fputs_demangled
	call.
1993-03-11 17:44:39 +00:00
Fred Fish
0b96ed0655 * Makefile.in (VERSION): Bump version to 4.8.2. 1993-03-11 02:40:29 +00:00
Fred Fish
f77ad50597 * main.c (source_command): Require an explicit pathname of file
to source, since previous behavior of defaulting to gdb init file
	was troublesome and undocumented.
	* printcmd.c (disassemble_command):  Add missing '{}' pair to
	else with two statements.  Bug reported by Stephane Tsacas
	<slt@isoft.fr>.
	* symtab.c (find_pc_line):  Don't complain about zero length or
	negative length line numbers for the moment, since we may not own
	the terminal when called, such as when single stepping.  (FIXME)
	* language.h (CAST_IS_CONVERSION):  True if current language is
	C++ as well as C.  Fix from Peter Schauer.
	* environ.c (get_in_environ, set_in_environ, unset_in_environ):
	Use STREQN macro rather than bare '!strncmp()'.
	* environ.c (unset_in_environ):  Avoid use of memcpy on
	overlapping memory regions, as suggested by Paul Eggert
	<eggert@twinsun.com>.
	* c-exp.y (%union struct):  Remove unused ulval as suggested
	by Paul Eggert <eggert@twinsun.com>.
1993-03-11 01:56:31 +00:00
Ian Lance Taylor
aecc5459ab * Makefile.in (MAKEOVERRIDES): Define to be empty for GNU Make
3.63.

Also corrected the definitions of CC_FOR_TARGET, CXX_FOR_TARGET and
CHILL_FOR_TARGET.
1993-03-08 06:00:50 +00:00
John Gilmore
946f014bf8 * am29k-tdep.c (TAGWORD_ZERO_MASK): New #define.
(examine_tag):  Use it.
(read_register_stack):  Only look in the local registers for a
memory address if it's between rfb and rsp; go to memory otherwise.
1993-03-06 02:02:39 +00:00
John Gilmore
19327ea5d4 * am29k-tdep.c (initialize_29k): Fix call_scratch_address doc.
Remove reginv command.
(reginv_com):  Remove ancient kludge command.
1993-03-06 01:49:03 +00:00
K. Richard Pixley
24365af960 * tm-irix3.h (ZERO_REGNUM): copy this macro from tm-mips.h so that
irix4 will again compile.
1993-03-06 01:25:06 +00:00
K. Richard Pixley
5870d84848 * tm-mips.h (GDB_TARGET_IS_MIPS): no longer used, now removed. 1993-03-06 01:23:11 +00:00
K. Richard Pixley
81029114ba accept mips-sgi-irix4* for irix4. 1993-03-06 01:19:48 +00:00
John Gilmore
4966c17c42 Lint fixes from Paul Eggert (eggert@twinsun.com):
* 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.
1993-03-05 01:44:38 +00:00
Fred Fish
2456bacba8 Fixes submitted by Karl Berry (karl@nermal.hq.ileaf.com):
* m88k-pinsn.c (sprint_address):  Use SYMBOL_NAME macro to
	access symbol name.
1993-03-05 01:04:48 +00:00
Fred Fish
e5bb7e61ad * m88k-nat-c (SXIP_OFFSET, SNIP_OFFSET, SFIP_OFFSET): Enclose
macro definitions in parenthesis.  Bug reported by karl@hq.ileaf.com.
1993-03-05 00:45:08 +00:00
Fred Fish
83386662e9 * dbxread.c (dbx_symfile_init): Catch the case where there is
no string table, but the only way we find out is by reading zero
	bytes from EOF.
1993-03-04 16:25:21 +00:00
Fred Fish
69a272c4f6 * dbxread.c (dbx_symfile_init): Make size of the string table
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.
1993-03-04 00:01:32 +00:00
Ian Lance Taylor
b010e28320 * Makefile.in: Changes to build testsuite correctly.
(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.
1993-03-03 15:26:23 +00:00
Fred Fish
6985bc542e * dbxread.c (dbx_symfile_init): Fix for nonexistant string table,
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.
1993-03-03 06:04:26 +00:00
Fred Fish
45364c8a2a * c-exp.y (parse_number): Change high_bit to unsigned.
* 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.
1993-03-03 02:09:02 +00:00
John Gilmore
1d9449abbf * coffread.c (process_coff_symbol): Change PCC argument correction
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.
1993-03-02 03:39:37 +00:00
John Gilmore
fefe2ed929 * coredep.c: Handle NO_PTRACE_H in coredep.c. Fix by Michael
Rendell, <michael@mercury.cs.mun.ca>.
1993-03-02 01:56:22 +00:00
Fred Fish
58a66e2424 * language.h (local_decimal_format_custom): Add prototype.
* language.c (local_decimal_format_custom):  Add function, bug
	reported by Robert R. Henry (rrh@tera.com).
1993-03-01 16:46:55 +00:00
John Gilmore
9116f7c7ff * xcoffexec.c (vmap_ldinfo): Fix "/" for '/' typo, reported
by Josef Leherbauer, joe@takeFive.co.at.
1993-02-27 02:35:04 +00:00
Fred Fish
f31e2e7a1e * symtab.h (SYMBOL_INIT_DEMANGLED_NAME): Initialize contents
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.
1993-02-25 00:40:45 +00:00
Fred Fish
8fbdca53aa **** start-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 ****
1993-02-24 15:49:47 +00:00
Mike Werner
b12529c1ec *configure.in: added testsuite to configdirs. 1993-02-24 03:00:23 +00:00
Fred Fish
bb6e8fe6a8 Continue sanitizing Chill related entries... 1993-02-23 19:53:52 +00:00
Mike Stump
c2dc518b65 * doc/stabs.texi: The `this' pointer is now known by the name
`this' instead of `$t'.
1993-02-23 19:51:39 +00:00
Fred Fish
b6236d6ec4 * ch-lang.c (chill_create_fundamental_type): Track compiler
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.
1993-02-23 19:30:22 +00:00
Ian Lance Taylor
c2a0f1cb8e * remote-mips.c: New file; implements MIPS remote debugging
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.
1993-02-22 23:43:03 +00:00
Mike Werner
bf3d2b7571 * gdb/testsuite: made modifications to testcases, etc., to allow
them to work properly  given the reorganization of deja-gnu and the
	relocation of the testcases from deja-gnu to a "tool" subdirectory.
1993-02-22 16:20:25 +00:00
Ian Lance Taylor
14b1f0d95a Correct incorrect attribution. 1993-02-22 15:37:37 +00:00
Mike Werner
19fa4a0af3 * gdb/testsuite: Initial creation of gdb/testsuite.
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.
1993-02-21 20:03:55 +00:00
John Gilmore
cb46c4022f Add reminders for next release. 1993-02-20 02:37:36 +00:00
Ian Lance Taylor
254dec351f Wish I'd figured this one out 24 hours ago....
Fri Feb 19 10:01:39 1993  Ian Lance Taylor  (ian@cygnus.com)

	* mipsread.c (parse_lines): Correct check for files compiled with
	-g1.
1993-02-19 18:05:09 +00:00
John Gilmore
dba02c60d4 * Makefile.in (VERSION): 4.8.1 to distinguish local versions. 1993-02-19 13:57:10 +00:00
John Gilmore
c7cb102563 * README: Update for release. 1993-02-19 09:35:19 +00:00
John Gilmore
ead9795982 * Makefile.in (VERSION): GDB-4.8 release!
(not really yet, but we're getting ready)
1993-02-19 07:42:49 +00:00
John Gilmore
5e3d0ab075 * gcc.patch: Update for a different GCC (G++) bug.
* 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.
1993-02-19 06:55:31 +00:00
Stu Grossman
b9163d1aaa * am29k-pinsn.c (print_insn): Minor nits with const.
* am29k-tdep.c:  More minor nits with arg types for
	supply_register, NULL vs. 0, read_register_gen, & reginv_com.
1993-02-19 06:48:52 +00:00
K. Richard Pixley
add04f8b2e * nm-hp300bsd.h (PTRACE_ARG3_TYPE): FSF's hp300's have int* not caddr_t. 1993-02-19 01:12:23 +00:00
John Gilmore
961ccde634 Bugfix for length==0 case. 1993-02-18 23:49:40 +00:00
John Gilmore
c5c00171a2 * c-lang.c (c_printstr): If a C string ends in a null, don't
print the null.
1993-02-18 12:18:23 +00:00
Stu Grossman
eece984d99 * defs.h (STRCMP): Make it work for unsigned chars. 1993-02-18 10:40:33 +00:00
John Gilmore
ec4bf6a089 * nm-hp300bsd.h (ATTACH_DETACH, PTRACE_ATTACH, PTRACE_DETACH): 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.
1993-02-18 10:01:36 +00:00
John Gilmore
be220da15a * Makefile.in (VERSION): Roll to 4.7.9.
* 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.
1993-02-18 07:53:44 +00:00
John Gilmore
5824e607dc * mipsread.c (ZMAGIC): #undef to avoid duplicate define.
* remote.c (alarm):  Move declaration to global level, before
first reference to it.
* tm-i386bsd.h (NUM_REGS):  There are only eleven, not twelve.
1993-02-18 07:49:17 +00:00
John Gilmore
0ae975eac9 * dbxread.c (process_one_symbol): Cast to unsigned char, not int. 1993-02-18 03:25:44 +00:00
K. Richard Pixley
fce7f2d986 * remote.c (readchar): forward declare alarm which otherwise looks
like an undeclared variable to gcc.
1993-02-18 00:05:45 +00:00
K. Richard Pixley
040b959771 * dbxread.c (process_one_symbol): cast enum value N_SO into int when
comparing against an int.  Avoids superfluous warning from vax
  ultrix 4.2 cc.
1993-02-17 21:58:25 +00:00
K. Richard Pixley
9549404ee4 * inflow.c (set_sigint_trap): add cast to assignment from signal.
Avoids superfluous warnings from some systems and/or compilers (like
  vax ultrix 4.2.)
1993-02-17 21:45:56 +00:00
K. Richard Pixley
8631194dd9 * language.c (struct op_print unk_op_print_tab): use the enum values
rather naked zeros as initializers.  Avoids warnings from ultrix
  type compilers.
1993-02-17 21:43:45 +00:00
John Gilmore
62e859f039 (alldeps.mak): Make ALLDEPFILES_SUBSUBDIR for files in sub sub dirs.
(ALLDEPFILES_SUBSUBDIR):  Depend on this for deeper dep files.
1993-02-16 10:18:47 +00:00
John Gilmore
f4ed8840fb * Makefile.in (VERSION): Roll to 4.7.6.
(SFILES_SUBDIR):  Add 29k-share/udi_soc.
(SFILES_SUBSUBDIR):  Move 29k-share/udi files to this macro.
(HFILES):  Remove all nm-* except nm-trash.h.  Add ns32k-opcode.h.
(depend):  Fix bug where nm-files in config files weren't noticed.
(make-proto-gdb-1):  Avoid changing directories while building new
prototype.  Build SFILES_SUBSUBDIR with longer symlinks.

.Sanitize:  Remove am29k-opcode.h, convx-opcode.h, os68k-xdep.c.
1993-02-16 09:02:15 +00:00
John Gilmore
7c622b4105 * remote.c: Improve error recovery. Allow user to break out
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.
1993-02-16 05:16:55 +00:00
K. Richard Pixley
6d4ea3a549 (process_linenos): free the previously allocated subfile name, then
allocate the new one from the heap.
1993-02-13 01:40:33 +00:00
K. Richard Pixley
e99163901e * xcoffread.c (process_xcoff_symbol, read_symbol_lineno): complain
expects a pointer to complaint rather than a complaint
	  structure.
1993-02-12 23:48:36 +00:00
Steve Chamberlain
256b4f378a * h8300-tdep.c, tm-h8300.h: turn off some experimental features 1993-02-12 16:07:36 +00:00
John Gilmore
015605c5ae * mips-tdep.c (isa_NAN): Fix byte order dependency.
Reported by Nobuyuki Hikichi <hikichi@sra.co.jp>,
fixed by sato@sm.sony.co.jp.
1993-02-11 09:52:25 +00:00
John Gilmore
e5eeaaf86c * xcoffread.c (parmsym): Don't use an initializer to set up
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.
1993-02-11 09:05:11 +00:00
John Gilmore
364c1151e7 Remove IBM6000_host 1993-02-11 07:58:42 +00:00
John Gilmore
dd46978997 * stabsread.c (rs6000_builtin_type): Move function from
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.
1993-02-11 07:57:35 +00:00
Stu Grossman
733a94e887 * findvar.c (read_var_value): If REG_STRUCT_HAS_ADDR, then set
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.
1993-02-11 02:38:19 +00:00
John Gilmore
79533adf03 * remote-udi.c (FREEZE_MODE): Fix && for & typo. Found and
fixed by Lynn D. Shumaker, shumaker@saifr00.cfsat.honeywell.com.

PR# gdb/2162
1993-02-10 04:09:05 +00:00
Ian Lance Taylor
2368ffb6c3 Tue Feb 9 08:18:07 1993 Ian Lance Taylor (ian@cygnus.com)
* config/i386sco4.mh (MUNCH_DEFINE): Pass -p to nm to avoid bug in
	cc debugging output.
1993-02-09 16:22:35 +00:00
John Gilmore
2a021f21e9 * stabsread.c (define_symbol): Complain about unrecognized names
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.
1993-02-09 08:42:20 +00:00
John Gilmore
931bf12a09 * coffread.c (coff_lookup_type): Fix fencepost error reported
by Art Berggreen, <arg@opal.acc.com>.
1993-02-06 03:40:28 +00:00
John Gilmore
c653bc6d90 Fix long file name bug reported on SCO Open Desktop 2.0 by Ulf Lunde
<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.
1993-02-05 22:09:17 +00:00
John Gilmore
b076f02439 * Makefile.in (TARDIRS): Add sparclite demo dir.
(*.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.
1993-02-04 10:30:19 +00:00
John Gilmore
24b88ae801 Makeinfo now works again; remove kludge. 1993-02-04 06:00:41 +00:00
John Gilmore
ad89bdfdac * Makefile.in (VERSION): Roll to 4.7.5.
(gdb.info):  Ignore error from makeinfo (FIXME), since makeinfo
isn't quite up to date to handle gdb.texi.
1993-02-03 22:49:32 +00:00
John Gilmore
ca5a72cd13 * breakpoint.c (breakpoint_re_set_one): Handle watchpoints when
re-evaluating symbol pointers.

Add attribution to a few older ChangeLog entries.
1993-02-03 04:49:05 +00:00
Fred Fish
9da75ad32e * c-exp.y (lcurly, rcurly): New nonterminals.
* 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 ****
1993-02-03 00:28:54 +00:00
John Gilmore
58bcc08c60 * tm-mips.h, tm-sparc.h: Fix thinko in SETUP_ARBITRARY_FRAME.
* remote-nindy.c:  Cleanup.
1993-02-03 00:13:10 +00:00
Ian Lance Taylor
fee754c921 Tue Feb 2 15:30:33 1993 Ian Lance Taylor (ian@cygnus.com)
* mipsread.c (upgrade_type): Build array types correctly, using
	create_range_type and create_array_type.
1993-02-02 23:32:18 +00:00
John Gilmore
1b6a208786 * infrun.c (wait_for_inferior): When rolling back the PC after
a breakpoint, call write_pc so that NPC gets rolled back as well
(for the 29K).
1993-02-02 08:43:40 +00:00
John Gilmore
d122f25767 * blockframe.c (inside_entry_file, inside_main_func,
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.
1993-02-02 08:38:00 +00:00
John Gilmore
7dc15bb750 * 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.
1993-02-02 08:21:50 +00:00
Roland Pesch
2b21d8aac9 Fixes for doc targets. 1993-02-02 02:14:39 +00:00
John Gilmore
07c2fa3e53 * stack.c (parse_frame_specification): Parse as many arguments
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.
1993-02-02 02:08:19 +00:00
John Gilmore
6edd74aef3 * hp300ux-nat.c: Update copyrights.
* 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.
1993-02-02 01:53:17 +00:00
Stu Grossman
797bc12b32 * sparclite/aload.c: Add copyleft.
* sparclite/crt0.s:  Add comment at beginning.
1993-02-02 00:19:26 +00:00
Steve Chamberlain
2431d063fa *** empty log message *** 1993-02-01 23:00:11 +00:00
Michael Tiemann
7cb0f87089 * values.c (value_headof): Fix typo in which VTBL and ARG were
being confused for one another.
1993-02-01 01:16:35 +00:00
Michael Tiemann
a163ddeca1 * valops.c (typecmp): Now static. 1993-02-01 01:12:37 +00:00
Michael Tiemann
edf67bd181 * gdbtypes.c (fill_in_vptr_fieldno): Don't ignore the first
baseclass--we don't always inherit its virtual function table
	pointer.
1993-02-01 01:11:17 +00:00
Michael Tiemann
271e50309b * eval.c (evaluate_subexp): In OP_FUNCALL case, adjust `this'
pointer correctly in case value_struct_elt moves it around.
1993-02-01 01:07:51 +00:00
Michael Tiemann
d112a0c664 Sun Jan 31 04:32:48 1993 Michael Tiemann (tiemann@rtl.cygnus.com)
* gdbtypes.c (lookup_struct_elt_type): Pass NOERR instead of
	zero on recursive call.
1993-01-31 12:39:22 +00:00
John Gilmore
ec68a93f89 * hppah-nat.c: Eliminate <sys/user.h> and other unnecessary stuff,
to avoid "too much defining" error from native C compiler (!).
1993-01-31 06:43:36 +00:00
John Gilmore
3d9b9577e0 * Makefile.in (HFILES): Add typeprint.h.
* typeprint.[ch]:  Update copyrights.
1993-01-31 03:56:56 +00:00
John Gilmore
bdec39b376 Update for doc/ changes. 1993-01-29 06:17:28 +00:00
John Gilmore
92063c3e60 * config/hp300hpux.mh: No cross-host file needed, just native. 1993-01-29 05:53:31 +00:00
John Gilmore
71e60679bd Remove nonexistent GO32 "native" support. 1993-01-29 05:49:03 +00:00
John Gilmore
2a770cac0f M88K fixes reported by Carl Greco, <cgreco@Creighton.Edu>:
* tm-m88k.h (REGISTER_CONVERT_TO_RAW):  Fix typo.
* m88k-tdep.c (next_insn):  Lint, cleanup.
(store_parm_word):  Lint.
1993-01-29 05:28:45 +00:00
John Gilmore
926d780054 Typo 1993-01-29 03:11:55 +00:00
Fred Fish
2fcc38b81f * expression.h (BINOP_CONCAT): Document use for self concatenation
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 ****
1993-01-28 05:47:42 +00:00
Ian Lance Taylor
201c1243fe Mon Jan 18 11:58:45 1993 Ian Lance Taylor (ian@cygnus.com)
* mipsread.c (CODE_MASK, MIPS_IS_STAB, MIPS_MARK_STAB,
	MIPS_UNMARK_STAB, STABS_SYMBOLS): Removed; now in
	include/coff/mips.h.
1993-01-18 20:24:48 +00:00
Fred Fish
c4413e2c9b * c-exp.y (exp:STRING): Convert C strings into array-of-char
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 ****
1993-01-16 05:15:58 +00:00
Stu Grossman
6d1e8f5444 Oops! Forgot to do this one... 1993-01-15 00:08:02 +00:00
Fred Fish
c7da3ed3cd * c-valprint.c (cp_print_class_member): Add extern decl.
* 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 ****
1993-01-14 05:10:12 +00:00
Stu Grossman
78205fb620 * Makefile.in: Add info for paread.o.
* config/hppahpux.mh:  Add paread.o to NATDEPFILES.
1993-01-10 05:38:55 +00:00
Stu Grossman
0213d96f60 * blockframe.c (frameless_look_for_prologue): Correct the
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.
1993-01-10 04:23:06 +00:00
Stu Grossman
bfc55a5d7c * sparc-stub.c: Use a seperate stack for our traps.
* 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.
1993-01-10 03:46:55 +00:00
Ian Lance Taylor
f92743aea5 Second try.
* mips-pinsn.c: Actual work now done by opcodes/mips-dis.c.
1993-01-07 21:39:37 +00:00
Fred Fish
81028ab0e7 * defs.h (HOST_CHAR_BIT): New macro, defaults to either CHAR_BIT
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 ****
1993-01-06 16:52:10 +00:00
Fred Fish
2eda1cdf94 * xcoffexec.c (vmap_symtab): Use new macros to access minimal
symbol name and value fields.
1993-01-05 04:20:54 +00:00
Fred Fish
533d1dc743 * c-exp.y (yylex): Make static, to match prototype and other
<lang>-exp.y files.
1993-01-05 04:14:28 +00:00
Fred Fish
76a0ffb47b * expression.h (exp_opcode): Add BINOP_MOD.
* 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 ****
1993-01-05 01:18:07 +00:00
Steve Chamberlain
ec25d19bd6 * remote-sim.c: first attempt at general simulator interface
* remote-hms.c: whitespace
	* h8300-tdep.c: (h8300_skip_prologue, examine_prologue):
	understand new stack layout. (print_register_hook): print ccr
	register in a fancy way.
1993-01-03 22:36:04 +00:00
Fred Fish
fb6e675f95 * eval.c (language.h): Include.
* 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.
1993-01-03 22:24:21 +00:00
Fred Fish
1188fbbf27 **** start-sanitize-chill ****
* ch-exp.y (FLOAT_LITERAL):  Add token.
	* ch-exp.y (literal):  Add FLOAT_LITERAL.
	* ch-exp.y (match_float_literal):  New lexer routine.
	* ch-exp.y (convert_float):  Remove.
	* ch-exp.y (yylex):  Call match_float_literal.
	* ch-exp.y (yylex):  Match single '.' after trying
	to match floating point literals.
	**** end-sanitize-chill ****
1993-01-03 06:56:08 +00:00
Fred Fish
54bbbfb433 * eval.c (evaluate_subexp): Add case MULTI_SUBSCRIPT.
* 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 ****
1993-01-02 20:32:01 +00:00
David D. Zuhn
ea81b10d1e pass prefix & exec_prefix, POSIXize recursive makes 1993-01-02 02:23:49 +00:00
Fred Fish
7532cf103a * tm-sun4sol2.h (CPLUS_MARKER): Remove, now set in tm-sysv4.h.
* 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 ****
1993-01-01 20:29:41 +00:00
Fred Fish
19d0f3f41d * Makefile.in (BISON): Add comment that when bison is used, it
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.
1992-12-31 19:08:08 +00:00
Stu Grossman
8a1c3e9949 * partial-stab.h (near N_BINCL): Remove redundant code in N_BINCL
case.  Use code in N_SOL.
1992-12-31 17:24:06 +00:00
Stu Grossman
684a832faa * paread.c: New file that contains all HPPA/HPUX symbol reading
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.
1992-12-31 17:14:14 +00:00
Fred Fish
cbf5231b95 * c-exp.y, m2-exp.y (yyrule, yyname): Remap like other yy* names
for byacc.
	**** start-sanitize-chill ****
	* ch-exp.y (yyrule, yyname):  Remap like other yy* names for byacc.
	**** end-sanitize-chill ****
1992-12-31 06:23:28 +00:00
Fred Fish
45fe3db4ed * c-exp.y, m2-exp.y (yyreds, yytoks): Remap like other yy* names.
* 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 ****
1992-12-31 04:05:05 +00:00
Stu Grossman
b8ef816335 * hppah-tdep.c (skip_trampoline_code): Use new macros for
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.
1992-12-29 00:27:18 +00:00
Stu Grossman
b5c10493e9 * hppah-tdep.c (frame_saved_pc): Use better test for outermost
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.
1992-12-28 23:19:51 +00:00
Fred Fish
51db232366 * dbxread.c (dbx_symfile_init, elfstab_build_psymtabs):
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.
1992-12-28 01:44:21 +00:00
Fred Fish
1169c95803 * solib.c (BKPT_AT_MAIN): Change to BKPT_AT_SYMBOL.
* 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.
1992-12-27 04:59:09 +00:00
Fred Fish
2e4964adfc * defs.h (STRCMP, STREQ, STREQN): New macros.
* 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.
1992-12-23 06:34:57 +00:00
Fred Fish
a9b37611e7 * valprint.c (val_print): Reorganize comment and add note
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 ****
1992-12-22 06:32:19 +00:00
Stu Grossman
e5e6b6b14d * tm-hppah.h: #define NEED_TEXT_START_END for target memory
read/write routines for HPUX.
1992-12-22 03:21:54 +00:00
Stu Grossman
9f739abdac * hppa-pinsn.c (print_insn): Improve handling of be and ble
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?
1992-12-22 03:18:46 +00:00
David D. Zuhn
5998e36203 add include of "complaints.h" 1992-12-21 10:22:03 +00:00
Fred Fish
a8a69e6332 * Makefile.in (VERSION): Bump to 4.7.4.
* 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 ****
1992-12-18 20:21:32 +00:00
John Gilmore
de9bef49be Eliminate uses of NAMES_HAVE_UNDERSCORE, using
bfd_get_symbol_leading_char instead.

* coffread.c (EXTERNAL_NAME):  New macro for removing possible
leading character from names.
(read_coff_symtab):  Use BFD's FILE *, don't open a second one.
(read_coff_symtab):  Complain() about .bb/.eb mismatch, don't error().
(process_coff_symbol, coff_read_struct_type, coff_read_enum_type):
Replace NAMES_HAVE_UNDERSCORE with EXTERNAL_NAME.

* kdb-start.c (main):  Remove NAMES_HAVE_UNDERSCORE.
* minsyms.c (install_minimal_symbols):  Replace NAMES_HAVE_UNDERSCORE.
Remove SOME_NAMES_HAVE_DOT support (apparently unused).
* partial-stab.h:  Replace NAMES_HAVE_UNDERSCORE.
* solib.c:  Replace NAMES_HAVE_UNDERSCORE.
* stabsread.h:  Remove NAMES_HAVE_UNDERSCORE and HASH_OFFSET.
* symfile.c (syms_from_objfile):  Insert debugging check to test
NAMES_HAVE_UNDERSCORE setting against the BFD support.  FIXME,
remove this (and all tm-*.h NAMES_HAVE_UNDERSCORE) soon.

* doc/gdbint.texinfo (Host Conditionals):  Remove
NAMES_HAVE_UNDERSCORE, SOME_NAMES_HAVE_DOT, document
MEM_FNS_DECLARED.
(Target Conditionals):  Remove all of the above.
1992-12-17 09:15:10 +00:00
Ian Lance Taylor
117f631e54 Tue Dec 15 10:05:56 1992 Ian Lance Taylor (ian@cygnus.com)
* coffread.c (decode_type): catch negative tagndx fields generated
	by SCO 3.2v4 cc.
	* exec.c: comment out string following #endif.
	* configure.in (i[34]86-*-sco3.2v4*): use host i386sco4.
	* xm-i386sco.h: include <sys/types.h> and <sys/dir.h>, required by
	<sys/user.h>.
	* config/i386sco4.mh: new file; like i386sco.mh, but don't require
	gcc, and define const to empty to avoid SCO 3.2v4 cc bug.
1992-12-15 18:12:37 +00:00
Fred Fish
51b80b0072 * complaints.c: New file, code moved from utils.c.
* complaints.c (complain):  Made into a varargs function.
	* complaints.h:  New file, code moved from symfile.h.
	* Makefile.in (SFILES_MAINDIR):  Add complaints.c.
	* Makefile.in (HFILES):  Add complaints.h.
	* Makefile.in (OBS):  Add complaints.o.
	* symfile.c (complaint_root, stop_whining, complaint_series,
	complain, clear_complaints, add_show_from_set for stop_whining):
	Moved to complaints.c.
	* symfile.h (struct complaint, complaint_root decl, complain
	prototype, clear_complaints prototype):  Moved to complaints.h.
	* buildsym.c, coffread.c, dbxread.c, dwarfread.c, elfread.c,
	gdbtypes.c, mipsread.c, stbsread.c, symfile.c:  Include
	complaints.h.  Remove casts from arguments to complain(),
	which is now a varargs function, and remove unnecessary
	placeholder zero args.
	* defs.h (begin_line):  Add prototype.
	* defs.h (vprintf_filtered):  Add prototype.
	* dwarfread.c (varargs.h):  Remove, no longer needed.
	* dwarfread.c (dwarfwarn):  Remove prototype and function.
	* dwarfread.c (complaints):  Define a bunch of complaints.
	* dwarfread.c (SQUAWK):  Remove macro defs, convert all
	usages to standard complain() calls.
	* utils.c (begin_line):  New function that ensures that
	whatever gets filter-printed next starts on its own line.
	* utils.c (vprintf_filtered):  New func, like vfprintf_filtered,
	but to stdout (calls vfprintf_filtered internally).
1992-12-15 12:18:53 +00:00
John Gilmore
631f7a9f7c Avoid printf_filtered limit. 1992-12-15 11:19:30 +00:00
John Gilmore
fb29d68161 i860-tdep.c: Lint.
* remote.c:  Avoid printf_filtered line limit.  Suggested by
Robert R. Henry, <rrh@tera.com>.

* main.c (main):  Accept --silent as well as --quiet.  Change +help
to --help.  Suggested by Karl Berry, <karl@cs.umb.edu>.
1992-12-15 11:05:22 +00:00
John Gilmore
031dd1a9e7 Typo 1992-12-15 10:02:30 +00:00
John Gilmore
df86eb44ad Lint 1992-12-15 07:29:28 +00:00
Fred Fish
85f0a8484f * gdbtypes.c (create_array_type): Complete rewrite. Now requires
a optional type to decorate as an array type, the type of the
	index, and the bounds of the array.  Records this additional info
	in the array type for use with languages with nonzero array
	bounds.
	* gdbtypes.h (enum type_code):  Update comment for TYPE_CODE_ARRAY
	to note that arrays may have bounds.
	* gdbtypes.h (create_array_type):  Update prototype.
	* c-exp.y (ptype production):  Adjust for new create_array_type
	calling conventions.
	* coffread.c (decode_type):  Call create_array_type rather than
	handcrafting array types.
	* convex-tdep.c (value_type):  Remove, now use create_array_type.
	* convex-tdep.c (value_of_trapped_internalvar):  Convert calls to
	vector_type into calls to create_array_type.
	* dwarfread.c (decode_subscr_data):  Name changed to
	decode_subscript_data_item throughout.
	* dwarfread.c (decode_subscript_data_item):  Rewrite to use
	create_array_type.  Now records index type and range as well.
	* dwarfread.c (dwarf_read_array_type):  Rewrite as part of
	change to use create_array_type.
	* dwarfread.c (read_subroutine_type):  Test existing user defined
	types before decorating them, to ensure they are blank, and
	complain about it if they are not.
	* dwarfread.c (decode_fund_type):  For unrecognized types, always
	return some valid type (type integer).  If the unrecognized type
	cannot be an implementation defined type, complain as well.
	* m88k-tdep.c (pushed_size):  Update comment for TYPE_CODE_ARRAY.
	* m88k-tdep.c (store_param):  Update comment for TYPE_CODE_ARRAY.
	* mipsread.c (upgrade_type):  Add FIXME comment that code to
	handcraft arrays should be replaced with call to create_array_type.
	* stabsread.c (read_array_type):  Replace code to handcraft
	array types with call to create_array_type.
	* valprint.c (type_print_varspec_prefix):  Minor formatting
	change, join lines that don't need to be split.
1992-12-15 02:52:11 +00:00
Stu Grossman
7f70a27564 * gdbtypes.h: Remove const from decl for cplus_struct_default to
work around PA-GAS assembler bug.  Also, add trailing */ to some
comments.
* gdbtypes.c:  Remove const from decl for cplus_struct_default.
Same reason as above.
1992-12-15 02:02:21 +00:00
Stu Grossman
01d1590bab * convex-xdep.c, hppab-nat.c, i860-tdep.c, infptrace.c: Remove
decl for attach_flag, it now lives in inferior.h.
* hppa-pinsn.c:  Reformat opcode tables.  Add function prototypes.
Make most functions static.
* hppah-nat.c:  General cleanups, remove BSD specific code (since
that all lives in hppab-nat.c).
* hppah-tdep.c (frame_chain_valid), tm-hppa.h (FRAME_CHAIN):
Change sense of test against inside_entry_file().  This fix is
from U. of Utah.
* tm-hppa.h (PUSH_DUMMY_FRAME, POP_FRAME):  Use char * for 2nd arg
to read/write_register_bytes().
1992-12-15 01:45:15 +00:00
John Gilmore
c8aac932c6 * mipsread.c (parse_symbol): When checking whether a structured
type is an enum, check qualifiers of its first member, as well as
the base type of the member.  Bug found and fixed by John M.
Farrell, <farrell@fjort.reo.dec.com>.

* config/{vxworks68,vxworks960}:  Don't include xdr_regs.o.
1992-12-10 09:55:34 +00:00
John Gilmore
b69d843255 * vx-share/{reg.h,xdr_regs.h,xdr_regs.c}: Remove, unused.
* remote-vx.c:  Don't include vx-share/reg.h.
* vx-share/ptrace.h:  Reproduce from scratch.
1992-12-10 03:56:36 +00:00
Fred Fish
d62e7a20d8 * c-lang.c (_initialize_c_language): Name changed from
_initialize_c_exp.
	* m2-lang.c (_initialize_m2_language):  Name changed from
	_initialize_m2_exp.
	* m2-lang.c (_initialize_m2_language):  Change malloc to xmalloc since
	it is no longer inside m2-exp.y, where it was remapped by Makefile.
	**** start-sanitize-chill ****
	* ch-lang.c (_initialize_chill_language):  Name changed from
	_initialize_chill_exp.
	**** end-sanitize-chill ****
1992-12-09 07:01:43 +00:00
Fred Fish
22e3975901 * c-exp.y, m2-exp.y: Migrate code that has nothing to do with
expression parsing into c-lang.c and m2-lang.c respectively.
	* c-lang.c, m2-lang.c:  New files, code migrated from c-exp.y and
	m2-exp.y respectively.
	* c-lang.h, m2-lang.h:  New files, internal interfaces between c-*
	and m2-* files respectively.
	* Makefile.in (SFILES_MAINDIR):  Add c-lang.c, m2-lang.c.
	* Makefile.in (HFILES):  Add c-lang.h, m2-lang.h.
	* Makefile.in (OBS):  Add c-lang.o, m2-lang.o.
	* expression.h (struct block):  Forward declaration for prototypes.
	* language.h (struct objfile):  Forward declaration for prototypes.
	**** start-sanitize-chill ****
	* Makefile.in (SFILES_MAINDIR):  Add ch-lang.c.
	* Makefile.in (HFILES):  Add ch-lang.h.
	* Makefile.in (OBS):  Add ch-lang.o.
	* ch-exp.y:  Migrate code that has nothing to do with expression
	parsing into ch-lang.c.
	* ch-lang.c:  New file, code migrated from c-exp.y.
	* ch-lang.h:  New file, internal interface between ch-* files.
	**** end-sanitize-chill ****
1992-12-09 06:50:30 +00:00
Fred Fish
160be0ded9 Changes for Amiga Unix from rhealey@ub.d.umn.edu.
* config/amix.mh (NAT_FILE):  Add, set to nm-sysv4.h.
	* config/amix.mh (NATDEPFILES):  Add.
	* config/amix.mh (XDEPFILES):  Move procfs.o and fork-child.o
	to NATDEPFILES.

	* dwarfread.c (decode_subscr_data):  Remove spurious test that
	accepted only integer subscript types.  We don't do anything
	with the type at the moment anyway.
1992-12-08 21:47:49 +00:00
Fred Fish
64e738a335 Forgot the following for the ChangeLog:
* ch-exp.y (chill_create_fundamental_type):  Chill uses fixed
	width types.  For example, "INT" is always 2 bytes regardless
	of the values of any TARGET_*_BIT macros.  So use explicit
	numeric sizes for the types.
1992-12-04 15:09:41 +00:00
Fred Fish
aed656babb * ch-exp.y (match_character_literal): Fix case where no
match at all is found.
1992-12-04 15:00:09 +00:00
Fred Fish
bf229b4ea5 * c-exp.y (c_create_fundamental_type): New function to create
language specific fundamental types for C.
	* m2-exp.y (m2_create_fundamental_type):  New function to create
	language specific fundamental types for Modula 2.
	* c-exp.y (c_language_defn, cplus_language_defn):  Add
	c_create_fundamental_type to language struct initializers.
	* m2-exp.y (m2_language_defn):  Add m2_create_fundamental_type
	to language struct initializers.
	* dwarfread.c (expression.h, language.h):  Include.
	* dwarfread.c (ftypes):  New array to hold fundamental types
	for current compilation unit.
	* dwarfread.c (cu_language_defn):  New pointer to language
	struct for language of current compilation unit.
	* dwarfread.c (dwarf_fundamental_type):  New function to
	create/lookup fundamental types.
	* dwarfread.c (set_cu_language):  Initialize cu_language_defn.
	* dwarfread.c (throughout):  Replace lookup_fundamental_type
	with dwarf_fundamental_type.
	* dwarfread.c (read_file_scope):  Zero out ftypes for each new
	compilation unit (may be different language or different objfile).
	* gdbtypes.c (lookup_fundamental_type):  Move actual type
	creations into language specific fundamental type creation
	functions and call via create_fundamental_type.  Add comment
	about this function being obsolescent.
	* gdbtypes.h (FT_BYTE, FT_UNSIGNED_BYTE):  New types, true byte
	sized signed and unsigned integers.
	* gdbtypes.h (FT_NUM_MEMBERS):  Increment, new types added.
	* language.c (language_def):  New function to lookup a language
	struct given it's enumeration.
	* language.h (struct language_defn):  Add la_fund_type, a pointer
	to a function that creates fundamental types for this language.
	* language.h (create_fundamental_type):  New macro to create
	fundamental types based on the current language.
	* language.h (language_def):  Add prototype.
	* language.c (unk_lang_create_fundamental_type):  New function
	for initializing language structs, calls error if called.
	* language.c (unk_language_defn, auto_language_defn,
	local_language_defn):  Use unk_lang_create_fundamental_type.
	**** start-sanitize-chill ****
	ch-exp.y (chill_create_fundamental_type):  New function.
	ch-exp.y (chill_language_defn):  Add chill_create_fundamental_type.
	ch-exp.y (_initialize_chill_exp):  BOOL types are only one byte.
	**** end-sanitize-chill ****
1992-12-03 20:28:16 +00:00
Fred Fish
93bb6e655c * dwarfread.c (CHILL_PRODUCER): Add producer string for
GNU chill.
	* dwarfread.c (handle_producer):  Test CHILL_PRODUCER as well
	as GCC_PRODUCER and GPLUS_PRODUCER.
1992-12-02 01:10:49 +00:00
Stu Grossman
7c86126fd8 * remote-udi.c (udi_wait): Don't stop if TIP says that remote is
still running.
1992-12-01 02:51:28 +00:00
Fred Fish
394171ace4 * tm-sun4sol2.h: Add CPLUS_MARKER. Solaris 2.0 requires '.'
rather than '$'.  This particular piece of braindamage is
	spreading like ooze. It's now infected libiberty, deja-gnu,
	gdb, and gcc.
	* values.c (baseclass_addr):  Use CPLUS_MARKER rather than
	hardwired '$' character.
1992-11-30 20:07:35 +00:00
Fred Fish
94daba7f77 * stabsread.c (define_symbol): For the sake of dbx, gcc emits
a single blank as the name of nameless enumerations.  Recognize
	this special case and set nameless flag.
1992-11-30 01:03:34 +00:00
Fred Fish
b076b3f869 Bump internal version to 4.7.3 in wake of fragmentation of massive
stabsread.c read_struct_type function.
1992-11-29 23:50:08 +00:00
Fred Fish
e7177cc2fd (Changes to break incredibly ugly, unmaintainable 750 line
read_struct_type function up into managable pieces.)
	* stabsread.c (struct field_info):  Local struct definition.
	* stabsread.c (read_member_functions, read_struct_fields,
	read_baseclasses, read_tilde_fields, attach_fn_fields_to_type,
	attach_fields_to_type, read_cpp_abbrev):  Prototypes and new
	functions from fragmented read_struct_type.
	* stabsread.c (stabs_general_complaint):  Catchall complaint.
	* stabsread.c (STABS_CONTINUE):  Macro'ize cretinous stabs
	symbol name continuation code.  Use macro throughout.
	* stabsread.c (various places):  Replace add-one-to-pointer
	with pointer increment.
	* stabsread.c (read_type):  Retain function local copy of type
	descriptor.  Rearrange code calling read_struct_type() to match
	new conventions.
1992-11-29 23:38:30 +00:00
Fred Fish
cbd1bdc3fa * ch-exp.y (GENERAL_PROCEDURE_NAME, LOCATION_NAME): New
terminal tokens.
	* ch-exp.y (access_name):  New non-terminal token and
	production.
	* ch-exp.y (general_procedure_name):  Now a terminal token.
	* ch-exp.y (location):  Expand production.
	* ch-exp.y (match_simple_name_string):  New function.
	* ch-exp.y (yylex):  Call match_simple_name_string and return
	GENERAL_PROCEDURE_NAME or LOCATION_NAME as appropriate.
1992-11-29 06:59:17 +00:00
Fred Fish
b9b6dbc2ea Apply fix from zoo:
* munch:  Backslash escape vertical bar characters inside
	grep patterns since they have special meaning for some greps.
1992-11-25 15:53:01 +00:00
Fred Fish
d1065385c1 * parse.c (write_exp_string): Complete rewrite to store string
contants as a leading explicit length, followed by the string data,
	followed by a trailing explicit length.
	* eval.c (evaluate_subexp), expprint.c (print_subexp),
	parse.c (length_of_subexp), parse.c (prefixify_subexp):
	Use recorded explicit length of strings in expression elements,
	rather than strlen.  Adjust code to skip over strings stored in
	expression elements, and code to access strings, to account for
	new leading explicit size expression element.
	* parse.c (length_of_subexp):  Test for minimum endpos of 1, not
	0, to avoid negative expression element indices.
	* valops.c (search_struct_method):  Minor whitespace change.
1992-11-25 15:46:57 +00:00
John Gilmore
b0944a3377 * main.c (main): Print GDB version number in gdb -help; doc pid arg.
Suggested by Marty Leisner, <leisner@eso.mc.xerox.com>.
(print_gdb_version):  New arg is stdout or stderr.  Callers changed.
1992-11-24 07:20:42 +00:00
Fred Fish
bac89d6ca8 * c-exp.y (yylex): Add tempbuf, tempbufindex, and tempbufsize,
which together maintain a dynamically expandable static buffer
	for the lexer to use when translating C strings to their internal
	form (other future uses possible).  Fix parsing of C style strings
	to do the normal C style input conversions of escaped character
	sequences.
	* valops.c (value_string):  Remove translation of escaped
	character sequences, now done in C expression parser.
1992-11-24 03:02:10 +00:00
Fred Fish
5707ea9fad * language.h (PRINT_LITERAL_FORM): New macro that takes character
and decides if it should be printed in literal form or some other
	form, based on it's ASCII value and setting of sevenbit_strings.
	* {c-exp.y, m2-exp.y} (emit_char):  Use new PRINT_LITERAL_FORM
	macro, change indentation style.
	**** start-sanitize-chill ****
	* ch-exp.y (chill_printchar):  Use new PRINT_LITERAL_FORM macro.
	* ch-exp.y (chill_printstr):  First cut at real function instead
	of error stub.
	**** end-sanitize-chill ****
1992-11-23 19:57:29 +00:00
David D. Zuhn
36e0df2384 + * nindy-share/stop.h: fixed bogus comment-end in copyright message
+	* i960-pinsn.c: fixed two calls of fputs_filtered that had 3 arguments
1992-11-23 01:07:16 +00:00
Fred Fish
5d074aa977 * defs.h (sevenbit_strings): Add declaration.
* defs.h (printchar):  Replace with gdb_printchar.
	* language.h (language_defn):  Add new function pointers
	la_printchar and la_printstr, to do language dependent
	printing of characters and strings.
	* language.h (local_printchar, local_printstr):  New macros
	to call language dependent functions pointed to by la_printchar
	and la_printstr respectively.
	* c-exp.y (emit_char, c_printchar, c_printstr):  New language
	dependent functions for printing characters and strings.
	* c-exp.y (c_language_defn, cplus_language_defn):  Add
	c_printchar and c_printstr.
	* command.c (do_setshow_command):  Rename printchar use to
	gdb_printchar.
	* expprint.c (print_subexp):  Replace C style string output
	with call to local_printstr.
	* language.c (unk_lang_printchar, unk_lang_printstr):
	New stubs, currently errors.
	* language.c (unknown_language_defn, auto_language_defn,
	local_language_defn):  Add unk_lang_printchar and
	unk_lang_printstr.
	* m2-exp.y (emit_char, m2_printchar, m2_printstr):  New
	language dependent functions to print characters and strings.
	* m2-exp.y (m2_language_defn):  Add m2_printchar and m2_printstr.
	* utils.c (printchar):  Renamed to gdb_printchar.
	* valprint.c (print_string):  Remove prototype, function moved
	to c-exp.y, where it becomes c_printstr.
	* valprint.c (print_max):  Made global for reference from the
	language dependent printing routines in *-exp.y.
	* valprint.c (repeat_count_threshold):  New variable with function
	of old REPEAT_COUNT_THREHOLD define, but now settable by user.
	Change all references to old macro to references to new variable.
	* valprint.c (value_print, val_print):  Replace calls to
	print_string with calls to local_printstr.
	* valprint.c (val_print):  Replace C style character printing
	with call to local_printchar.
	* valprint.c (val_print):  Add case for TYPE_CODE_CHAR.
	* valprint.c (_initialize_valprint):  Add add_show_from_set
	call for setting up repeat_count_threshold as print variable.
	**** start-sanitize-chill ****
	* ch-exp.y (decode_integer_value):  New function.
	* ch-exp.y (decode_integer_literal):  Use decode_integer_value.
	* ch-exp.y (chill_printchar, chill_printstr):  New language
	dependent functions for printing characters and strings.
	* ch-exp.y (chill_language_defn):  Add chill_printchar and
	chill_printstr.
	**** end-sanitize-chill ****
1992-11-21 06:10:08 +00:00
John Gilmore
cbf15d9a3d * infcmd.c (set_environment_command): Avoid skipping first
char of env value if an '=' appears in it.  Bug report and fix
	by Mark Jungerman, <maj@lucid.com>.

Thu Nov  5 23:04:38 1992 Rob Ryan (rr2b@andrew.cmu.edu)

        * xcoffexec.c (vmap_symtab): fixed a bug where if a object has no
        member, and the stat pointer passed to vmap_symtab was NULL, the
        wrong vmap entries would be modified.  Fixes behavior where
        attempting to load symbols for a module with no member would mess
        up already read in symbols.
1992-11-19 00:04:44 +00:00
Ian Lance Taylor
195b44d9bc Wed Nov 18 15:05:45 1992 Ian Lance Taylor (ian@cygnus.com)
* remote-vx.c (vx_kill): just warn if we can't contact the board,
	and assume the process has been killed.
1992-11-18 23:08:18 +00:00
Stu Grossman
2104007fb0 Oops! Forgot to check in ChangeLog. 1992-11-18 23:02:50 +00:00
Fred Fish
2e66cf7d6d * language.h (language_format_info): New structure to bundle
local formatting information.
	* language.h (language_defn):  Replace individual format info
	with language_format_info structs.
	* language.h (local_*_format, local_*_format_prefix,
	local_*_format_specifier, local_*_format_suffix):  New macros
	for binary/octal/decimal/hex formats to access info elements.
	* c-exp.y (c_language_defn):  Update for new format handling.
	* m2-exp.y (m2_language_defn):  Update for new format handling.
	* dbxread.c (language.h):  Include for partial-stab.h use.
	* defs.h (local_hex_format, local_hex_format_custom,
	local_hex_string, local_hex_string_custom):  Move to language.h.
	* language.c (local_hex_format_custom, local_hex_string,
	local_hex_string_custom, local_octal_format_custom):  Use new
	format handling.
	* language.c (unknown_language_defn, auto_language_defn,
	local_language_defn):  Update for new format handling.
	* printcmd.c (print_scalar_formatted):  Use new macros
	to access decimal and binary format info for printing.
	**** start-sanitize-chill ****
	* c-exp.y (chill_language_defn):  Update for new format handling.
	* ch-exp.y (CHARACTER_LITERAL):  Add support to yylex.
	* ch-exp.y (match_integer_literal):  Add function.
	* ch-exp.y (builtin_type_chill_char):  Add definition.
	* gdbtypes.h (builtin_type_chill_char):  Add declaration.
	**** end-sanitize-chill ****
1992-11-18 22:49:38 +00:00
Ian Lance Taylor
cdb1cc9214 Tue Nov 17 11:17:06 1992 Ian Lance Taylor (ian@cygnus.com)
* tm-rs6000.h (BELIEVE_PCC_PROMOTION): Define, since AIX cc gets
	it right.
	(aix_framedata): added nosavedpc field.
	(SAVED_PC_AFTER_CALL): Don't try to optimize; just call
	read_register.
	(FRAMELESS_FUNCTION_INVOCATION): Pass second argument of 0.
	(FRAME_SAVED_PC): If PC not saved, use SAVED_PC_AFTER_CALL.
	* rs6000-tdep.c (skip_prologue): Handle gcc generated stfd
	instructions as function_frame_info does.  Expand special case of
	st r31,-4(r1) to be st r31,NUM(r1), since gcc can generate offsets
	other than -4.
	(pop_frame): Add 4 rather than sizeof (int) to avoid host
	dependence.
	(function_frame_info): Set frameless if the function has no frame,
	and set nosavedpc if the PC was not saved.  Handle gcc generated
	stfd 31,-4(31); st 31, -12(31) correctly.
	(frameless_function_invocation): New second argument pcsaved; if 0
	return whether the function has a frame, if 1 return whether the
	function saved PC.
	(frame_initial_stack_address): Correct typo: cache registers for
	callee_fi, not for fi, (avoids reading garbage memory locations).
1992-11-17 21:46:17 +00:00
Stu Grossman
b638ca912c * symtab.c (find_pc_line): Improve code per gnu's suggestions.
Improve comments as well.
1992-11-16 23:59:37 +00:00
Fred Fish
19cfe25d90 First cut at sanitizing away the chill stuff. 1992-11-16 19:25:35 +00:00
Fred Fish
45a655b0b6 * Makefile.in (VERSION): Bump to 4.7.2
* symtab.c (find_pc_symtab):  Fix return of random value
	to caller.
1992-11-15 20:26:35 +00:00
Fred Fish
e58de8a230 * Makefile.in (SFILES_MAINDIR): Add ch-exp.y.
* Makefile.in (YYFILES):  Add ch-exp.tab.c.
	* Makefile.in (YYOBJ):  Add ch-exp.tab.o.
	* Makefile.in (saber_gdb):  Add unload of ch-exp.y and load
	of ch-exp.tab.c.
	* Makefile.in (distclean):  Add target ch-exp.tab.c.
	* Makefile.in (realclean):  Add rm of ch-exp.tab.c.
	* Makefile.in (c-exp.tab.c, m2-exp.tab.c):  Add dependency on
	Makefile since it contains sed patterns used in generation.
	Add sed pattern to also delete #include of any malloc.h.
	* Makefile.in (ch-exp.tab.o, ch-exp.tab.c):  New targets.
	* ch-exp.y:  New expression parser, for GNU-Chill.
	* c-exp.y, expr.c, expression.h, language.c, m2-exp.y,
	parser-defs.h, valarith.c, valops.c, value.h:  Remap macros and
	function names to conform to K&R terminology with respect to
	logical and bitwise operators:
	UNOP_ZEROP => UNOP_LOGICAL_NOT
	UNOP_LOGNOT => UNOP_COMPLEMENT
	BINOP_LOGAND => BINOP_BITWISE_AND
	BINOP_LOGXOR => BINOP_BITWISE_XOR
	BINOP_LOGIOR => BINOP_BITWISE_IOR
	BINOP_AND => BINOP_LOGICAL_AND
	BINOP_OR => BINOP_LOGICAL_OR
	PREC_OR => PREC_LOGICAL_OR
	PREC_AND => PREC_LOGICAL_AND
	PREC_LOGIOR => PREC_BITWISE_IOR
	PREC_LOGXOR => PREC_BITWISE_XOR
	PREC_LOGAND => PREC_BITWISE_AND
	value_zerop() => value_logical_not()
	value_lognot() => value_complement()
	* c-exp.y (c_op_print_tab):  Add explicit empty terminator.
	* m2-exp.y (m2_op_print_tab):  Add explicit empty terminator.
	* defs.h (enum language):  Add language_chill.
	* dwarfread.c (set_cu_language):  Add LANG_CHILL case and make
	LANG_MODULA2 a recognized language.
	* eval.c (evaluate_subexp):  Add OP_BOOL case.
	* expprint.c (print_subexp):  Add OP_BOOL case.
	* gdbtypes.h (enum_typecode):  Note TYPE_CODE_BOOL used for
	Chill as well as Modula-2.
	* gdbtypes.y (builtin_type_chill_bool, builtin_type_chill_long,
	builtin_type_chill_ulong, builtin_type_chill_real):  Add.
	* i387-tdep.c (sys/dir.h):  Remove, appears to be unnecessary
	and is nonexistant in some SVR4 based systems.
	* language.c (DEFAULT_ALLOCSIZE):  Change from 3 => 4.
	* language.c (set_language_command):  Add chill.
	* language.c (binop_result_type, integral_type, character_type,
	boolean_type, structured_type, value_true, binop_type_check):
	Add language_chill cases.
	* language.h (_LANG_chill):  Define.
	* m2-exp.y (number_sign, modblock):  Make static, #ifdef out
	unused modblock.
	* m2-exp.y (ANDAND):  Rename to LOGICAL_AND.
	* source.c (source_info):  Fix minor nits, print "1 line" rather
	than "1 lines", and "language is <lang>".
	* symfile.c (deduce_language_from_filename):  Recognize the
	filename extensions ".chill", ".c186", and ".c286" for Chill.
	* valarith.c (value_binop):  Handle TYPE_CODE_BOOL as well
	as TYPE_CODE_INT and TYPE_CODE_FLOAT.
	* valprint.c (val_print):  Print TYPE_CODE_BOOL type values as
	"TRUE" or "FALSE".
	* valprint.c (typedef_print):  Add case for language_chill.
	* values.c (value_from_longest):  Handle TYPE_CODE_BOOL.
1992-11-15 17:28:02 +00:00
Stu Grossman
c1878f8788 * infcmd.c (step_over_calls): Improve comments.
* symtab.c (find_pc_psymtab):  Clean up a bit.
* (find_pc_symtab):  Fix comments, clean up code.
* (find_pc_line):  General cleanups, efficiency improvements.
Also, don't return garbage when some line info exists, but there
was no good match.
1992-11-14 04:33:21 +00:00