Commit Graph

1774 Commits

Author SHA1 Message Date
David D. Zuhn
91d2a93870 use waitpid instead of wait4 1993-01-06 10:26:42 +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
5fe932391d * command.c (shell_escape, make_command, _initialze_command):
don't create or use fork if CANT_FORK is defined.
	* serial.h, ser-go32.c: now compiles, but "the obvious problems of
	code written for the IBM PC" remain.
	* xm-go32.h: define CANT_FORK
1993-01-04 15:39:00 +00:00
Steve Chamberlain
0607cf6058 * 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.
include simulator target too.
1993-01-03 22:37: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
Roland Pesch
91db75bbf8 Change default TEXIDIR to find FSF's texinfo.tex in new location. 1992-12-16 02:40:29 +00:00
Roland Pesch
967007ca97 Change default pointer to texinfo.tex to match new location. 1992-12-16 02:39:50 +00:00
Ian Lance Taylor
b243fc7e59 Add i386sco4.mh (this time for sure). 1992-12-15 18:43:00 +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
47bc42e606 * hppahpux.mt (TDEPFILES): Add exec.o.
* hppahpux.mh (NATDEPFILES):  Remove exec.o, add inftarg.o, and fork-child.o.
1992-12-15 01:49:05 +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
491a12058f * config/{vxworks68,vxworks960}: Don't include xdr_regs.o. 1992-12-10 09:56:01 +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
c09fde96d8 Update dependencies after deleting files. 1992-12-10 06:44:06 +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
K. Richard Pixley
43bbd567f2 recording file death 1992-12-08 04:59:31 +00:00
Roland Pesch
7b21432fde Fix fatal typo in an M4 substitution. 1992-12-07 23:22:55 +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
David D. Zuhn
c98c5fd4b1 updated address and phone number 1992-11-30 09:45:40 +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
John Gilmore
2a20c602d9 Add sections on clean design and on how to send in changes. 1992-11-28 14:52:16 +00:00
Roland Pesch
712b9893ea Doc for sac's new "z8ksim" Z8000 simulator target. 1992-11-26 02:28:17 +00:00
Roland Pesch
4803cddfec Conditional vars for controlling Z8000 doc. 1992-11-26 02:26:53 +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
f8f3743940 minor typo correction 1992-11-23 03:31:21 +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
40528d53ed * m2-exp.y (m2_printstr): Forgot to change reference of
c_printchar to m2_printchar.
1992-11-21 16:27:58 +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
Fred Fish
ae0afa4bad Couple of things left out of last checkin...
* mipsread.c (expression.h, language.h):  Include for
	partial-stab.h use.
	* ch-exp.y (match_integer_literal):  Use decode_integer_literal.
1992-11-19 00:16:11 +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
Stu Grossman
b5a3d2aac6 * infcmd.c (set_environment_command): Make set env FOO x=y work.
Fix from maj@lucid.com.
* remote-udi.c (udi_open):  Reset vars so that user can re-run
programs without leaving GDB.
* (many routines):  Slightly improve error handling.
* (download):  Zero out BSS by longs instead of bytes to avoid
timeouts in real hardware.
* 29k-share/udi/udip2soc.c (UDIDisconnect, UDIKill):  Indicate
that connection is no longer in use after shutdown() of socket.
This keeps GDB from dying of a SIGPIPE when you issue multiple
`target udi' commands.
1992-11-18 22:51:58 +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
070ee184f7 Remove include and dfe directories. 1992-11-17 04:36:01 +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
3825dfe821 More fine-tuning of sanitize away chill stuff... 1992-11-16 21:56:20 +00:00
Fred Fish
0a06f1bc5d Fix typo. 1992-11-16 20:27:02 +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
Mark Eichin
238f5383d0 put exec.o back; it deals with exec files, not fork/exec, and thus is still
relevant for remote targets.
1992-11-13 18:26:21 +00:00
Steve Chamberlain
1242152e13 z8k target 1992-11-13 17:42:24 +00:00
Mark Eichin
e633652f76 add i[34]86-*-go32, sparclite-*-* 1992-11-12 15:06:07 +00:00
Stu Grossman
b6113cc408 * Makefile.in: Remove dependancies for 29k-share/dfe/yank.o and
29k-share/dfe/mini2udi.o.
* config/a29k-udi.mt:  Remove yank.o and mini2udi.o.
* alldeps.mak, depend:  Update to deal with removal of
aforementioned files.
* remote-udi.c:  Major cleanups.  Clean up udi_open and drop
requirement for useless 'program' argument.  Clean up
udi_create_inferior, and udi_load to call common download()
routine.  Create download routine to load remote hosts directly
(with the help of BFD) so that we don't need yank.c and
mini2udi.c.
Fix udi_detach to call UDIDisconnect with
the right arguments.  Clean up udi_resume, don't assign tip_error
twice.  Clean up udi_wait, straighten out status codes.  Make
udi_kill really work.
1992-11-12 01:15:06 +00:00
John Gilmore
58108d01c2 Add how to declare the result of make_cleanup. 1992-11-10 07:57:43 +00:00
Steve Chamberlain
2e6edad13c * c-exp.y: separated host/target idea of integer type size,
removed redundant parse rules. (YYSTYPE): added typed_val, removed
	UINT and CHAR rules. (parse_number): work out the targetwise type
	of a number based upon it's size and qualifiers. (yylex): chars
	are now treated the same way as ints.

	* source.c (indentify_source_line): don't core dump if wanted
	line is larger than number of lines in source. (can happen when
	coff gets confused about #included source).
1992-11-06 18:37:20 +00:00
John Gilmore
59c84bd8d5 Fix problems noticed by Allan Steel, <allan@maths.su.oz.au>,
when debugging a program with 100 shared libraries.

* solib.c (solib_map_sections):  Always close the BFD we open.
Free all malloc'd storage we allocate, too, including error cases.
(struct so_list):  Remove unused so_bfd member.
(clear_solib):  Don't bother closing so_bfd.

* symfile.c (symfile_bfd_open):  Mark newly opened BFD as
cacheable.  `So many symbol files, so little file descriptors.'
1992-11-06 11:05:08 +00:00
John Gilmore
8a96d79b70 * m68k-stub.c: Remove ansidecl.h and the few uses of it.
Stubs should stand alone as much as possible.

* source.c (show_directories):  Avoid printf_filtered length prob
pointed out by Jonathan Stone.

* i960-pinsn.c (MEM_MAX, MEM_SIZ):  Set upper limit properly to
avoid accesses beyond end of table.  Fix by Lee W. Cooprider,
<Lee_Cooprider@vos.stratus.com>.
1992-11-06 09:21:13 +00:00
Fred Fish
402dca80e7 * {ser-bsd.c, ser-termios.c} (serial_close): Pass address of
struct, not struct itself.
	* serial.h (serial_restore):  Fix prototype, takes pointer not
	struct.
1992-11-06 01:35:57 +00:00
Stu Grossman
2352d20bd7 * Makefile.in (depend): Add nm.h to the list of things to fixup.
* depend:  Redo, to fixup nm.h problems with *-tab.c files.
1992-11-06 01:13:34 +00:00
Stu Grossman
4e084cde32 Add 29k-UDI stuff back in... 1992-11-06 00:20:50 +00:00
Stu Grossman
e7ae70e927 Re-install UDI comments. 1992-11-05 23:40:02 +00:00