C++: dlsym casts in gdb/linux-thread-db.c and gdb/gdbserver/thread-db.c
[deliverable/binutils-gdb.git] / gdb / ChangeLog-1991
CommitLineData
c906108c
SS
1Mon Dec 30 10:57:02 1991 Per Bothner (bothner at cygnus.com)
2
3 Mainly stuff to improve handling of TYPE_CODE_REF values.
4 * valops.c (value_addr): If taking the addres of a
5 TYPE_CODE_REF, just cast the object to the corresponding
6 TYPE_CODE_PTR. This yields correct C++ semantics, and
7 preserves the location information, which has the nice effect
8 that &(&R) given the location containing R.
9 * values.c (value_copy): Make non-static (used by value_addr).
10 * eval.c (evaluate_subexp_for_address): Use the default
11 scheme (with value_addr) for a variable if it has TYPE_CODE_REF.
12 * valops.c (value_addr), eval.c (evaluate_subexp_for_address,
13 evaluate_subexp_with_coercion): Factor out some common
14 expressions into variables, for easier reading.
15 * findvar.c (locate_var_value): Remove code to handle
16 TYPE_CODE_REF - it should no longer be needed.
17 * valops.c (value_assign): Do a COERCE_REF on the
18 destination operand, for correct C++ semantics.
19 * valarith.c (value_x_binop): Ditto: De-reference C++
20 references in the arguments.
21 * valops.c: ANSI-fy: bcopy->memcpy, bzero->memset.
22
23Sat Dec 28 11:30:26 1991 Per Bothner (bothner at cygnus.com)
24
25 * dwarfread.c, coffread.c: Use INIT_CPLUS_SPECIFIC.
26 * symtab.c (gdb_mangle_name): Recognize and handle
27 constructors specially.
28 * symtab.c (check_stub_method): Test for failure from
29 cplus-demangle by calling error() instead of seg-faulting ...
30
31Fri Dec 27 22:21:30 1991 Fred Fish (fnf at cygnus.com)
32
33 * defs.h: Add definition of null_cleanup()
34
35 * procfs.c: Many small changes to add base support for a new
36 "info proc" command (currently only printing of the address
37 space mapping is implemented) and allow iteration over the
38 address space mapping, calling an arbitrary function for each
39 mapping (used for shared library support).
40
41 * solib.c: Change all ifdefs that checked for "sun" to check
42 for "!SVR4_SHARED_LIBS" instead. Rewrite lookup_base() to
43 handle locating the debug base address even when not currently
44 stopped at the dynamic linker entry point.
45
46 * utils.c: Add null_cleanup() as a known function that does
47 nothing to serve as a base for possibly long cleanup chains
48 with no specific "first cleanup" to serve as an anchor.
49
50 * xm-sysv4.h: Add define of SVR4_SHARED_LIBS
51
52Fri Dec 27 10:11:33 1991 Per Bothner (bothner at cygnus.com)
53
54 * arm-opcode.h, m88k-opcode.h, pn-opcode.h, np1-opcode.h,
55 pyr-opcode.h, tahoe-opcode, vax-opcode.h: Removed -
56 these are all essentially the same as the versions
57 in ../include/opcode. The remaining *-opcode.h here
58 are not quite so obviously the same, and need study.
59 * arm-pinsn.c, gould-pinsn.c, m88k-pinsn.c, pyr-pinsn.c,
60 tahoe-pinsn.c, vax-pinsn.c: Change so these include
61 opcode/FOO.h (actually ../include/opcode/FOO.h)
62 instead of the recenntly departed opcode-FOO.h files.
63 * sparc-pinsn.c: Now that we're using the much tighter
64 opcode table in ../include/opcode/sparc.h, we shouldn't
65 need to sort the opcodes before dis-assembly.
66
67 * symtab.h, symmisc.c: Make cplus_struct_default be const.
68 * symtab.h, buildsym.c: Add and use INIT_CPLUS_SPECIFIC macro.
69 * symmisc.c: Remove unused 'nfields' variable.
70 * buildsym.h: Add extern decl of unknown_symtype_complaint,
71 since it used used by partial-stab.h (included two places).
72 * partial-stab.h: Re-arrange DBXREAD_ONLY #ifdefs so that
73 we should never hit the default case (until new stab codes
74 are added). Hence, we can leave the complaint in the
75 default case in even when DBXREAD_ONLY is off.
76 * partial_stab.h: Recognize a pair of N_SO stabs (one for the
77 directory, one for the filename proper) without peeking ahead.
78 * dbxread.c, mipsread.c: Because of previous change, don't need
79 ugly CHECK_SECOND_N_SO macro.
80 * buildsym.h, dbxread.c, mipsread.c: Make next_symbol_text a
81 macro that invokes a function pointer in next_symbol_text_func.
82 * mipsread.c: Added comments various places to
83 explain what is going on.
84 * mipsread.c (parse_symbol): Support the new (SGI-specific?)
85 symbol types stStruct, stUnion, and stEnum.
86 Also, some fixes in the code for dealing with tags.
87 * mipsread.c: Change handling of startup_file_start and _end
88 - now just use the textlow and texhigh of a psymtab
89 to check if we've found the startup-file.
90 * mipsread.c: Replace s_idx by global cur_sdx in many places.
91 This is so mips_next_symbol_text can get at it.
92
93Thu Dec 26 19:52:01 1991 Fred Fish (fnf at cygnus.com)
94
95 * dbxread.c, symmisc.c: Move add_psymbol_to_plist() from
96 dbxread.c to symmisc and change name to add_psymbol_to_list.
97 Ditto for add_psymbol_addr_to_plist(). Also expand their
98 body to not use ADD_PSYMBOL_VT_TO_LIST.
99
100 * dwarfread.c: Remove add_psymbol_to_list() and convert usages
101 to the ADD_PSYMBOL_TO_LIST macro.
102
103 * ieee-float.c: Change "#ifdef DEBUG" to "#ifdef IEEE_DEBUG"
104 to avoid collision with the DEBUG for ADD_PSYMBOL_VT_TO_LIST.
105
106 * partial-stab.h, symfile.h: Move definitions of the macros
107 ADD_PSYMBOL_TO_LIST and ADD_PSYMBOL_ADDR_TO_LIST from
108 partial-stab.h to symfile.h. They aren't stab specific.
109 Change ADD_PSYMBOL_VT_TO_LIST to use memcpy rather than strncpy.
110
111Tue Dec 24 11:38:08 1991 John Gilmore (gnu at cygnus.com)
112
113 * Makefile.in: Roll VERSION to 4.3.2.
114
115Mon Dec 23 13:54:35 1991 Per Bothner (bothner at cygnus.com)
116
117 * m68k-opcode.h, mips-opcode.h, sparc-opcode.h: Deleted.
118 * m68k-pinsn.c, mips-pinsn.c, sparc-pinsn.c:
119 Include <opcode/FOO.h> instead of <FOO-opcode.h>.
120
121 * symtab.h, symtab.c, coffread.c, dwarfread.c, symmisc.c,
122 dbxread.c: The TYPE_CPLUS_SPECIFIC structure is now only
123 allocated when it is needed. Until it is needed, it points
124 to a shared statically allocated structure.
125
126 * buildsym.h, buildsym.c, dbxread.c: Remove the kludgy code
127 in read_ofile_symtab to recognize two initial N_SO stabs,
128 and let process_on_symbol handle it. This is cleaner, more
129 efficient, and lets mipsread.c share the same code.
130
131 * symfile.h, partial-stab.h: Move ADD_PSYMBOL_VT_TO_LIST
132 and related macros to here ...
133 * dbxread.c: ... from here.
134 * symmisc.c: Move the "overflow" handling from
135 ADD_PSYMBOL_VT_TO_LIST macro into new function extend_psymbol_list.
136 * dwarfread.c: Re-write add_psymbol_to_list to use
137 ADD_PSYMBOL_VT_TO_LIST macro.
138
139 * mipsread.c: Extend mipsread.c to handle stabs-style symbols
140 encapsulated in ecoff symbols. This enable full g++ debugging.
141 * partial-stab.h: Move the code for pre-scanning symbols
142 and building psymtabs to an include file, out from dbxread.c.
143 This way, the same code can also be used by mipsread.c.
144 * dbxread.c, buildsym.h: Various changes to allow some functions
145 to be used by mipsread.c (also some arguable stylistic changes).
146
147 * tm-mips.h: Define BLOCK_ADDRESS_ABSOLUTE, at least for now,
148 since mips-tfile puts relocatable addresses into LBRAC/RBRAC
149 stabs.
150
151 * mipsread.c: Replace code to handle ambiguous tag blocks.
152 Instead of allocating a TYPE_CODE_UNDEF, guess (by looking
153 at types and offsets) if a tag is a struct, union, or enum.
154 Still patch it later if we find out for sure.
155 * mipsread.c: In various ways, replace Forin's
156 ideo-syncratic code by code that fits better with the
157 rest of gdb, for both stabs-based and ecoff-based symtabs.
158 E.g. use end_psymtab; don't do extra passes over FDR table to
159 pre-partition global data; don't use external symbols to
160 create static/global symbols (just put them in the
161 misc_vector); use ADD_PSYMBOL_TO_LIST macro; don't
162 sort psymtabs or symtabs; use obstacks more.
163
164 * symtab.c, mipsread.c, dbxread.c, buildsym.c:
165 ANSIfy: Replace bcopy by memcpy, bzero by memset.
166
167Sun Dec 22 19:31:04 1991 Fred Fish (fnf at cygnus.com)
168
169 * solib.c (locate_base): Fix uninitialized variable that was
170 causing return of random value to callee.
171
172 * config/mh-amix, config/mh-i386v4: Change to find alloca by
173 compiling and linking alloca.c, even when it is not strictly
174 required. Also arrange to link with -ltermlib rather than
175 -ltermcap.
176
177 * Makefile.in: Move TERMCAP definition to prior to inclusion
178 of host makefile fragments so it can be overridden.
179
180Fri Dec 20 16:33:39 1991 John Gilmore (gnu at cygnus.com)
181
182 * xcoffread.c (read_symbol_lineno): Logic error in incrementing
183 symbol table entry number. (From Metin Ozisik.)
184
185Fri Dec 20 11:36:38 1991 Fred Fish (fnf at cygnus.com)
186
187 * config/mh-i386v4: Change XM_CLIBS to "-lc /usr/ucblib/libucb.a"
188 so compiles with native compilers (without builtin alloca) can
189 pick up the version from the bsd emulation library. However, we
190 search the standard C library first so we don't pick up lots of
191 other broken stuff from libucb.a, that we *don't* want.
192
193 * configure.in, tm-amix.h, tm-i386v4.h, xm-amix.h, xm-i386v4.h:
194 Change svr4 references to sysv4.
195
196 * source.c: Move declaration of external function index to
197 front of file so it is in scope for all references.
198
199 * utils.c (error, fatal): Make definitions consistent with
200 defs.h declarations (declared as "volatile void").
201
202Fri Dec 20 10:55:36 1991 John Gilmore (gnu at cygnus.com)
203
204 * rs6k-opcode.h: Bugfix sfe and stbrx. By Al Kossow.
205
206Wed Dec 18 17:09:06 1991 Stu Grossman (grossman at cygnus.com)
207
208 * command.h, defs.h, eval.h, expression.h, remote-sa.sparc.c,
209 sparc-tdep.c, symtab.h, target.h, value.h, vx-share/ptrace.h,
210 vx-share/xdr_ptrace.h, vx-share/xdr_rdb.h: ANSIfy enums.
211
212Mon Dec 16 12:31:46 1991 Fred Fish (fnf at cygnus.com)
213
214 * config/mt-amix, config/mt-i386v4: Add solib.o to TDEPFILES
215 for these SVR4 systems.
216
217 * symfile.c (symbol_file_add): When verbose is set, print
218 the names of files from which symbols are being loaded, as
219 when from_tty is true.
220
221 * solib.c: Completely reorganized (rewritten) to support
222 SVR4 shared libraries in a manner very close to the original
223 SunOS implementation. This support is expected to change and
224 become more general at some future time. The SVR4 version
225 does not yet work for attached processes, for example.
226
227 * dwarfread.c: Arrange in dwarf_build_psymtabs() for the
228 relocation address to be valid whether or not symbols are
229 being read from a shared library or an executable. Use the
230 relocation address recorded in the psymtab when reading
231 full symbol tables (in read_ofile_symtab). Ensure that the
232 relocated address ranges are recorded in partial symtabs.
233
234 * elfread.c: Add new function elf_interpreter() to return the
235 string from the ELF ".interp" section. This is the interpreter
236 that the kernel tries to run and feed the executable to.
237 Expand arguments to record_misc_function to include a type arg.
238 Modify elf_symtab_read() to supply the type arg, and to do symbol
239 relocations for symbols read in from shared libraries.
240
241 * procfs.c: Add new functions proc_base_address() and
242 proc_address_to_fd(), used by shared library support.
243
244 * tm-svr4.h: Add macros to support SVR4 shared libraries.
245 Definitions for SOLIB_ADD, SOLIB_CREATE_INFERIOR_HOOK,
246 CLEAR_SOLIB, and DISABLE_UNSETTABLE_BREAK.
247
248Fri Dec 13 20:11:26 1991 John Gilmore (gnu at cygnus.com)
249
250 * infrun.c, remote-eb.c, remote-nindy.c, remote-vx.c: Remove
251 unused START_INFERIOR_HOOK.
252
253 * remote-eb.c: Change timeout to 24 seconds (*10 fits in byte)
254 to account for slow loading from floppies.
255 (eb_create_inferior): New fn, from eb_start and
256 nindy_create_inferior.
257 (eb_close): Only use log_file if nonzero.
258 (eb_xfer_inferior_memory): If not writing, then read!
259 (eb_read_inferior_memory, eb_write_inferior_memory): Return length.
260 (eb_kill): A new no-op.
261 (eb_mourn_inferior): Remove breakpoints, then generically weep.
262
263Fri Dec 13 16:09:23 1991 Fred Fish (fnf at cygnus.com)
264
265 * breakpoint.c, findvar.c, infrun.c, putenv.c, stack.c: Fix
266 miscellaneous comparisons of integer with NULL that elicit
267 compiler warnings about comparison of integer with pointer, when
268 NULL is ((void *) 0) rather than just a bare 0.
269
270Wed Dec 11 13:02:58 1991 John Gilmore (gnu at cygnus.com)
271
272 * breakpoint.c (breakpoint_re_set_one): Disable each breakpoint
273 while we reset it, in case of problems. Print breakpoint number
274 in error messages.
275
276 * buildsym.c (read_struct_type): Avoid sun3 compiler bug with
277 foo[--n].
278
279 * source.c (find_source_lines): If getting file mod time fails,
280 don't warn.
281
282 * target.c (target_xfer_memory): If errno is set, return it,
283 rather than EIO.
284
285Tue Dec 10 04:07:22 1991 K. Richard Pixley (rich at rtl.cygnus.com)
286
287 * Makefile.in: infodir belongs in datadir.
288
289Sun Dec 8 21:13:33 1991 Michael Tiemann (tiemann at sphagnum.cygnus.com)
290
291 * symtab.h (struct fn_field): Add new fields `is_private',
292 `is_protected', `is_stub', making room by reducing the size of
293 `voffset'.
294 (struct fn_fieldlist): Delete the fields `private_fn_field_bits'
295 and `protected_fn_field_bits'.
296 (TYPE_FN_{PRIVATE,PROTECTED}_BITS): Deleted.
297 (SET_TYPE_FN_{PRIVATE,PROTECTED}): Deleted.
298 (TYPE_FN_{PRIVATE,PROTECTED}): Deleted.
299 (TYPE_FN_FIELD_{STUB,PRIVATE,PROTECTED}): New macros.
300 * valops.c, valprint.c, symtab.c: All callers updated.
301
302 * buildsym.c (read_struct_type): Delete the `visibility' field
303 from `struct next_fnfield', and rework code so that visibility
304 info is stored into the fn_field directly. Also, hacked to set
305 TYPE_FN_FIELD_STUB for both static and normal member functions.
306
307Sat Dec 7 18:13:11 1991 Fred Fish (fnf at cygnus.com)
308
309 * i386-tdep.c: Fix a problem on i386 systems where buffered code
310 stream access was failing to take into account the minimum size
311 granularity of the code section. For now, the buffering is simply
312 disabled. There is a similar problem in the i386 disassember code
313 that has not yet been fixed (FIXME).
314
315 * gmalloc.c: Use macros to hide some of the ugly casting required
316 in the previously applied fix for pointers with high bits set.
317
318Sat Dec 7 16:49:35 1991 John Gilmore (gnu at cygnus.com)
319
320 * Makefile.in: Roll VERSION to 4.3.1.
321
322Sat Dec 7 04:12:35 1991 John Gilmore (gnu at cygnus.com)
323
324 GDB-4.3 release!
325
326 * Makefile.in: Roll VERSION to 4.3
327 * README, TODO, WHATS.NEW, depend: Update.
328
329 * inflow.c (terminal_inferior): Avoid error msg if attached.
330
331 * gmalloc.c: Fix bug that causes malloc & free to
332 fail on systems where pointers have the high bit set (0x800efcf0
333 for example). The problem is that the difference between two
334 pointers is a signed integer, so the computation
335
336 (char *) 0x800efcf0 - (char *) 0
337
338 yields a negative value. The sign of the result of the modulus
339 operator is machine dependent for negative operands, thus it is
340 possible for it to end up negative. From Fred Fish.
341
342Sat Dec 7 00:00:15 1991 K. Richard Pixley (rich at rtl.cygnus.com)
343
344 * Makefile.in: install using INSTALL_PROGRAM and INSTALL_DATA.
345 added clean-info. added some standards.text support and made it
346 look like our other Makefiles.
347
348 * configure.in: mark this directory target dependent. configure
349 now runs entirely in objdir so make existence tests and
350 references against ${srcdir}.
351
352Fri Dec 6 08:30:36 1991 Fred Fish (fnf at cygnus.com)
353
354 * dwarfread.c (enum_type, struct_type): Fixes for opaque and
355 anonymous enumerations, structures, and unions. Now passes all
356 the current gdb test suite tests.
357
358Thu Dec 5 22:46:13 1991 K. Richard Pixley (rich at rtl.cygnus.com)
359
360 * Makefile.in: idestdir and ddestdir go away. Added copyrights
361 and shift gpl to v2. Added ChangeLog if it didn't exist. docdir
362 and mandir now keyed off datadir by default.
363
364Thu Dec 5 21:53:21 1991 John Gilmore (gnu at cygnus.com)
365
366 * symtab.c (decode_line_1): If SKIP_PROLOGUE leaves us in
367 mid-line, be more careful about possibly advancing to the next line.
368
369Thu Dec 5 18:59:51 1991 Michael Tiemann (tiemann at cygnus.com)
370
371 * cplus-dem.c (cplus_demangle): Call `string_need' when
372 null-terminating a partially-computed string.
373
374Thu Dec 5 18:19:43 1991 Fred Fish (fnf at cygnus.com)
375
376 * dwarfread.c (enum_type): Build a correct TYPE_NAME, add a
377 symbol to the symbol table for each member of the enum.
378
379 * dwarfread.c (struct_type): Build a correct TYPE_NAME.
380
381 * dwarfread.c (add_enum_psymbol): New function to extract enum
382 member names and add them to the partial symbol table while
383 building partial symbol tables.
384
385Thu Dec 5 17:31:05 1991 John Gilmore (gnu at cygnus.com)
386
387 * symtab.c (check_stub_method): Must allocate two extra argument
388 slots (one for `this', one for arglist terminator).
389
390Thu Dec 5 10:51:05 1991 Fred Fish (fnf at cygnus.com)
391
392 * inflow.c (child_terminal_info): Supply missing '"' character.
393
394 * buildsym.c (define_symbol): Supply missing parenthesis.
395
396Thu Dec 5 03:34:21 1991 John Gilmore (gnu at cygnus.com)
397
398 * coredep.c (fetch_core_registers): Fencepost error. Fixed by
399 Jay Lepreau <lepreau@cs.utah.edu>.
400
401 * inflow.c: Remember whether GDB has a terminal. Avoid switching
402 terminals back and forth if we don't have one.
403
404 * c-exp.y (parse_number): Zero is not an unsigned int constant!
405 * dbxread.c (read_dbx_symtab): Enum type numbers can be in (1,2) form.
406
407 Improve type parsing.
408 * buildsym.c (define_symbol, read_range_type): Add
409 long_kludge_name that passes the names of range types being
410 defined, down to where we must choose between 'int' and 'long'
411 variants. This fails on Sun C anyway since the compiler itself is
412 confused between int and long.
413 (read_array_type, cleanup_undefined_types): Correct the size of
414 array type whose element-type size isn't immediately known.
415
416 Early preparation to blow away many builtin types, building them
417 on the fly as needed. Don't compare types to builtin types with
418 ==; examine the relevant fields instead.
419 * coffread.c (process_coff_symbol: C_ARG, C_REGPARM): Avoid ==.
420 * buildsym.c (define_symbol, case 'p'): Avoid ==.
421 * valops.c (value_arg_coerce): Avoid ==. Don't assume host and
422 target types are the same.
423 * valprint.c (val_print): I finally understand arrays, remove FIXME.
424
425 * symmisc.c (printpsyms_command): Reduce redundancy, and put all
426 addresses in GDB itself into parens for easy cleanup and diffing.
427
428Wed Dec 4 21:05:30 1991 Fred Fish (fnf at cygnus.com)
429
430 * dwarfread (enum_type): Arrange for the order of enumeration
431 members to match the source code order; not the order in the
432 Dwarf information, which is explicitly reverse order.
433
434Wed Dec 4 18:24:39 1991 John Gilmore (gnu at cygnus.com)
435
436 * main.c (input_from_terminal_p): Check whether GDB has a
437 terminal at all.
438 (initialize_main): Revise doc for `set editing'.
439
440Wed Dec 4 15:36:39 1991 Fred Fish (fnf at cygnus.com)
441
442 * dwarfread.c (struct_type): Handle structures and unions which
443 contain DIE's other than just member dies.
444
445Wed Dec 4 01:59:05 1991 John Gilmore (gnu at cygnus.com)
446
447 * symfile.c (reread_symbols): Avoid kludging mtime_set, now that
448 BFD is fixed.
449
450Tue Dec 3 17:24:57 1991 John Gilmore (gnu at cygnus.com)
451
452 * Makefile.in: VERSION 4.2.96.
453
454 * main.c (initialize_main): Revise command descriptions.
455 * command.c (show_user): `info user' -> `show user'.
456 * symtab.c (_initialize_symtab): Typo in `info types' desc.
457
458 * coffread.c (coff_symfile_read): Avoid select_source_symtab,
459 since it is not needed and can cause errors when examining ".o"s.
460 (read_coff_symtab, decode_base_type): Use complain, not printf.
461 Print symbol name, not its number.
462 Remove "#if defined(clipper) #define BELIEVE_PCC_PROMOTION", which
463 someday should go in a clipper target config file.
464
465 * symfile.c (compact_misc_function_vector): Handle empty vector.
466 (complain, clear_complaints, syms_from_objfile): Fix complaint
467 formatting.
468 * xcoffexec.c: Change syms_from_objfile caller.
469
470 * sparc-xdep.c: Force tm-file as tm-sparc.h, to make it compile
471 when configured for cross debugging. FIXME, this needs a more
472 general solution.
473
474Mon Dec 2 11:04:05 1991 Per Bothner (bothner at cygnus.com)
475
476 * mips-tdep.c (init_extra_frame_info): Float register
477 'i' has gdb-internal number 'FP0+i', not '32+i'.
478 * mipsread.c (new_symbol): Translate g++ special
479 symbol "$t" to "this".
480
481Sat Nov 30 21:29:55 1991 Steve Chamberlain (sac at cygnus.com)
482 Changes due to include file renaming:
483
484 * xcoffread.c: internalcoff.h ->coff/internal.c,
485 coff-rs6000.h ->coff/rs6000.h
486 * mipsread.c: coff-mips.h ->coff/mips.h
487 * elfread.c: elf-common.h ->elf/common.h
488 elf-external.h ->elf/external.h,
489 elf-internal.h ->elf/internal.h
490 * dwarfread.c dwarf.h ->elf/dwarf.h
491 * dbxread.c: aout64.h ->aout/aout64.h
492 stab.gnu.h ->aout/stab_gnu.h
493
494 * coffread.c: internalcoff.h ->coff/internal.h
495 * buildsym.c: stab.gnu.h ->aout/stab_gnu.h
496 * depend Updated to take the above into account.
497
498Fri Nov 29 16:59:25 1991 Fred Fish (fnf at cygnus.com)
499
500 * configure.in: Add SVR4 i386 configurations.
501
502 * config/mh-i386v4, config/mt-i386v4, tm-i386v4.h, xm-i386v4.h:
503 New files for i386/SVR4.
504
505 * tm-i386v.h: Allow START_INFERIOR_TRAPS_EXPECTED and
506 DECR_PC_AFTER_BREAK to be predefined by files including
507 tm-i386v.h.
508
509 * i386-tdep.c: Add supply_gregset(), fill_gregset(),
510 supply_fpregset(), and fill_fpregset() functions, which are
511 target dependent support functions for the SVR4 /proc register
512 interface.
513
514 * dwarfread.c (enum_type, struct_type): Expand recognized
515 compiler generated tags to include symbols beginning with '.' as
516 well as '~'.
517
518 * symtab.c (sources_info): Change simple printf of error message
519 to call to error().
520
521Fri Nov 29 16:04:21 1991 Roland H. Pesch (pesch at cygnus.com)
522
523 * doc/gdb.texinfo: remove leading comments that survived M4 but
524 described its role in the doc; add one more font to colophon;
525 strengthen disclaimer about unsupported configs.
526
527Wed Nov 27 01:23:41 1991 John Gilmore (gnu at cygnus.com)
528
529 Fix bugs in C++ debugging.
530
531 * symtab.h: target_type is not used in record types.
532 Eliminate TYPE_MAIN_VARIANT and TYPE_NEXT_VARIANT. Eliminate
533 lookup_method_type. Add TYPE_TYPE_SPECIFIC macro.
534
535 * symtab.c (lookup_member_type): Don't chain them up, just
536 allocate one in symbol_obstack when we need one.
537 (allocate_stub_method): Build stub in symbol_obstack.
538 (check_stub_method): Move here from values.c. Don't deallocate
539 stub; overwrite it.
540 (lookup_method_type): Gone now.
541
542 * buildsym.c: Handle g++ v1 stabs a little bit better.
543 Change some C++ parsing error()s to complain()ts.
544 * buildsym.c, findvar.c, printcmd.c, symtab.c: Make unions and
545 structs have the same representation and work the same as far as
546 C++ is concerned.
547 * buildsym.c, symtab.c, values.c: Remove all references to
548 TYPE_MAIN_VARIANT and TYPE_NEXT_VARIANT.
549
550 * valops.c: Improve comments and indentation. Only call
551 check_stub_method when the stub flag is on.
552 * valprint.c: Fix or mark minor bugs and unportabilities.
553
554 * coffread.c (anonymous unions): Allocate a cplus structure.
555
556 * mipsread.c: Eliminate "template" types. Build new, real
557 types whenever we need them. Allocate cplus structures as needed.
558 Bulletproof the type parsing a bit more. Mark storage leaks.
559 (parse_type): Copy TYPE_TYPE_SPECIFIC when copying a real type
560 on top of a partial type.
561
562Fri Nov 22 16:39:57 1991 John Gilmore (gnu at cygnus.com)
563
564 * inflow.c (terminal_inferior): Check the results of ioctl's, and
565 print a message if any of them fail.
566 (terminal_ours_1): Store result of ioctl's for debugging, but
567 don't print (the terminal isn't ours...).
568
569 * tm-tahoe.h (FRAME_ARGS_ADDRESS): No need to offset from frame
570 pointer.
571
572 * m2-exp.y (MAX, MIN): Rename to MAX_FUNC, MIN_FUNC to avoid
573 conflicts with system header files.
574
575Fri Nov 22 08:27:40 1991 John Gilmore (gnu at cygnus.com)
576
577 * Roll VERSION to 4.2.95.
578
579 * buildsym.c, coredep.c, mem-break.c, xcoffread.c: Put <stdio.h>
580 first, before defs.h.
581 * config/mh-i386sco: Override compiler to gcc, print warning.
582 * configure.in: Handle i386-none-aout rather than i386-aout-none.
583 * infptrace.c, language.h, utils.c: Lint.
584 * m2-exp.y: #undef MAX and MIN in case system includes set them.
585 * xm-tahoe.h: Set HOST_BYTE_ORDER. Include system versions of
586 {BIG,LITTLE}_ENDIAN and the INT_MAX family first, to avoid
587 redefinition warnings.
588 * defs.h: Reorder things so that the xm-file gets first crack
589 at #define's, followed by defs.h and then the tm-file.
590 * Makefile.in: Remove spaces after 'ignore exit code' - flags.
591 Late-model BSD 'make's don't cope with them.
592
593Thu Nov 21 23:48:56 1991 John Gilmore (gnu at cygnus.com)
594
595 * Makefile.in: Roll new files into various lists.
596
597Thu Nov 21 18:26:11 1991 Fred Fish (fnf at cygnus.com)
598
599 * dwarfread.c (struct_type): Must initialize the c++ specific
600 portion of union types as well as struct types, since gdb attempts
601 to reference the c++ specific info for both types.
602
603Thu Nov 21 10:23:52 1991 John Gilmore (gnu at cygnus.com)
604
605 * Makefile.in: Roll VERSION to 4.2.90.
606
607 * defs.h: Incorporate param.h into defs.h. All users changed.
608 * param-no-tm.h: Change users to define TM_FILE_OVERRIDE instead.
609 * param.h, param-no-tm.h: Removed.
610 * Update copyrights in all changed files.
611 * dbxread.c, dwarfread.c, inflow.c, infrun.c, m2-exp.y, putenv.c,
612 solib.c, symtab.h, tm-umax.h, valprint.c: Lint.
613 * tm-convex.h, tm-hp300hpux.h, tm-merlin.h, tm-sparc.h,
614 xm-merlin.h: Avoid host include files in target descriptions.
615 * getpagesize.h: Removed, libiberty copes now.
616 * Makefile.in: Remove getpagesize.h, param.h, param-no-tm.h.
617
618 * exec.c (exec_files_info): If `verbose' is set, show file offset
619 as well.
620
621 * main.c: Use getcwd rather than getwd.
622 * standalone.c: Fake getcwd rather than getwd.
623 * xm-*.h: Remove fake values of MAXPATHLEN.
624
625 * xcoffexec.c: Add /* */ to #if 0'd thing to help ANSI.
626
627Wed Nov 20 18:35:56 1991 John Gilmore (gnu at cygnus.com)
628
629 * Remove gdb/hp-include. Support for HP a.out oddities should be
630 in BFD, not in GDB. Move gdb/hp-include/a.out.h to include/a.out.hp.h.
631
632 * infptrace.c, tm-sun386.h: Cashier <a.out.gnu.h>, remove refs.
633
634 * configure.in, xconfig, tconfig, Makefile.in, doc/gdbint.texinfo:
635 Makefile fragments for various hosts and targets now come from
636 gdb/config/mh-* and gdb/config/mt-*. This is for consistency with
637 other config setups.
638
639 * rs6000-pinsn.c, rs6k-opcode.h: Clean up.
640 * rs6k-opcode.def: Delete.
641
642Wed Nov 20 05:04:40 1991 Fred Fish (fnf at cygnus.com)
643
644 * dwarfread.c: Recognize obsolete form of AT_element_list
645 attribute still used by at least one AT&T compiler, and possibly
646 more.
647
648Tue Nov 19 07:53:55 1991 Fred Fish (fnf at cygnus.com)
649
650 * dwarfread.c (enum_type, struct_type): Ignore names invented by
651 helpful compilers for anonymous structs, unions, and enums.
652
653 * c-exp.y, m2-exp.y: Add defines for yymaxdepth, yy_yys, and
654 yy_yyv, so multiple parsers produced by SVR4 versions of yacc
655 can coexist in the same executable without collision.
656
657 * symtab.h: Add declaration for lookup_template_type() to kill
658 compiler warnings about conversions from int to pointer.
659
660Mon Nov 18 17:45:18 1991 Fred Fish (fnf at cygnus.com)
661
662 * procfs.c: Move inclusion of defs.h to before param.h, as in
663 all the other source files that include both. This is required
664 to supply some typedefs that are used in files included by param.h.
665
666 * m68k-tdep.c (m68k_skip_prologue): Add generic m68k support for
667 skipping function prologues, ala the other cpu families (i386,
668 mips, m88k, etc). Add the ability to skip movm and fmovm
669 instructions in the prologues. Still needs support for profile
670 (-p compiled) prologue sequences (FIXME).
671
672 * tm-68k.h: Change SKIP_PROLOGUE macro to use the new generic
673 m68k prologue skipping function by default.
674
675 * tm-altos.h, tm-isi.h: Continue to use the old definition of
676 SKIP_PROLOGUE.
677
678Mon Nov 18 15:12:45 1991 John Gilmore (gnu at cygnus.com)
679
680 * Makefile.in: Remove tdesc stuff, and extra blanks before colons.
681 * blockframe.c: Remove tdesc-related code. Default
682 FRAME_CHAIN_COMBINE.
683 * infrun.c: Remove tdesc-related code.
684 * m88k-tdep.c (frame_chain_combine, init_frame_pc): Remove copies
685 of defaultable things.
686 * tm-m88k.h: New file, common to all Moto 88k target configs.
687 Derived from tm-delta88.h.
688 * tm-delta88.h: Use it.
689 * xm-m88k.h: Common file for 88K hosts. Remove obsolete stuff.
690 * xm-delta88.h: Use it.
691 * tm-*.h: Remove FRAME_CHAIN_COMBINE macros, since all are
692 default.
693 * coffread.c: Remove tdesc stuff.
694 * tconfig/delta88, tconfig/m88k: Remove tdesc stuff.
695 * xconfig/m88k: Rename tm-88k.h to tm-m88k.h.
696
697Mon Nov 18 13:51:37 1991 Per Bothner (bothner at cygnus.com)
698
699 * source.c (open_source_file): If openp fails, try again
700 using just the base (non-directory) part of the filename.
701 This solves various annoying problems, such as when the
702 source was compiled with an absolute pathname - and the
703 source files have moved. Or if the source was compiled
704 using a relative pathname, it can be more convenient
705 to just specific the source directory to the dir command.
706
707Mon Nov 18 00:04:41 1991 Fred Fish (fnf at cygnus.com)
708
709 * cplus-dem.c (munge_function_name): Add missing third arg to
710 instance of call to do_type().
711
712 * dwarfread.c: Changes to match new dwarf.h. Remove
713 AT_deriv_list, AT_loclist, AT_incomplete, AT_const_data,
714 and AT_is_external.
715
716Sun Nov 17 16:20:53 1991 Michael Tiemann (tiemann at rtl.cygnus.com)
717
718 * symtab.h (struct type): Moved C++-specific fields into new type
719 `struct cplus_struct_type'. Now takes 10% less memory. Many
720 macros changed.
721 * symtab.c (init_type): Don't set fields belonging to
722 TYPE_CPLUS_SPECIFIC unless TYPE is TYPE_CODE_STRUCT.
723 * buildsym.c (read_type): Allocate TYPE_CPLUS_SPECIFIC for
724 TYPE_CODE_STRUCT.
725 (read_struct_type): Ditto. Also, add comments about how we can
726 deduce TYPE_VPTR_FIELDNO from inheritance info and fieldname info.
727 * coffread.c (decode_base_type): Allocate TYPE_CPLUS_SPECIFIC for
728 TYPE_CODE_STRUCT.
729 (read_struct_type): Ditto.
730 * dwarfread.c (struct_type): Ditto.
731
732 * symtab.c (read_range_type): Don't set TYPE_MAIN_VARIANT.
733 (lookup_pointer_type): Don't use or set TYPE_MAIN_VARIANT.
734 (lookup_reference_type): Ditto.
735
736 * cplus-dem.c: Many changes made to handle decoding of
737 ANSI-mangled names.
738 * symtab.c (gdb_mangle_name): Mangle/demangle ANSI-mangled names
739 as well.
740
741Fri Nov 15 17:57:59 1991 Stu Grossman (grossman at cygnus.com)
742
743 * mipsread.c (parse_partial_symbols): patch to keep DEC C
744 compiler from making gdb bomb out. Thanks to Ed Santiago!
745
746Thu Nov 14 19:27:30 1991 Fred Fish (fnf at cygnus.com)
747
748 * symfile.c: Add function compact_misc_function_vector() to
749 remove duplicate misc function vector entries. See comments
750 in source for why this is necessary/desirable.
751
752 * dwarfread.c: Add misc function type parameter to internal
753 record_misc_function(). Remove calls to init_misc_bunches()
754 and condense_misc_bunches(), these are now done in elfread.c.
755
756 * elfread.c: Add support for reading bfd canonical symbol tables
757 and generating misc function vector entries for global and
758 absolute symbols. Do calls to init_misc_bunches() and
759 condense_misc_bunches() where they will enclose all calls to
760 record_misc_function(), including those in dwarfread.c.
761
762Thu Nov 14 17:02:11 1991 Roland H. Pesch (pesch at cygnus.com)
763
764 * doc/Makefile.in: new targets gdb.me, gdb.ms, gdb.mm
765 (roffable documentation).
766 * doc/gdb.texinfo: embedded hints (as comments) for better
767 texi2roff conversion.
768
769Thu Nov 14 13:18:25 1991 John Gilmore (gnu at cygnus.com)
770
771 * m88k-tdep.c (examine_prologue): Deal with OR instructions
772 that shuffle parameters into other regs.
773 * symtab.c (decode_line_1): Fix bug introduced in Per's change
774 of Nov 12th.
775
776Wed Nov 13 19:51:11 1991 Steve Chamberlain (sac at cygnus.com)
777
778 * Makefile.in, xconfig/delta88 made it install a sysV manual page;
779 gdb.z into the right place.
780
781Wed Nov 13 16:45:13 1991 John Gilmore (gnu at cygnus.com)
782
783 Motorola 88000 port without tears, I mean without tdescs.
784
785 * m88k-tdep.c: Blow away all tdesc stuff.
786 Provide functions for all the frame-related macros in
787 tm-delta88.h. Adopt i960-style EXTRA_FRAME_INFO.
788 (examine_prologue, frame_find_saved_regs, skip_prologue): borrow
789 from i960-tdep.c and adapt to the function prologues on the 88k.
790 (read_next_frame_reg): Borrow from mips-tdep.c.
791 FIXME: frame_locals_address should go away.
792
793 * tm-delta88.h: Dump all the tdesc stuff.
794 Macros for all frame-related stuff call fns of same name.
795 Remove duplicated definitions. FP_REGNUM becomes same as
796 SP_REGNUM.
797
798 * xm-88k.h: Eliminate lots of library dependencies, now handled
799 in libiberty. Eliminate KDB nonsupport.
800
801 * doc/gdbint.texinfo: Add rudiments on frames. FIXME, add more.
802
803
804 * stack.c (frame_info): Mark frameless functions.
805 Print locals address (FIXME, remove if same).
806 * blockframe.c: Comment changes, FIXME after.
807 * coffread.c: Even without TDESC, need to zap "@" symbols.
808 Don't register for wierd format names; change the names in BFD.
809
810 * alloca.c, language.c, tdesc.c: Lint.
811 * tdesc.c, tdesc-lib: FIXME: remove these.
812
813Tue Nov 12 19:30:22 1991 John Gilmore (gnu at cygnus.com)
814
815 * Makefile.in: Add tdesc library support. Fixups to lint,
816 copying.c rules.
817
818Tue Nov 12 13:43:26 1991 Per Bothner (bothner at cygnus.com)
819
820 * symtab.c (decode_line_1): Remove spurious call to operator_chars.
821
822 Allow setting breakpoints on C++ destructors.
823 * valops.c (destructor_name_p): Don't check TYPE_HAS_DESTRUCTOR,
824 since it lies. Rely on callers to catch missing destructors.
825 * symtab.c (decode_line_1): For example (see above), here.
826 * buildsym.c, symtab.h: Remove TYPE_FLAGS_HAS{CON,DE}STRUCTOR
827 flags since they are no longer used.
828
829 Fixes to support C++ methods with functional parameters.
830 * c-exp.y (func_mod rule): Allow (and ignore) list of parameter
831 types in a function type.
832 * eval.c (parse_and_eval_type), value.h: New function,
833 parse_and_eval_type, is based on old code from check_stub_method.
834 But don't actually evaluate the cast, since that calls
835 value_cast(), whcih may fail. Just extract the type
836 from the parsed expression.
837 * values.c (check_stub_method): While looping through the
838 arguments, adjust depth *after* parameter has been handled.
839 Replace call and setup of parse_and_eval with new function
840 parse_and_eval_type.
841
842Tue Nov 12 09:40:07 1991 Fred Fish (fnf at cygnus.com)
843
844 * utils.c, rem-multi.shar: Remove fixed arg count version of
845 concat().
846
847 * altos-xdep.c, arm-xdep.c, coffread.c, command.c, convex-xdep.c,
848 core.c, dwarfread.c, gould-xdep.c, infcmd.c, language.c,
849 m88k-xdep.c, main.c, printcmd.c, pyr-xdep.c, source.c,
850 sun386-xdep.c, symm-xdep.c, umax-xdep.c, values.c, xcoffread.c:
851 Change all instances of use of fixed args concat() to variable
852 args concat() now located in libiberty.
853
854Tue Nov 12 07:23:46 1991 John Gilmore (gnu at cygnus.com)
855
856 * Makefile.in: Add xcoffread.c, xcoffexec.c.
857 * xcoffread.c: New file for handling AIX mangled-coff files.
858 * xconfig/rs6000, tconfig/rs6000: New files.
859 * buildsym.c: Add hooks for xcoffread.c.
860 * rs6000-pinsn.c, rs6000-tdep.c, rs6000-xdep.c, tm-rs6000.h,
861 xm-rs6000.h, rs6k-opcode.def, rs6k-opcode.h: New files.
862 * xcoffexec.c: New file for handling AIX shared libraries.
863
864Mon Nov 11 19:14:31 1991 Fred Fish (fnf at cygnus.com)
865
866 * core.c: Minor rewording of message to user containing name of
867 (and possibly arguments to) the program that generated a core
868 file.
869
870 * elfread.c: Remove the register_addr() stub now that it is no
871 longer needed.
872
873 * procfs.c: Move misplaced #endif for ATTACH_DETACH. Add new
874 fetch_core_registers() function for core file support.
875
876Sat Nov 9 13:37:57 1991 Fred Fish (fnf at cygnus.com)
877
878 * dwarfread.c (dwarf_psymtab_to_symtab): Remove leftover call
879 to do_cleanups() which resulted from a previous change.
880
881 * elfread.c: Re-enable compilation of register_addr() stub
882 whenever it is not supplied by coredep.c
883
884Sat Nov 9 00:40:32 1991 John Gilmore (gnu at cygnus.com)
885
886 Add tracking of object files (that contain symbols) to gdb.
887 This includes a "struct objfile" that owns symtabs and psymtabs
888 that were read in from that binary file.
889
890 * symfile.h: Add struct objfile. Add pointer to the objfile
891 into the struct sym_fns.
892 Replace global `symfile' and `symfile_mtime' with
893 `symfile_objfile'. Add global object_files chain.
894
895 * symfile.c: Move param.h above symtab.h.
896 (sort_misc_function_vector): Add.
897 (syms_from_objfile): Was syms_from_bfd.
898 (symfile_open): Now returns objfile.
899 (allocate_objfile): New.
900 (free_objfile): New, replacing free_all_.*symtabs.
901 (symfile_init): Takes objfile arg, puts it in sym_fns result.
902 (reread_symbols): Searches whole chain of objfiles.
903 (allocate_symtab): Takes objfile as new parameter, chains them.
904 Handle INIT_EXTRA_SYMTAB_INFO.
905 (free_all_psymtabs, free_all_symtabs): Move here from symmisc.c.
906
907 * dbxread.c: Make more errors into complaints.
908 (push_subfile, pop_subfile): Move to buildsym.c.
909 (dbx_symfile_read, dbx_symfile_init, fill_symbuf, read_dbx_symtab,
910 start_psymtab, psymtab_to_symtab_1, read_ofile_symtab,
911 dbx_psymtab_to_symtab, ): Use bfd ops, don't use file descriptor.
912 Pass objfile. Change callers.
913 (fill_symbuf, SWAP_SYMBOL): Take bfd as arg.
914 (read_dbx_symtab): Just wipe out new symbols, not all, on error.
915 (end_psymtab): Blow away psymtab if empty.
916 (process_symbol_pair): Swallow into read_ofile_symtab.
917 (process_one_symbol): Use push_context and pop_context.
918 (virtual_context): Delete #if 0'd obsolete stuff.
919
920 * buildsym.c (end_symtab): Pass objfile.
921 (dbx_lookup_type): Handle null typevector.
922 (dbx_alloc_type): Check file number, not sym number, for -1.
923 (find_symbol_in_list): Add for xcoffread.
924 (start_symtab): Default typevector is empty. Keep reusing same
925 context_stack.
926 (end_symtab): Take objfile argument and pass it to
927 allocate_symtab. Don't make a symtab if no blocks or symbols.
928 Handle empty typevector.
929 (push_context): New function for context stack nesting.
930 (read_type): Mark FIXME where we need to reintroduce type smashing.
931
932 * buildsym.h (pop_context): Macro, paired with push_context.
933 (subfile_stack): Move here from dbxread.c.
934
935 * coffread.c (end_symtab, read_coff_symtab): Take and use objfile arg.
936 (read_coff_symtab): Cleanup by freeing objfile, not all symtabs.
937
938 * mipsread.c (read_mips_symtab, parse_partial_symbols, parse_fdr,
939 new_psymtab, new_symtab): Take and use objfile arg.
940
941 * dwarfread.c (scan_compilation_units, start_psymtab,
942 process_dies, end_symtab, dwarf_build_psymtabs,
943 read_lexical_block_scope, read_func_scope, read_file_scope): Take
944 and use objfile argument.
945 (psymtab_to_symtab_1, read_ofile_symtab): Don't take or use file
946 descriptor. Use BFD internal functions instead.
947 (end_symtab): Call global allocate_symtab.
948
949 * elfread.c, target.c: Minor changes to accommodate objfiles.
950 * symtab.h: partial_symbol_table has no symfile_name member now.
951 (fn_fieldlists voffset): avoid non-int bitfield.
952 (struct symtab): Add objfile * and objfile_chain * of symtabs.
953 (struct partial_symtab): Add objfile * and objfile_chain * of
954 psymtabs. Remove symfile_name.
955
956 * symmisc.c: Lose free_all_symtabs, free_all_psymtabs.
957 (printsyms_command): Rename from print_symtabs. Add selective
958 listing if 2nd argument given. Print objfile info.
959 (printpsyms_command): Rename from print_partial_symtabs. Ditto all.
960 (printobjfiles_command): New; prints objfiles lists, and checks
961 for consistency of symtab, psymtab, and objfile lists.
962
963 * symfile.h, symfile.c, symtab.h: Lint
964
965Fri Nov 8 23:38:48 1991 John Gilmore (gnu at cygnus.com)
966
967 * command.c: Include param.h.
968 * defs.h (warning_setup, warning): Declare.
969 * expprint.c (print_subexp, UNOP_MEMVAL case): Lint.
970 * inflow.c (new_tty): Use USE_O_NOCTTY #define.
971 * language.c, printcmd.c (print_scalar_formatted), signame.c,
972 stack.c: lint.
973
974Thu Nov 7 18:26:15 1991 Steve Chamberlain (sac at rtl.cygnus.com)
975
976 * Makefile.in: link with libiberty after libreadline, since
977 readline might want something in libiberty.
978 * m88k-xdep.c: Fixed the register offsets in the ptrace_user
979 struct for BCS 88k machines.
980 * xm-m88k.h: don't define USIZE if already defined.
981 * configure.in: Added delta88 target.
982
983Thu Nov 7 04:51:19 1991 John Gilmore (gnu at cygnus.com)
984
985 * am29k-pinsn.c, am29k-opcode.h: Fix decoding of mtacc, dmac, fmac.
986
987 * tm-*.h: Remove READ_DBX_FORMAT, COFF_FORMAT, and
988 READ_MIPS_FORMAT, which have been unused since BFD. Still
989 remaining is COFF_NO_LONG_FILE_NAMES.
990 * tm-sun3.h, tm-altos.h: Remove detritus accidentally left from
991 function calling code moved to m68k-tdep.c.
992
993Wed Nov 6 17:21:59 1991 John Gilmore (gnu at cygnus.com)
994
995 * coffread.c: Eliminate c_nsyms in favor of c_naux.
996 Complain if no auxents on .bf and .ef FCN symbols, and assume
997 lots of line numbers.
998 (init_linenos, enter_linenos): Use a sentinel at the end of the
999 read-in linenos, to make for a fast, safe loop-end test.
1000
1001Wed Nov 6 02:54:08 1991 Steve Chamberlain (sac at cygnus.com)
1002
1003 * coffread.c (read_coff_symtab): coffread used to rely on the
1004 x_sym.x_misc.x_lnsz.x_lnno field giving the # of linnos in a
1005 function. Two of the formats I'm using (29k and 88k) don't seem to
1006 set it. Ths patch to fcn_last_line and (enter_linenos) is an
1007 attempt to use the actual size of the linno table in the file to set
1008 the number of linenos to process.
1009
1010Tue Nov 5 22:47:46 1991 Steve Chamberlain (sac at cygnus.com)
1011
1012 * Makefile.in: put a - infront of the mv y.tab.c c-exp.tab.c and
1013 mv y.tab.c m2-exp.tab.c, so that if bison is used, and the files
1014 are created in place, so the mv fails, then the make continues.
1015
1016Tue Nov 5 16:47:47 1991 Per Bothner (bothner at cygnus.com)
1017
1018 Add C++ as a separate language.
1019 * defs.h (enum language): Add language_cplus.
1020 * dwarfread.c (end_symtab): Support language_cplus.
1021 * c-exp.y: Add new struct language_defn cplus_language_defn.
1022 Don't set c to be the default language (see main.c).
1023 * c-exp.y (yylex): Only look for field of this if
1024 language is C++. (First difference from C!)
1025 * language.c: Add case branches for C++ (currently, all
1026 the same as C). Also, add c++ to "usage" note for "set lang".
1027 * valprint.c (typedef_print). Add case branches for C++.
1028 * main.c (main): New way to set initial language: Look at
1029 file extension of psymtab containing main(). (Same as we
1030 do for symtabs, but avoid loading the symtab yet.)
1031 * symtab.c: New routine find_main_psymtab(), used by main()
1032 to set initial language.
1033 * symfile.c (allocate_symtab): Move code for mapping file
1034 extensions-> languages to new deduce_language_from_filename().
1035
1036 Fix a C++ problem when looking for methods in super-classes.
1037 There was confusion between base and derived types.
1038 * valops.c (value_fn_field): Change function interface.
1039 * values.c: Use new value_fn_field interface.
1040
1041Mon Nov 4 10:49:33 1991 Per Bothner (bothner at cygnus.com)
1042
1043 * infrun.c: Fixed typo in comment.
1044 * utils.c: All the v*fprintf emulation is now in libiberty,
1045 so we can get rid of some junk.
1046 * xm-sun3os4.h, xm-sun4os4.h, xconfig/decstation, xconfig/i386sco,
1047 xconfig/sun3os4, xconfig/sun4os4: Don`t need HAVE_STRSTR any more.
1048 * m68k-pinsn.c (print_insn_arg): Support BB/BW/BL
1049 type operands, as used by branch instructions.
1050 * gmalloc.c: Fix prototype of memcpy.
1051 * elfread.c: Comment out register_addr, since it conflicts
1052 with the one in coredep.c.
1053 * buildsym.h: Remove extern declarations of two functions
1054 that are really static in buildsym.c.
1055 * tm-mips.h: Add symbolic names for more registers.
1056 * mips-xdep.c (store_inferior_registers): Use new register names.
1057 * xm-mips.h: Simplify REGISTER_U_ADDR, since it is now
1058 only used for core files, not ptrace. Therefore,
1059 the KERNEL_U_ADDR hack is no longer needed.
1060 The mapping to ptrace number is now in in mips-xdep.c.
1061 * mips-xdep.c: Define REGISTER_PTRACE_ADDR (using the
1062 mapping from the old REGISTER_U_ADDR), and use it
1063 in {fetch,store}_inferior_registers.
1064 * mipsread.c: Rename #include ecoff.h to new name coff-mips.h.
1065 * mips-tdep.c (mips_push_dummy_frame, mips_pop_frame):
1066 Save/restore FP regs correctly (?).
1067 * dbxread.c: Remove duplicate define_symbol and type_synonym_name
1068 (these had been previously moved to buildsym.c).
1069 Hence, define_symbol becomes extern instead of static.
1070 * buildsym.c (read_struct_type): Comment out bogus handling
1071 of C++ operator methods. Minor hacking of reading of class
1072 contexts. Make define_symbol non-static, so dbxread.c can call it.
1073
1074Fri Nov 1 11:05:47 1991 John Gilmore (gnu at cygnus.com)
1075
1076 * mipsread.c (read_mips_symtab, read_the_mips_symtab): Use real
1077 filename with error messages.
1078 * stack.c (frame_select_command): Rename to select_frame_command
1079 to avoid "fr" and "fra" having nonunique completions.
1080 * symfile.c (sort_symtab_syms): Ignore sort of zero symtab *.
1081 (symfile_init): Print file format name when unable to handle it.
1082 (free_named_symtabs): Use BLOCKVECTOR rather than obsolete BLOCKLIST.
1083 * symmisc.c (free_symtab): Only free linetable if nonzero.
1084 * symtab.h: Remove obsolete BLOCKLIST macros.
1085
1086Thu Oct 31 18:12:43 1991 Stu Grossman (grossman at cygnus.com)
1087
1088 * infrun.c (wait_for_inferior): another stepi/nexti fix. Ensure
1089 that stop_step is 1 at bottom of main loop. I don't know why this
1090 needs to be done, but it helps me sleep better at night.
1091
1092Sun Oct 27 18:18:39 1991 Stu Grossman (grossman at cygnus.com)
1093
1094 * main.c (initialize_history): Read history after reading all
1095 init files.
1096
1097Sun Oct 27 14:09:25 1991 John Gilmore (gnu at cygnus.com)
1098
1099 * buildsym.c: Break out initial malloc sizes.
1100 (record_line): Record directly in a subfile. Alloc on demand.
1101 (compare_line_numbers): Add from xcoffread.c.
1102 (end_symtab): New params say whether to sort pendings and
1103 linetable. Patch block stabs if defined. Shrink linetable before
1104 allocating the symtab.
1105 * buildsym.h: Delete line_vector* and prev_line_number. Add
1106 global_stabs and file_stabs for xcoffread.
1107 * dbxread.c (start_subfile): Move to buildsym. Change above calls.
1108 * symtab.h: LINETABLE(symtab) can now be null. Zap LINELIST.
1109 * symmisc.c, symtab.c: Cope with null LINETABLEs.
1110
1111 * blockframe.c: Pass fromleaf to INIT_EXTRA_FRAME_INFO.
1112 * tm-29k.h, tm-88k.h, tm-i960.h, tm-irix3.h, tm-mips.h, tm-pyr.h,
1113 tm-sparc.h: Accept fromleaf parameter.
1114 * c-exp.y (yyerror): Pass error message if given.
1115 * configure.in: Add rs6000 host and target.
1116 * inflow.c (new_tty): O_NOCTTY kludge for RS/6000.
1117 * symfile.h (entry_point): Add.
1118
1119Sat Oct 26 00:16:32 1991 John Gilmore (gnu at cygus.com)
1120
1121 * buildsym.c: New file. Breaks out symbol-table-building routines
1122 from dbxread.c, so they can be shared with xcoffread.c.
1123 * buildsym.h: New file. Declarations for buildsym.c users.
1124 * dbxread.c: Remove large chunks into buildsym.c.
1125 * Makefile.in: Add buildsym.c and buildsym.h.
1126
1127 * symfile.c (syms_from_bfd): New routine.
1128 (add_symbol_file): Call it to do the real work.
1129 (syms_from_bfd): Initialize entry_point before calling symfile_init.
1130 * symtab.h, symfile.c, coffread.c, mipsread.c, dwarfread.c:
1131 Avoid declaring or setting entry_point (symfile.h & symfile.c cope).
1132
1133Fri Oct 25 10:58:16 1991 Mark Eichin (eichin at cygnus.com)
1134
1135 * cplus-dem.c (cplus-demangle): added support for templates, static
1136 data, and the new (correct) mangling for destructors.
1137
1138 * dwarfread.c: (dwarfwarn): created a varargs version of
1139 dwarfwarn, for non __STDC__ compilers.
1140
1141 * c-exp.y: (yylex): added match for "template" token.
1142 (typebase): added TEMPLATE name '<' type '>' clause, for explicit
1143 specification of template types.
1144
1145 * symtab.c: (lookup_template_type): new function for finding
1146 templates in symbol table.
1147 (type_name_no_tag): changed to explicitly check for s/u/e at the
1148 beginning of the symbol - if it is a template, none of these will
1149 be there (but the name will still contain spaces.)
1150
1151Fri Oct 25 18:59:32 1991 Per Bothner (bothner at cygnus.com)
1152
1153 Various fixes to improve g++ debugging.
1154 * symtab.h: Add is_const and is_volatile flags for each method.
1155 These are bit fields - take their space from voffset,
1156 which shrinks to 30 bits. Since voffset is now a bitfield,
1157 make it unsigned for portability. This changes its interpretation
1158 slightly: Static methods now have voffset 1 instead of -1,
1159 and virtual offsets start at 2, not 1.
1160 * symtab.c: Renamed gdb_mangle_typename to gdb_mangle_name,
1161 since it now returns an entire magled method name, not just
1162 the type part. This avoids some duplication.
1163 It also allows us to correctly mangle const and volatile
1164 methods (using the new is_const and is_volatile bit fields
1165 mentioned above).
1166 * valprint.c (type_print_base), values.c (check_stub_method):
1167 Simplify by using new gdb_mangle_name.
1168 * values.c (value_headof): Fix to correctly handle single
1169 inheritance (actually two fixes, either of which suffices).
1170 * dbxread.c (read_struct_type): Handle const and volatile
1171 method specifiers.
1172 * dbxread.c (read_struct_type): Yet one more place where
1173 we must handle '\\' continuations.
1174 * valprint.c (vtbl_ptr_name): Add final '\0'.
1175
1176Fri Oct 25 16:06:38 1991 Stu Grossman (grossman at cygnus.com)
1177
1178 * tm-sparc.h, tm-68k.h (EXTRACT_RETURN_VALUE): fix output of
1179 short return values for sparc and 68k. Patch from Paul Eggert.
1180
1181 * coffread.c, coredep.c, i386-xdep.c: install patches for
1182 SysV/386 3.2 from Mauro DePalma.
1183
1184Fri Oct 25 02:02:13 1991 John Gilmore (gnu at cygnus.com)
1185
1186 * core.c (core_file_info), exec.c (exec_file_info): Print file
1187 type. Use printf_filtered.
1188
1189 * valops.c (value_fetch_lazy): Avoid 0-length fetches.
1190
1191Thu Oct 24 23:06:40 1991 Fred Fish (fnf at cygnus.com)
1192
1193 * dwarfread.c: Add casts to remove compiler warnings.
1194
1195 * tm-3b1.h, tm-68k.h, tm-altos.h, tm-amix.h, tm-hp300bsd.h,
1196 tm-hp300hpux.h, tm-isi.h, tm-news.h, tm-pn.h, tm-sun2.h,
1197 tm-sun3.h: Remove locally duplicated code for calling functions
1198 in the inferior. The only differences were in the specific trap
1199 vectors used and whether or not an fpu was present. These are
1200 now handled by appropriate definitions of BPT_VECTOR and
1201 HAVE_68881 respectively. Other minor obvious cleanups.
1202
1203 * valops.c: Correct a minor misspelling.
1204
1205 * utils.c: Remove local BSD/USG hacks that are now in libiberty.
1206
1207 * dwarfread.c: Remove prototype for dwarfwarn. Does not work
1208 with <varargs.h>.
1209
1210Thu Oct 24 09:33:44 1991 John Gilmore (gnu at cygnus.com)
1211
1212 * stack.c (frame_command): Always print. Use new
1213 frame_select_command to select a frame without printing.
1214
1215 * dwarfread.c: Use <varargs.h>, since <stdarg.h> is not portable.
1216
1217Thu Oct 24 01:32:51 1991 Fred Fish (fnf at cygnus.com)
1218
1219 * dwarfread.c: New file for DWARF debugging format support.
1220
1221 * elfread.c: New file for ELF object file format support.
1222
1223 * procfs.c: New file for SVR4 /proc (process file system) support.
1224
1225 * tm-amix.h, xm-amix.h, tconfig/amix, xconfig/amix: New files for
1226 Amiga UNIX support.
1227
1228 * xm-svr4.h, tm-svr4.h: New files for SVR4 support.
1229
1230 * xm-m68k.h: New file for host machines with m68k cpu.
1231
1232 * Makefile.in: Add elfread.c and dwarfread.c to SFILES_MAINDIR.
1233 Add elfread.o and dwarfread.o to OBS.
1234
1235 * symfile.h: Add "elf" to list of supported formats in comment.
1236
1237 * c-exp.y, defs.h, symtab.h, valprint.c: Add three new builtin
1238 types to gdb, builtin_type_long_double, builtin_type_complex, and
1239 builtin_type_double_complex. Add and use new TARGET_SHORT_BIT,
1240 TARGET_INT_BIT, TARGET_LONG_BIT, TARGET_FLOAT_BIT,
1241 TARGET_DOUBLE_BIT, TARGET_LONG_DOUBLE_BIT, TARGET_COMPLEX_BIT, and
1242 TARGET_DOUBLE_COMPLEX_BIT, as the sizes in bits of the indicated
1243 types on the target machine (ala the existing TARGET_LONG_LONG_BIT).
1244
1245 * infrun.c: When using SVR4 /proc interface instead of ptrace(),
1246 call proc_set_exec_trap() to setup child to stop at first instruction.
1247
1248 * inftarg.c: When using SVR4 /proc interface, call proc_wait()
1249 rather than wait().
1250
1251 * m68k-tdep.c: Add new routines supply_gregset(), fill_gregset(),
1252 supply_fpregset(), and fill_fpregset(), which are machine
1253 dependent support routines for SVR4 /proc interface.
1254
1255 * utils.c: Add warning_setup() and warning(). Warning() behaves
1256 the same as error() except that it returns normally rather than
1257 jumping back to command level. Modules that don't want to call
1258 warning() for some reason, but want to produce their own warnings,
1259 can call warning_setup() to ensure compatibility with the way
1260 warning() and error() deal with the terminal.
1261
1262 * symtab.c: Make internal errors produce more useful messages.
1263
1264 * tm-68k.h: Move code that is duplicated in almost every single
1265 m68k based machine's configuration files to this common file.
1266 Duplications in the configuration files still need to be removed
1267 (FIXME).
1268
1269 * infrun.c (child_create_inferior): System V versions must call
1270 setpgrp() with no arguments, to comply with prototyping typically
1271 in <unistd.h>.
1272
1273 * munch: Add support for SVR4 style nm output.
1274
1275 * dbxread.c, mipsread.c symmisc.c, symtab.c: Remove the object
1276 file specific fields from the partial symbol table structure and
1277 replace them with a pointer to private data for each different
1278 flavor of object file reader to initialize appropriately.
1279
1280Wed Oct 23 09:38:20 1991 John Gilmore (gnu at cygnus.com)
1281
1282 * xconfig/sun[34]os4: Add note about strstr botch on sunos4.0.3c
1283 and previous.
1284
1285 * mipsread.c (fixup_undef_type): New function. If a struct /
1286 union / enum is defined in a header file but nowhere else used,
1287 (by typedefing, pointer referencing or declaration) the mipsread code
1288 builds the complete tree for the structure but leaves its code as
1289 TYPE_CODE_UNDEF as it doesn't know what kind of aggregate it is.
1290 Guess its type based on the details of the members.
1291
1292Tue Oct 22 18:04:32 1991 Stu Grossman (grossman at cygnus.com)
1293
1294 * infrun.c (wait_for_inferior): Check return value from
1295 find_pc_line.
1296
1297Mon Oct 21 17:47:03 1991 Stu Grossman (grossman at cygnus.com)
1298
1299 * infrun.c (wait_for_inferior): fix stepi/nexti that was broken
1300 by my last edit to this routine.
1301
1302Mon Oct 21 14:27:43 1991 John Gilmore (gnu at cygnus.com)
1303
1304 * tm-sun3.h (FIX_CALL_DUMMY): problem with cross debugging.
1305 FIX_CALL_DUMMY does unaligned accesses and/or forgets to byte swap
1306 the values before putting them into the dummy code. (From Peter
1307 Schauer)
1308
1309Mon Oct 21 10:04:39 1991 Steve Chamberlain (steve at rtl.cygnus.com)
1310
1311 * configure.in: added ebmon target.
1312
1313Wed Oct 16 22:49:58 1991 John Gilmore (gnu at cygnus.com)
1314
1315 GDB-4.2 release!
1316
1317 * Makefile.in: Roll VERSION to 4.2.
1318 * README, TODO, WHATS.NEW: Update.
1319
1320 * core.c (core_open): Improve error message for bad file.
1321 Pass .reg virtual memory address to fetch_core_registers to help
1322 it find the registers in the core-file header.
1323 * coredep.c (fetch_core_registers): Take new argument, use it,
1324 and pass it to register_addr to locate the block of registers.
1325 * xm-mips.h: Update KERNEL_U_ADDR for new scheme. Cleanup a bit.
1326
1327 * dbxread.c (read_dbx_symtab, process_one_symbol): Handle
1328 Sequent N_FN_SEQ like everybody else's N_FN.
1329
1330 * main.c: Circumvent SCO cc bug with #if !!defined(USG).
1331 * tm-i386v.h: #endif guck.
1332 * xconfig/i386*: Remove -Dgetpagesize()=4096 kludge.
1333 * xconfig/i386sco: Add HAVE_STRSTR to avoid ANSI bdeath.
1334 * xconfig/tahoe: Add REGEX, which seems to be missing.
1335
1336 * coredep.c: Add <sys/types.h> for SCOnix.
1337 * dbxread.c (read_dbx_symntab): Avoid coredump on malformed file.
1338 * printcmd.c (print_formatted): Flush output before disassembly.
1339
1340Tue Oct 15 20:12:32 1991 Roland H. Pesch (pesch at fowanton.cygnus.com)
1341
1342 * doc/refcard.tex (sec "Working Files"): consistent metavars and