3 * configure.ac (--with-relocated-sources): New.
4 * configure, config.in: Regenerate.
5 * source.c (add_substitute_path_rule): Remove static.
6 * source.h (add_substitute_path_rule): Declare.
7 * main.c: Include "source.h".
8 (captured_main): Add substitution rule if RELOC_SRCDIR.
10 2009-04-21 Pierre Muller <muller.u-strasbg.fr>
12 * gnu-nat.h (proc_debug): Add missing continuation line in macro.
16 * NEWS: Mention MIPS/Linux hardware watchpoint support.
20 * mips-linux-nat.c (command.h, gdbcmd.h, gdb_assert.h): New #includes.
21 (maint_show_dr, super_close): New variables.
22 (super_fetch_registers, super_store_registers): Make static.
23 (PTRACE_GET_WATCH_REGS, PTRACE_SET_WATCH_REGS, W_BIT, R_BIT, I_BIT)
24 (W_MASK, R_MASK, I_MASK, IRW_MASK, MAX_DEBUG_REGISTER): Define.
25 (pt_watch_style): Define new enum.
26 (mips32_watch_regs, mips64_watch_regs, pt_watch_regs, mips_watchpoint):
28 (watch_readback_valid, watch_readback, current_watches, watch_mirror):
30 (get_irw_mask, get_reg_mask, get_num_valid, get_watchlo)
31 (set_watchlo, get_watchhi, set_watchhi, mips_show_dr)
32 (mips_linux_read_watch_registers, mips_linux_can_use_hw_breakpoint)
33 (mips_linux_stopped_by_watchpoint, mips_linux_stopped_data_address)
34 (type_to_irw, fill_mask, try_one_watch)
35 (mips_linux_region_ok_for_hw_watchpoint, write_watchpoint_regs)
36 (mips_linux_new_thread, populate_regs_from_watches)
37 (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
38 (mips_linux_close): New functions.
39 (_initialize_mips_linux_nat): Register watchpoint functions with
40 the target_ops. Add show-debug-regs maintenance command.
44 * infrun.c (handle_inferior_event): Move gegisters_changed call down.
48 * NEWS: Mention gdbserver support for x86 Windows CE.
52 * config/djgpp/fnchange.lst: Fix typos.
54 Set default host and target charsets in the DJGPP port.
56 * config/djgpp/config.sed (am_cv_langinfo_codeset)
57 (bash_cv_langinfo_codeset, ac_cv_header_nl_types_h): Set to "yes"
58 in all configure scripts that define ac_cv_env_CPP_value.
60 * go32-nat.c (dos_codepage, nl_langinfo): New functions.
63 * config/djgpp/nl_types.h: New file.
65 * config/djgpp/langinfo.h: New file.
67 * config/i386/go32.mh (MH_CFLAGS): Add $(srcdir)/config/djgpp.
71 * Makefile.in (MAKEHTML): Set to makeinfo --html.
72 (MAKEHTMLFLAGS): Set to empty.
76 * NEWS: Mention all new set/show commands added since GDB 6.8 was
79 * go32-nat.c (go32_sysinfo): Check if the call to
80 __dpmi_get_capabilities fills the buffer with information, and
81 don't use the buffer if not.
85 * charset.c (_initialize_charset): Add special case for "646".
89 * configure.ac: AC_SUBST datarootdir, docdir, htmldir, pdfdir.
90 * configure: Regenerate.
91 * Makefile.in: Set datarootdir, docdir, htmldir, and pdfdir from
92 configure substitutions.
93 (FLAGS_TO_PASS): Add datarootdir, docdir, and htmldir.
95 2009-04-17 Pierre Muller <muller.u-strasbg.fr>
97 ARI fix: Do not use %p, replace by call to host_address_to_string
99 * darwin-nat.c (darwin_xfer_partial): Apply change.
100 * gnu-nat.c (inf_continue, gnu_xfer_memory): Ditto.
101 * gnu-nat.h (proc_debug): Ditto.
102 * symmisc.c (maintenance_info_symtabs): Ditto.
103 (maintenance_info_psymtabs): Ditto.
104 * windows-nat.c (handle_load_dll): Ditto.
105 (handle_unload_dll, info_w32_command, handle_exception): Ditto.
106 * xtensa-tdep.c (xtensa_unwind_pc): Ditto.
110 * configure.tgt (i[34567]86-*-linux*): Use 64-bit configuration if
112 (sparc-*-linux*): Likewise.
116 * go32-nat.c (go32_sysinfo): Update list of Windows versions of
121 * remote.c (remote_query_attached): Fix pasto in packet_ok result
126 * procfs.c (solib_mappings_callback, find_memory_regions_callback):
127 Revert the previous change. Might not be correct, actually.
131 * ada-lang.h (ada_adjust_exception_stop, ada_print_exception_stop)
132 (ada_get_current_task, ada_print_exception_breakpoint_nontask)
133 (ada_print_exception_breakpoint_task, ada_reset_thread_registers):
134 Remove declaration. These are non-existent functions.
138 * procfs.c (solib_mappings_callback, find_memory_regions_callback):
139 Fix a compilation warning on mips-irix due to casting from
140 a pointer of different size.
144 * ada-lang.c (symtab_for_sym): Delete.
145 (user_select_syms): Use sym->symtab instead of calling symtab_for_sym.
149 * ada-lang.c (extract_string): Delete.
150 (ada_main_name): Reimplement using target_read_string instead of
155 * m68klinux-nat.c: Remove obsolete comment.
156 (fetch_register, store_register): Don't call
157 gdbarch_cannot_fetch_register or gdbarch_cannot_store_register,
158 which are always nops here.
162 * c-lang.c (c_emit_char): Use INTERMEDIATE_ENCODING.
163 (c_printstr): Likewise.
164 * charset.c: Include gdb_wait.h.
165 (make_wchar_iterator): Use INTERMEDIATE_ENCODING.
166 (find_charset_names): Use pexecute. Handle libiconv's output.
168 (_initialize_charset): Use xstrdup.
169 * gdb_wchar.h: Check HAVE_BTOWC. Split PHONY_ICONV and wchar
171 (INTERMEDIATE_ENCODING): New define.
172 * configure, config.in: Rebuild.
173 * configure.ac: Check for btowc.
177 * c-lang.c (evaluate_subexp_c): Correctly handle EVAL_SKIP.
181 * utils.c (parse_escape): Initialize target_char to pacify GCC.
185 * c-lang.c (c_get_string): Fix xfree crash on a failed string read.
189 ARI fix: sprintf rule.
190 * ada-exp.y (convert_char_literal): Replace sprintf by xsnprintf.
191 * ada-lang.c (add_angle_brackets): Use xstrprintf.
192 (ada_decode): Replace sprintf by xsnprintf.
193 (find_old_style_renaming_symbol): Ditto.
194 (ada_to_fixed_type_1, ada_enum_name): Ditto.
199 * target.c (target_mourn_inferior): Call bfd_cache_close_all
200 after having executed the target mourn_inferior routine.
204 * config/djgpp/djconfig.sh (DEPDIR): Define to "_deps", if
209 * infrun.c (maybe_software_singlestep): New function.
210 (resume): Call maybe_software_singlestep.
211 (handle_inferior_event): Same.
215 * python/python-frame.c (frapy_richcompare): Return
216 Py_NotImplemented, not an error. Handle Py_NE as well.
220 * charset.c (EILSEQ): Define if not defined by system headers.
224 * config/djgpp/config.sed: Tweak ac_config_files in intl/configure
225 to be consistent with renaming config.intl.in into config_intl.in.
227 * go32-nat.c (go32_attach, go32_detach): Fix prototypes to be
228 consistent with the change from 2008-11-09.
232 * gdbtypes.c: Remove excessive parentheses at the return keywords.
233 * varobj.c (varobj_invalidate): Fix indentation.
234 * varobj.c (varobj_invalidate): Fix formatting text width.
238 Implement -exec-jump.
240 * mi/mi-cmds.h (mi_cmd_exec_jump): Declare.
241 * mi/mi-main.c (mi_cmd_exec_jump): New.
242 * mi/mi-cmds.c (mi_cmds): Register exec-jump.
246 * symfile.c (symbol_file_clear): Fix indentation.
250 * sparc64nbsd-nat.c (sparc64nbsd_supply_pcb): Fix comment.
254 * ppc-linux-nat.c (ppc_linux_target_wordsize): New function.
255 (ppc_linux_auxv_parse): New function.
256 (ppc_linux_read_description): Use ppc_linux_target_wordsize.
257 (_initialize_ppc_linux_nat): Install ppc_linux_auxv_parse.
261 * spu-linux-nat.c (spu_bfd_open): Set filename of in-memory
262 BFD to contents of SPU name note.
263 (spu_symbol_file_add_from_memory): Call symbol_file_add_from_bfd
264 with "from_tty" argument 1 instead of 0.
269 (new_symbol <DW_TAG_variable> <!DW_AT_location> <DW_AT_external>):
270 Create the symbol in local scope.
271 * symtab.h (cu->list_in_scope <LOC_UNRESOLVED>): New comment part.
275 * stabsread.c (read_member_functions): GCC may emit an extra space
276 at the end of the names "__base_ctor" and "__base_dtor"; so ignore
277 whitespace when looking for these functions.
281 Change the default value for "set print frame-arguments" to scalars.
283 * stack.c (print_frame_arguments): Set initial value to "scalars".
287 * mips-tdep.c (mips_numeric_register_alieses): New definition.
288 (mips_gdbarch_init): Add user registers from
289 mips_numeric_register_aliases.
293 * linux-nat.c (linux_nat_filter_event): Minor comment reformatting.
297 * linux-nat.c (linux_nat_filter_events): Do not delete the lwp if
298 this is the last one.
302 * remote.c (append_resumption): New.
303 (remote_vcont_resume): Use it.
307 * windows-nat.c (+windows_get_ada_task_ptid): New function.
308 (init_windows_ops): Set windows_ops.to_get_ada_task_ptid.
315 * Makefile.in (dbxread.o): Update.
316 * dbxread.c (read_dbx_symtab): Use cp_canonicalize_string.
317 * dwarf2read.c (GDB_FORM_cached_string): New.
318 (read_partial_die): Use dwarf2_canonicalize_name.
319 (dwarf2_linkage_name): Use dwarf2_name.
320 (dwarf2_canonicalize_name): New.
321 (dwarf2_name): Use dwarf2_canonicalize_name.
322 (dwarf_form_name, dump_die): Handle GDB_FORM_cached_string.
323 * stabsread.c (define_symbol, read_type): Use cp_canonicalize_string.
324 * symtab.c (lookup_symbol_in_language): Canonicalize input before
326 * cp-name-parser.y: operator() requires two parameters,
327 according to libiberty.
328 * minsyms.c (lookup_minimal_symbol): Canonicalize input
334 Provide support for (Ada) task-specific breakpoints.
336 * ada-lang.h (ada_get_task_number): Add declaration.
337 (breakpoint_ada_task_match): Delete declaration.
338 * ada-tasks.c (ada_get_task_number): Make non-static.
339 * breakpoint.h (struct breakpoint): Add field "task".
340 * breakpoint.c (print_one_breakpoint_location): Add handling of
341 task-specific breakpoints.
342 (create_breakpoint, create_breakpoints, find_condition_and_thread):
343 New parameter "task".
344 (break_command_really): Update calls to find_condition_and_thread
345 and create_breakpoints.
346 (breakpoint_re_set_one): Update call to find_condition_and_thread.
351 * ada-tasks.c (short_task_info): Eliminate the "Running" task state.
355 * remote.c (remote_notice_new_inferior): Use ptid_is_pid. Check
356 if the thread's ptid without a thread id field is in the list
357 before calling thread_change_ptid.
358 (extended_remote_attach_1): In non-stop mode, do not rely on
359 querying the current thread, instead, query the thread list, and
360 select the first thread of the process.
361 * gdbthread.h (first_thread_of_process): Declare.
362 * thread.c (first_thread_of_process): Define.
366 Make tracepoints into a type of breakpoint.
367 * breakpoint.h (enum bptype): Add bp_tracepoint.
368 (struct breakpoint): Add fields step_count, pass_count, actions.
369 (get_tracepoint, get_tracepoint_by_number): Declare.
370 (all_tracepoints): Declare.
371 * breakpoint.c: Include tracepoint.h, readline.h.
372 (ALL_TRACEPOINTS): Move here from tracepoint.c.
373 (tracepoint_count): Ditto.
374 (should_be_inserted): GDB does not insert tracepoints itself.
375 (print_it_typical): Add tracepoint case.
376 (bpstat_what): Ditto.
377 (print_one_breakpoint_location): Ditto, and add printing for
378 pass count, step count, and action list.
379 (user_settable_breakpoint): Add tracepoint case.
380 (allocate_bp_location): Ditto.
381 (set_breakpoint_location_function): Ditto.
382 (disable_breakpoints_in_shlibs): Ditto.
384 (break_command_really): Add argument traceflag, use to choose
385 basic breakpoint type.
386 (break_command_1): Pass extra argument.
387 (set_breakpoint, handle_gnu_v3_exceptions): Ditto.
388 (breakpoint_re_set_one): Add tracepoint case.
389 (disable_command, enable_command): Ditto.
390 (set_tracepoint_count): Move here from tracepoint.c.
391 (trace_command): Move here from tracepoint.c and use
392 break_command_really.
393 (tracepoints_info): Move here from tracepoint.c and call
395 (enable_trace_command): Move here from tracepoint.c and call
397 (disable_trace_command): Move here from tracepoint.c and call
399 (delete_trace_command): Move here from tracepoint.c and call
401 (trace_pass_command): Move here from tracepoint.c.
402 (get_tracepoint_by_number): Ditto.
403 (tracepoint_save_command): Ditto.
404 (get_tracepoint): New function.
405 (all_tracepoints): New function.
406 (_initialize_breakpoint): Move tracepoint init from tracepoint.c,
407 deprecate "enable trace" and "disable trace" commands.
408 * tracepoint.h (struct tracepoint): Remove.
409 (tracepoint_chain): Remove decl.
410 (deprecated_create_tracepoint_hook): Remove decl.
411 (deprecated_delete_tracepoint_hook): Remove decl.
412 (deprecated_modify_tracepoint_hook): Remove decl.
413 (ALL_TRACEPOINTS, ALL_TRACEPOINTS_SAFE): Remove.
414 (free_actions): Update signature.
415 (validate_actionline): Update signature.
416 (end_actions_pseudocommand): Declare.
417 (while_stepping_pseudocommand): Declare.
418 * tracepoint.c: Include breakpoint.h.
419 (tracepoint_chain, tracepoint_count): Remove.
420 (free_actions, make_cleanup_free_actions): Update signature.
421 (trace_command, set_raw_tracepoint): Remove.
422 (trace_mention): Remove.
423 (tracepoints_info): Remove.
424 (tracepoint_operation, map_args_over_tracepoints): Remove.
425 (get_tracepoint_by_number): Remove.
426 (enable_trace_command, disable_trace_command): Remove.
427 (delete_trace_command, trace_pass_command): Remove.
428 (trace_actions_command, read_actions): Update signature.
429 (validate_actionline): Update signature, use bp loc.
430 (encode_actions): Ditto.
431 (download_tracepoint): New function, body of trace_start_command.
432 (trace_start_command): Call it, use all_tracepoints.
433 (tracepoint_save_command): Remove.
434 (tracepoint_dump_command): Use get_tracepoint.
435 (end_actions_pseudocommand): Make globally visible.
436 (while_stepping_pseudocommand): Ditto.
437 (_initialize_tracepoint): Move command definitions to breakpoint.c.
441 Expose frames to Python.
442 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-frame.o.
443 (SUBDIR_PYTHON_SRCS): Add python-frame.c.
444 (python-frame.o): New target.
445 * python/python-frame.c: New file.
446 * python/python-internal.h (gdbpy_frames, gdbpy_newest_frame,
447 gdbpy_frame_stop_reason_string, gdbpy_selected_frame,
448 gdbpy_initialize_frames): New prototypes.
449 * python/python.c (_initialize_python): Call gdbpy_initialize_frames.
450 (GdbMethods): Add `selected_frame' and `frame_stop_reason_string'
452 * stack.c (find_frame_funname): New function, factored out of
454 (print_frame): Call find_frame_funname.
455 * stack.h (find_frame_funname): Add prototype.
459 Remove unused value_object attribute `owned_by_gdb'.
460 * python/python-value.c (value_object): Remove owned_by_gdb
462 (valpy_dealloc): Remove reference to self->owned_by_gdb.
463 (valpy_new): Likewise.
464 (value_to_value_object): Likewise.
468 Change gdb.Value.address from a method to an attribute.
469 * python/python-value.c (value_object): Add `address' element.
470 (valpy_dealloc): Decrement reference to self->address if set.
471 (valpy_new): Initialize val_obj->address.
472 (valpy_address): Rename to ...
473 (valpy_get_address): ... this. Change signature from method to
474 attribute. Update self->address if not set.
475 (value_to_value_object): Initialize val_obj->address.
476 (value_object_getset): Add `address' element.
477 (value_object_methods): Remove `address' element.
481 * observer.sh: Set LANG/LC_ALL to C, not c.
485 * mn10300-tdep.c (mn10300_gdbarch_init): For mn10300, by default,
490 * remote.c (remote_stop_ns): If multi-process extensions are off,
491 and GDB is requesting the whole process to stop, sent "vCont;t",
496 * inf-loop.c (inferior_event_handler): Avoid calling is_running on
501 * config/djgpp/fnchange.lst: Update to fix ARI-reported problems.
505 * thread.c (do_restore_current_thread_cleanup): Redo test for
506 whether to restore old->inferior_ptid.
510 * breakpoint.c (resolve_sal_pc): Preserve original line number
511 when skipping prologue.
515 * thread.c (inferior_thread) Remove "extern" in definition.
519 Add gdb.Value.is_optimized_out attribute.
520 * python/python-value.c (valpy_get_is_optimized_out): New
522 (value_object_getset): New variable.
523 (value_object_type): Initialize tp_getset element.
527 Recognize missing DW_AT_location as <value optimized out>.
529 (new_symbol <DW_TAG_variable> <!DW_AT_location> <!DW_AT_external>):
530 Call add_symbol_to_list.
534 * gdbtypes.h (CHECK_TYPEDEF): Don't yield a value.
535 * stack.c (print_this_frame_argument_p): Use check_typedef.
539 * configure: Rebuild.
540 * acinclude.m4 (AM_ICONV): Set am_cv_use_build_libiconv.
541 Rearrange flags setting. Add comments.
545 * config/i386/nm-i386.h: Remove code within
546 I386_WATCHPOINTS_IN_TARGET_VECTOR conditional.
547 * config/i386/nm-cygwin.h: Remove I386_WATCHPOINTS_IN_TARGET_VECTOR
549 * config/i386/nm-cygwin64.h: Ditto.
550 * config/i386/nm-fbsd.h: Ditto.
551 * config/i386/nm-go32.h: Ditto.
552 * config/i386/nm-linux.h: Ditto.
553 * config/i386/nm-linux64.h: Ditto.
557 ARI fix: "xasprintf" rule.
558 * printcmd.c (sym_info): Replace xasprintf by xstrprintf.
562 * remote.c (remote_start_remote): In non-stop mode, call
563 init_wait_for_inferior before adding threads and inferiors.
567 * breakpoint.c (breakpoint_thread_match): Split a large condition
568 into several smaller conditions. No behavior change.
572 * infrun.c (infrun_thread_thread_exit): New.
573 (_initialize_infrun): Attach it to the thread_exit observer.
574 * thread.c (delete_thread_1): Always call the observer, passing it
576 * mi/mi-interp.c (mi_thread_exit): Add "silent" parameter. If
577 SILENT, return immediately.
581 * infrun.c (normal_stop): Use has_stack_frames instead of
583 * mi/mi-main.c (mi_execute_command): Avoid calling inferior_thread
584 when there is no thread selected.
585 (mi_cmd_execute): Don't special case commands that can run without
586 a valid selected thread.
587 * top.c (execute_command): Don't special case commands that can
588 run without a valid selected thread. Use has_stack_frames.
589 * infcmd.c (ensure_valid_thread): New.
590 (continue_1, step_1, jump_command, signal_command): Use it.
591 (detach_command): Error out if there's no selected thread/inferior.
592 * thread.c (print_thread_info): Allow having no thread selected.
593 (switch_to_thread): Don't read the PC if there is no current thread.
594 (do_restore_current_thread_cleanup): Don't record the current
595 frame if there is no current thread.
596 (make_cleanup_restore_current_thread): Don't read frame info if
597 there is no selected thread.
598 (_initialize_thread): Don't mark commands as
599 "no_selected_thread_ok".
600 * frame.c (get_current_frame): Error out if there is no valid
602 (has_stack_frames): Return false if there is no valid
604 * cli/cli-cmds.c (init_cli_cmds): Don't mark commands as
605 "no_selected_thread_ok".
606 * cli/cli-decode.c (set_cmd_no_selected_thread_ok)
607 (get_cmd_no_selected_thread_ok): Delete.
608 * cli/cli-decode.h (CMD_NO_SELECTED_THREAD_OK): Delete.
609 (set_cmd_no_selected_thread_ok, get_cmd_no_selected_thread_ok):
611 * stack.c (get_selected_block): Use has_stack_frames.
615 Fix size of FPSCR in Power 7 processors.
616 * ppc-linux-nat.c (PPC_FEATURE_ARCH_2_05): Remove #define.
617 (PPC_FEATURE_HAS_DFP): New #define.
618 (ppc_linux_read_description): Check for DFP feature instead of
619 ISA 2.05 to decide on size of the FPSCR.
623 * mn10300-tdep.c (trad-frame.h): Don't include.
624 (prologue-value.h): Include.
625 (mn10300_frame_unwind_cache, set_reg_offsets): Delete.
626 (struct mn10300_prologue): Define.
627 (push_reg, translate_rreg, check_for_saved): New functions.
628 (mn10300_analyze_prologue): Rewrite, using prologue-value
629 machinery. Handle more instructions than before. Permit
630 instructions to occur in any order.
631 (mn10300_skip_prologue): Find the extents of the function
632 in question; mn10300_analyze_prologue no longer does this.
633 (mn10300_analyze_frame_prologue): New function.
634 (mn10300_frame_base): New function.
635 (mn10300_frame_this_id): Rewrite, no longer using trad-frame
637 (mn10300_frame_prev_register): Likewise.
638 (mn10300_frame_base_address, mn10300_frame_base struct): Delete.
639 (mn10300_unwind_pc, mn10300_unwind_sp): Rename `next_frame' to
641 (mn10300_frame_unwind_init): Don't call frame_base_set_default().
645 Fix completer problem for filename completion on the first try.
647 * gdb/completer.h (gdb_completion_word_break_characters): New function.
648 * gdb/completer.c: Include gdb_assert.h.
649 (complete_line_internal_reason): New enum.
650 (complete_line_internal): Change last argument type to
651 complete_line_internal_reason.
652 Modify function to handle the different complete_line_internal_reason
654 (complete_line): Adapt to change in complete_line_internal.
655 (command_completer): Ditto.
656 (gdb_completion_word_break_characters): Implement new function.
657 * top.c (init_main): Set rl_completion_word_break_hook to
658 gdb_completion_word_break_characters.
663 ARI fix: "strlen d_name" rule.
664 * linux-nat.c (linux_nat_xfer_osdata): Use NAMELEN macro.
670 * configure, config.in: Rebuild.
671 * configure.ac: Check for libiconvlist.
672 * charset.c: Check HAVE_LIBICONVLIST.
673 * acinclude.m4 (AM_ICONV): Don't subst LIBICONV, LIBICONV_INCLUDE,
674 LIBICONV_LIBDIR. Update CPPFLAGS and LIBS.
675 * Makefile.in (LIBICONV, LIBICONV_INCLUDE, LIBICONV_LIBDIR):
677 (INTERNAL_CFLAGS_BASE): Update.
678 (INTERNAL_LDFLAGS): Update.
683 * configure.ac: Initialize the variable $PREFER_CURSES.
684 * configure: Regenerated.
688 * configure.ac: Enable $PREFER_CURSES even with default $ENABLE_TUI.
689 * configure: Regenerated.
693 ARI fix: "strerror" rule.
694 * darwin-nat.c (darwin_ptrace): Use safe_strerror.
695 (darwin_stop_inferior, darwin_attach, darwin_detach): Ditto.
699 * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
700 before looking up the fields inside our struct type.
704 * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
705 trying to resolve the type qualification.
709 * ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
710 we try to apply the attribute on the real type, rather than
711 its associated typedef.
715 * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
716 to make sure we try to get the modulus of the actual type, not the
721 * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
722 [OP_ATR_LENGTH]: When using the attribute on a type, make sure
723 to get the real type, not the associated typedef.
727 * ada-lang.c (ada_get_field_index): Add handling of the case
728 when TYPE is a typedef of a struct.
732 Add gdb_usleep as a portable version of usleep based on gdb_select.
733 * gdb_usleep.h, gdb_usleep.c: New files.
734 * Makefile.in (SFILES): Add gdb_usleep.c.
735 (HFILES_NO_SRCDIR): Add gdb_usleep.h.
736 (COMMON_OBS): Add gdb_usleep.o.
737 * ser-unix.c (hardwire_send_break): Replace call to gdb_select
738 by call to gdb_usleep.
742 * buildsym.c (end_symtab): If we ignore the subfiles, then
743 unlink the associated symtabs if they were already allocated.
747 Provide a way to force building of GDB with libcurses.
748 * configure.ac: Add --with-curses.
749 * configure: Regenerated.
753 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_uninit>: Fix typo in
758 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Use
759 solib_contains_address_p instead of searching.
763 * charset.c (ICONV_CONST) <PHONY_ICONV>: Define.
764 (iconv): Make 'inbuf' argument const.
765 (convert_between_encodings): Use ICONV_CONST.
766 (wchar_iterate): Likewise.
770 * windows-nat.c (AdjustTokenPrivileges): Implement macro wraparound for
771 dynamically loaded function.
772 (LookupPrivilegeValueA): Ditto.
773 (OpenProcessToken): Ditto.
774 (AdjustTokenPrivileges): Rename and define placeholder for address of
775 dynamically loaded function.
776 (LookupPrivilegeValueA): Ditto.
777 (OpenProcessToken): Ditto.
778 (set_process_privilege): Remove check for loaded functions.
779 (bad_OpenProcessToken): Define.
780 (_initialize_loadable): Load token functions from advapi here, setting
781 OpenProcessToken function to a dummy static function which always return
782 error if OS doesn't support this functionality.
787 * win32-nat.c (ctrl_c_handler): New function.
788 (win32_wait): Register ctrl_c_handler as Ctrl-C handler if the inferior
789 is run in a separate console.
793 * windows-nat.c (DebugActiveProcessStop): Implement macro wraparound
794 for dynamically loaded function.
795 (DebugBreakProcess): Ditto.
796 (DebugSetProcessKillOnExit): Ditto.
797 (EnumProcessModules): Ditto.
798 (GetModuleFileNameExA): Ditto.
799 (GetModuleInformation): Ditto.
800 (DebugActiveProcessStop): Rename and define placeholder for address of
801 dynamically loaded function.
802 (DebugBreakProcess): Ditto.
803 (DebugSetProcessKillOnExit): Ditto.
804 (EnumProcessModules): Ditto.
805 (GetModuleFileNameExA): Ditto.
806 (GetModuleInformation): Ditto.
807 (psapi_loaded): Delete.
808 (get_module_name): Don't check psapi_loaded, just rely on the fact that
809 dynamically loaded functions will return failure if they weren't
811 (has_detach_ability): Delete.
812 (windows_attach): Remove call to has_detach_ability (). Just rely on
813 functions being callable.
814 (bad_DebugActiveProcessStop): Define.
815 (bad_DebugBreakProcess): Ditto.
816 (bad_DebugSetProcessKillOnExit): Ditto.
817 (bad_EnumProcessModules): Ditto.
818 (bad_GetModuleFileNameExA): Ditto.
819 (bad_GetModuleInformation): Ditto.
820 (_initialize_loadable): Rename from _initialize_psapi. Initialize all
821 dynamic storage here, setting nonexistent functions to dummy static
822 functions which always return error.
826 * mi/mi-interp.c (mi_interpreter_init): Attach mi_about_to_proceed
827 to the about_to_proceed observer notification.
828 (mi_about_to_proceed): New.
829 (mi_on_resume): Only output ^running and the prompt here if the
830 target was proceeded.
831 * breakpoint.c (breakpoint_proceeded): New static.
832 (breakpoint_about_to_proceed): New.
833 (_initialize_breakpoints): Attach breakpoint_about_to_proceed to
834 the about_to_proceed observer notification.
835 * inferior.h (breakpoint_proceeded): Delete declaration.
836 * infrun.c (clear_proceed_status): Don't set breakpoint_proceeded.
837 Notify the about_to_proceed observers.
838 (struct inferior_status): Delete breakpoint_proceeded member.
839 (save_inferior_status): Don't save it.
840 (restore_inferior_status): Don't restore it.
841 * mi-main.h (mi_proceeded): Declare.
842 * mi/mi-main.c (mi_cmd_execute): Clear mi_proceeded before running
847 * gdbthread.h (struct thread_info): Add in_infcall member.
848 * infcall.c (run_inferior_call): Save, set and restore in_infcall.
849 Remove reverences to suppress_resume_observer. Refresh
850 `call_thread' after returning from `proceed'.
851 * infcmd.c (suppress_resume_observer): Delete.
852 * inferior.h (suppress_resume_observer): Delete declaration.
853 * mi/mi-interp.c (mi_on_resume): Suppress output while calling an
855 * thread.c (set_running): Remove references to
856 suppress_resume_observer.
857 * infrun.c (struct inferior_status): Add in_infcall member.
858 (save_inferior_status): Save it.
859 (restore_inferior_status): Restore it.
863 * infcall.c (run_inferior_call): Remove references to
864 suppress_stop_observer.
865 * infcmd.c (suppress_stop_observer): Delete.
866 (finish_command_continuation): Remove NOTE. Don't clear
867 suppress_stop_observer anymore.
868 (finish_command_continuation_free_arg): Likewise.
869 (finish_forward): Remove references to suppress_stop_observer.
870 Call normal_stop observer if we haven't already.
871 * inferior.h (suppress_stop_observer): Delete.
872 * infrun.c (normal_stop): When deciding to suppress the
873 normal_stop observer, check for proceed_to_finish instead of
874 suppress_stop_observer.
878 * symfile.c (symfile_relocate_debug_section): Remove check for
886 Miscellaneous fixes to the Python code.
887 * python/python-cmd.c (cmdpy_init): Accept keyword
889 * python/python-value.c (valpy_string): Accept keyword
891 (valpy_binop): Use `break' to exit from the TRY_CATCH block.
892 Do not call value_to_value_object on NULL RES_VAL.
893 (value_object_methods): Change `string' entry to also accept
895 (convert_value_from_python): Return a copy of the value if obj is
897 (value_object_methods): Mark the `string' method as accepting
898 keywords, and show method "prototype" in the doc string.
899 * python/python.c (get_parameter): Don't return inside a
904 Add support for convenience functions in Python.
905 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-function.o.
906 (SUBDIR_PYTHON_SRCS): Add python-function.c.
907 (python-function.o): New target.
908 * eval.c: Include "python/python.h" and <ctype.h>.
909 (evaluate_subexp_standard): Handle values of type
910 TYPE_CODE_INTERNAL_FUNCTION.
911 * gdbtypes.h (type_code): Add TYPE_CODE_INTERNAL_FUNCTION.
912 * parse.c (write_exp_string): Remove duplicate word in comment.
913 * python/python-function.c: New file.
914 * python/python-internal.h (gdbpy_initialize_functions): Add
916 * python/python.c (_initialize_python): Call
917 gdbpy_initialize_functions.
918 * valprint.c (value_check_printable): Handle values of type
919 TYPE_CODE_INTERNAL_FUNCTION.
920 * value.c: Include "cli/cli-decode.h".
921 (internal_function): New struct.
922 (functionlist, internal_fn_type): New static variables.
923 (lookup_only_internalvar,
924 lookup_internalvar): Add const qualifier to name argument.
925 (create_internalvar): Likewise. Initialize new field.
926 (set_internal_var): Fix typo in comment. Don't allow assignment
927 to canonical variable.
928 (value_create_internal_function, value_internal_function_name,
929 call_internal_function, function_command, function_destroyer,
930 add_internal_function): New functions.
931 (_initialize_values): Create `function' placeholder command.
932 Initialize internal_fn_type.
933 * value.h (lookup_only_internalvar, create_internalvar,
934 lookup_internalvar): Add const qualifier to name argument.
935 (internal_function_fn, add_internal_function, call_internal_function,
936 value_internal_function_name): Add prototypes.
937 (struct internalvar) <canonical>: New field.
941 * c-lang.c (evaluate_subexp_c): Call check_typedef.
946 PR i18n/7220, PR i18n/7821, PR exp/8815, PR exp/9103,
947 PR i18n/9401, PR exp/9613:
949 * value.h (value_typed_string): Declare.
950 (val_print_string): Update.
951 * valprint.h (print_char_chars): Update.
952 * valprint.c (print_char_chars): Add type argument. Update.
953 (val_print_string): Likewise.
954 * valops.c (value_typed_string): New function.
955 * utils.c (host_char_to_target): New function.
956 (parse_escape): Use host_char_to_target, host_hex_value. Update.
958 (no_control_char_error): Remove.
959 * typeprint.c (print_type_scalar): Update.
960 * scm-valprint.c (scm_scmval_print): Update.
961 * scm-lang.h (scm_printchar, scm_printstr): Update.
962 * scm-lang.c (scm_printchar): Add type argument.
963 (scm_printstr): Likewise.
964 * printcmd.c (print_formatted): Update.
965 (print_scalar_formatted): Update.
966 (printf_command) <wide_string_arg, wide_char_arg>: New constants.
967 Handle '%lc' and '%ls'.
968 * parser-defs.h (struct typed_stoken): New type.
969 (struct stoken_vector): Likewise.
970 (write_exp_string_vector): Declare.
971 * parse.c (write_exp_string_vector): New function.
972 * p-valprint.c (pascal_val_print): Update.
973 * p-lang.h (is_pascal_string_type, pascal_printchar,
974 pascal_printstr): Update.
975 * p-lang.c (is_pascal_string_type): Remove 'char_size' argument.
976 Add 'char_type' argument.
977 (pascal_emit_char): Add type argument.
978 (pascal_printchar): Likewise.
979 (pascal_printstr): Likewise.
980 * objc-lang.c (objc_emit_char): Add type argument.
981 (objc_printchar): Likewise.
982 (objc_printstr): Likewise.
983 * macroexp.c (get_character_constant): Handle unicode characters.
985 (get_string_literal): Handle unicode strings. Use
987 * m2-valprint.c (print_unpacked_pointer): Update.
988 (m2_print_array_contents): Update.
989 (m2_val_print): Update.
990 * m2-lang.c (m2_emit_char): Add type argument.
991 (m2_printchar): Likewise.
992 (m2_printstr): Likewise.
993 * language.h (struct language_defn) <la_printchar>: Add type
995 <la_printstr, la_emitchar>: Likewise.
996 (LA_PRINT_CHAR): Likewise.
997 (LA_PRINT_STRING): Likewise.
998 (LA_EMIT_CHAR): Likewise.
999 * language.c (unk_lang_emit_char): Add type argument.
1000 (unk_lang_printchar): Likewise.
1001 (unk_lang_printstr): Likewise.
1002 * jv-valprint.c (java_val_print): Update.
1003 * jv-lang.c (java_emit_char): Add type argument.
1004 * f-valprint.c (f_val_print): Update.
1005 * f-lang.c (f_emit_char): Add type argument.
1006 (f_printchar): Likewise.
1007 (f_printstr): Likewise.
1008 * expprint.c (print_subexp_standard): Update.
1009 * charset.h (target_wide_charset): Declare.
1010 (c_target_char_has_backslash_escape, c_parse_backslash,
1011 host_char_print_literally, host_char_to_target,
1012 target_char_to_host, target_char_to_control_char): Remove.
1013 (enum transliterations): New type.
1014 (convert_between_encodings): Declare.
1015 (HOST_ESCAPE_CHAR): New define.
1016 (host_letter_to_control_character, host_hex_value): Declare.
1017 (enum wchar_iterate_result): New enum.
1018 (struct wchar_iterator): Declare.
1019 (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
1020 wchar_push_back): Declare.
1021 * charset-list.h: New file.
1022 * c-valprint.c (textual_name): New function.
1023 (textual_element_type): Handle wide character types.
1024 (c_val_print): Pass original type to textual_element_type. Handle
1025 wide character types.
1026 (c_value_print): Use textual_element_type. Pass original type of
1028 * c-lang.h (enum c_string_type): New type.
1029 (c_printchar, c_printstr): Update.
1030 * c-lang.c (classify_type): New function.
1031 (print_wchar): Likewise.
1032 (c_emit_char): Add type argument. Handle wide characters.
1033 (c_printchar): Likewise.
1034 (c_printstr): Add type argument. Handle wide and multibyte
1036 (convert_ucn): New function.
1037 (emit_numeric_character): Likewise.
1038 (convert_octal): Likewise.
1039 (convert_hex): Likewise.
1040 (ADVANCE): New macro.
1041 (convert_escape): New function.
1042 (parse_one_string): Likewise.
1043 (evaluate_subexp_c): Likewise.
1044 (exp_descriptor_c): New global.
1045 (c_language_defn): Use exp_descriptor_c.
1046 (cplus_language_defn): Likewise.
1047 (asm_language_defn): Likewise.
1048 (minimal_language_defn): Likewise.
1049 (charset_for_string_type): New function.
1050 * c-exp.y (%union): Add 'svec' and 'tsval'.
1052 (exp): Add CHAR production.
1053 (string_exp): Rewrite.
1054 (exp) <string_exp>: Rewrite.
1055 (tempbuf): Now global.
1056 (tempbuf_init): New global.
1057 (parse_string_or_char): New function.
1058 (yylex) <tempbuf>: Now global.
1059 <tokptr, tempbufindex, tempbufsize, token_string, class_prefix>:
1061 Handle 'u', 'U', and 'L' prefixes. Call parse_string_or_char.
1062 (c_parse_escape): New function.
1063 * auxv.c (fprint_target_auxv): Update.
1064 * ada-valprint.c (ada_emit_char): Add type argument.
1065 (ada_printchar): Likewise.
1066 (ada_print_scalar): Update.
1067 (printstr): Add type argument. Update calls to ada_emit_char.
1068 (ada_printstr): Add type argument.
1069 (ada_val_print_array): Update.
1070 (ada_val_print_1): Likewise.
1071 * ada-lang.c (emit_char): Add type argument.
1072 * ada-lang.h (ada_emit_char, ada_printchar, ada_printstr): Add
1074 * gdb_locale.h: Include langinfo.h.
1075 * charset.c (_initialize_charset): Set default host charset from
1076 the locale. Don't register charsets. Add target-wide-charset
1077 commands. Call find_charset_names.
1078 (struct charset, struct translation): Remove.
1079 (GDB_DEFAULT_HOST_CHARSET): Remove.
1080 (GDB_DEFAULT_TARGET_WIDE_CHARSET): New define.
1081 (target_wide_charset_name): New global.
1082 (show_host_charset_name): Handle "auto".
1083 (show_target_wide_charset_name): New function.
1084 (host_charset_enum, target_charset_enum): Remove.
1085 (charset_enum): New global.
1086 (all_charsets, register_charset, lookup_charset, all_translations,
1087 register_translation, lookup_translation): Remove.
1088 (simple_charset, ascii_print_literally, ascii_to_control): Remove.
1089 (iso_8859_print_literally, iso_8859_to_control,
1090 iso_8859_family_charset): Remove.
1091 (ebcdic_print_literally, ebcdic_to_control,
1092 ebcdic_family_charset): Remove.
1093 (struct cached_iconv, check_iconv_cache, cached_iconv_convert,
1094 register_iconv_charsets): Remove.
1095 (target_wide_charset_be_name, target_wide_charset_le_name): New
1097 (identity_either_char_to_other): Remove.
1098 (set_be_le_names, validate): New functions.
1099 (backslashable, backslashed, represented): Remove.
1100 (default_c_target_char_has_backslash_escape): Remove.
1101 (default_c_parse_backslash, iconv_convert): Remove.
1102 (ascii_to_iso_8859_1_table, ascii_to_ebcdic_us_table,
1103 ascii_to_ibm1047_table, iso_8859_1_to_ascii_table,
1104 iso_8859_1_to_ebcdic_us_table, iso_8859_1_to_ibm1047_table,
1105 ebcdic_us_to_ascii_table, ebcdic_us_to_iso_8859_1_table,
1106 ebcdic_us_to_ibm1047_table, ibm1047_to_ascii_table,
1107 ibm1047_to_iso_8859_1_table, ibm1047_to_ebcdic_us_table): Remove.
1108 (table_convert_char, table_translation, simple_table_translation):
1110 (current_host_charset, current_target_charset,
1111 c_target_char_has_backslash_escape_func,
1112 c_target_char_has_backslash_escape_baton): Remove.
1113 (c_parse_backslash_func, c_parse_backslash_baton): Remove.
1114 (host_char_to_target_func, host_char_to_target_baton): Remove.
1115 (target_char_to_host_func, target_char_to_host_baton): Remove.
1116 (cached_iconv_host_to_target, cached_iconv_target_to_host):
1118 (lookup_charset_or_error, check_valid_host_charset): Remove.
1119 (set_host_and_target_charsets): Remove.
1120 (set_host_charset, set_target_charset): Remove.
1121 (set_host_charset_sfunc, set_target_charset_sfunc): Rewrite.
1122 (set_target_wide_charset_sfunc): New function.
1123 (show_charset): Print target wide character set.
1124 (host_charset, target_charset): Rewrite.
1125 (target_wide_charset): New function.
1126 (c_target_char_has_backslash_escape): Remove.
1127 (c_parse_backslash): Remove.
1128 (host_letter_to_control_character): New function.
1129 (host_char_print_literally): Remove.
1130 (host_hex_value): New function.
1131 (target_char_to_control_char): Remove.
1132 (cleanup_iconv): New function.
1133 (convert_between_encodings): New function.
1134 (target_char_to_host): Remove.
1135 (struct wchar_iterator): Define.
1136 (make_wchar_iterator, make_cleanup_wchar_iterator, wchar_iterator,
1137 wchar_push_back): New functions.
1138 (do_cleanup_iterator): New function.
1139 (char_ptr): New typedef.
1140 (charsets): New global.
1141 (add_one, find_charset_names): New functions.
1142 (default_charset_names): New global.
1143 (auto_host_charset_name): Likewise.
1144 * aclocal.m4, config.in, configure: Rebuild.
1145 * configure.ac: Call AM_LANGINFO_CODESET.
1146 (GDB_DEFAULT_HOST_CHARSET): Default to UTF-8.
1147 (AM_ICONV): Invoke earlier.
1148 * acinclude.m4: Include codeset.m4. Subst LIBICONV_INCLUDE and
1149 LIBICONV_LIBDIR. Check for libiconv in build tree.
1150 * Makefile.in (LIBICONV_LIBDIR, LIBICONV_INCLUDE): New macros.
1151 (INTERNAL_CFLAGS_BASE): Add LIBICONV_INCLUDE.
1152 (INTERNAL_LDFLAGS): Add LIBICONV_LIBDIR.
1153 * gdb_obstack.h (obstack_grow_wstr): New define.
1154 * gdb_wchar.h: New file.
1155 * defs.h: Include it.
1160 * dwarf2read.c (process_die): Handle DW_TAG_typedef.
1161 * eval.c (evaluate_subexp_standard) <OP_TYPE>: Strip a single
1163 * ada-lang.c (decode_packed_array_type): Call CHECK_TYPEDEF on the
1165 * ada-typeprint.c (print_array_type): Do the NULL check
1170 * utils.c (do_obstack_free): New function.
1171 (make_cleanup_obstack_free): Likewise.
1172 * defs.h (make_cleanup_obstack_free): Declare.
1176 * linux-nat.c (linux_nat_find_memory_regions): Result of PIDGET is an
1177 int, not a long long.
1178 (linux_nat_info_proc_cmd): Store pid in long instead of long long.
1180 * expprint.c (dump_raw_expression): Print note if non-NULL.
1182 * printcmd.c (display_uses_solib_p): Redo loop, scan element list
1187 * Makefile.in: Update license to GPLv3.
1188 * ada-exp.y: Update license to GPLv3.
1189 * ada-lex.l: Update license to GPLv3.
1190 * c-exp.y: Update license to GPLv3.
1191 * cp-name-parser.y: Update license to GPLv3.
1192 * darwin-nat-info.c: Update license to GPLv3.
1193 * f-exp.y: Update license to GPLv3.
1194 * gdb_thread_db.h: Update license to GPLv3.
1195 * hppanbsd-nat.c: Update license to GPLv3.
1196 * hppanbsd-tdep.c: Update license to GPLv3.
1197 * hppaobsd-tdep.c: Update license to GPLv3.
1198 * jv-exp.y: Update license to GPLv3.
1199 * m2-exp.y: Update license to GPLv3.
1200 * objc-exp.y: Update license to GPLv3.
1201 * p-exp.y: Update license to GPLv3.
1202 * reply_mig_hack.awk: Update license to GPLv3.
1203 * reverse.c: Update license to GPLv3.
1204 * xtensa-xtregs.c: Update license to GPLv3.
1208 * remote.c (remote_close): Don't call generic_mourn_inferior.
1209 (remote_mourn_1): Call generic_mourn_inferior after closing the
1214 * remote.c (remote_start_remote): Add missing call to
1215 init_wait_for_inferior in non-stop mode.
1219 * breakpoint.c (bpstat_should_step): Only consider software
1220 watchpoints that have a location.
1224 Add a target_ops parameter to the to_kill method in struct target_ops.
1226 * target.h (struct target_ops): Add a "target_ops *" parameter to
1228 (target_kill): Remove macro. Add declaration.
1229 * target.c (debug_to_kill): Delete, no longer necessary.
1230 (target_kill): New function.
1231 (update_current_target): Stop inheriting the to_kill method.
1232 Do not de_fault it to no_process either.
1233 (setup_target_debug): Do not set current_target.to_kill.
1234 * gnu-nat.c, go32-nat.c, hpux-thread.c, inf-ptrace.c, inf-ttrace.c,
1235 linux-nat.c, monitor.c, nto-procfs.c, procfs.c, remote-m32r-sdi.c,
1236 remote-mips.c, remote-sim.c, remote.c, windows-nat.c: Update
1241 * amd64-linux-nat.c (si_timerid,si_overrun): Provide definition for
1242 glibc 2.3.2 and earlier.
1246 * frame.c (get_prev_frame_1): Do not perform the inner_frame
1247 sanity check if this_frame is not NORMAL.
1248 (frame_id_inner): Update the description of this function.
1252 * stack.c: Change the introduce of "disassemble-next-line".
1256 * mi/mi-main.h (mi_print_timing_maybe): Add strict prototype,
1261 * stack.c: Include valprint.h.
1262 (disassemble_next_line): New enum.
1263 (show_disassemble_next_line): New function. Show the current
1264 value of disassemble-next-line.
1265 (gdb_disassembly_stub_args): New struct for argument passing
1266 between function do_gdb_disassembly and function
1267 gdb_disassembly_stub.
1268 (gdb_disassembly_stub): New function. Helper for
1270 (do_gdb_disassembly): New function. Use TRY_CATCH to catch
1271 the exception from the gdb_disassembly because it will be
1272 broken by filter sometime.
1273 (print_frame_info): If disassemble-next-line is set to auto
1274 or on and doesn't have the line debug messages for $pc,
1275 output the next instruction.
1276 If disassemble-next-line is set to on and there is line debug
1277 messages, output assembly codes for next line.
1278 (_initialize_stack): Make the "set disassemble-next-line"
1279 command an auto-boolean command. Change its class to
1280 class_stack. Place it in the top level set list. Extend help
1281 to describe the auto mode.
1285 * infrun.c (normal_stop): Don't overwrite old_chain.
1289 * remote-mips.c (mips_load): Replace call to regcache_set_valid_p,
1290 which is undefined, by call to regcache_invalidate, which should
1291 do what the original author wanted to do.
1295 * remote-mips.c (mips_mourn_inferior): Add missing ops parameter.
1296 (mips_create_inferior): Likewise.
1300 * go32-nat.c (go32_create_inferior): Add missing ops parameter.
1304 * darwin-nat.c (darwin_resume): Fix a compiler warning when
1305 building on x86_64-darwin.
1309 * configure.tgt: Add handling for x86_64-darwin.
1313 * auxv.c (fprint_target_auxv): New TAG for AT_RANDOM.
1317 * aix-thread.c (aix_thread_thread_alive, aix_thread_pid_to_str):
1318 Use the ops parameter to get to the target beneath, rather than
1319 using the current_target global. Using the current_target global
1320 was an unintended accident.
1324 Fix an error happening while loading symbols from a core file
1327 * rs6000-nat.c (xcoff_relocate_symtab): Use target_has_execution
1328 to detect whether we're debugging a core file or not.
1332 Modernize the aix-thread later by getting rid of the base_target
1333 global. This brings back to life the AIX port which was otherwise
1334 crashing all the time.
1336 * aix-thread.c (base_target): Delete.
1337 (pd_enable): Do not set base_target.
1338 (aix_thread_attach): Use find_target_beneath instead of base_target.
1339 (aix_thread_detach, aix_thread_resume, aix_thread_wait)
1340 (aix_thread_fetch_registers, aix_thread_store_registers),
1341 (aix_thread_xfer_partial, aix_thread_mourn_inferior)
1342 (aix_thread_thread_alive, aix_thread_pid_to_str): Likewise.
1343 (aix_thread_kill): Delete. Does not seem necessary.
1344 (init_aix_thread_ops): Do not set aix_thread_ops.to_kill.
1348 * stack.c (return_command <retval_exp>): New variables retval_expr
1349 and old_chain. Inline parse_and_eval to initialize retval_expr. Check
1350 RETVAL_EXPR for UNOP_CAST and set RETURN_TYPE to the RETURN_VALUE type
1351 if RETURN_TYPE is NULL.
1355 * remote.c (PACKET_qAttached): New.
1356 (remote_query_attached): New.
1357 (remote_add_inferior): Add new `attached' argument. Handle it.
1358 (remote_notice_new_inferior, remote_start_remote): Adjust to pass
1359 -1 to remote_add_inferior in new parameter.
1360 (extended_remote_attach_1): Adjust to pass 1 to
1361 remote_add_inferior in the new parameter.
1362 (extended_remote_create_inferior_1): Adjust to pass 0 to
1363 remote_add_inferior in the new parameter.
1364 (_initialize_remote): Add "set/show remote query-attached-packet"
1369 * symtab.c (lookup_symbol_in_language): Use a cleanup.
1373 * exceptions.h: Clean up some comments on catch_exceptions usage.
1374 * exceptions.c: Ditto. Plus mark catch_errors as superseded by
1379 The following patch helps getting rid of a warning inside solib-som.c.
1381 * source.c (source_full_path_of): Constify parameter filename.
1382 * defs.h (source_full_path_of): Update declaration accordingly.
1386 * ada-lang.c (ada_evaluate_subexp): Merge case BINOP_REM and
1387 BINOP_MOD cases with the handling of case BINOP_DIV and BINOP_MUL.
1388 Remove useless op value checks when EVAL_AVOID_SIDE_EFFECTS.
1392 * ada-lang.c (ada_evaluate_subexp) <BINOP_DIV>: make sure to
1393 promote the operands when noside is EVAL_AVOID_SIDE_EFFECTS.
1397 * ada-tasks.c (ada_task_is_alive): Move up and make static.
1398 * ada-lang.h (ada_task_is_alive): Remove declaration.
1402 * ada-lang.c (ada_delta): Change the type of numerators and
1403 denominators to DOUBLEST, as they may not fit into a long.
1404 (scaling_factor): Ditto.
1408 * language.c (lang_bool_type): Set lai->bool_type_symbol to NULL.
1412 * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: For tagged
1413 types, if we are unable to determine the actual symbol type
1414 from its tag, then use the static approximation instead.
1418 Fix crash printing packed record with packed array.
1420 * ada-lang.c (ada_modulus_from_name): New function.
1421 (ada_modulus): In the case where the type length is bigger than
1422 the size of the type used to hold the bounds, try determining
1423 the modulus from the type name.
1424 (ada_value_primitive_packed_val): Fix bug in the computation of
1425 ntarg causing an out-of-buffer invalid access.
1429 Fix segfault when printing short_integer'last.
1431 * ada-lang.c (ada_find_any_type): Search in the primitive types
1432 if a symbol could not be found.
1436 * ada-tasks.c (task_states,long_task_states): Add new states
1437 Activating and Acceptor_Delay_Sleep. Update the description
1438 of state Acceptor_Sleep.
1442 Fix a build failure on Darwin following some changes in
1443 the profile of some target_ops methods.
1445 * darwin-nat.c (darwin_kill_inferior): Add target_ops parameter
1447 (darwin_stop_inferior, darwin_detach): Likewise.
1451 Include token in ^running notification for CLI commands.
1453 * mi/mi-main.c (mi_execute_command): Set current_token here.
1454 (mi_cmd_execute): Do not set current_token here.
1460 * mi/mi-main.c (mi_print_timing_maybe): New.
1461 (captured_mi_execute_command): Simplify. Output timings to
1463 (mi_execute_async_cli_command): Do not print timings.
1464 * mi/mi-main.h (mi_print_timing_maybe): Declare.
1465 * mi/mi-interp.c (mi_on_normal_stop): Call mi_print_timing_maybe.
1469 * xcoffread.c (process_linenos): Check if the line in the
1470 include table refers to the main source file and, if so,
1471 add them to the main subfile.
1475 Fix a build failure on AIX introduced after a change in the profile
1476 of some of the "methods" in the target_ops structure.
1477 * aix-thread.c: Add missing target_ops parameter throughout.
1479 Implement Ada task switching on AIX.
1480 * aix-thread.c (aix_thread_get_ada_task_ptid): New function.
1481 (init_aix_thread_ops): Set aix_thread_ops.to_get_ada_task_ptid.
1485 * breakpoint.c (bpstat_check_breakpoint_conditions): Use
1486 value_mark and value_free_to_mark.
1487 * objfiles.c (free_objfile): Call objfile_free_data before
1492 * disasm.c (gdb_disassembly): Remove unused argument
1494 * disasm.h (gdb_disassembly): Ditto.
1495 * cli/cli-cmds.c (print_disassembly): Ditto.
1496 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Ditto.
1500 * solib.c (solib_contains_address_p): New function.
1501 (solib_name_from_address): Use it.
1502 * printcmd.c (display_uses_solib_p): Use it.
1503 * solib.h (solib_contains_address_p): Declare it.
1507 * varobj.c (free_variable): Call value_free.
1512 * dwarf2read.c (dwarf_decode_macros): New variable `at_commandline'.
1513 Move the variable `macinfo_type' out of the loop. Create a new
1514 processing pass before the current one to pre-create `current_file'.
1515 New complaint on misplaced zero/non-zero definitions/includes.
1516 Skip first DW_MACINFO_start_file with `at_commandline' set.
1520 * solib.c (reload_shared_libraries): Give
1521 inferior a chance to reset solib breakpoint.
1526 * windows-nat.c (dr): Redefine to use largest possible integer which
1528 (cygwin_set_dr): Avoid coercion.
1532 * windows-nat.c (windows_create_inferior): Implement --tty handling on
1537 Rename solib_address to solib_name_from_address.
1538 * breakpoint.c (insert_bp_location, disable_breakpoints_in_shlibs)
1539 (disable_breakpoints_in_unloaded_shlib): Update.
1540 * printcmd.c (display_uses_solib_p): Likewise.
1541 * stack.c (print_frame): Likewise.
1547 * printcmd.c (do_one_display): Reparse exp_string.
1548 (display_uses_solib_p): New function.
1549 (clear_dangling_display_expressions): New function.
1550 (_initialize_printcmd): Add observer.
1551 * solib.c (no_shared_libraries): Swap order of calls to
1552 clear_solib and objfile_purge_solibs.
1556 Implement the target-specific part of Ada tasking support
1559 * dec-thread.c (dec_thread_get_ada_task_ptid): New function.
1560 (init_dec_thread_ops): Set the to_get_ada_task_ptid method.
1564 Get rid of the global "base_target" and use "find_target_beneath"
1565 to find the underlying target.
1566 * dec-thread.c (base_target): Delete.
1567 (enable_dec_thread): Remove assignement to base_target.
1568 (dec_thread_detach, dec_thread_wait, dec_thread_wait)
1569 (dec_thread_fetch_registers, dec_thread_store_registers)
1570 (dec_thread_mourn_inferior, dec_thread_pid_to_str):
1571 Update the function profile if necessary.
1572 Use find_target_beneath to call the same method but from
1573 the underlying target, removing the need for "base_target".
1575 * dec-thread.c (dec_thread_get_regsets, dec_thread_set_regsets):
1576 Fix a copy/paste error in a few debug traces...
1578 * solib-osf.c (init_so): Use a simpler method for computing
1579 the size of lm_info structure. This also gets rid of warning
1580 emitted by the compiler.
1584 * breakpoint.c (check_duplicates_for): Skip permanent breakpoints
1585 duplicates of permanent breakpoints.
1589 * inferior.h (notice_new_inferior): Declare.
1590 * infcmd.c (notice_new_inferior): New.
1591 * remote.c (remote_add_inferior, remote_add_thread): New.
1592 (notice_new_inferiors): Rename to...
1593 (remote_notice_new_inferior): ... this. Add RUNNING argument.
1594 Use remote_add_thread instead of add_thread, passing it the
1595 RUNNING argument. Add an inferior with remote_add_inferior. If
1596 we just learned about an inferior, call notice_new_inferior.
1597 (record_currthread): Adjust.
1598 (remote_threads_info): Adjust to use remote_notice_new_inferior.
1599 (remote_start_remote, extended_remote_attach_1): Use
1600 remote_add_inferior.
1601 (process_stop_reply): Adjust. Call remote_notice_new_inferior
1602 after handling expedited registers and watchpoint state.
1603 (extended_remote_create_inferior_1): Use remote_add_inferior.
1607 * infcmd.c (registers_info): Remove register number case.
1611 * top.c (quit_target): Check for target_has_execution before
1612 killing or detaching from inferiors.
1616 Remove some unused routines.
1618 * ada-lang.c (is_suppressed_name, ada_suppress_symbol_printing):
1620 * ada-lang.c (ada_task_list_iterator_ftype)
1621 (iterate_over_live_ada_tasks): Delete.
1622 * ada-tasks.c (ada_get_environment_task, iterate_over_live_ada_tasks):
1627 * symtab.c: Remove trailing whitespace throughout the file.
1628 (expand_line_sal): Fix some typos and whitespace.
1630 * Makefile.in (clean): rm -f $(DEPDIR)/*.
1632 * Makefile.in (GDB_CFLAGS): Add -I$(srcdir)/common.
1633 (init.c): signals/ -> common/.
1634 (signals.o): Update.
1635 * target.h (target_signal_to_string,target_signal_to_string)
1636 (target_signal_from_name,target_signal_to_host_p)
1637 (target_signal_from_host,target_signal_to_host): Move to ...
1638 * common/gdb_signals.h: ... here. New file.
1639 * common/signals.c: Moved here from signals/signals.c.
1640 #include gdb_signals.h, remove #include of target.h in gdb case.
1641 (target_signal_from_command,default_target_signal_to_host)
1642 (default_target_signal_from_host): Move inside #ifndef GDBSERVER.
1644 Include thread ID in target_wait debugging output.
1645 * infrun.c (print_target_wait_results): New function.
1646 (wait_for_inferior,fetch_inferior_event): Call it.
1650 * gdb_proc_service.h (struct ps_prochandle): Replace pid_t field
1651 with a ptid_t field.
1652 * linux-thread-db.c (thread_get_info_callback): Build the ptid
1653 using the pid stored in proc_handle.ptid.
1654 (thread_from_lwp, thread_db_attach_lwp, enable_thread_event)
1655 (check_for_thread_db, thread_db_detach, check_event)
1656 (thread_db_mourn_inferior, find_new_threads_callback)
1657 (thread_db_find_new_threads_1): Adjust.
1658 * proc-service.c (ps_xfer_memory, ps_lgetregs, ps_lsetregs)
1659 (ps_lgetfpregs, ps_lsetfpregs, ps_getpid): Adjust.
1663 * valprint.c (read_string): Rework clean-up logic. Use
1664 free_current_contents to clean-up buffer.
1668 * MAINTAINERS: Update e-mail address.
1672 * python/python-utils.c (python_string_to_unicode): Always return
1674 (python_string_to_target_string): Decrement transient python
1676 (python_string_to_host_string): Likewise.
1680 * mips-linux-nat.c (mips64_linux_fetch_registers): Pass `ops' to
1681 call to super_fetch_registers.
1682 (mips64_linux_store_registers): Pass `ops' to call to
1683 super_store_registers.
1687 * breakpoint.c (insert_bp_location): Add \n to overlay breakpoint
1690 * breakpoint.c (disable_breakpoints_in_shlibs): Delete local
1691 disabled_shlib_breaks, unused.
1693 * printcmd.c (build_address_symbolic): Fix comment.
1697 * cli/cli-script.c (define_command): Add _() to query.
1698 * gnu-nat.c (inf_validate_task_sc): Ditto.
1699 * infcmd.c (kill_if_already_running): Ditto.
1700 (jump_command): Ditto.
1701 (attach_command): Ditto.
1702 * inflow.c (kill_command): Ditto.
1703 * infrun.c (handle_command): Ditto.
1704 * maint.c (maintenance_dump_me): Ditto.
1705 * memattr.c (mem_delete_command): Ditto.
1706 * monitor.c (monitor_interrupt_query): Ditto.
1707 * nto-procfs.c (interrupt_query): Ditto.
1708 * printcmd.c (undisplay_command): Ditto.
1709 * remote-mips.c (mips_kill): Ditto.
1710 * remote.c (interrupt_query): Ditto.
1711 * solib-irix.c (irix_open_symbol_file_object): Ditto.
1712 * solib-osf.c (osf_open_symbol_file_object): Ditto.
1713 * solib-pa64.c (pa64_open_symbol_file_object): Ditto.
1714 * solib-som.c (som_open_symbol_file_object): Ditto.
1715 * solib-svr4.c (open_symbol_file_object): Ditto.
1716 * symfile.c (symbol_file_add_with_addrs_or_offsets): Ditto.
1717 * target.c (kill_or_be_killed): Ditto.
1718 * tracepoint.c (delete_trace_command): Ditto.
1719 * top.c (quit_confirm): Add _() to s that will be used
1724 Fix windows-nat.c compilation failure.
1726 * windows-nat.c (windows_thread_alive): Fix forward declaration.
1727 (get_windows_debug_event): Add ops parameter to call to windows_resume.
1731 * remote-sim.c (gdbsim_resume): Add target_ops* argument.
1735 * symtab.c (find_line_symtab): Initialize exact to avoid
1740 * i386-linux-nat.c (i386_linux_fetch_inferior_registers): Pass
1741 `ops' to recursive call.
1745 * corelow.c (get_core_registers): Adjust.
1746 (core_file_thread_alive): Rename to...
1747 (core_thread_alive): ... this.
1748 (core_pid_to_str): Try gdbarch_core_pid_to_str first.
1749 (init_core_ops): Adjust.
1750 (coreops_suppress_target): Delete.
1751 (_initialize_corelow): Unconditionally add core_ops.
1752 * procfs.c: Include "inf-child.h".
1753 (procfs_ops): Delete.
1754 (init_procfs_ops): Delete. Reimplement as...
1755 (procfs_target): ... this, inheriting from inf-child.
1756 (procfs_attach, procfs_detach, procfs_fetch_registers): Adjust.
1757 (procfs_prepare_to_store): Delete.
1758 (procfs_store_registers, procfs_resume): Adjust.
1759 (procfs_open): Delete.
1760 (procfs_suppress_run): Delete.
1761 (procfs_can_run): Delete.
1762 (procfs_mourn_inferior): Adjust.
1763 (procfs_init_inferior): Add target_ops parameter. Adjust.
1764 (procfs_create_inferior): Don't pass procfs_init_inferior to
1765 fork_inferior. Instead call it after fork_inferior returns.
1766 (procfs_find_new_threads): Adjust.
1767 (_initialize_procfs): Adjust to use procfs_target instead of
1769 * sol-thread.c (orig_core_ops, sol_core_ops): Delete.
1770 (lwp_to_thread): Use target_thread_alive.
1771 (sol_thread_open): Delete.
1772 (sol_thread_attach): Delete.
1773 (sol_thread_detach, sol_thread_resume, sol_thread_wait)
1774 (sol_thread_fetch_registers, sol_thread_store_registers): Adjust
1775 to use find_target_beneath.
1776 (sol_thread_prepare_to_store, sol_thread_xfer_memory): Delete.
1777 (sol_thread_xfer_partial): Adjust to use find_target_beneath.
1778 (sol_thread_files_info, sol_thread_kill_inferior): Delete.
1779 (check_for_thread_db): New.
1780 (sol_thread_notice_signals, sol_thread_create_inferior): Delete.
1781 (sol_thread_new_objfile): Call check_for_thread_db.
1782 (sol_thread_mourn_inferior): Adjust to use find_target_beneath.
1783 (sol_thread_can_run): Delete.
1784 (sol_thread_alive): Adjust to use find_target_beneath.
1785 (sol_thread_stop): Delete.
1786 (rw_common): Use target_write_memory or target_read_memory.
1787 (ps_lgetregs, ps_lgetfpregs): Use target_fetch_registers.
1788 (ps_lsetregs, ps_lsetfpregs): Use target_store_registers.
1789 (solaris_pid_to_str): Remove check for libthread_db initialization
1791 (sol_find_new_threads): Remove check for libthread_db
1792 initialization failing, or for an invalid inferior_ptid. Adjust
1793 to use find_target_beneath.
1794 (sol_core_open, sol_core_close, sol_core_detach,
1795 sol_core_files_info, sol_find_memory_regions,
1796 sol_make_note_section, ignore): Delete.
1797 (init_sol_thread_ops): Make it a thread_stratum target. Remove
1798 unneeded callback settings.
1799 (init_sol_core_ops): Delete.
1800 (_initialize_sol_thread): No longer call init_sol_core_ops, set
1801 procfs_suppress_run, or hack with core_ops.
1803 * target.h (struct target_ops): Add a target_ops * parameter to
1804 to_resume, to_fetch_registers, to_store_registers, to_thread_alive
1805 and to_find_new_threads.
1806 (target_fetch_registers, target_store_registers)
1807 (target_thread_alive, target_find_new_threads): Redeclare as
1810 * target.c (update_current_target): Do not inherit or de_fault
1811 to_resume, to_fetch_registers, to_store_registers,
1812 to_thread_alive, to_find_new_threads.
1813 (target_resume): Adjust.
1814 (target_thread_alive, target_find_new_threads): New.
1815 (debug_to_resume, debug_to_fetch_registers): Delete.
1816 (target_fetch_registers): New.
1817 (debug_to_store_registers): Delete.
1818 (target_store_registers): New.
1819 (debug_to_thread_alive, debug_to_find_new_threads): Delete.
1820 (setup_target_debug): Adjust.
1822 * gdbcore.h (core_ops): Delete declaration.
1824 * inf-ptrace.c, linux-nat.c, remote.c, amd64-linux-nat.c,
1825 inf-child.c, linux-thread-db.c, bsd-uthread.c, inf-ttrace.c,
1826 i386-sol2-tdep.c, darwin-nat.c, gnu-nat.c, go32-nat.c,
1827 hpux-thread.c, i386-linux-nat.c, i386fbsd-nat.c, monitor.c,
1828 nto-procfs.c, remote-m32r-sdi.c, remote-mips.c, windows-nat.c,
1829 alphabsd-nat.c, amd64bsd-nat.c, arm-linux-nat.c, armnbsd-nat.c,
1830 bsd-kvm.c, hppa-hpux-nat.c, hppa-linux-nat.c, hppabsd-nat.c,
1831 hppanbsd-nat.c, i386-darwin-nat.c, i386bsd-nat.c,
1832 ia64-linux-nat.c, m32r-linux-nat.c, m68kbsd-nat.c,
1833 m68klinux-nat.c, m88kbsd-nat.c, mips-linux-nat.c,
1834 mips64obsd-nat.c, mipsnbsd-nat.c, ppc-linux-nat.c, ppcnbsd-nat.c,
1835 ppcobsd-nat.c, remote-sim.c, rs6000-nat.c, s390-nat.c,
1836 shnbsd-nat.c, sparc-nat.c, sparc-nat.h, spu-linux-nat.c,
1837 vaxbsd-nat.c, xtensa-linux-nat.c: Adjust to target_ops changes.
1839 * gdbarch.sh (core_pid_to_str): New gdbarch callback.
1840 * gdbarch.h, gdbarch.c: Regenerate.
1842 * sol2-tdep.c: Include "inferior.h".
1843 (sol2_core_pid_to_str): New.
1844 * sol2-tdep.h (sol2_core_pid_to_str): Declare.
1846 * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
1847 * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
1848 * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
1849 * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
1853 * exec.c (exec_file_attach): Fix comment.
1857 Silence a few -Wmissing-prototypes warnings.
1860 * alpha-linux-tdep.c (alpha_linux_regset_from_core_section): Make
1862 * alpha-osf1-tdep.c (_initialize_alpha_osf1_tdep): Declare.
1863 * amd64fbsd-tdep.c (amd64fbsd_init_abi): Make it static.
1864 * amd64nbsd-tdep.c (_initialize_amd64nbsd_ndep): Rename to ...
1865 (_initialize_amd64nbsd_tdep): ... this.
1866 * arm-linux-tdep.c (arm_linux_software_single_step): Make it static.
1867 (_initialize_arm_linux_tdep): Declare.
1868 * armbsd-tdep.c (armbsd_fpreg_offset): Make it static.
1869 * armnbsd-tdep.c (_initialize_arm_netbsd_tdep): Declare.
1870 * armobsd-tdep.c (_initialize_armobsd_tdep): Declare.
1871 * avr-tdep.c (avr_return_value): Make it static.
1872 (avr_frame_unwind_cache): Ditto.
1873 * bsd-uthread.c (bsd_uthread_inferior_created): Ditto.
1874 (bsd_uthread_solib_loaded): Ditto.
1875 (bsd_uthread_solib_unloaded): Ditto.
1876 (bsd_uthread_target): Ditto.
1877 (_initialize_bsd_uthread): Declare.
1878 * cris-tdep.c (crisv32_single_step_through_delay): Make it static.
1879 (cris_frame_unwind_cache): Ditto.
1880 * frv-tdep.c (frv_return_value): Ditto.
1881 * h8300-tdep.c (h8300_use_struct_convention): Ditto.
1882 (h8300h_use_struct_convention): Ditto.
1883 * hppa-tdep.c (hppa_sign_extend, hppa_low_hppa_sign_extend):
1885 * hppa-tdep.h (hppa_low_sign_extend, hppa_sign_extend): Delete
1887 * hppabsd-tdep.c: Include hppabsd-tdep.h.
1888 (hppabsd_find_global_pointer): Make it static.
1889 * hppabsd-tdep.h: New.
1890 * hppanbsd-tdep.c: Include hppabsd-tdep.h.
1891 (hppabsd_init_abi): Remove declaration.
1892 (_initialize_hppabsd_tdep): Remove declaration.
1893 (_initialize_hppanbsd_tdep): Declare.
1894 * hppaobsd-tdep.c: Include hppabsd-tdep.h.
1895 (hppabsd_init_abi): Delete declaration.
1896 (hppaobsd_init_abi): Make it static.
1897 * i386-nto-tdep.c (_initialize_i386nto_tdep): Declare.
1898 * i386nbsd-tdep.c (_initialize_i386nbsd_tdep): Declare.
1899 * ia64-linux-tdep.c (_initialize_ia64_linux_tdep): Declare.
1900 * ia64-tdep.c (ia64_register_reggroup_p): Make it static.
1901 * iq2000-tdep.c (_initialize_iq2000_tdep): Declare.
1902 * m32c-tdep.c (m32c_register_reggroup_p): Make it static.
1903 (m32c_analyze_prologue, m32c_virtual_frame_pointer): Ditto.
1904 (_initialize_m32c_tdep): Declare.
1905 * m32r-rom.c (_initialize_m32r_rom): Declare.
1906 * m32r-tdep.c (m32r_skip_prologue): Make it static.
1907 (m32r_return_value): Ditto.
1908 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Make it static.
1909 (m68hc11_return_value): Ditto.
1910 * m68klinux-tdep.c (_initialize_m68k_linux_tdep): Declare.
1911 * m88k-tdep.c (m88k_frame_cache): Make it static.
1912 * mep-tdep.c (mep_gdb_print_insn): Ditto.
1913 (mep_return_value): Ditto.
1914 (_initialize_mep_tdep): Declare.
1915 * mips-irix-tdep.c (_initialize_mips_irix_tdep): Declare.
1916 * mips-linux-tdep.c (supply_64bit_reg): Make it static.
1917 (mips_linux_syscall_next_pc): Ditto.
1918 (_initialize_mips_linux_tdep): Declare.
1919 * mips-tdep.c (mips_single_step_through_delay): Make it static.
1920 * mipsnbsd-tdep.c (_initialize_mipsnbsd_tdep): Declare.
1921 * mn10300-linux-tdep.c (_initialize_mn10300_linux_tdep): Declare.
1922 * mn10300-tdep.c (_initialize_mn10300_tdep): Declare.
1923 * mt-tdep.c (_initialize_mt_tdep): Declare.
1924 * nbsd-tdep.c: Include nbsd-tdep.h.
1925 * nto-tdep.c (find_load_phdr): Make it static.
1926 (_initialize_nto_tdep): Declare.
1927 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Make it
1929 (_initialize_ppc_linux_tdep): Declare.
1930 * remote-m32r-sdi.c (m32r_can_use_hw_watchpoint)
1931 (m32r_insert_watchpoint, m32r_remove_watchpoint)
1932 (m32r_stopped_data_address, m32r_stopped_by_watchpoint): Make
1934 * rs6000-aix-tdep.c (_initialize_rs6000_aix_tdep): Declare.
1935 * rs6000-nat.c: Include xcoffread.h.
1936 (find_toc_address): Don't extern declare get_toc_offset. Adjust
1937 to call xcoff_get_to_offset.
1938 * rs6000-tdep.c (ppc_vsx_support_p, ppc_displaced_step_fixup)
1939 (rs6000_skip_main_prologue, rs6000_in_solib_return_trampoline)
1940 (rs6000_skip_trampoline_code): Make static.
1941 * s390-tdep.c (s390_regset_from_core_section): Ditto.
1942 * sh-tdep.c (sh_register_reggroup_p): Ditto.
1943 * shnbsd-tdep.c (shnbsd_regset_from_core_section): Ditto.
1944 (_initialize_shnbsd_tdep): Declare.
1945 * solib-frv.c (displacement_from_map): Make static.
1946 (_initialize_frv_solib): Declare.
1947 * solib-irix.c (fetch_lm_info): Make static.
1948 (_initialize_irix_solib): Declare.
1949 * solib-som.c: Include solib-som.h.
1950 (som_solib_select): Line break.
1951 * sparc-tdep.c (sparc_regset_from_core_section): Make static.
1952 * sparcnbsd-tdep.c (_initialize_sparnbsd_tdep): Rename to ...
1953 (_initialize_sparcnbsd_tdep): ... this.
1954 * spu-tdep.c (spu_software_single_step): Make it static.
1955 (_initialize_spu_tdep): Declare.
1956 * vax-tdep.c (vax_frame_cache): Make it static.
1957 * xcoffread.c: Include xcoffread.h.
1958 (get_toc_offset): Rename to ...
1959 (xcoff_get_toc_offset): ... this.
1960 (_initialize_xcoffread): Declare.
1962 * xtensa-linux-tdep.c (_initialize_xtensa_linux_tdep): Declare.
1963 * xtensa-tdep.c (xtensa_skip_prologue, xtensa_derive_tdep): Make
1965 (_initialize_xtensa_tdep): Declare.
1969 Silence a few -Wmissing-prototypes warnings.
1972 * amd64-nat.c: Include "amd64-nat.h".
1973 * fork-child.c (_initialize_fork_child): Ditto.
1974 * gcore.c (_initialize_gcore): Ditto.
1975 * inf-ptrace.c: Include "inf-ptrace.h".
1976 (inf_ptrace_store_registers): Make it static.
1977 * linux-nat.c (linux_nat_terminal_ours): Make it static.
1978 (_initialize_linux_nat): Declare before definition.
1979 * linux-tdep.c: Include "linux-tdep.h".
1980 * linux-thread-db.c (_initialize_thread_db): Declare before
1982 * proc-service.c (_initialize_proc_service): Ditto.
1983 * remote.c (remote_send_printf): Make it static.
1984 * solib.c: Include "solib.h".
1985 * symfile-mem.c (_initialize_symfile_mem): Declare before
1987 * ada-lang.c (ada_la_decode, ada_match_name)
1988 (ada_suppress_symbol_printing, ada_is_array_type)
1989 (ada_value_ptr_subscript, ada_array_length)
1990 (ada_to_static_fixed_value): Make them static.
1991 (_initialize_ada_language): Declare before definition.
1992 * ada-tasks.c (ada_get_task_number, ada_get_environment_task)
1993 (ada_task_list_changed, ada_new_objfile_observer): Make them
1995 (_initialize_tasks): Declare before definition.
1996 * addrmap.c (_initialize_addrmap): Declare before definition.
1997 * auxv.c (default_auxv_parse): Make it static.
1998 * bfd-target.c (target_bfd_xfer_partial, target_bfd_xclose): Make
2000 * breakpoint.c (remove_sal): Add line break.
2001 (expand_line_sal_maybe): Make it static.
2002 * cp-name-parser.y: Include "cp-support.h".
2003 * cp-valprint.c (cp_find_class_member): Make it static.
2004 * eval.c (value_f90_subarray): Ditto.
2005 * exceptions.c (print_any_exception): Ditto.
2006 * findcmd.c (_initialize_mem_search): Declare before definition.
2007 * frame.c (frame_observer_target_changed): Make it static.
2008 * gnu-v3-abi.c (gnuv3_find_method_in): Make it static.
2009 * inf-child.c: Include "inf-child.h".
2010 * inferior.h (valid_inferior_id): Rename to ...
2011 (valid_gdb_inferior_id): ... this.
2012 * infrun.c (infrun_thread_stop_requested, siginfo_make_value):
2014 * jv-lang.c (java_language_arch_info): Make it static.
2015 * m2-typeprint.c (m2_get_discrete_bounds): Ditto.
2016 * osdata.c (info_osdata_command): Make it static.
2017 * regcache.c (regcache_observer_target_changed): Make it static.
2018 * reverse.c (_initialize_reverse): Declare before definition.
2019 * stabsread.c (cleanup_undefined_types_noname)
2020 (cleanup_undefined_types_1): Make them static.
2021 * symfile.c (place_section): Make it static.
2022 * symtab.c (find_pc_sect_psymtab_closer): Make it static.
2023 * target-descriptions.c (_initialize_target_descriptions): Declare
2025 * target.c (default_get_ada_task_ptid, find_default_can_async_p)
2026 (find_default_is_async_p, find_default_supports_non_stop): Make
2028 (target_supports_non_stop): Add prototype.
2029 (dummy_pid_to_str): Make it static.
2030 * utils.c (_initialize_utils): Declare before definition.
2031 * ada-exp.y (_initialize_ada_exp): Declare before definition.
2032 * solib-svr4.c (HAS_LM_DYNAMIC_FROM_LINK_MAP): Add a prototype.
2033 * target.h (struct target_ops): Add a prototype to the
2034 to_can_execute_reverse callback.
2035 * macroscope.c (_initialize_macroscope): Declare before definition.
2036 * cp-namespace.c (_initialize_cp_namespace): Declare before definition.
2037 * python/python.c (_initialize_python): Declare before definition.
2038 * tui/tui-command.c: Include "tui/tui-command.h".
2039 * tui/tui-data.c (init_content_element, init_win_info): Make them
2041 * tui/tui-disasm.c: Include "tui/tui-disasm.h".
2042 * tui/tui-interp.c (_initialize_tui_interp): Declare before
2044 * tui/tui-layout.c: Include "tui/tui-layout.h".
2045 (_initialize_tui_layout): Declare before definition.
2046 * tui/tui-regs.c: Include "tui/tui-regs.h".
2047 (tui_display_reg_element_at_line): Make it static.
2048 (_initialize_tui_regs): Declare before definition.
2049 * tui/tui-stack.c (_initialize_tui_stack): Declare before
2051 * tui/tui-win.c: Include "tui/tui-win.h".
2052 (_initialize_tui_win): Declare before definition.
2053 (tui_sigwinch_handler): Make it static. Wrap in ifdef SIGWINCH.
2054 * tui/tui-win.h (tui_sigwinch_handler): Delete declaration.
2055 (tui_get_cmd_list): Add a prototype.
2056 * tui/tui-windata.c: Include tui-windata.h.
2057 * tui/tui-wingeneral.c (box_win): Make it static.
2058 * cli/cli-logging.c (show_logging_command): Make it static.
2059 (_initialize_cli_logging): Declare before definition.
2060 * mi/mi-common.c (_initialize_gdb_mi_common): Declare before
2065 Extend use of i386_use_watchpoints to all i386 native files
2066 using hardware watchpoints.
2067 * go32-nat.c (init_go32_ops): Call i386_use_watchpoints.
2068 * i386fbsd-nat.c (_initialize_i386fbsd_nat): Ditto.
2069 * windows-nat.c (init_windows_ops): Ditto.
2070 * config/i386/nm-cygwin.h: Define I386_WATCHPOINTS_IN_TARGET_VECTOR.
2071 * config/i386/nm-cygwin64.h: Ditto.
2072 * config/i386/nm-fbsd.h: Ditto.
2073 * config/i386/nm-go32.h: Ditto.
2077 * ada-typeprint.c (ada_typedef_print): Remove. Unused.
2081 * mi/mi-interp.c (mi_solib_loaded, mi_solib_unloaded): New.
2082 (mi_interpreter_init): Register the above.
2083 * solib.c (clear_solib): Notify solib unload.
2084 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
2085 disable breakpoints on a.out targets.
2089 * observer.c (observer_test_first_notification_function)
2090 (observer_test_second_notification_function)
2091 (observer_test_third_notification_function): Adjust prototype.
2095 * Makefile.in (ALL_64_TARGET_OBS): Add amd64-dicos-tdep.o.
2096 (ALL_TARGET_OBS): Add dicos-tdep.o.
2097 (ALLDEPFILES): Add amd64-dicos-tdep.c and dicos-tdep.c.
2098 * configure.tgt (i[34567]86-*-dicos*): Add dicos-tdep.o to
2100 (x86_64-*-dicos*): Add dicos-tdep.o and amd64-dicos-tdep.o to
2102 * dicos-tdep.h, dicos-tdep.c: New.
2103 * amd64-dicos-tdep.c: New.
2104 * i386-dicos-tdep.c: Don't include solib.h, solib-target.h or
2105 inferior.h. Include dicos-tdep.h.
2106 (i386_dicos_init_abi): Call dicos_init_abi.
2107 (i386_dicos_bfd_has_symbol_p): Delete.
2108 (i386_dicos_osabi_sniffer): Use dicos_load_module_p.
2110 * NEWS: Mention x86-64 DICOS target support.
2114 * amd64-tdep.c (amd64_skip_prefixes): Renamed from skip_prefixes.
2115 All callers updated.
2116 (amd64_get_insn_details): Handle more 3-byte opcode insns.
2117 (amd64_breakpoint_p): Delete.
2118 (amd64_displaced_step_fixup): When fixing up after stepping an int3,
2119 don't back up pc to the start of the int3.
2120 * i386-tdep.c: #include opcode/i386.h.
2121 (i386_skip_prefixes): New function.
2122 (i386_absolute_jmp_p): Constify argument.
2123 (i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
2124 (i386_breakpoint_p): Delete.
2125 (i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
2126 When fixing up after stepping an int3, don't back up pc to the start
2131 * corelow.c (core_close): Don't hardcode the core's pid.
2132 (core_open): Find core threads before calling
2133 post_create_inferior.
2134 (add_to_thread_list, get_core_register_section): Take into account
2135 systems where the regset section names encode the pid of the
2138 * gdbarch.sh (core_reg_section_encodes_pid): New gdbarch setting.
2139 * gdbarch.h, gdbarch.c: Regenerate.
2141 * amd64-sol2-tdep.c (amd64_sol2_init_abi): Set it.
2142 * i386-sol2-tdep.c (i386_sol2_init_abi): Set it.
2143 * sparc-sol2-tdep.c (sparc32_sol2_init_abi): Set it.
2144 * sparc64-sol2-tdep.c (sparc64_sol2_init_abi): Set it.
2148 Include frame information for *stopped due to CLI commands.
2150 * ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
2151 * infcmd.c (finish_command_continuation): Pass '1' for
2152 'print_frame' parameter to the observer.
2153 * infrun.c (normal_stop): Don't print mi-specific information
2154 here. Pass 'stop_print_frame' to the 'print_frame' parameter
2156 * mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
2157 If we need to print frame, and current uiout is not the MI one,
2162 * xtensa-tdep.c (call0_analyze_prologue): Delete BSZ macro.
2163 Replace BSZ macro uses by XTENSA_ISA_BSZ macro.
2168 * dwarf2read.c (process_die <DW_TAG_module>, read_module)
2169 (scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
2173 * dwarf2read.c (read_base_type): Set code to TYPE_CODE_CHAR
2174 for DW_ATE_signed_char and DW_ATE_unsigned_char
2175 for pascal language.
2180 Avoid NULL dereference.
2181 * stack.c (return_command): Guard use of SYMBOL_TYPE (thisfun).
2182 New variable func_type.
2186 * gdbarch.c: Regenerate.
2190 * p-lang.c (is_pascal_string_type): Fix comment.
2191 Determine exact size of char elements for GPC
2193 (pascal_printstr): Handle char width of 2 or 4.
2194 * p-valprint.c (pascal_val_print): Handle char
2199 * dwarf2read.c (dwarf2_build_psymtabs_hard): Move lowpc and highpc
2200 inside the loop. Only call addrmap_set_empty if the compilation unit
2201 had DW_AT_high_pc and DW_AT_low_pc. Update call to
2202 scan_partial_symbols.
2203 (scan_partial_symbols): Take NEED_PC argument and pass it along with
2205 (add_partial_namespace): Take NEED_PC argument and pass it through.
2206 (add_partial_subprogram): Take NEED_PC argument. Update the addrmap
2211 * NEWS: Mention inspecting extra signal information, $_siginfo,
2212 and the qXfer:siginfo:read and qXfer:siginfo:write packets.
2216 * linux-nat.c (PTRACE_SETSIGINFO): Define if PTRACE_GETSIGINFO
2221 * amd64-linux-nat.c (compat_int_t, compat_uptr_t, compat_time_t)
2222 (compat_timer_t, compat_clock_t, struct compat_timeval)
2223 (compat_sigval_t, compat_siginfo_t): New types.
2224 (cpt_si_pid, cpt_si_uid, cpt_si_timerid, cpt_si_overrun)
2225 (cpt_si_status, cpt_si_utime, cpt_si_stime, cpt_si_ptr)
2226 (cpt_si_addr, cpt_si_band, cpt_si_fd): New defines.
2227 (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
2228 (amd64_linux_siginfo_fixup): New.
2229 * linux-nat.c (linux_nat_siginfo_fixup): New.
2230 (siginfo_fixup): New.
2231 (linux_xfer_siginfo): Use siginfo_fixup to convert between the
2232 siginfo layout expected by ptrace and the siginfo layout of the
2234 (linux_nat_set_siginfo_fixup): New.
2235 * linux-nat.h (linux_nat_set_siginfo_fixup): Declare.
2239 * target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
2240 * infrun.c (siginfo_value_read, siginfo_value_write): New.
2241 (siginfo_value_funcs): New.
2242 (siginfo_make_value): New.
2243 (_initialize_infrun): Create the $_siginfo convenience variable.
2244 * gdbtypes.h (append_composite_type_field_aligned): Declare.
2245 * gdbtypes.c (append_composite_type_field): Rename to...
2246 (append_composite_type_field_aligned): ... this. Add ALIGNMENT
2247 argument. Handle it.
2248 (append_composite_type_field): Rewrite on top of
2249 append_composite_type_field_aligned.
2250 * value.h (internalvar_make_value): New typedef.
2251 (struct internalvar) <make_value>: New field.
2252 (create_internalvar_type_lazy): Declare.
2253 * value.c (create_internalvar): Clear make_value.
2254 (create_internalvar_type_lazy): New.
2255 (value_of_internalvar): If make_value is set use it.
2256 (preserve_values): Skip internal variables that don't have a
2258 * gdbarch.sh (get_siginfo_type): New.
2259 * gdbarch.h, gdbarch.c: Regenerate.
2261 * linux-tdep.h, linux-tdep.c: New.
2262 * amd64-linux-tdep.c: Include "linux-tdep.h".
2263 (amd64_linux_init_abi): Register linux_get_siginfo_type and
2264 linux_get_siginfo_mapper.
2265 * i386-linux-tdep.c: Include "linux-tdep.h".
2266 (i386_linux_init_abi): Register linux_get_siginfo_type and
2267 linux_get_siginfo_mapper.
2268 * arm-linux-tdep.c: Include "linux-tdep.h".
2269 (i386_linux_init_abi): Register linux_get_siginfo_type and
2270 linux_get_siginfo_mapper.
2272 * linux-nat.c (linux_xfer_siginfo): New.
2273 (linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
2274 * remote.c (PACKET_qXfer_siginfo_read)
2275 (PACKET_qXfer_siginfo_write): New.
2276 (feature remote_protocol_features): Add "qXfer:siginfo:read" and
2277 "qXfer:siginfo:write" features.
2278 (remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
2279 (_initialize_remote): Add "set/show remote read-siginfo-object"
2280 and "set/show remote write-siginfo-object" commands.
2282 * Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
2283 (HFILES_NO_SRCDIR): Add linux-tdep.h.
2284 (ALLDEPFILES): Add linux-tdep.c.
2286 * configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
2287 (i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
2295 * defs.h (enum lval_type): New value: lval_computed.
2296 * value.h (struct lval_funcs): New type.
2297 (allocate_computed_value, value_computed_funcs)
2298 (value_computed_closure): New declarations.
2299 * value.c (struct value): Add a structure to the location union
2300 for computed lvalues, containing 'funcs' and 'closure' members.
2301 (allocate_computed_value, value_computed_funcs)
2302 (value_computed_closure): New functions.
2303 (value_free): For computed lvalues, call the closure's
2304 'free_closure' function before freeing the value itself.
2305 (value_copy): If we're copying an lval_computed value, call the
2306 closure's 'copy_closure' function.
2307 (set_value_component_location): If the original value is a
2308 computed lvalue, then call the closure's 'copy_closure' function.
2309 (value_of_internalvar): If an internal variable's value is a
2310 computed lvalue, make retrieving its value produce an equivalent
2312 * valops.c (value_fetch_lazy): Unlazy computed lvalues by calling
2313 their read function.
2314 (value_assign): Assign to computed lvalues by calling their write
2319 * linux-nat.c (linux_nat_wait): Adjust.
2320 (linux_nat_pid_to_str): Adjust. Remove call to thread_db_init.
2321 * linux-nat.h (thread_db_init): Delete declaration.
2322 * linux-thread-db.c (target_beneath): Delete.
2323 (thread_db_init): Delete.
2324 (thread_db_detach): Use find_target_beneath.
2325 (thread_db_wait): Adjust interface. Use find_target_beneath.
2326 (thread_db_mourn_inferior): Use find_target_beneath.
2327 (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
2328 (thread_db_async_mask): Delete.
2329 (thread_db_pid_to_str): Adjust interface. Use
2330 find_target_beneath.
2331 (thread_db_get_thread_local_address): Adjust interface. Use
2332 find_target_beneath.
2333 (init_thread_db_ops): Delete references to delete functions.
2334 * target.c (update_current_target): Don't inherit or default
2335 to_wait. Don't inherit to_pid_to_str and
2336 to_get_thread_local_address.
2337 (target_translate_tls_address): Look for a pushed target that
2338 implements to_get_thread_local_address, and use it instead of
2339 checking for target_get_thread_local_address_p.
2340 (target_wait, target_pid_to_str): Reimplement as functions.
2341 (dummy_pid_to_str): New.
2342 (init_dummy_target): Register it.
2343 (debug_to_wait): Delete.
2344 * target.h (struct target_ops): Make to_wait, to_pid_to_str and
2345 to_get_thread_local_address accept a pointer to struct target_ops.
2346 (target_wait): Delete macro, and declare as function.
2347 (target_pid_to_str): Likewise.
2348 (target_get_thread_local_address)
2349 (target_get_thread_local_address_p): Delete.
2350 (noprocess): Add NORETURN and ATTR_NORETURN tags.
2351 * inf-ptrace.c (inf_ptrace_wait): Adjust.
2352 (inf_ptrace_pid_to_str): New.
2353 (inf_ptrace_target): Use inf_ptrace_pid_to_str.
2354 * aix-thread.c (aix_thread_wait, aix_thread_pid_to_str): Adjust.
2355 * bsd-kvm.c (bsd_kvm_pid_to_str): Adjust.
2356 * bsd-uthread.c (bsd_uthread_wait, bsd_uthread_pid_to_str):
2358 * corelow.c (core_pid_to_str): Adjust.
2359 * darwin-nat.c (darwin_wait, darwin_pid_to_str): Adjust.
2360 * dec-thread.c (dec_thread_wait, dec_thread_pid_to_str): Adjust.
2361 * gnu-nat.c (gnu_wait, gnu_pid_to_str): Adjust.
2362 * go32-nat.c (go32_wait, go32_pid_to_str): Adjust.
2363 * hpux-thread.c (hpux_thread_wait): Adjust.
2364 * inf-ttrace.c (inf_ttrace_wait, inf_ttrace_pid_to_str): Adjust.
2365 * monitor.c (monitor_wait, monitor_pid_to_str): Adjust.
2366 * nto-procfs.c (procfs_wait, procfs_pid_to_str): Adjust.
2367 * procfs.c (procfs_pid_to_str): Adjust.
2368 * remote-m32r-sdi.c (m32r_wait, m32r_pid_to_str): Adjust.
2369 * remote-mips.c (mips_wait): Adjust.
2370 * remote-sim.c (gdbsim_wait, gdbsim_pid_to_str): Adjust.
2371 * remote.c (remote_wait, remote_pid_to_str)
2372 (remote_get_thread_local_address): Adjust.
2373 * rs6000-nat.c (rs6000_wait): Adjust.
2374 * sol-thread.c (procfs_pid_to_str): Adjust declaration.
2375 (sol_thread_wait, solaris_pid_to_str): Adjust.
2376 * spu-linux-nat.c (spu_child_wait): Adjust.
2377 * windows-nat.c (windows_wait, windows_pid_to_str): Adjust.
2381 * Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
2382 (SUBDIR_PYTHON_SRCS): Add python-cmd.c.
2383 (python-cmd.o): New target.
2384 * cli/cli-decode.c (set_cmd_completer): Add self parameter to
2385 completer prototype.
2386 (add_cmd): Initialize destroyer member of cmd_list_element. Use
2387 make_symbol_completion_list_fn as completer.
2388 (delete_cmd): Call destroyer if one is set.
2389 * cli/cli-decode.h (cmd_list_element): Add cmd parameter to
2390 completer member. Add destroyer member.
2391 (set_cmd_completer): Add self parameter to
2392 completer prototype.
2393 * command.h (set_cmd_completer): Add cmd parameter to
2394 completer prototype.
2395 * completer.c (noop_completer, filename_completer,
2396 location_completer, expression_completer, command_completer): Adapt
2397 to new completer prototype.
2398 (complete_line_internal): Pass new parameter to completer function.
2399 * completer.h (noop_completer, filename_completer,
2400 location_completer, expression_completer, command_completer): Adapt
2401 prototypes to new completer prototype.
2402 * interps.c (interpreter_completer): Adapt to new completer
2404 * python/python-cmd.c: New file.
2405 * python/python-internal.h (gdbpy_initialize_commands): Add
2407 (gdbpy_doc_cst): Add forward declaration.
2408 * python/python.c (gdbpy_doc_cst): Declare.
2409 (_initialize_python): Call gdbpy_initialize_commands. Initialize
2411 * symtab.c (make_symbol_completion_list_fn): New function.
2412 * symtab.h (make_symbol_completion_list_fn): Add prototype.
2416 * target.c (target_get_osdata): Check for equal or higher than
2417 process_stratum, not dummy_stratum.
2421 * remote.c (extended_remote_can_run): Delete.
2422 (init_remote_ops): Don't register it.
2423 * target.c (target_get_osdata): Don't check for target_can_run.
2424 Instead any target that has already been pushed, otherwise
2425 fallback to the default run target.
2429 * target.c (target_create_inferior, target_detach)
2430 (target_mourn_inferior, target_attach, target_close): Do target
2432 (debug_to_attach, debug_to_detach, debug_to_create_inferior)
2433 (debug_to_mourn_inferior, debug_to_close): Delete.
2434 (setup_target_debug): Adjust.
2438 * target.h (target_stopped_data_address_p): Delete declaration,
2439 and don't define as macro.
2440 * target.c (target_stopped_data_address_p): Delete.
2445 * python/python-utils.c (target_string_to_unicode): New function.
2446 * python/python-internal.h (target_string_to_unicode): New prototype.
2447 * python/python-value.c (valpy_string): New function.
2448 (value_object_methods): Add `string' entry.
2452 * target.h (target_tid_to_str): Delete.
2453 * thread.c (print_thread_info, thread_apply_all_command)
2454 (thread_apply_command, thread_command, do_captured_thread_select):
2455 Use target_pid_to_str instead of target_tid_to_str.
2456 * linux-fork.c (delete_fork_command): Likewise.
2460 * frame.c (has_stack_frames): Make public.
2461 (get_prev_frame): Don't allow a NULL this_frame anymore.
2462 * frame.h (has_stack_frames): Declare.
2463 * varobj.c (find_frame_addr_in_frame_chain): Don't ever pass NULL
2464 to get_prev_frame, instead start at get_current_frame.
2465 (varobj_create): Check has_stack_frames before getting any frame;
2466 eliminate one usage of deprecated_safe_get_selected_frame.
2471 * python/python.c (GdbMethods): Move to bottom of file.
2472 (get_parameter, execute_gdb_command, gdbpy_write,
2473 gdbpy_flush): Remove forward declarations.
2474 (eval_python_from_control_command): Fix error checking of function
2475 PyRun_SimpleString. Fix error string.
2476 (python_command): Likewise.
2477 (execute_gdb_command): Added from_tty argument.
2481 * language.h (language_dfn): Add la_get_string member.
2482 (LA_GET_STRING): New macro.
2483 (default_get_string): New prototype.
2484 * language.c (default_get_string): New function.
2485 (unknown_language_defn, auto_language_defn, local_language_defn): Use
2486 default_get_string for la_get_string.
2487 * c-lang.c (c_get_string): New function.
2488 (c_language_defn, cplus_language_defn, asm_language_defn): Use
2489 c_get_string for la_get_string.
2490 (minimal_language_defn): Likewise
2491 * ada-lang.c (ada_language_defn): Likewise.
2492 * f-lang.c (f_language_defn): Use default_get_string for
2494 * jv-lang.c (java_language_defn): Likewise.
2495 * m2-lang.c (m2_language_defn): Likewise.
2496 * objc-lang.c (objc_language_defn): Likewise.
2497 * p-lang.c (p_language_defn): Likewise.
2498 * scm-lang.c (scm_language_defn): Likewise.
2499 * typeprint.c (type_to_string): New function.
2500 * value.h (type_to_string): New prototype.
2501 * valprint.c (val_print_string): Factor out code for reading string
2502 from the inferior into its own function. Put 2 spaces after period
2504 (read_string): New function.
2505 * valprint.h (read_string): New prototype.
2510 PR breakpoints/8079:
2511 * breakpoint.c (print_one_breakpoint): Use exp_string field
2512 to display expression of watchpoints.
2513 (mention): Likewise.
2514 (watch_command_1): Remove trailing whitespace from expression.
2515 * printcmd.c (struct display) <exp_string>: New field.
2516 (display_command): Set exp_string.
2517 (free_display): Free exp_string.
2518 (clear_displays): Use free_display.
2519 (do_one_display): Print exp_string.
2520 (display_info): Likewise.
2526 * python/python-internal.h (gdbpy_get_value_from_history): Rename
2527 prototype to gdbpy_history.
2528 (gdbpy_is_string): Declare.
2529 (python_string_to_host_string): Declare.
2530 * python/python-utils.c (gdbpy_is_string): New function.
2531 (unicode_to_encoded_string): New function.
2532 (unicode_to_target_string): Use it.
2533 (python_string_to_host_string): New function.
2534 * python/python-value.c (valpy_address): New function.
2535 (convert_value_from_python): Use gdbpy_is_string. Change to throw
2536 Python exception instead of a GDB exception on error. Properly check
2538 (valpy_getitem): Convert field name to host string. Handle array
2539 accesses. Adapt to new behaviour of convert_value_from_python.
2540 (valpy_new): Adapt to new behaviour of convert_value_from_python.
2541 (enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
2542 VALPY_BITXOR, VALPY_BITOR>: New constants.
2543 (valpy_binop): Update. Adapt to new behaviour of
2544 convert_value_from_python.
2545 (valpy_invert): New function.
2546 (valpy_lsh): Likewise.
2547 (valpy_rsh): Likewise.
2548 (valpy_and): Likewise.
2549 (valpy_or): Likewise.
2550 (valpy_xor): Likewise.
2551 (valpy_richcompare): Call convert_value_from_python instead of doing
2553 (is_intlike, valpy_int, valpy_long, valpy_float): New functions.
2554 (gdbpy_get_value_from_history): Rename
2555 function to gdbpy_history.
2556 (gdbpy_initialize_values): Don't set tp_new.
2557 (value_object_type): Add valpy_new.
2558 (value_object_methods): Add `address' entry.
2559 (value_object_as_number): Update for new methods.
2560 * python/python.c (GdbMethods): Rename entry from
2561 `get_value_from_history' to `history'.
2565 * ada-lang.c (ada_template_to_fixed_record_type_1): Check size
2566 of type to guard against a crash.
2570 * value.c (value_from_contents_and_address): Always return
2571 a lval_memory value, even if address is null.
2575 * i386-darwin-tdep.c (i386_darwin_sigcontext_addr): New function.
2576 (amd64_darwin_sigcontext_addr): Ditto.
2577 (darwin_dwarf_signal_frame_p): Ditto.
2578 (i386_darwin_init_abi): Handle signal frames, use the const for
2580 (x86_darwin_init_abi_64): Ditto.
2584 * i386-tdep.c (i386_sigtramp_p): Make it public.
2585 * i386-tdep.h (i386_sigtramp_p): Declare.
2589 * machoread.c (macho_symfile_read): Read minsymtab also from
2591 (macho_symfile_read): Try to read dwarf2 frame info from main
2592 object file, but not from OSO files.
2593 (macho_symfile_offsets): Update section names for latest BFD
2595 * i386-darwin-tdep.c (i386_darwin_init_abi): Call set_solib_ops.
2596 (x86_darwin_init_abi_64): Ditto.
2597 * solib-darwin.c: New file.
2598 * solib-darwin.h: New file.
2599 * configure.tgt: Add solib.o solib-darwin.o for Darwin.
2603 * solist.h (struct target_so_ops): Comment fallback behavior for
2608 * completer.c (add_struct_fields): Check type_name against NULL
2613 * MAINTAINERS: Update Elena's email address.
2617 * breakpoint (update_watchpoint): Minor comment adjustment.
2622 * completer.c (count_struct_fields): Count method names.
2623 (add_struct_fields): Add matching method names.
2627 * configure.ac (gdbkt): Check both no_tcl/no_tk first, before
2628 doing any further tcl/tk configury. Don't configure gdbtk if
2629 tcl or tk check fails.
2630 * aclocal.m4: Regenerate.
2631 * configure: Regenerate.
2636 * valops.c (find_overload_match): Follow typedefs before taking
2637 address of object argument.
2641 * target.h (target_waitstatus_to_string): Declare.
2642 * target.c (target_waitstatus_to_string): New function. Copied from
2643 debug_to_wait. Add missing entries for TARGET_WAITKIND_SYSCALL_ENTRY,
2644 TARGET_WAITKIND_SYSCALL_RETURN, TARGET_WAITKIND_IGNORE,
2645 TARGET_WAITKIND_NO_HISTORY.
2646 (debug_to_wait): Call it.
2647 * infrun.c (wait_for_inferior): If debug_infrun, print result of
2649 (fetch_inferior_event): Ditto.
2653 * Makefile.in (HFILES_NO_SRCDIR): Remove i386-cygwin-tdep.h.
2658 * thread.c (do_captured_list_thread_ids): Report the current
2663 * breakpoint.c (create_breakpoint, create_breakpoints)
2664 (break_command_really, set_breakpoint): New parameter enabled.
2665 (create_breakpoint, break_command_really): Make breakpoint
2666 disabled if so requested.
2667 * breakpoint.h (set_breakpoint): New parameter enabled.
2668 * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
2672 * amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
2673 (amd64_displaced_step_fixup): Declare.
2674 * amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
2675 (amd64_arch_regmap): Move out of amd64_analyze_stack_align
2676 and make static global.
2677 (amd64_arch_regmap_len): New static global.
2678 (amd64_arch_reg_to_regnum): New function.
2679 (struct amd64_insn): New struct.
2680 (struct displaced_step_closure): New struct.
2681 (onebyte_has_modrm,twobyte_has_modrm): New static globals.
2682 (rex_prefix_p,skip_prefixes)
2683 (amd64_insn_length_fprintf,amd64_insn_length_init_dis)
2684 (amd64_insn_length,amd64_get_unused_input_int_reg)
2685 (amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
2686 (amd64_displaced_step_copy_insn)
2687 (amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
2688 (amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
2689 (amd64_displaced_step_fixup): New functions.
2690 * amd64-linux-tdep.c: #include arch-utils.h.
2691 (amd64_linux_init_abi): Install displaced stepping support.
2696 * configure, config.in: Regenerated.
2697 * configure.ac: Add --with-system-gdbinit.
2698 * main.c (get_init_files): New.
2699 (captured_main): Use get_init_files. Load system gdbinit before
2701 (print_gdb_help): Print location of init files.
2705 * corefile.c (generic_search): Delete disabled code.
2706 * gdbcore.h (generic_search): Delete declaration.
2710 * linux-nat.c (linux_child_follow_fork): Copy attach_flag from the
2711 parent to the child.
2712 * inf-ttrace.c (inf_ttrace_follow_fork): Likewise.
2713 * inf-ptrace.c (inf_ptrace_follow_fork): Likewise. Use
2714 remove_breakpoints to remove breakpoints from the parent.
2718 PR backtrace/9458, PR backtrace/8864:
2719 * frame.c (create_new_frame): Update the frame's cached PC before
2720 finding its unwinder. Use frame_id_build to build the new frame's
2722 * stack.c (parse_frame_specification_1): Correct setting ``addrs''
2723 array values from the ``args'' array values.
2727 * gdbtypes.c (alloc_type, alloc_type_instance, create_range_type)
2728 (create_array_type, create_set_type, init_flags_type)
2729 (copy_type_recursive): Replace pairs of calls to XALLOC and memset
2730 with a call to XZALLOC or XCALLOC, and pairs of calls to
2731 obstack_alloc and memset with a call to OBSTACK_ZALLOC.
2735 Add "maint set|show internal-error|internal-warning quit|corefile
2736 ask|yes|no" commands.
2739 * utils.c (internal_problem_ask, internal_problem_yes)
2740 (internal_problem_no, internal_problem_modes): New.
2741 (struct internal_problem): Remove FIXME. Make should_quit and
2742 should_dump_core types to char *.
2743 (internal_vproblem, internal_error_problem)
2744 (internal_warning_problem): Adjust.
2745 (set_internal_problem_cmd, show_internal_problem_cmd): New dummy
2747 (add_internal_problem_command): New.
2748 (_initialize_utils): New.
2752 * infcmd.c (program_info): Use paddress instead of casting stop_pc
2757 * infrun.c (normal_stop): Don't call
2758 deprecated_update_frame_pc_hack.
2759 * frame.c (deprecated_update_frame_pc_hack)
2760 (deprecated_update_frame_base_hack): Delete, and ...
2761 (create_new_frame): ... inline here.
2762 * frame.h (deprecated_update_frame_pc_hack)
2763 (deprecated_update_frame_base_hack): Delete declarations.
2767 * cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
2768 * cli/cli-setshow.c (do_setshow_command): Handle it.
2769 * command.h (enum var_types): Add var_zuinteger.
2770 (add_setshow_zuinteger_cmd): Declare.
2772 * valprint.c (_initialize_valprint): Change the set input-radix
2773 and set output-radix commands to zuinteger type.
2778 * infrun.c (normal_stop): Tag threads as stopped, and run the
2779 hook-stop before printing the stack frame.
2784 * gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
2789 * gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
2795 * infcmd.c (signal_command): Do not specify a resume PC.
2799 * dummy-frame.c (dummy_frame): Replace regcache member with
2801 (dummy_frame_push): Replace caller_regcache arg with caller_state.
2802 All callers updated.
2803 (remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
2804 (dummy_frame_pop): Rewrite. Verify requested frame is in the
2805 dummy frame stack. Restore program state.
2806 (cleanup_dummy_frames): Rewrite.
2807 (dummy_frame_sniffer): Update. Make static.
2808 * dummy-frame.h (regcache,frame_info): Delete forward decls.
2809 (inferior_thread_state): New forward decl.
2810 (dummy_frame_push): Update prototype.
2811 * frame.c (frame_pop): dummy_frame_pop now does all the work for
2813 * infcall.c (breakpoint_auto_delete_contents): Delete.
2814 (get_function_name,run_inferior_call): New fns.
2815 (call_function_by_hand): Simplify by moving some code to
2816 get_function_name, run_inferior_call. Inferior function call wrapped
2817 in TRY_CATCH so there's less need for cleanups and all exits from
2818 proceed are handled similarily. Detect program exit.
2819 Detect program stopping in a different thread.
2820 Make error messages more consistent.
2821 * inferior.h (inferior_thread_state): Declare (opaque type).
2822 (save_inferior_thread_state,restore_inferior_thread_state,
2823 make_cleanup_restore_inferior_thread_state,
2824 discard_inferior_thread_state, get_inferior_thread_state_regcache):
2826 (save_inferior_status): Update prototype.
2827 * infrun.c: (normal_stop): When stopped for the completion of an
2828 inferior function call, verify the expected stack frame kind.
2829 (inferior_thread_state): New struct.
2830 (save_inferior_thread_state,restore_inferior_thread_state,
2831 do_restore_inferior_thread_state_cleanup,
2832 make_cleanup_restore_inferior_thread_state,
2833 discard_inferior_thread_state,
2834 get_inferior_thread_state_regcache): New functions.
2835 (inferior_status): Move stop_signal, stop_pc, registers to
2836 inferior_thread_state. Remove restore_stack_info.
2837 (save_inferior_status): Remove arg restore_stack_info.
2838 All callers updated. Remove saving of state now saved by
2839 save_inferior_thread_state.
2840 (restore_inferior_status): Remove restoration of state now done by
2841 restore_inferior_thread_state.
2842 (discard_inferior_status): Remove freeing of registers, now done by
2843 discard_inferior_thread_state.
2847 * tui/tui-disasm.c (tui_vertical_disassem_scroll): Scroll one line
2848 at a time, times NUM_TO_SCROLL.
2849 * tui/tui-winsource.c (tui_horizontal_source_scroll): Don't try to
2850 fetch the selected frame if there is no stack.
2855 * gdbthread.h (finish_thread_state, finish_thread_state_cleanup):
2857 * thread.c (finish_thread_state, finish_thread_state_cleanup): New.
2858 * infrun.c (wait_for_inferior, fetch_inferior_event): If an error
2859 is thrown while handling an event, finish the thread state.
2860 (normal_stop): Use finish_thread_state cleanup.
2861 * infcmd.c (run_command_1): If an error is thrown while starting
2862 the inferior, finish the thread state.
2866 * tui/tui-winsource.c (tui_update_breakpoint_info): In asm layout,
2867 skip breakpoints without a location (pending breakpoints).
2872 * hppa-hpux-tdep.c (hppa_hpux_write_pc): Remove 'return'.
2876 * thread.c (thread_command): Move call to annotate_thread_changed
2878 (do_captured_thread_select): ... here, to avoid printing an
2879 annotation if the thread change generates an exception.
2883 * NEWS: Document x86_64/MinGW as a new native configuration.
2887 * NEWS: Move the documentation of "info os processes" to
2888 the appropriate section (documenting the new commands).
2892 * target.h (target_signal_to_string): Make return type const char *.
2893 (target_signal_to_name): Ditto.
2894 (target_signal_from_name): Make arg const char *.
2895 * infrun.c (sig_print_info): Update.
2896 * signals/signals.c (signals): Make array and struct members const.
2897 (target_signal_to_string): Make return type const char *.
2898 (target_signal_to_name): Ditto.
2899 (target_signal_from_name): Make arg const char *.
2904 * solist.h (struct target_so_ops): New member bfd_open.
2905 (solib_find): Add prototype.
2906 (solib_bfd_fopen): Add prototype.
2907 * solib.c (solib_find, solib_bfd_fopen): New functions, extracted
2908 from solib_bfd_open.
2909 (solib_bfd_open): Use ops->bfd_open override if present. Call
2910 solib_find and solib_bfd_open otherwise.
2912 * objfiles.h (OBJF_KEEPBFD): New define.
2913 * objfiles.c (free_objfile): Do not close BFD if OBJF_KEEPBFD
2914 objfile flag is set.
2915 * solib.c (symbol_add_stub): Do not allocate second BFD for
2916 shared library; use OBJF_KEEPBFD flag on solib objfile.
2920 * frame.c (get_frame_arch): Abort if called with NULL this_frame.
2924 * value.h (address_of_variable): Add prototype.
2925 (locate_var_value): Remove prototype.
2927 * findvar.c (read_var_value): Do not attempt to default frame
2929 (locate_var_value): Remove function.
2930 * valops.c (value_of_variable): Retrieve selected frame for
2931 symbols that require a frame when called with NULL block.
2932 * valops.c (address_of_variable): New function.
2934 * eval.c (evaluate_subexp_for_address): Call address_of_variable
2935 instead of calling locate_var_value.
2936 (evaluate_subexp_with_coercion): Likewise.
2940 * NEWS: Document "define" for prefixed commands.
2941 * cli/cli-cmds.c (show_user): Update calls to show_user_1. Call
2942 show_user_1 for prefix commands.
2943 * cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
2944 * cli/cli-script.c (validate_comname): Rewrite to handle prefix
2945 commands. Return the containing command list.
2946 (define_command, document_command): Update to handle prefix commands.
2947 (show_user_1): Add prefix and name arguments. Handle prefix
2949 * cli/cli-script.h (show_user_1): Update prototype.
2953 * mingw-ser.c (console_select_thread): Add return to make
2955 (pipe_select_thread): Likewise.
2956 (file_select_thread): Likewise.
2960 * mi/mi-main.c (mi_cmd_execute): Clean up parenthesis mess from
2965 * remote.c (extended_remote_mourn_1): Invalidate our notion of
2966 current general thread.
2970 * mi/mi-main.c (mi_cmd_execute): Also allow -list-thread-groups
2971 without a live selected thread.
2975 Update the copyright notice of some of the files I missed
2976 in the previous copyright update.
2980 * windows-nat.c (handle_unload_dll): Use %p to print the DLL
2981 base address instead of casting it to DWORD.
2985 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Do not call get_frame_arch
2986 for NULL frame pointers.
2990 * utils.c (host_address_to_string): Reimplement in a way that
2991 avoids the cast of the address to long.
2995 * mdebugread.c (parse_symbol): Save the symbol private data
2996 using SYMBOL_VALUE_BYTES instead of SYMBOL_VALUE.
2997 (psymtab_to_symtab_1): Likewise.
2998 (parse_procedure): Declare variable "e" only in the scope
2999 where it is used. Extract the symbol private data using
3004 Abstract out common code for copying value locations.
3006 * value.h (set_value_component_location): New declaration.
3007 * value.c (set_value_component_location): New function.
3008 (value_primitive_field): Use it.
3009 * valarith.c (value_subscript, value_subscripted_rvalue): Same.
3010 * valops.c (search_struct_field, value_slice): Same.
3011 * ada-lang.c (coerce_unspec_val_to_type)
3012 (ada_value_primitive_packed_val): Same.
3016 * MAINTAINERS (GLOBAL MAINTAINERS): Add Tom Tromey.
3020 * amd64-windows-nat.c Rename gdb-specific win32_* to windows_*
3022 * i386-cygwin-tdep.c: Ditto.
3023 * i386-windows-nat.c: Ditto.
3024 * windows-nat.h: Ditto.
3025 * windows-tdep.c: Ditto.
3026 * windows-tdep.h: Ditto.
3027 * windows-nat.c: Ditto.
3028 (cygwin_load_start): Redefine as CORE_ADDR.
3029 (cygwin_load_end): Ditto.
3030 (windows_make_so): Coerce result of address arithmetic to uintptr_t
3031 before coercing to CORE_ADDR to avoid a compiler warning.
3032 (handle_exception): Define addr as CORE_ADDR and coerce
3033 ExceptionAddress to uintptr_t before assigining to avoid a compiler
3035 * config/djgpp/fnchange.lst: Add mappings for recently renamed windows
3040 Fix linking with --enable-targets=all:
3041 * Makefile.in (ALL_TARGET_OBS): Add windows-tdep.o.
3042 (HFILES_NO_SRCDIR): Add windows-tdep.h.
3043 (ALLDEPFILES): Add windows-tdep.c.
3047 * win32-nat.h: Delete.
3048 * windows-nat.h: Rename from win32-nat.h.
3049 * win32-nat.c: Delete.
3050 * windows-nat.c: Rename from win32-nat.c.
3051 * win32-termcap.c: Delete.
3052 * windows-termcap.c: Rename from win32-termcap.c.
3053 * amd64-windows-nat.c: Handle rename from win32-nat.h -> windows-nat.h.
3054 * configure.ac: Handle rename from win32-termcap.c ->
3056 * configure: Regenerate.
3057 * gdb_curses.h: Change comment to reflect rename from win32-termcap.c
3058 -> windows-termcap.c.
3059 * i386-cygwin-tdep.c: Handle rename from win32-tdep.h ->
3061 * i386-windows-nat.c: Refect rename from win32-nat.h -> windows-nat.h.
3062 * windows-nat.c: Ditto. Also reflect rename from from win32-tdep.h ->
3064 (win32_make_so): Handle cygwin compiler warning due to change of
3065 load_addr from DWORD to LPVOID.
3066 (handle_load_dll): Use %p in format string to properly print address
3067 and avoid a compiler warning.
3068 (DEBUG_EXCEPTION_SIMPLE): Ditto.
3069 (handle_exception): Ditto.
3070 * windows-tdep.c: Handle rename from win32-tdep.h -> windows-tdep.h.
3071 * config/i386/cygwin.mh: Handle rename from win32-nat.o ->
3073 * config/i386/mingw.mh: Ditto.
3074 * config/i386/mingw64.mh: Ditto.
3078 * f-typeprint.c (f_type_print_varspec_suffix): Convert the autovariable
3079 arrayprint_recurse_level to a parameter. Update all the callers. New
3080 comment at autovariables.
3084 * gdbtypes.c (make_qualified_type, replace_type): Reformat to the GNU
3089 * target.c (target_xfer_partial): Use host_address_to_string to
3090 print the address of readbuf and writebuf. Cast the address of
3091 elements inside the myaddr buffer into intptr_t.
3092 (deprecated_debug_xfer_memory): Use paddress to print memaddr.
3093 Cast the address of elements inside the myaddr buffer into
3098 * amd64-windows-nat.c, amd64-windows-tdep.c: New files.
3099 * config/i386/mingw64.mh, config/i386/nm-cygwin64.h: New files.
3100 * configure.host, configure.tgt: Add handling for x86_64/windows.
3101 * config/djgpp/fnchange.lst: Add entries for amd64-windows-nat.c
3102 and amd64-windows-tdep.c.
3106 * win32-tdep.h, win32-tdep.c: New files.
3107 * i386-cygwin-tdep.h: Delete.
3108 * i386-cygwin-tdep.c: Include win32-tdep.h instead of
3110 (win32_xfer_shared_library): Delete. Moved to win32-tdep.c.
3111 * win32-nat.c: Likewise.
3112 * configure.tgt: Add win32-tdep.o to the list of target object
3113 files for i386-cygwin and i386-mingw targets.
3117 * win32-nat.h: New file.
3118 * win32-nat.c (mappings): Initialize to NULL.
3119 (win32_set_context_register_offsets): New function.
3120 * i386-windows-nat.c: New file.
3121 (mappings): Moved here from win32-nat.c.
3122 (_initialize_i386_windows_nat): New function.
3123 * config/i386/mingw.mh (NATDEPFILES): Add i386-windows-nat.o.
3124 * config/i386/cygwin.mh (NATDEPFILES): Likewise.
3128 * Makefile.in (init.c): Set LANG/LC_ALL to C, not c.
3132 * gdbtypes.c (append_composite_type_field): Correct the location of
3137 * defs.h (deprecated_error_hook): Delete declaration.
3138 * interps.c (clear_interpreter_hooks): Adjust.
3139 * remote-sim.c (gdb_os_error): Don't try to call
3140 deprecated_error_hook. No need to call exit anymore.
3141 * top.c (deprecated_error_hook): Delete.
3145 * arch-utils.c (gdbarch_update_p): Use host_address_to_string
3146 to print the address of the gdbarch pointer.
3150 * gdbarch.sh: Fix all the compilation errors on amd64-windows
3151 due to casting a pointer to a long when printing a function
3152 address. Instead, use host_address_to_string to convert our
3153 address to a string.
3154 * gdbarch.c: Regenerate.
3158 * event-top.c (async_disconnect, async_stop_sig): use "raise"
3159 instead of "kill" to raise a signal.
3163 * win32-nat.c (get_module_name): Change the type of parameter
3164 "base_address" to LPVOID. Remove unnecessary cast.
3165 (struct lm_info): Change type of load_addr to LPVOID.
3166 (win32_make_so): Change the type of parameter "load_addr"
3167 to LPVOID. Remove some unnecessary casts.
3168 (handle_unload_dll): Change the type of "lpBaseOfDll" to LPVOID.
3169 (win32_xfer_shared_libraries): Add missing cast.
3173 * win32-nat.c (has_detach_ability, set_process_privilege):
3174 Cast the result of GetProcAddress to (void *) to avoid
3175 a compilation warning.
3179 * win32-nat.c (CONTEXT_EXTENDED_REGISTERS): Define to 0 if not
3184 * win32-nat.c (get_image_name, win32_xfer_memory): Fix type
3185 definition of local variable "done".
3186 (info_w32_command, handle_exception): Remove unnecessary cast.
3190 * win32-nat.c (kernel32_DebugSetProcessKillOnExit): Renames
3191 DebugSetProcessKillOnExit. Update all uses in this file.
3192 (kernel32_DebugActiveProcessStop): Renames DebugActiveProcessStop.
3193 Update all uses in this file.
3197 * win32-nat.c (do_initial_win32_stuff): Add new ops parameter,
3198 and use it when pushing the target.
3199 (win32_attach, win32_create_inferior): Update call to
3200 do_initial_win32_stuff.
3201 (win32_detach, win32_mourn_inferior): Use our ops parameter
3202 instead of the global win32_ops to unpush the target.
3206 * ser-mingw.c (ser_windows_open): Use proper type when casting
3207 in call to _open_osfhandle.
3211 * coff-pe-read.c (read_pe_exported_syms): Fix typo.
3215 * CONTRIBUTE: Minor reformatting.
3219 * MAINTAINERS: Add myself to Write After Approval.
3220 * coff-pe-read.c (read_pe_exported_syms): Enable read of PE+
3225 * remote-sim.c (gdb_os_error): Mark as a noreturn function.
3226 Call exit to make it obvious to GCC.
3230 PR breakpoints/9350:
3231 * varobj.c (varobj_invalidate): Unconditionally free
3233 * symfile.c (syms_from_objfile): Free local_addr when returning
3235 * exec.c (exec_file_attach): Do cleanups before returning.
3236 (exec_file_command): Likewise.
3237 * corefile.c (reopen_exec_file): Do cleanups before returning.
3238 * breakpoint.c (insert_breakpoint_locations): Do cleanups before
3240 (do_vec_free): New function.
3241 (update_global_location_list): Make a cleanup for old_locations.
3242 Do cleanups before returning. Remove unused variable 'e'.
3243 (find_condition_and_thread): Free result of parsing the
3245 (print_it_typical): Do cleanups before returning.
3246 (breakpoint_re_set_one): Always free sals.sals.
3251 * breakpoint.c (do_enable_breakpoint): Use update_watchpoint for
3256 * top.c (gdb_prompt_string): Delete, unused.
3260 Delete ONE_PROCESS_WRITETEXT leftovers.
3262 * breakpoint.c (insert_bp_location): Delete process_warning
3264 (insert_breakpoint_locations): Adjust.
3265 (reattach_breakpoints): Adjust.
3266 * infrun.c (normal_stop): Drop "It might be running in another
3271 * config/pa/linux.mh (XDEPFILES): Remove.
3275 * cli/cli-cmds.c (set_debug): Fix cut-n-paste error.
3279 * f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
3280 spacing, a regression from 2008-04-22.
3284 * utils.c (gdb_print_host_address): Adjust implementation to
3285 reuse host_address_to_string. Move comment explaining the conversion
3286 from host address to string from here...
3287 (host_address_to_string): ... to there.
3291 * MAINTAINERS: Add myself for write after approval privileges.
3295 * value.c (set_internalvar): Use value_free, not xfree.
3299 Check return values of functions declared with warn_unused_result
3300 attribute in GLIBC 2.8.
3301 * cli/cli-cmds.c (pwd_command): Check return value from getcwd.
3302 * inflow.c (check_syscall): New function.
3303 (new_tty): Use check_syscall to check return values from open and dup.
3304 * linux-nat.c (linux_nat_info_proc_cmd): Check return value from fgets.
3305 * main.c (captured_main): Call cwd after setting up gdb_stderr;
3306 check for errors from getcwd.
3307 * mi/mi-cmd-env.c (mi_cmd_env_pwd): Check return value from getcwd.
3308 * ui-file.c (stdio_file_write): Ignore return value from fwrite.
3309 (stdio_file_fputs): Same.
3310 * utils.c (internal_vproblem): abort if last-ditch error message
3313 * top.c (gdb_init): Don't set the current directory here; that's
3314 already been done in captured_main.
3318 * ser-tcp.c: Adjust includes.
3319 (tcp_set_cmdlist, tcp_show_cmdlist): Declare.
3320 (tcp_auto_retry, tcp_retry_limit): Declare.
3321 (TIMEOUT): Remove, in favor of tcp_retry_limit.
3322 (POLL_INTERVAL): Increase to 5, in favor of backoff logic.
3323 (wait_for_connect): New function.
3324 (net_open): Use it. Add auto-retry logic.
3325 (set_tcp_cmd, show_tcp_cmd): New functions.
3326 (_initialize_ser_tcp): Initialize new "set/show tcp auto-retry"
3327 and "set/show tcp connect-timeout" commands.
3328 * NEWS: Document new commands.
3332 * python/python-internal.h (Py_ssize_t): Define as int.
3336 * MAINTAINERS: Fix my e-mail address as steering committee member.
3340 Updated copyright notices for most files.
3344 * top.c (print_gdb_version): Update copyright year.
3348 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2008.
3352 PR breakpoints/9681:
3353 * exceptions.h (enum errors): New error type, MEMORY_ERROR.
3354 * corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
3355 * breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
3356 retrow all other exceptions.
3358 For older changes see ChangeLog-2008.
3364 version-control: never