3 * dwarf2loc.c (dwarf_expr_frame_base): Add check for the return
4 value of get_frame_block.
8 Avoid memory leaks on struct cmd_list_element.doc field.
9 * cli/cli-decode.c (add_alias_cmd): Make a copy of doc field
10 if flags contains DOC_ALLOCATED.
11 (add_setshow_cmd_full): Add DOC_ALLOCATED to set and show
13 (delete_cmd): Handle DOC_ALLOCATED flag.
14 * cli/cli-decode.h (DOC_ALLOCATED): New macro for use
15 in flags filed of struct cmd_list_element.
16 (struct cmd_list_element): Document new flag item.
20 * symmisc.c: Whitespace fixes.
24 * i386-tdep.c (i386_skip_prologue): Using symbol table
25 to find the end of prologue for clang compiled binaries.
26 * amd64-tdep.c (amd64_skip_prologue): Using symbol table
27 to find the end of prologue for clang compiled binaries.
31 * dwarf2read.c (struct dwarf2_per_objfile): Clarify comment.
32 (dw2_find_symbol_file): Delete unused local file_data.
36 * ada-exp.y (write_object_renaming, write_var_or_type)
37 (write_ambiguous_var, write_var_from_sym): Make blocks const.
38 * ada-lang.c (replace_operator_with_call)
39 (find_old_style_renaming_symbol): Make blocks const.
40 * ada-lang.h (ada_find_renaming_symbol): Update.
41 (struct ada_symbol_info) <block>: Now const.
42 * breakpoint.c (watch_command_1): Update.
43 * breakpoint.h (struct watchpoint) <exp_valid_block,
44 cond_exp_valid_block>: Now const.
45 * c-exp.y (classify_inner_name, classify_name): Make block
47 * expprint.c (print_subexp_standard) <OP_VAR_VALUE>: Make 'b'
49 * expression.h (innermost_block, parse_exp_1): Update.
50 (union exp_element) <block>: Now const.
51 * gdbtypes.c (lookup_template_type, lookup_enum, lookup_union)
52 (lookup_struct): Make block argument const.
53 * gdbtypes.h (lookup_template_type): Update.
54 * go-exp.y (classify_name, classify_packaged_name)
55 (package_name_p): Make block argument const.
56 * objc-lang.c (lookup_struct_typedef): Make block argument const.
57 * objc-lang.h (lookup_struct_typedef): Update.
58 * parse.c (parse_exp_in_context, parse_exp_1)
59 (write_exp_elt_block): Make block arguments const.
60 (expression_context_block, innermost_block): Now const.
61 * parser-defs.h (write_exp_elt_block): Update.
62 (expression_context_block, innermost_block, block_found): Now
64 * printcmd.c (struct display) <block>: Now const.
65 * symtab.h (lookup_struct, lookup_union, lookup_enum): Update.
66 * valops.c (address_of_variable): Make block argument const.
67 * value.h (value_of_variable): Update.
68 * varobj.c (struct varobj_root) <valid_block>: Now const.
72 * breakpoint.c (print_one_breakpoint_location): Indent code.
76 * breakpoint.c (print_one_breakpoint_location): Combine two
77 blocks handling 'hit count' together.
81 * infrun.c (error_is_running, ensure_not_running): Move them
83 * infcmd.c (error_is_running, ensure_not_running): ... here.
85 * inferior.h: Remove declarations of error_is_running and
90 * tic6x-linux-tdep.c (tic6x_register_sigcontext_offset): Don't
95 * infrun.c: Make the declaration of 'init_infwait_state'
97 (init_infwait_state): Make it 'static'.
101 * python/python.c (finalize_python): Cast unused PyGILState_Ensure
102 return value to void to avoid compiler warning.
106 * opencl-lang.c (opencl_print_type): New function.
107 (opencl_language_arch_info): Install it.
111 * contrib/ari/gdb_ari.sh: Remove rules for xasprintf and
113 * common/common-utils.c (xasprintf, xvasprintf): Remove.
114 * common/common-utils.h (xasprintf, xvasprintf): Remove.
118 * ada-lang.c (ada_is_interface_tag): New function.
119 (ada_is_ignored_field): Add interface tags to the list
124 * ada-lang.h (ada_tag_value_at_base_address): New function
126 * ada-lang.c (is_ada95_tag, ada_tag_value_at_base_address):
128 (ada_to_fixed_type_1, ada_evaluate_subexp): Let ada_tag_base_address
129 relocate the class-wide value if need be.
130 (ada_value_struct_elt, ada_value_ind, ada_coerce_ref):
131 Let ada_tag_value_at_base_address relocate the class-wide access/ref
132 before dereferencing it.
133 * ada-valprint.c (ada_val_print_1): Relocate to base address
134 before displaying the content of an interface-wide ref.
138 * ada-lang.c (ada_evaluate_subexp): Unwrap only in EVAL_NORMAL.
147 * eval.c (evaluate_subexp_standard): Get the correct pointer
148 type for TYPE_CODE_MEMBERPTR.
152 * rs6000-tdep.c (gdb_print_insn_powerpc): Remove info->mach checking,
153 since now it is being done by binutils' powerpc_init_dialect().
158 * solib-darwin.c (gdb_bfd_mach_o_fat_extract): New function.
159 (darwin_solib_get_all_image_info_addr_at_init, darwin_bfd_open):
161 * gdb_bfd.h (gdb_bfd_mark_parent): Declare.
162 * gdb_bfd.c (gdb_bfd_mark_parent): New function.
163 (gdb_bfd_openr_next_archived_file): Use it.
167 * configure.ac: Check for linux/perf_event.h.
168 * config.in: Regenerated.
169 * configure: Regenerated.
173 * breakpoint.c (_initialize_breakpoint): Call add_alias_cmd to
174 abbreviate 'delete tracepoints' to 'delete tr'.
175 * corefile.c (_initialize_core): Call add_alias_cmd to
176 abbreviate 'set gnutarget' to 'set g'.
177 * value.c (_initialize_values): Call add_alias_cmd to abbreviate
178 'show convenience' to 'show conv'.
182 * sparc-sol2-nat.c (supply_gregset): Fix first parameter in
183 call to sparc_supply_fpregset.
184 (fill_fpregset): Fix first parameter in call to
185 sparc_collect_fpregset.
191 * objfiles.c (init_entry_point_info): Call
192 gdbarch_convert_from_func_ptr_addr and
193 gdbarch_addr_bits_remove here ...
194 (entry_point_address_query): ... instead of here.
195 * solib-svr4.c (exec_entry_point): Call
196 gdbarch_addr_bits_remove.
197 * symfile.c (generic_load): Call gdbarch_addr_bits_remove on
203 * eval.c (evaluate_subexp_standard): Add handling of
204 TYPE_CODE_MEMBERPTR when calling functions. Correct the
205 result of ptype for calling a TYPE_CODE_METHODPTR.
209 * symtab.c (symtab_symbol_info): Fix a -Wformat-extra-args
217 * NEWS: Mention mini debuginfo feature.
218 * minidebug.c: New file.
219 * configure.ac: Check for lzma.
220 * configure, config.in: Rebuild.
221 * Makefile.in (LIBLZMA): New variable.
222 (CLIBS): Include LIBLZMA.
223 (SFILES): Mention minidebug.c.
224 (COMMON_OBS): Mention minidebug.o.
225 * symfile.c (read_symbols): New function.
226 (syms_from_objfile, reread_symbols): Call it.
227 * symfile.h (find_separate_debug_file_in_section): Declare.
231 * exec.c (exec_file_attach): Move cleanup after verifying that
232 memory has in fact been allocated.
236 * ada-lang.c (user_select_syms): Use SYMBOL_SYMTAB.
237 * dwarf2read.c (dw2_find_symbol_file, fixup_go_packaging): Use
239 * skip.c (skip_info): Use SYMBOL_SYMTAB.
244 * common/linux-osdata.c (linux_xfer_osdata_fds): Decrease buffer
245 size parameter passed to readlink by one byte.
246 * fbsd-nat.c (fbsd_pid_to_exec_file): Ditto.
247 * linux-nat.c (linux_child_pid_to_exec_file): Ditto.
248 * nbsd-nat.c (nbsd_pid_to_exec_file): Ditto.
249 * inf-child.c (inf_child_fileio_readlink): Decrease local buffer's
254 * f-valprint.c (f77_create_arrayprint_offset_tbl): Remove
255 extraneous parentheses.
259 * remote.c (remote_start_remote): Typo fix.
263 * sparc-tdep.h (struct sparc_fpregset): New data structure.
264 (sparc32_sunos4_fpregset, sparc32_bsd_fpregset,
265 sparc32_sol2_fpregset): Declare new globals.
266 (sparc32_supply_fpregset, sparc32_collect_fpregset): Add new
268 * sparc64-tdep.h (sparc64_supply_fpregset,
269 sparc64_collect_fpregset): Likewise.
270 (sparc64_sol2_fpregset, sparc64_bsd_fpregset): Declare new
272 * sparc-nat.h (struct sparc_fpregset): Add forward declaration.
273 (sparc_fpregset): Declare new global.
274 (sparc_supply_fpregset, sparc_collect_fpregset): Add new
276 * sparc-linux-nat.c (supply_fpregset): Pass sparc_fpregset down
278 (fill_fpregset): Likewise.
279 (_initialize_sparc_linux_nat): Set sparc_fpregset to
280 sparc32_bsd_fpregset.
281 * sparc-linux-tdep.c (sparc32_linux_supply_core_fpregset): Pass
282 sparc32_bsd_fpregset down into handler.
283 (sparc32_linux_collect_core_fpregset): Likewise.
284 * sparc-nat.c (sparc_fpregset): Define.
285 (sparc_supply_fpregset): Add 'fpregset' argument.
286 (sparc_collect_fpregset): Likewise.
287 (sparc_fetch_inferior_registers): Pass sparc_fpregset down
288 into fpregset handler.
289 (sparc_store_inferior_registers): Likewise.
290 (_initialize_sparc_nat): Set sparc_fpregset to
291 sparc32_sunos4_fpregset if NULL.
292 * sparc-sol2-nat.c (supply_gregset): Pass sparc_sol2_fpregset
294 (fill_fpregset): Likewise.
295 * sparc-sol2-tdep.c (sparc32_sol2_fpregset): Define.
296 * sparc-tdep.c (sparc32_supply_fpregset): Add fpregset arg and
297 use it to compute offsets.
298 (sparc32_collect_fpregset): Likewise.
299 (sparc32_sunos4_fpregset, sparc32_bsd_fpregset): Define.
300 * sparc64-linux-nat.c (supply_fpregset): Pass sparc64_bsd_fpregset
302 (fill_fpregset): Likewise.
303 * sparc64-linux-tdep.c (sparc64_linux_supply_core_fpregset):
305 (sparc64_linux_collect_core_fpregset): Likewise.
306 * sparc64-sol2-tdep.c (sparc64_sol2_fpregset): Define.
307 * sparc64-tdep.c (sparc64_supply_fpregset): Add fpregset arg and
308 use it to compute offsets.
309 (sparc64_collect_fpregset): Likewise.
310 (sparc64_bsd_fpregset): Define.
311 * sparc64fbsd-tdep.c (sparc64fbsd_supply_fpregset): Padd
312 sparc64_bsd_fpregset down into handler.
313 (sparc64fbsd_collect_fpregset): Likewise.
314 * sparc64nbsd-nat.c (sparc64nbsd_supply_fpregset): Add fpregset arg
315 and pass sparc{32,64}_bsd_fpregset down into handler.
316 (sparc64nbsd_collect_fpregset): Likewise.
317 * sparc64nbsd-tdep.c (sparc64nbsd_supply_fpregset): Pass
318 sparc64_bsd_fpregset down into handler.
319 * sparc64obsd-tdep.c (sparc64obsd_supply_gregset): Likewise.
320 * sparcnbsd-nat.c (_initialize_sparcnbsd_nat): Set sparc_fpregset
321 to sparc32_bsd_fpregset.
322 * sparcnbsd-tdep.c (sparc32nbsd_supply_gregset): Pass
323 sparc32_bsd_fpregset down into sparc32_supply_fpregset.
324 (sparc32nbsd_supply_fpregset): Likewise.
328 * gdbtypes.h (struct cplus_struct_type) <localtype_ptr>: Remove
330 (TYPE_LOCALTYPE_PTR, TYPE_LOCALTYPE_FILE, TYPE_LOCALTYPE_LINE):
332 * c-typeprint.c (c_type_print_base): Update.
337 * gdbarch.sh (smash_text_address): Remove.
338 * gdbarch.c, gdbarch.h: Regenerate.
339 * arm-tdep.c (arm_smash_text_address): Remove.
340 (arm_gdbarch_init): Don't call set_gdbarch_smash_text_address.
341 * hppa-tdep.c (hppa_smash_text_address): Remove.
342 (hppa_addr_bits_remove): Rename from hppa_smash_text_address.
343 (hppa_gdbarch_init): Don't call set_gdbarch_smash_text_address.
345 * coffread.c (coff_symtab_read): Caller update.
346 * dbxread.c (process_one_symbol): Likewise.
347 * elfread.c (record_minimal_symbol): Likewise.
348 * somread.c (som_symtab_read): Likewise.
352 ARI fixes: sprintf rule.
353 Replace sprintf function calls for char arrays by
354 calls to xsnprintf calls.
355 * arm-tdep.c (arm_push_dummy_call): Replace sprintf by xsnprintf.
356 (arm_dwarf_reg_to_regnum, arm_return_value): Ditto.
357 (arm_neon_quad_read, arm_pseudo_read): Ditto.
358 (arm_neon_quad_write, arm_pseudo_write): Ditto.
359 * breakpoint.c (condition_completer): Ditto.
360 (create_tracepoint_from_upload): Ditto.
361 * dwarf2read.c (file_full_name): Ditto.
362 * gcore.c (gcore_command): Ditto.
363 * gnu-nat.c (proc_string, gnu_pid_to_str): Ditto.
364 * go32-nat.c (go32_sysinfo): Ditto.
365 * interps.c (interp_set): Ditto.
366 * m32c-tdep.c (make_types): Ditto.
367 * ppc-linux-nat.c (fetch_register, store_register): Ditto.
368 * remote-m32r-sdi.c (m32r_open): Ditto.
369 * sol-thread.c (td_err_string): Ditto.
370 (td_state_string, solaris_pid_to_str): Ditto.
371 * symtab.c (gdb_mangle_name): Ditto.
372 * cli/cli-script.c (execute_control_command): Ditto.
373 (define_command, document_command): Ditto.
374 * tui/tui-io.c (tui_rl_display_match_list): Ditto.
375 * tui/tui-stack.c (tui_make_status_line): Ditto.
376 * tui/tui-win.c (tui_update_gdb_sizes): Ditto.
380 * cli/cli-decode.c (complete_on_cmdlist): Add a fourth arg and check
381 it when looking at ptr->func.
382 * command.h (complete_on_cmdlist): Add a fourth arg.
383 * completer.c (complete_line_internal): Add local ignore_help_classes,
384 and set it to 1 when reason is not handle_help. Pass this down to
385 lookup_cmd_1 and complete_on_cmdlist.
389 * completer.c (count_struct_fields): Remove.
390 (expression_completer): Don't call count_struct_fields.
394 * annotate.c (breakpoints_changed): Rename to ...
395 (annotate_breakpoints_changed): ... this.
396 (annotate_stopped, breakpoint_changed): Adjust caller.
397 * annotate.h (breakpoints_changed): Rename to ...
398 (annotate_breakpoints_changed): ... this.
399 * breakpoint.c (set_breakpoint_condition, breakpoint_set_commands)
400 (do_map_commands_command, init_raw_breakpoint, clear_command)
401 (set_ignore_count, enable_breakpoint_disp): Adjust callers.
405 * common/linux-osdata.c (get_number_of_cpu_cores): Delete.
406 (linux_xfer_osdata_processes): Fetch _SC_NPROCESSORS_ONLN via
408 (get_cores_used_by_process): Update comment.
412 * objfiles.c (init_entry_point_info): Remove trailing spaces.
416 * infrun.c (handle_inferior_event): Pass 'saved_singlestep_ptid'
417 to deprecated_context_hook.
421 * infrun.c (infwait_state): Add static.
426 * cp-namespace.c (cp_lookup_symbol_in_namespace): Add SEARCH
427 parameter and pass it to lookup_symbol_file.
428 (cp_lookup_symbol_imports): Tell cp_lookup_symbol_in_namespace
429 to search base classes.
430 (cp_lookup_symbol_namespace): Likewise.
431 (lookup_namespace_scope): Likewise.
432 (lookup_symbol_file): Add SEARCH parameter.
433 If SEARCH is non-zero and no symbol is found, lookup the class
434 and call cp_lookup_nested_symbol.
435 (find_symbol_in_baseclass): New function.
436 (cp_lookup_nested_symbol): Do not let
437 cp_lookup_symbol_in_namespace search through base classes.
438 Do that later when there is no global symbol match.
442 * main.c (gdb_datadir_provided): New static global.
443 (get_init_files): If --data-directory is provided,
444 and SYSTEM_GDBINIT lives in data-directory, look for it there.
449 ARI fixes: move gdb_wait and gdb_stat headers to common subdirectory.
450 * gdb_stat.h: Delete. Moved to common directory.
451 * common/gdb_stat.h: New file.
452 * gdb_wait.h: Delete. Moved to common directory.
453 * common/gdb_wait.h: New file.
454 * Makefile.in (H_FILES_NO_SRC): Adapt to new header
456 * contrib/ari/gdb_ari.sh (wait.h rule): Adapt to new gdb_wait.h
458 (stat.h rule): Adapt to new gdb_stat.h location.
459 * common/linux-osdata.c: Include "gdb_stat.h" header instead of
461 * common/linux-ptrace.c: Include "gdb_wait.h" header instead of
466 * configure.ac (AC_HEADER_STAT): Remove.
467 * gdb_stat.h (STAT_MACROS_BROKEN): Remove macro use
468 and corresponding code.
469 * configure: Regenerate.
470 * config.in: Regenerate.
474 ARI xasprintf rule fixes.
475 * dwarf2read.c (create_dwo_in_dwp): Use xstrprintf function
476 instead of xasprintf.
477 (open_and_init_dwp_file): Ditto.
481 * value.c (value_actual_type): Check for TYPE_CODE_STRUCT
486 * configure, config.in: Rebuild.
487 * configure.ac: Don't check for ctype.h, time.h.
488 * expprint.c: Don't use HAVE_CTYPE_H.
492 * gdbarch.h, gdbarch.c: Rebuild.
493 * gdbarch.sh (set_target_gdbarch): Rename from
494 deprecated_target_gdbarch_select_hack.
495 * arch-utils.c (gdbarch_update_p): Update.
496 (set_gdbarch_from_file): Update.
500 * MAINTAINERS (Responsible Maintainers/misc): Add myself
501 as responsible of contrib/ari directory.
506 * arm-tdep.c (arm_addr_bits_remove): Do not adjust the low
508 (arm_m_exception_cache, arm_m_exception_this_id)
509 (arm_m_exception_prev_register, arm_m_exception_unwind_sniffer)
510 (arm_m_exception_unwind): New.
511 (arm_gdbarch_init): Register arm_m_exception_unwind.
515 * mi/mi-main.c (mi_cmd_data_write_memory): Handle additional
516 parameter COUNT, for pattern filling of memory regions.
521 * disasm.h (DISASSEMBLY_FILENAME): New macro.
522 * disasm.c (do_mixed_source_and_assembly): Pass filename flag on
523 to print_source_lines ().
524 * symtab.h (PRINT_SOURCE_LINES_FILENAME): New print source lines
526 * source.c (print_source_lines_base): Prefix source line with
527 filename if PRINT_SOURCE_LINES_FILENAME flag is set.
531 * symtab.h (print_source_lines_flags): New enum.
532 * source.c (print_source_lines_base): Change noerror to flags.
533 (print_source_lines): Change noerror to flags.
537 ARI fixes: Avoid sprintf function use rule.
538 * charset.c (convert_between_encodings): Use xsnprintf.
539 * cli-out.c (cli_field_int): Likewise.
540 * cp-namespace.c (cp_lookup_nested_symbol): Likewise.
541 * expprint.c (op_name_standard): Likewise.
542 * frv-tdep.c (set_variant_num_gprs): Likewise.
543 (set_variant_num_fprs): Likewise.
544 * m68hc11-tdep.c (m68hc11_initialize_register_info): Likewise.
545 * nto-tdep.c (nto_find_and_open_solib): Likewise.
546 (nto_init_solib_absolute_prefix): Likewise.
547 * source.c (init_source_path): Likewise.
548 (print_source_lines_base): Likewise.
549 * valprint.c (print_wchar): Likewise.
550 * mi/mi-out.c (mi_field_int): Likewise.
551 windows-nat.c (windows_pid_to_exec_file): Likewise.
552 (windows_create_inferior): Likewise.
553 (_initialize_check_for_gdb_ini): Likewise.
557 * frame.h (deprecated_frame_register_read): Renames
559 * frame.c (deprecated_frame_register_read): Renames
560 frame_register_read. Update all callers.
561 * i386-tdep.c: Update all callers of frame_register_read.
562 * infcmd.c: Likewise.
564 * mips-tdep.c: Likewise.
565 * mt-tdep.c: Likewise.
566 * sh64-tdep.c: Likewise.
570 * frame.h (frame_register_read): Remove FIXME comment.
571 * frame.c (frame_register_read): Add suggestion explaining
572 which function to use in place of this one.
576 * python/python.c (start_type_printers): Initialize 'result_obj'.
581 * data-directory/Makefile.in (PYTHON_FILES): Add
583 * python/lib/gdb/command/type_printers.py: New file.
584 * python/lib/gdb/command/types.py (TypePrinter): New class.
585 (_get_some_type_recognizers, get_type_recognizers,
586 apply_type_recognizers, register_type_printer): New
588 * python/py-objfile.c (objfile_object) <type_printers>: New
590 (objfpy_dealloc): Decref new field.
591 (objfpy_new): Set new field.
592 (objfpy_get_type_printers, objfpy_set_type_printers): New
594 (objfile_to_objfile_object): Set new field.
595 (objfile_getset): Add "type_printers".
596 * python/py-progspace.c (pspace_object) <type_printers>: New
598 (pspy_dealloc): Decref new field.
599 (pspy_new): Set new field.
600 (pspy_get_type_printers, pspy_set_type_printers): New functions.
601 (pspace_to_pspace_object): Set new field.
602 (pspace_getset): Add "type_printers".
603 * python/python.c (start_type_printers, apply_type_printers,
604 free_type_printers): New functions.
605 (_initialize_python): Set gdb.type_printers.
606 * python/python.h (start_type_printers, apply_type_printers,
607 free_type_printers): Declare.
608 * typeprint.c (type_print_raw_options, default_ptype_flags):
609 Update for new fields.
610 (do_free_global_table, create_global_typedef_table,
611 find_global_typedef): New functions.
612 (find_typedef_in_hash): Use find_global_typedef.
613 (whatis_exp): Use create_global_typedef_table. Change cleanup
615 * typeprint.h (struct type_print_options) <global_typedefs,
616 global_printers>: New fields.
620 * c-typeprint.c (find_typedef_for_canonicalize,
621 print_name_maybe_canonical): New functions.
622 (c_print_type): Look up type name.
623 (cp_type_print_derivation_info): Add flags argument. Use
624 print_name_maybe_canonical.
625 (cp_type_print_method_args): Add wrapping.
626 (c_type_print_varspec_prefix): Use print_name_maybe_canonical.
627 (c_type_print_template_args): New function.
628 (c_type_print_base): Change wrapping. Use
629 print_name_maybe_canonical.
630 <TYPE_CODE_STRUCT>: Possibly create a typedef hash, and do
632 * gdbtypes.c (types_equal): No longer static.
633 * gdbtypes.h (types_equal): Declare.
634 * typeprint.c (type_print_raw_options, default_ptype_flags):
636 (struct typedef_hash_table): New.
637 (hash_typedef_field, eq_typedef_field,
638 recursively_update_typedef_hash, add_template_parameters,
639 create_typedef_hash, free_typedef_hash, do_free_typedef_hash,
640 make_cleanup_free_typedef_hash, copy_typedef_hash_element,
641 copy_typedef_hash, find_typedef_in_hash): New functions.
642 * typeprint.h (struct type_print_options) <local_typedefs>:
644 (recursively_update_typedef_hash, add_template_parameters,
645 create_typedef_hash, free_typedef_hash,
646 make_cleanup_free_typedef_hash, copy_typedef_hash,
647 find_typedef_in_hash): Declare.
651 * cp-support.c (inspect_type,
652 replace_typedefs_qualified_name, replace_typedefs): Add
653 finder, data arguments. Call as needed.
654 (cp_canonicalize_string_full): New function.
655 (cp_canonicalize_string_no_typedefs): Rewrite.
656 * cp-support.h (canonicalization_ftype): New typedef.
657 (cp_canonicalize_string_full): Declare.
662 * c-typeprint.c (c_type_print_base): Handle print_method and
663 print_typedefs flags.
664 * gdbcmd.h (setprinttypelist, showprinttypelist): Declare.
665 * python/py-type.c (typy_str): Use LA_PRINT_TYPE and raw
667 * typeprint.c (type_print_raw_options, default_ptype_flags):
668 Update for new field.s
669 (whatis_exp): Parse flags. Use LA_PRINT_TYPE.
670 (setprinttypelist, showprinttypelist, print_methods,
671 print_typedefs): New globals.
672 (set_print_type, show_print_type, set_print_type_methods,
673 show_print_type_methods, set_print_type_typedefs,
674 show_print_type_typedefs): New functions.
675 (_initialize_typeprint): Update documentation. Add "print
676 type methods" and "print type typedefs" parameters.
677 * typeprint.h (struct type_print_options) <print_methods,
678 print_typedefs>: New fields.
682 * c-typeprint.c (cp_type_print_method_args): Add flags
683 argument. Call c_print_type, not type_print.
684 (c_type_print_base): Call c_print_type, not type_print.
689 * ada-lang.c (user_select_syms, ada_print_subexp): Pass flags
690 to type-printing functions.
691 * ada-lang.h (ada_print_type): Add argument.
692 * ada-typeprint.c (print_array_type, print_variant_clauses,
693 print_variant_part, print_selected_record_field_types,
694 print_record_field_types, print_unchecked_union_type,
695 print_func_type, ada_print_type): Add flags argument.
696 (ada_print_typedef): Update.
697 * c-exp.y (OPERATOR conversion_type_id): Update.
698 * c-lang.h (c_print_type, c_type_print_base): Update.
699 * c-typeprint.c (c_print_type, c_type_print_varspec_prefix,
700 c_type_print_modifier, c_type_print_args,
701 c_type_print_varspec_suffix, c_type_print_base): Add flags
703 * cp-valprint.c (cp_print_class_member): Update.
704 * dwarf2read.c (dwarf2_compute_name): Update.
705 * f-lang.h (f_print_type): Add argument.
706 * f-typeprint.c (f_print_type): Add flags argument.
707 * gnu-v3-abi.c (gnuv3_print_method_ptr): Update.
708 * go-lang.h (go_print_type): Add argument.
709 * go-typeprint.c (go_print_type): Add flags argument.
710 * jv-lang.h (java_print_type): Add argument.
711 * jv-typeprint.c (java_type_print_base, java_print_type): Add
713 * language.c (unk_lang_print_type): Add flags argument.
714 * language.h (struct language_defn) <la_print_type>: Add flags
716 (LA_PRINT_TYPE): Likewise.
717 * m2-lang.h (m2_print_type): Add argument.
718 * m2-typeprint.c (m2_print_type, m2_range, m2_typedef,
719 m2_array, m2_pointer, m2_ref, m2_procedure, m2_long_set,
720 m2_unbounded_array, m2_record_fields): Add flags argument.
721 * p-lang.h (pascal_print_type, pascal_type_print_base,
722 pascal_type_print_varspec_prefix): Add argument.
723 * p-typeprint.c (pascal_print_type,
724 pascal_type_print_varspec_prefix, pascal_print_func_args,
725 pascal_type_print_varspec_suffix, pascal_type_print_base): Add
727 * symmisc.c (print_symbol): Update.
728 * typeprint.c (type_print_raw_options, default_ptype_flags):
730 (type_print): Update.
731 * typeprint.h (struct type_print_options): New.
732 (type_print_raw_options): Declare.
733 (c_type_print_varspec_suffix, c_type_print_args): Add argument.
737 * breakpoint.c (clear_command): Add cleanup for
738 sals.sals if an argument is given.
740 * linespec.c (parse_linespec): Do cleanups after
741 parsing a convenience variable.
746 * c-valprint.c (c_val_print): For character arrays
747 with "print null" option on, print ellipses if
748 the output is truncated and the next character is not \000.
749 * valprint.c (MAX_WCHARS): Define.
750 (WCHAR_BUFLEN): Likewise.
751 (WCHAR_BUFLEN_MAX): Likewise.
752 (struct converted_character): New structure.
753 (count_next_character): New function.
754 (print_converted_chars_to_obstack): New function.
755 (generic_printstr): Rewrite using count_next_character
756 and print_converted_chars_to_obstack.
760 * tui/tui.c (tui_rl_command_key): Switch to TUI_ONE_COMMAND_MODE
761 while executing the gdb command.
762 (tui_rl_startup_hook): Do not switch back to TUI_SINGLE_KEY_MODE if we
763 are called from prompt_for_continue.
764 * tui/tui-io.c (tui_redisplay_readline): Likewise.
770 * tui/tui.c (tui_rl_command_key): Do not call execute_command
771 but insert the command to execute in readline's buffer.
775 * gdbarch.sh (target_gdbarch): Remove macro.
776 (get_target_gdbarch): Rename to target_gdbarch.
777 * gdbarch.c, gdbarch.h: Rebuild.
778 * ada-tasks.c, aix-thread.c, amd64-linux-nat.c, arch-utils.c,
779 arm-tdep.c, auxv.c, breakpoint.c, bsd-uthread.c, corefile.c,
780 darwin-nat-info.c, dcache.c, dsrec.c, exec.c, fbsd-nat.c,
781 filesystem.c, gcore.c, gnu-nat.c, i386-darwin-nat.c, i386-nat.c,
782 ia64-vms-tdep.c, inf-ptrace.c, infcmd.c, jit.c, linux-nat.c,
783 linux-tdep.c, linux-thread-db.c, m32r-rom.c, memattr.c,
784 mep-tdep.c, microblaze-tdep.c, mips-linux-nat.c,
785 mips-linux-tdep.c, mips-tdep.c, monitor.c, moxie-tdep.c,
786 nto-procfs.c, nto-tdep.c, ppc-linux-nat.c, proc-service.c,
787 procfs.c, progspace.c, ravenscar-thread.c, record.c,
788 remote-m32r-sdi.c, remote-mips.c, remote-sim.c, remote.c,
789 rl78-tdep.c, rs6000-nat.c, rx-tdep.c, s390-nat.c, sol-thread.c,
790 solib-darwin.c, solib-dsbt.c, solib-frv.c, solib-ia64-hpux.c,
791 solib-irix.c, solib-pa64.c, solib-som.c, solib-spu.c,
792 solib-sunos.c, solib-svr4.c, solib.c, spu-linux-nat.c,
793 spu-multiarch.c, spu-tdep.c, symfile-mem.c, symfile.c, symtab.c,
794 target-descriptions.c, target.c, target.h, tracepoint.c,
795 windows-nat.c, windows-tdep.c, xcoffsolib.c, cli/cli-dump.c,
796 common/agent.c, mi/mi-interp.c, python/py-finishbreakpoint.c,
797 python/py-inferior.c, python/python.c: Update.
801 * source.c (print_source_lines_base): Add fullname field giving
802 full path to file in mi output.
803 * NEWS: Mention the new fullname field.
807 * NEWS: Mention the fix to the ambiguity of 'fo' command.
813 * infrun.c: Include target-descriptions.h.
814 (follow_exec): Fetch new target description.
818 * i386-tdep.c (i386_analyze_frame_setup): Handle opcode
823 * breakpoint.c: Declare set_tracepoint_count.
824 (install_breakpoint): Call set_tracepoint_count if B is a
826 (trace_command): Don't call set_tracepoint_count. Re-indent.
827 (strace_command, ftrace_command):
828 (create_tracepoint_from_upload): Likewise.
832 * gdbarch.sh (target_gdbarch) <gdbarch.h>: Reimplement as macro.
833 (get_target_gdbarch) <gdbarch.h>: New function.
834 (startup_gdbarch) <gdbarch.h>: Declare.
835 <gdbarch.c> (target_gdbarch): Delete.
836 <gdbarch.c> (deprecated_target_gdbarch_select_hack): Set the
837 current inferior's gdbarch.
838 <gdbarch.c> (get_target_gdbarch): New function.
839 * inferior.c: Include target-descriptions.h.
840 (free_inferior): Free target description info.
841 (add_inferior_with_spaces): Set the inferior's initial
843 (clone_inferior_command): Copy the original inferior's target
844 description if it was user specified.
845 (initialize_inferiors): Add comment.
846 * inferior.h (struct target_desc_info): Forward declare.
847 (struct inferior) <gdbarch>: New field.
848 * linux-nat.c: Include target-descriptions.h.
849 (linux_child_follow_fork): Copy the parent's architecture and
850 target description to the child.
851 * target-descriptions.c: Include inferior.h.
852 (struct target_desc_info): New structure, holding the equivalents
854 (target_desc_fetched, current_target_desc)
855 (target_description_filename): ... these removed globals.
856 (get_tdesc_info, target_desc_info_from_user_p)
857 (copy_inferior_target_desc_info, target_desc_info_free): New.
858 (target_desc_fetched, current_target_desc)
859 (target_description_filename): Reimplemented as convenience
861 (tdesc_filename_cmd_string): New global.
862 (set_tdesc_filename_cmd): Copy the string manipulated by the "set
863 tdescs filename ..." commands to the per-inferior equivalent.
864 (show_tdesc_filename_cmd): Get the value to show from the
865 per-inferior description filename.
866 (_initilize_target_descriptions): Change the "set/show tdesc
867 filename" commands' variable.
868 * target-descriptions.h (struct target_desc, struct target_desc_info)
869 (struct inferior): Forward declare.
870 (target_find_description, target_clear_description)
871 (target_current_description): Adjust comments.
872 (copy_inferior_target_desc_info, target_desc_info_free)
873 (target_desc_info_from_user_p). Declare.
877 * tui/tui-hooks.c (tui_about_to_proceed): New function.
878 (tui_target_wait_hook): Remove.
879 (tui_install_hooks): Install the about_to_proceed observer.
880 (tui_remove_hooks): And remove it here.
884 * linux-tdep.c (linux_make_siginfo_note): New function.
885 (linux_make_corefile_notes): Use it.
886 * corelow.c (get_core_siginfo): New function.
887 (core_xfer_partial) <TARGET_OBJECT_SIGNAL_INFO>: New case.
892 * gdb_bfd.c (gdb_bfd_ref): Set BFD_DECOMPRESS.
893 (zlib_decompress_section): Remove.
894 (gdb_bfd_map_section): Only check for compressed section
895 in mmap case. Use bfd_get_full_section_contents.
896 * osabi.c (check_note): Add 'sectsize' argument. Read
898 (generic_elf_osabi_sniff_abi_tag_sections): Don't read
899 section data. Update for check_note change.
900 * xcoffread.c (xcoff_initial_scan): Use
901 bfd_get_full_section_contents.
902 * py-auto-load.c (auto_load_section_scripts): Use
903 bfd_get_full_section_contents.
904 * contrib/cc-with-tweaks.sh: Add -Z option.
908 * python/py-bpevent.c: Include defs.h.
909 * python/py-continueevent.c: Include defs.h.
910 * python/py-event.c: Include defs.h.
911 * python/py-event.h: Don't include defs.h.
912 * python/py-events.h: Don't include defs.h.
913 * python/py-evts.c: Include defs.h.
914 * python/py-exitedevent.c: Include defs.h.
915 * python/py-newobjfileevent.c: Include defs.h.
916 * python/py-signalevent.c: Include defs.h.
917 * python/py-stopevent.c: Include defs.h.
918 * python/py-threadevent.c: Include defs.h.
922 * update-web-ari.sh (print_heading): Add number of files
924 (nb_files): New variable counting the number of sources
925 files found by gdb_find.sh script.
926 (debug_awk): New variable to allow extra debug output.
927 (indexes): Add more information if DEBUG_AWK is set.
931 * ppc-linux-tdep.c (ppc64_standard_linkage1, ppc64_standard_linkage2,
932 ppc64_standard_linkage3): Mark ld r11 instructions as optional,
933 following the change in PLT call stubs on linker.
937 * contrib/ari/gdb_ari.sh (LANG, LC_ALL): Use 'C' instead of 'c'
939 (AWK): Use = instead of == for sh test to avoid warning.
940 (Linux rule): Correct [:digit] into [[:digit:]].
941 (__func__ rule): Adapt to "gdb_assert.h" move to common subdirectory.
942 (vasprintf rule): Adapt to common subdirectory moves.
943 (xasprintf rule): Idem.
944 (xvasprintf rule): Idem.
945 (var_boolean rule): Accept occurence in == or != test.
947 * contrib/ari/gdb_find.sh: Also prune gdbtk directory.
951 * tui/tui-hooks.c (tui_inferior_exit): New function.
952 (tui_detach_hook): Remove.
953 (tui_install_hooks): Install the inferior exit observer.
954 (tui_remove_hooks): Remove it.
959 * source.c (_initialize_source): Call add_com_alias to abbreviate
960 'forward-search' as 'fo'.
964 * arm-tdep.c: Make defs.h be the first include.
965 * coff-pe-read.c: Ditto.
969 * ppcnbsd-nat.c: Ditto.
970 * ada-varobj.h: Don't include defs.h.
971 * i386-darwin-tdep.h: Ditto.
976 * MAINTAINERS: New FSF-appointed maintainers replace the Steering
981 * common/linux-osdata.c (dirent.h): ARI fix: Remove.
982 File already uses "gdb_dirent.h" header.
986 * breakpoint.c (get_tracepoint_by_number): Remove 'extern int
991 * target.h (inferior_has_forked, inferior_has_vforked)
992 (inferior_has_execd, inferior_has_called_syscall): Remove
997 * remote.c (remote_insert_hw_breakpoint): ARI fix,
998 add missing internalization markup.
1004 * breakpoint.c (bpstat_stop_status): Skip disabled locations.
1008 * contrib/ari/create-web-ari-in-src.sh: Avoid problem if script
1013 * gnulib/update-gnulib.sh: New script.
1017 * MAINTAINERS: Update my email address.
1021 * frame.c (put_frame_register): Don't use temporary buffer.
1025 * inferior.c (exit_inferior_1): Clear 'vfork_parent' in the vfork
1026 child. Clear 'pending_detach'.
1027 * infrun.c (handle_vfork_child_exec_or_exit): Clear
1028 'pending_detach' in the vfork parent.
1032 Add support for DWP files. http://gcc.gnu.org/wiki/DebugFissionDWP
1033 * contrib/cc-with-tweaks.sh: Add -p parameter to invoke dwp.
1034 * dwarf2read.c: #include "elf-bfd.h".
1035 (struct dwarf2_per_objfile): New members dwp_checked, dwp_file.
1036 (dwop_section_names): Renamed from dwo_section names. All uses
1037 updated. Add entries for .debug_cu_index, .debug_tu_index.
1038 (struct dwo_file): Rename dwo_name to name, dwo_bfd to dbfd.
1040 (struct dwp_sections): New type.
1041 (struct virtual_dwo_sections): New type.
1042 (struct dwp_hash_table): New type.
1043 (struct dwp_file): New type.
1044 (init_cutu_and_read_dies): Ensure DWO info/types section has been
1045 read in. Handle DWOs coming from DWP files.
1046 (lookup_dwo_file_slot): New function.
1047 (dwarf2_locate_dwo_sections): Move definition closer to use.
1048 (create_dwo_debug_info_hash_table_reader): Renamed from
1049 create_debug_info_hash_table_reader. All callers updated.
1050 (create_dwo_debug_info_hash_table): Renamed from
1051 create_debug_info_hash_table. All callers updated.
1052 (create_dwp_hash_table): New function.
1053 (locate_virtual_dwo_sections, create_dwo_in_dwp): New functions.
1054 (lookup_dwo_in_dwp): New function.
1055 (try_open_dwop_file): Renamed from try_open_dwo_file. New parameter
1056 is_dwp. All callers updated.
1057 (open_dwop_file): Renamed from open_dwo_file. All callers updated.
1058 (open_and_init_dwo_file): Renamed from init_dwo_file.
1059 All callers updated.
1060 (lookup_dwo_file): Delete.
1061 (dwarf2_locate_dwp_sections): New function.
1062 (hash_dwp_loaded_cutus, eq_dwp_loaded_cutus): New functions.
1063 (allocate_dwp_loaded_cutus_table): New function.
1064 (open_and_init_dwp_file): New function.
1065 (lookup_dwo_cutu): New function.
1066 (lookup_dwo_comp_unit, lookup_dwo_type_unit): Call it.
1071 * breakpoint.c (trace_pass_set_count): Call
1072 observer_notify_breakpoint_modified instead of
1073 observer_notify_tracepoint_modified.
1074 * mi/mi-cmd-break.c (mi_cmd_break_passcount): Likewise.
1078 * breakpoint.c (catch_syscall_completer): Pass 'word' as second
1079 argument to complete_on_enum.
1083 * configure: Rebuild.
1084 * configure.ac (build_warnings): Add -Wempty-body.
1085 * m68k-tdep.c (m68k_gdbarch_init): Remove empty 'if'.
1086 * remote.c (handle_notification): Use braces for empty 'else' body.
1087 * s390-tdep.c (s390_analyze_prologue): Use braces for empty
1089 * sh64-tdep.c (sh64_push_dummy_call): Use braces for empty
1091 * solib-som.c (som_relocate_section_addresses): Use braces
1092 for empty 'else' body.
1093 * ui-file.c (stdio_file_write): Use braces for empty 'if' body.
1094 (stdio_file_write_async_safe, stdio_file_fputs): Likewise.
1100 * infrun.c (handle_inferior_event)
1101 <TARGET_WAITKIND_EXITED/TARGET_WAITKIND_SIGNALLED>: Switch to
1102 null_ptid before handling a vfork child exec or exit. Switch to
1103 the event ptid afterwards.
1107 * std-operator.def: Remove OP_LABELED.
1108 * eval.c: Remove the declaration of 'get_label'.
1109 (get_label): Remove.
1110 (evaluate_struct_tuple): Remove code handling OP_LABELED.
1112 Remove local variable 'variantno' and related code.
1113 Replace 'substruct_type' with 'struct_type'. Replace 'subfieldno'
1115 * expprint.c (print_subexp_standard): Likewise.
1116 (dump_subexp_body_standard): Likewise.
1117 * parse.c (operator_length_standard): Likewise.
1121 Incorporate ARI web page generator into GDB sources.
1122 * contrib/ari/create-web-ari-in-src.sh: New file.
1123 * contrib/ari/gdb_ari.sh: New file.
1124 * contrib/ari/gdb_find.sh: New file.
1125 * contrib/ari/update-web-ari.sh: New file.
1129 * gdbarch.c: Rebuild.
1130 * gdbarch.sh: Remove references to gdbarch_swap.
1131 * corelow.c (core_open): Remove obsolete comment.
1136 * c-typeprint.c (c_print_type): Don't print a space for vector
1137 types, this is handled within the suffix.
1138 (c_type_print_varspec_suffix): Add a space to vector suffix.
1142 * amd64-tdep.c (amd64_relocate_instruction): Use
1143 store_unsigned_integer instead of memcpy.
1144 * i386-tdep.c (i386_relocate_instruction): Ditto.
1148 * infrun.c (handle_inferior_event): Merge handling of
1149 TARGET_WAITKIND_EXITED and TARGET_WAITKIND_SIGNALLED into a single
1154 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_SIGNALLED>:
1159 * target.c (target_waitstatus_to_string): Handle
1160 TARGET_WAITKIND_VFORK_DONE.
1164 * infrun.c (handle_inferior_event): Print TARGET_WAITKIND_VFORKED
1165 as "TARGET_WAITKIND_VFORKED", not "TARGET_WAITKIND_FORKED".
1169 * ravenscar-sparc-thread.c (ravenscar_sparc_fetch_registers):
1174 * ravenscar-thread.c (ravenscar_wait): Only update the list
1175 of threads and inferior_ptid if the inferior is still alive.
1179 * ada-lang.c (is_known_support_routine): Use lbasename when
1180 matching the symtab's filename against
1181 known_runtime_file_name_patterns.
1185 * ada-lang.c (ada_same_array_size_p): New function.
1186 (ada_promote_array_of_integrals): New function.
1187 (coerce_for_assign): Add handling of arrays where the elements
1188 are integrals of a smaller size than the size of the target
1193 * doublest.c (convert_doublest_to_floatformat): Fix comparison
1194 against maximum exponent value.
1198 * ada-lang.h (ADA_KNOWN_RUNTIME_FILE_NAME_PATTERNS): Add entry for
1203 * ada-lang.c (ada_template_to_fixed_record_type_1): Do not
1204 strip typedef layer when computing the fixed type's field type,
1205 only when computing its size.
1210 * i386-tdep.c (i386_return_value): Handle complex double and long
1215 * windows-nat.c (windows_create_inferior) [!__CYGWIN__]:
1216 New local variable args_len.
1217 Quote the name of the executable when computing the command line.
1224 * amd64-tdep.h (enum amd64_regnum): Add AMD64_ST1_REGNUM and
1226 * amd64-tdep.c (amd64_classify): Classify complex types.
1227 (amd64_return_value): Handle the COMPLEX_X87 class.
1231 * rs6000-aix-tdep.c (rs6000_aix_auto_wide_charset): New function.
1232 (rs6000_aix_init_osabi): Set auto_wide_charset gdbarch method.
1236 * amd64-windows-tdep.c (amd64_windows_auto_wide_charset): New
1238 (amd64_windows_init_abi): Set auto_wide_charset gdbarch method
1239 to amd64_windows_auto_wide_charset.
1243 * event-top.c (mark_async_signal_handler_wrapper): Remove.
1244 * event-top.h: Remove its declaration.
1245 (async_request_quit): Call mark_async_signal_handler instead of
1246 mark_async_signal_handler_wrapper.
1247 (async_do_nothing, async_disconnect): Likewise.
1248 (async_stop_sig): Likewise.
1249 * remote.c (handle_remote_sigint): Likewise.
1250 (handle_remote_sigint_twice): Likewise.
1254 * event-top.c (sigint_token, sighup_token): Replace 'void *'
1255 with 'static struct async_signal_handler *'.
1256 (sighup_token, sigquit_token, sigstp_token): Likewise.
1260 * gdbarch.sh (function_list): Use 'pstring' when printing
1261 a variable which could return NULL.
1262 * gdbarch.c: Regenerate.
1267 * rs6000-aix-tdep.c (rs6000_aix_osabi_sniffer): Replace
1268 inneffective if condition by gdb assertion. Add function
1269 description comment.
1273 * parser-defs.h (struct exp_descriptor): Document constraint
1274 on return value for "op_name" callbacks.
1278 * tracepoint.c (print_one_static_tracepoint_marker): Constify.
1279 * symtab.c (iterate_over_some_symtabs): Constify.
1280 * source.h (symtab_to_fullname): Return 'const char *'.
1281 * source.c (symtab_to_fullname): Return 'const char *'.
1282 * python/py-symtab.c (stpy_fullname): Constify.
1283 * cli/cli-cmds.c (edit_command): Constify.
1284 * breakpoint.c (print_breakpoint_location)
1285 (update_static_tracepoint): Constify.
1289 * breakpoint.c (compare_breakpoints): Fix comparison.
1293 * valprint.c (generic_emit_char, generic_printstr): Pass size of
1294 gdb_wchar_t to convert_between_encodings.
1298 * breakpoint.c (invalidate_bp_value_on_memory_change): Add one
1299 more parameter 'inferior'.
1300 * corefile.c (write_memory_with_notification): Caller update.
1302 * mi/mi-cmd-var.c: Include "mi-main.h".
1303 (mi_cmd_var_assign): Set mi_suppress_notification.data_write_memory
1304 to 1 and restore it later.
1305 * mi/mi-cmds.c (mi_cmd mi_cmds): Update for "data-write-memory"
1306 and "data-write-memory-bytes.
1307 * mi/mi-interp.c: Include objfiles.h.
1308 (mi_interpreter_init): Call observer_attach_memory_changed.
1309 (mi_memory_changed): New.
1310 * mi/mi-main.h (struct mi_suppress_notification) <memory>:
1313 * NEWS: Mention new MI notification "memory-changed".
1317 * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Remove comment.
1321 New option -nh: inhibit loading of ~/.gdbinit.
1322 * NEWS: Mention -nh.
1323 * main.c (captured_main): Recognize and process -nh.
1324 (print_gdb_help): Mention -nh.
1325 * gdb.1: Mention -nh. Remove erroneous docs on -nx behavior.
1331 * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
1333 * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
1334 nor pc_regnum_from_eax.
1335 * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
1336 nor pc_regnum_from_eax.
1340 Fix entry values resolving in inlined frames.
1341 * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Move func_addr,
1342 gdbarch and caller_frame initialization later. Skip INLINE_FRAME
1347 * configure.ac: Build with -DMS_WIN64 if building with Python
1348 enabled using GCC on amd64-windows.
1349 * configure: Regenerate.
1354 * python/py-symtab.c (del_objfile_sal): Set 'symtab' field
1360 * python/py-symbol.c (sympy_dealloc): Check for NULL symbol.
1364 * remote-sim.c (gdbsim_create_inferior): Call init_thread_list to
1365 reset thread numbering back to 1.
1369 PR breakpoints/14643.
1370 * linespec.c (struct ls_parser): New member keyword_ok.
1371 (linespec_lexer_lex_string): Add comment.
1372 (linespec_lexer_lex_one): Ignore keywords if it's the wrong place
1374 (parse_linespec): Set keyword_ok.
1378 * dwarf2read.c (process_psymtab_comp_unit_reader): Remove duplicate
1379 "0x" prefix on address in log message.
1381 * dwarf2read.c (read_1_byte): Add const to buf parameter.
1382 (read_1_signed_byte, read_2_bytes, read_2_signed_bytes): Ditto.
1383 (read_4_bytes, read_4_signed_bytes, read_8_bytes): Ditto.
1384 (lookup_dwo_file): Add const to dwo_name parameter.
1385 (lookup_dwo_comp_unit, lookup_dwo_type_unit): Ditto.
1389 Fix crash during stepping on ppc32.
1390 * ppc-linux-tdep.c (powerpc_linux_in_dynsym_resolve_code): Test NULL
1396 * buildsym.c (buildsym_init): Reset using_directives to NULL.
1400 * remote-sim.c (dump_mem): Always dump buffer contents, zero fill
1401 output and use uint32_t not long to ensure 4 byte size.
1405 * rs6000-nat.c (add_vmap): Set "last" to "next" after having
1410 * target.c (simple_search_memory): Include access length in
1417 * solib.c (solib_find): Prevent GDB from loading native libraries when
1418 debugging a cross-target corefile.
1422 Make definition match declaration.
1424 * regcache.c (regcache_register_status): Change return type to
1425 enum register_status.
1429 * mi/mi-main.c (mi_cmd_data_write_memory): Call
1430 write_memory_with_notification instead of write_memory.
1431 (mi_cmd_data_write_memory_bytes): Call write_memory_with_notification
1432 instead of target_write_memory.
1436 * mi/mi-main.c (mi_cmd_data_write_memory_bytes): Emit error
1437 when the length of content is not an even number.
1441 Fix https://bugzilla.redhat.com/show_bug.cgi?id=849357
1442 * cp-valprint.c (cp_print_value_fields): Use get_vptr_fieldno.
1446 * sol-thread.c (sol_thread_fetch_registers)
1447 (sol_thread_store_registers): Delete commented out code.
1451 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
1452 Move these functions to sparc-sol-thread.c.
1453 * sparc-sol-thread.c: New file.
1454 * configure.ac: Add sparc-sol-thread.o to CONFIG_OBS and
1455 sparc-sol-thread.c to CONFIG_SRCS for sparc-solaris native
1457 * configure: Regenerate.
1461 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
1462 Remove commented-out code.
1466 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
1467 Enable this code for sparc hosts only.
1471 * procfs.h (procfs_find_LDT_entry): Add declaration.
1472 * sol-thread.c (ps_lgetLDT): Delete local declaration of
1473 function procfs_find_LDT_entry.
1477 * procfs.c (proc_get_LDT_entry): Make static.
1481 * procfs.c (proc_find_memory_regions): Fix declaration.
1485 * amd64-tdep.c (amd64_return_value): Revert previous change
1486 that used TYPE_LENGTH directly.
1487 * bfin-tdep.c (bfin_extract_return_value): Likewise.
1488 (bfin_store_return_value): Likewise.
1489 * cris-tdep.c (cris_store_return_value): Likewise.
1490 (cris_extract_return_value): Likewise.
1491 * h8300-tdep.c (h8300_extract_return_value): Likewise.
1492 * hppa-tdep.c (hppa64_return_value): Likewise.
1493 * lm32-tdep.c (lm32_store_return_value): Likewise.
1494 * microblaze-tdep.c (microblaze_store_return_value): Likewise.
1495 * spu-tdep.c (spu_value_from_register): Likewise.
1496 * vax-tdep.c (vax_return_value): Likewise.
1500 * gdbtypes.c (lookup_array_range_type): Expand parameters
1501 LOW_BOUND and HIGH_BOUND to LONGEST.
1502 (lookup_string_range_type): Likewise.
1503 * gdbtypes.h (lookup_array_range_type): Likewise.
1504 (lookup_string_range_type): Likewise.
1505 * valops.c (value_cstring): Expand parameter LEN to ssize_t.
1506 Expand HIGHBOUND to ssize_t.
1507 (value_string): Likewise.
1508 * value.h (value_cstring): Expand parameter LEN to ssize_t.
1509 (value_string): Likewise.
1513 PR breakpoints/13898
1514 * breakpoint.h (tracepoint_breakpoint_ops): Forward declaration.
1515 * mi/mi-cmd-break.c (mi_cmd_break_insert): Set breakpoint_ops
1516 per breakpoint type.
1520 * procfs.c: Add gdb_bfd header.
1521 * rs6000-nat.c: Likewise.
1522 * solib-pa64.c: Likewise.
1523 * spu-linux-nat.c: Likewise.
1524 * windows-nat.c: Likewise.
1528 * f-lang.h (BLANK_COMMON_NAME_LOCAL): Remove.
1532 * dwarf2read.c (mark_common_block_symbol_computed): New function.
1533 (read_common_block): Handle child DIEs with
1534 DW_AT_data_member_location.
1535 (new_symbol_full): Add special case for common blocks.
1540 * dwarf2read.c (read_common_block): Rewrite.
1541 (new_symbol_full): Handle DW_TAG_common_block.
1542 * f-lang.c (head_common_list, find_common_for_function):
1544 * f-lang.h (struct common_entry, struct saved_f77_common,
1545 SAVED_F77_COMMON, SAVED_F77_COMMON_PTR, COMMON_ENTRY,
1546 COMMON_ENTRY_PTR, head_common_list, find_common_for_function,
1547 BLANK_COMMON_NAME_LOCAL): Remove.
1548 (struct common_block): New.
1549 * f-valprint.c (list_all_visible_commons): Remove.
1550 (info_common_command_for_block): New function.
1551 (info_common_command): Use it.
1552 * stack.c (iterate_over_block_locals): Special case for
1553 COMMON_BLOCK_DOMAIN.
1554 * symtab.h (enum domain_enum_tag) <COMMON_BLOCK_DOMAIN>: New
1556 (struct general_symbol_info) <value.common_block>: New field.
1557 (SYMBOL_VALUE_COMMON_BLOCK): New define.
1562 * f-lang.c (allocate_saved_bf_node,
1563 allocate_saved_function_node, allocate_saved_f77_common_node,
1564 allocate_common_entry_node, tail_common_list, current_common,
1565 saved_bf_list, saved_bf_list_end, current_head_bf_list,
1566 tmp_bf_ptr, add_common_block, add_common_entry,
1567 find_first_common_named, patch_common_entries,
1568 patch_all_commons_by_name, ADD_BF_SYMNUM, clear_bf_list,
1569 global_remote_debug, get_bf_for_fcn, saved_function_list,
1570 saved_function_list_end, clear_function_list, struct saved_fcn,
1571 struct saved_bf_symnum, SAVED_FUNCTION, SAVED_FUNCTION_PTR,
1572 SAVED_BF, SAVED_BF_PTR): Remove.
1573 * f-lang.h (tail_common_list, current_common,
1574 UNINITIALIZED_SECNUM, COMMON_NEEDS_PATCHING,
1575 BLANK_COMMON_NAME_ORIGINAL, BLANK_COMMON_NAME_MF77,
1576 DEFAULT_UPPER_BOUND, DEFAULT_LOWER_BOUND, real_main_name,
1577 real_main_c_value): Remove.
1578 * f-valprint.c (there_is_a_visible_common_named): Remove.
1582 * breakpoint.c (update_global_location_list): Ignore previous
1583 duplicate status of a breakpoint when starting a new scan for
1584 duplicate breakpoints.
1587 PR breakpoints/14419
1588 * arm-tdep.c (arm_skip_prologue): Extending producer check to
1589 support LLVM compiler.
1593 * amd64-tdep.c (amd64_return_value): Use TYPE_LENGTH directly.
1594 * bfin-tdep.c (bfin_extract_return_value): Likewise.
1595 (bfin_store_return_value): Likewise.
1596 * cris-tdep.c (cris_store_return_value): Likewise.
1597 (cris_extract_return_value): Likewise.
1598 * h8300-tdep.c (h8300_extract_return_value): Likewise.
1599 * hppa-tdep.c (hppa64_return_value): Likewise.
1600 * lm32-tdep.c (lm32_store_return_value): Likewise.
1601 * microblaze-tdep.c (microblaze_store_return_value): Likewise.
1602 * spu-tdep.c (spu_value_from_register): Likewise.
1603 * vax-tdep.c (vax_return_value): Likewise.
1607 * breakpoint.c (invalidate_bp_value_on_memory_change): Expand
1608 parameter LEN to ssize_t.
1612 * ada-valprint.c (ada_val_print_1): Eliminate single-use
1614 * alpha-tdep.c (alpha_extract_return_value): Use TYPE_LENGTH
1616 (alpha_store_return_value): Likewise.
1617 * amd64-tdep.c (amd64_classify_aggregate): Likewise.
1618 (amd64_push_arguments): Likewise.
1619 * ax-gdb.c (gen_trace_static_fields): Likewise.
1620 (gen_traced_pop): Likewise.
1621 * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1622 * breakpoint.c (update_watchpoint): Likewise.
1623 * findcmd.c (parse_find_args): Use local variable for type
1625 * findvar.c (default_read_var_value): Use TYPE_LENGTH directly.
1626 * h8300-tdep.c (h8300h_extract_return_value): Likewise.
1627 (h8300_store_return_value): Likewise.
1628 * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1629 Use i386_darwin_arg_type_alignment directly.
1630 * infcall.c (call_function_by_hand): Use TYPE_LENGTH directly.
1631 * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1632 * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1633 (m68hc11_extract_return_value): Likewise.
1634 * mep-tdep.c (mep_push_dummy_call): Likewise.
1635 * printcmd.c (float_type_from_length): Likewise.
1636 * s390-tdep.c (s390_value_from_register): Likewise.
1637 * stack.c (read_frame_arg): Likewise.
1638 * tracepoint.c (encode_actions_1): Likewise.
1639 * valops.c (value_fetch_lazy): Use local variable for type
1640 instead of length. Use TYPE_LENGTH directly.
1641 * value.c (value_contents_equal): Use TYPE_LENGTH directly.
1645 * symtab.c (skip_prologue_sal): Fix typo in comment.
1649 * linespec.c (create_sals_line_offset): Fix typo in comment.
1653 * c-typeprint.c (c_type_print_varspec_suffix): Remove cast and
1654 use plongest to print the array size.
1658 * m2-typeprint.c (m2_enum): Expand LASTVAL to LONGEST.
1659 * p-valprint.c (pascal_type_print_base): Likewise.
1663 * remote.c (remote_get_trace_status): Remove setting default
1664 values of fields of 'ts'.
1668 Fix internal error on canonicalization of clang types.
1669 * cp-name-parser.y (operator): New comment at make_operator call for
1670 new, delete, new[] and delete[].
1671 (exp): Use "sizeof ". Add new comment at make_operator call.
1675 Fix disassemble without parameters in tailcall frame.
1676 * cli/cli-cmds.c (disassemble_current_function): Use
1677 get_frame_address_in_block.
1681 * c-typeprint.c (c_type_print_base) <TYPE_CODE_STRUCT,
1682 TYPE_CODE_UNION>: Unify, removing a goto.
1686 * c-typeprint.c (cp_type_print_derivation_info): Fix comment.
1690 * findvar.c (read_frame_register_value): Mark the result value as
1691 optimized out if any of the input registers have been optimized out.
1695 * python/python.c (finalize_python): Only define if HAVE_PYTHON.
1699 * eval.c (evaluate_subexp_standard): Eliminate single-use
1704 * mi/mi-interp.c: Declare mi_record_changed.
1705 (mi_interpreter_init): Call observer_attach_record_changed.
1706 (mi_record_changed): New.
1707 * record.c (record_open): Call observer_notify_record_changed.
1708 (cmd_record_stop): Call observer_notify_record_changed.
1714 * python/python.c (finalize_python): New function.
1715 (_initialize_python): Make a final cleanup.
1719 * buildsym.h (param_symbols): Delete, unused.
1720 (context_stack): Delete member "params", unused.
1721 * buildsym.c (push_context): Update.
1722 * dwarf2read.c (read_func_scope): Update.
1726 * sh-tdep.c (sh_register_convert_to_virtual)
1727 (sh_register_convert_to_raw): Add a gdbarch parameter. Update
1728 all callers. Just do a memcpy if not the little-endian case.
1730 * h8300-tdep.c (h8300_gdbarch_init): Invoke
1731 set_gdbarch_double_format and set_gdbarch_long_double_format.
1732 * m68hc11-tdep.c (m68hc11_gdbarch_init): Invoke
1733 set_gdbarch_double_format.
1734 * sh-tdep.c (sh_gdbarch_init): Likewise.
1736 * NEWS: Document the removal of SH's 'regs' command.
1737 * sh-tdep.c (_initialize_sh_tdep): Remove the deprecated 'regs'
1742 * infcmd.c (_initialize_infcmd): Register `j' as an alias for
1747 * linespec.c (iterate_over_all_matching_symtabs): Use the correct
1748 language when iterating over symbols.
1752 * mi/mi-interp.c: Declare mi_tsv_created and mi_tsv_deleted.
1753 (mi_interpreter_init): Call observer_attach_tsv_created and
1754 observer_attach_tsv_deleted.
1755 (mi_tsv_created, mi_tsv_deleted): New.
1756 * tracepoint.c (delete_trace_state_variable): Call
1757 observer_notify_tsv_deleted.
1758 (trace_variable_command): Call observer_notify_tsv_created.
1759 (delete_trace_variable_command): Call
1760 observer_notify_tsv_deleted.
1761 (create_tsv_from_upload): Call observer_notify_tsv_created.
1766 * tracepoint.c (tfind_1): Call observer_notify_traceframe_changed
1767 if traceframe changed.
1768 * mi/mi-cmds.c (mi_cmd mi_cmds): Adjust for command
1770 * mi/mi-interp.c: Declare 'mi_traceframe_changed'.
1771 (mi_interpreter_init): Hook mi_traceframe_changed to observer
1772 'traceframe_changed'.
1773 (mi_traceframe_changed): New.
1774 * mi/mi-main.h (struct mi_suppress_notification) <traceframe>:
1776 * NEWS: Mention the new MI notification.
1780 * MAINTAINERS (Write After Approval): Add "Mike Wrighton".
1784 * common/linux-ptrace.c: Change __i386__ to __i386__ || __x86_64__.
1785 (linux_ptrace_test_ret_to_nx): Extend comment for x86_64. Change
1786 __i386__ to __i386__ || __x86_64__. Extend code also for __x86_64__.
1787 Extend code also for PaX support. Convert all gdb_assert to warning
1792 Implement auto-load user conveniences suggested by Doug Evans.
1793 * auto-load.c: Include top.h.
1794 (file_is_auto_load_safe): New variable advice_printed. Print advice.
1795 (_initialize_auto_load): New variable scripts_directory_help. Mention
1796 GDBPY_AUTO_FILE_NAME and GDB_AUTO_FILE_NAME for set auto-load
1797 scripts-directory. Document in online help one can use also files for
1798 set auto-load safe-path.
1799 * python/py-auto-load.c: (GDBPY_AUTO_FILE_NAME): Move it from here ...
1800 * python/python.h (GDBPY_AUTO_FILE_NAME): ... to here.
1804 * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused definition
1809 * m2-valprint.c (m2_print_array_contents): Eliminate variable
1810 ELTLEN and use TYPE_LENGTH directly.
1811 (m2_val_print): Likewise.
1812 * m68k-tdep.c (m68k_svr4_extract_return_value): Eliminate
1813 variable LEN and use TYPE_LENGTH directly.
1814 (m68k_svr4_store_return_value): Likewise.
1815 * mips-tdep.c (mips_o32_push_dummy_call): Eliminate variable
1816 ARGLEN and use TYPE_LENGTH directly.
1817 (mips_o64_push_dummy_call): Likewise.
1818 * s390-tdep (s390_function_arg_pass_by_reference): Eliminate
1819 variable LENGTH and use TYPE_LENGTH directly.
1820 (s390_function_arg_float): Likewise.
1821 (s390_function_arg_integer): Likewise.
1822 (s390_push_dummy_call): Likewise.
1823 (s390_return_value_convention): Likewise.
1824 * spu-tdep.c (spu_push_dummy_call): Eliminate LEN and use
1825 TYPE_LENGTH directly.
1829 * cli/cli-decode.c (add_setshow_zuinteger_unlimited_cmd): New.
1830 Update comment to add_setshow_integer_cmd.
1831 * cli/cli-setshow.c (do_set_command): Handle case
1832 'var_zuinteger_unlimited'.
1833 (do_show_command): Likewise.
1834 * cli/cli-cmds.c (init_cmds): Call add_setshow_zuinteger_unlimited_cmd
1835 for command 'remotetimeout'.
1836 * command.h (enum var_types): New zuinteger_unlimited. Update comment
1838 * source.c (_initialize_source): Call add_setshow_zuinteger_unlimited_cmd
1839 for command 'set listsize'.
1843 * infrun.c (restore_infcall_suspend_state): Eliminate single-use
1849 * frame.c (skip_inlined_frames): Skip also TAILCALL_FRAME frames.
1850 (frame_pop): Drop also TAILCALL_FRAME frames.
1851 * infcmd.c (finish_command): Ignore also TAILCALL_FRAME frames.
1857 * infrun.c (handle_inferior_event): Do not reverse-continue back to the
1858 function start if we are already at function start. Both for
1859 reverse-next and for reverse-step into function without line number
1864 Code cleanup - rename 'inline' depth to 'artificial' depth.
1865 * breakpoint.c (set_momentary_breakpoint): Rename at a caller to
1866 frame_id_artificial_p, extend the comment.
1867 * dwarf2-frame-tailcall.c (tailcall_frame_this_id): Rename at a user.
1868 * frame.c (fprint_frame_id): Rename at a user, change debug output
1869 text to "artificial=".
1870 (skip_inlined_frames): Rename to ...
1871 (skip_artificial_frames): ... here. Extend the comment.
1872 (get_stack_frame_id, frame_unwind_caller_id): Rename at a caller.
1873 (frame_id_inlined_p): Rename to ...
1874 (frame_id_artificial_p): ... here. Rename at a user.
1875 (frame_id_eq, frame_id_inner, frame_unwind_caller_pc)
1876 (frame_unwind_caller_pc_if_available, frame_unwind_caller_arch): Rename
1878 * frame.h (struct frame_id): Rename inline_depth to artificial_depth.
1880 (frame_id_inlined_p): Rename to ...
1881 (frame_id_artificial_p): ... here.
1882 * inline-frame.c (inline_frame_this_id): Rename at a user.
1886 * c-typeprint.c (c_type_print_varspec_suffix): Display the size of
1887 vector variables using vector_size syntax rather than array
1892 * valarith.c (value_concat): Replace unsafe ALLOCA with
1897 * gdb.1 (SEE ALSO): Expand pointer to GDB's Texinfo manual.
1901 Point contrib/cc-with-tweaks.sh to the build-local data-directory.
1902 * contrib/cc-with-tweaks.sh (GDB): Add -data-directory
1903 data-directory as appropriate.
1907 * printcmd.c (ui_printf): Eliminate single-use variable
1913 * valops.c (value_assign): Move observer_notify_target_changed
1914 below to replace reinit_frame_cache.
1918 Refactor Python "gdb" module into a proper Python package, by
1919 introducing a new "_gdb" module for code implemented in C, and
1920 using reload/__import__ instead of exec.
1921 * python/lib/gdb/__init__.py: Import * from _gdb.
1922 (GdbOutputFile, sys.stdout, GdbOutputErrorFile, sys.stderr,
1923 prompt_hook, sys.argv): Moved from finish_python_initialization.
1924 (pretty_printers, PYTHONDIR): Moved from _initialize_python.
1925 (packages, auto_load_packages): New list and function replacing
1926 module_dict and auto-loading code, using __file__ instead of
1927 gdb.PYTHONDIR and reload/__import__ instead of exec.
1928 (GdbSetPythonDirectory): Replacing function of the same name
1929 from finish_python_initialization, using reload/__import__ instead
1930 of exec, as well as call auto_load_packages.
1931 * python/py-prettyprint.c (find_pretty_printer_from_gdb): Check
1932 gdb_python_module and not gdb_module.
1933 * python/python-internal.h (gdb_python_module): Declare.
1934 * python/python.c (gdb_python_module): New global.
1935 (before_prompt_hook): Check gdb_python_module and not gdb_module.
1936 (_initialize_python): Rename gdb module to _gdb.
1937 Move gdb.PYTHONDIR and gdb.pretty_printer to lib/gdb/__init__.py.
1938 (finish_python_initialization): Move Python code to
1939 lib/gdb/__init__.py; instead, set up sys.path and import gdb into
1944 * Makefile.in (COMMON_OBS): Add registry.o.
1945 * registry.c: New file.
1946 * registry.h (struct registry_container): Declare.
1947 (registry_data_callback): New typedef.
1948 (struct registry_data, struct registry_data_registration, struct
1949 registry_data_registry): New type.
1950 (register_data_with_cleanup, registry_alloc_data)
1951 (registry_callback_adaptor, registry_clear_data)
1952 (registry_container_free_data, registry_set_data, registry_data):
1954 (DEFINE_REGISTRY): Refactor structures and functions as shims over
1955 the new common structures and functions.
1956 (DECLARE_REGISTRY): Declare struct TAG ## _data. Use the tagged
1961 * remote.c (remote_insert_hw_breakpoint): Throw exception if
1962 there is an error inserting hardware breakpoints and use the
1963 error message from the target.
1965 * breakpoint.c (insert_bp_location, insert_breakpoint_locations):
1966 Catch this exception and print the error message contained within. Do not
1967 print the default hardware error breakpoint message in this case.
1971 * dwarf2read.c (dwarf2_read_addr_index): Fix handling the case where
1976 * dwarf2read.c (dw2_do_expand_symtabs_matching): Don't examine
1977 .gdb_index symbol attributes if there are none.
1981 * symtab.h (struct minimal_symbol) [has_size]: New field.
1982 (MSYMBOL_SIZE): Adjust to forbid macro from being used as lvalue.
1983 (SET_MSYMBOL_SIZE, MSYMBOL_HAS_SIZE): New macros.
1984 * printcmd.c (build_address_symbolic): Only filter out zero-sized
1985 minimal symbols if the symbol's size is actually known.
1986 * minsyms.c (prim_record_minimal_symbol_full): Adjust setting
1987 of msymbol's size field. Add comment.
1988 * elfread.c (elf_symtab_read, elf_rel_plt_read): Use
1989 SET_MSYMBOL_SIZE to set the minimal symbol size.
1993 * minsyms.c (install_minimal_symbols): Use memset to fill entire
1994 minimal_symbol struct object, rather than setting some of its
1999 * c-typeprint.c (c_type_print_varspec_prefix): Pass through the
2000 passed_a_ptr flag when displaying typedef types.
2004 * ada-lang.c (coerce_unspec_val_to_type): Make sure that
2005 the optimized_out flag is preserved.
2009 * moxie-tdep.c (moxie_analyze_prologue): Update for function
2010 prologue changes in GCC.
2015 * gdbtypes.h (BOOL_PTR_CONVERSION_BADNESS): Rename to ...
2016 (BOOL_CONVERSION_BADNESS): ... this.
2017 * gdbtypes.c (BOOL_PTR_CONVERSION_BADNESS): Likewise.
2018 (rank_one_type): Allow all boolean conversions
2019 permitted by the standard.
2023 * python/py-newobjfileevent.c (create_new_objfile_event_object):
2024 Don't decref py_objfile.
2028 Do not enable -lmcheck by default when Python is enabled with
2030 * configure.ac: (python_has_threads) New variable, by testing
2031 if WITH_THREAD is defined in Python.h.
2032 Move --enable-lmcheck after --with-python.
2033 Do not enable -lmcheck by default if python_has_threads=yes.
2034 Warn if --enable-lmcheck and python_has_threads=yes.
2035 * configure: Regenerate.
2039 * mi/mi-cmds.c (mi_cmds): New macros DEF_MI_CMD_CLI
2040 DEF_MI_CMD_MI DEF_MI_CMD_CLI_1 and DEF_MI_CMD_CLI_1.
2041 Update some commands.
2042 * mi/mi-cmds.h (struct mi_cmd) <suppress_notification>: New field.
2043 * mi/mi-main.c (mi_cmd_execute): Set '*parse->cmd->suppress_notification'
2048 * mi/mi-cmds.c (mi_cmds): Add 'static'.
2052 * MAINTAINERS (Write After Approval): Add "Khoo Yit Phang".
2056 * main.c (print_gdb_help): Remove reference to
2057 --use-deprecated-index-sections.
2061 * cli/cli-cmds.c (max_user_call_depth): Add 'unsigned'.
2062 (init_cmds): Call add_setshow_uinteger_cmd for command
2063 'max-user-call-depth'.
2064 * cli/cli-script.c (execute_user_command): Add 'unsigned' to the
2065 declaration of 'max_user_call_depth'.
2066 * frame.c (backtrace_limit): Add 'unsigned'.
2067 (_initialize_frame): Call add_setshow_uinteger_cmd for command
2069 * remote.c (remoteaddresssize): Add 'unsigned'.
2070 (remote_address_masked): Change local var 'address_size' to
2072 (_initialize_remote): Call add_setshow_uinteger_cmd for
2073 'remoteaddresssize'.
2074 * top.c (history_size): Add 'unsigned'.
2075 (show_commands): Change local variables to 'unsigned'.
2076 (set_history_size_command): Don't check history_size is negative.
2077 Adjust the condition to call unstifle_history and set history_size
2084 * infcmd.c (default_print_one_register_info): New, factored out
2085 from default_print_registers_info.
2086 (default_print_registers_info): Use it. Mark value unavailable if
2088 (registers_info): Print user registers with
2089 default_print_one_register_info.
2094 * tui/tui-source.c (tui_source_is_displayed): Check if TUI_SRC_WIN
2095 is not NULL before referencing it.
2099 * breakpoint.c (parse_breakpoint_sals) <(*address) == NULL>: New
2100 variable pc. Call find_pc_line instead of find_pc_overlay, restore
2106 * auto-load.c (auto_load_objfile_script): Rename to ...
2107 (auto_load_objfile_script_1): ... here, change variable realname to
2108 parameter realname, document it, add return value, add variable retval.
2109 (auto_load_objfile_script): New function.
2113 * cli/cli-decode.c (print_doc_line): Keep skipping '.' and ',' not
2114 followed by a whitespace.
2119 * dwarf2read.c (dwarf2_locate_sections): Move variable aflag here.
2120 Move the SEC_HAS_CONTENTS check here - for any NAMES use.
2121 (dwarf2_locate_sections) <eh_frame>: Move the variable and check from
2126 * memattr.c (create_mem_region): Fix memory region overlapping
2131 * h8300-tdep.c (h8300_push_dummy_call): Replace unsafe alloca
2132 with xmalloc/cleanup.
2133 * mt-tdep.c (mt_push_dummy_call): Likewise.
2134 * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
2135 * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
2139 * jv-exp.y (push_expression_name): Add "." at the end of error
2144 Document how to return from "python-interactive" to GDB.
2145 * python/python.c (_initialize_python): Update documentation.
2149 * infrun.c (_initialize_infrun) <handle command help text>:
2150 Mention that multiple signals are supported.
2154 * infcmd.c (_initialize_infcmd) <signal command>: Fix typo in help
2159 * tracepoint.c (disconnect_tracing): Call set_tracepoint_num.
2160 (tfind_1): Don't call registers_changed, set_traceframe_num,
2161 and clear_traceframe_info.
2162 Call set_current_traceframe.
2163 (set_current_traceframe): call set_traceframe_num.
2167 * remote-sim.c (_initialize_remote_sim): Pass NULL argument to
2168 `register_inferior_data_with_cleanup', fixing regression on PowerPC64.
2172 Enable readline in Python in a GDB-specific way and block the
2173 standard Python readline module to prevent conflicts with GDB.
2174 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-gdb-readline.o.
2175 (SUBDIR_PYTHON_SRCS): Add python/py-gdb-readline.c.
2176 (py-gdb-readline.o): Add rule to compile python/py-gdb-readline.c.
2177 * python/py-gdb-readline.c: New file.
2178 * python/python-internal.h (gdbpy_initialize_gdb_readline): New
2180 * python/python.c (_initialize_python): Call
2181 gdbpy_initialize_gdb_readline.
2185 * defs.h: Include build-gnulib/config.h
2189 * arm-tdep.c (thumb_get_next_pc_raw): Mask off low bits for bx pc
2194 Add a new "python-interactive" command that starts a standard
2195 Python interactive prompt with "pi" as alias, and add "py" as
2196 an alias to "python".
2197 * NEWS: Mention the new commands.
2198 * python/python.c (eval_python_command): New function.
2199 (python_interactive_command): For "python-interactive" with
2200 arguments, call eval_python_command. For "python-interactive"
2201 without arguments, call PyRun_InteractiveLoop.
2202 (_initialize_python): Add "python-interactive" command with
2203 "pi" as alias, and add "py" as an alias to "python".
2207 * defs.h (quit_flag): Don't declare.
2208 (clear_quit_flag, check_quit_flag, set_quit_flag): Declare.
2209 (QUIT): Use new functions.
2210 * event-top.c (command_handler): Use clear_quit_flag.
2211 (handle_sigint): Use set_quit_flag.
2212 (async_request_quit): Use check_quit_flag. Don't check
2214 * exceptions.c (throw_exception): Use clear_quit_flag.
2215 * main.c (captured_main): Use clear_quit_flag.
2216 * python/python.c (clear_quit_flag, set_quit_flag)
2217 (check_quit_flag): New functions.
2218 * remote-sim.c (gdb_os_poll_quit): Use check_quit_flag,
2220 * remote.c (remote_wait_as): Use check_quit_flag,
2222 (remote_start_remote): Call QUIT.
2223 * symfile.c (load_progress): Use check_quit_flag.
2224 * top.c (command_loop): Use clear_quit_flag.
2225 (command_line_input): Call QUIT.
2226 * utils.c (quit_flag): Conditionally define.
2227 (clear_quit_flag, check_quit_flag, set_quit_flag): New
2229 (prompt_for_continue): Call QUIT. Use quit, not
2231 * remote-mips.c (mips_expect_timeout): Call QUIT.
2232 * monitor.c (monitor_expect): Call QUIT.
2236 * event-top.c (sigwinch_token, handle_sigwinch): Remove.
2237 (async_init_signals): Update.
2238 * utils.c (init_page_info): Don't use SIGWINCH_HANDLER.
2239 (SIGWINCH_HANDLER_BODY): Remove.
2243 * jit.c (jit_object_close_impl): Don't malloc the objfile
2245 * objfiles.c (allocate_objfile): Don't malloc the objfile
2247 (free_objfile): Don't free the objfile name.
2248 * objfiles.h (struct objfile) <name>: Update comment.
2249 * symfile.c (reread_symbols): Fix reference counting. Don't
2250 malloc objfile name.
2254 * windows-nat.c (windows_make_so): Use gdb_bfd_open.
2255 * symfile.c (bfd_open_maybe_remote): Use gdb_bfd_open.
2256 (symfile_bfd_open): Likewise.
2257 (generic_load): Likewise.
2258 * solib.c (solib_bfd_fopen): Use gdb_bfd_open.
2259 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
2261 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
2263 * rs6000-nat.c (add_vmap): Use gdb_bfd_open.
2264 * remote-mips.c (mips_load_srec): Use gdb_bfd_open.
2265 (pmon_load_fast): Likewise.
2266 * remote-m32r-sdi.c (m32r_load): Use gdb_bfd_open.
2267 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_open.
2268 * machoread.c (macho_symfile_read_all_oso): Use gdb_bfd_open.
2269 (macho_check_dsym): Likewise.
2270 * m32r-rom.c (m32r_load): Use gdb_bfd_open.
2271 (m32r_upload_command): Likewise.
2272 * gdb_bfd.h (gdb_bfd_cache): Declare.
2273 * gdb_bfd.c (struct gdb_bfd_data): New.
2274 (gdb_bfd_cache): New global.
2275 (struct gdb_bfd_cache_search): New.
2276 (hash_bfd): New function.
2278 (gdb_bfd_open): Likewise.
2279 (gdb_bfd_ref): Allocate a gdb_bfd_data and attach to the BFD.
2280 (gdb_bfd_unref): Remove closed BFD from cache. Update for
2282 * exec.c (exec_file_attach): Use gdb_bfd_open.
2283 * dsrec.c (load_srec): Use gdb_bfd_open.
2287 * dwarf2read.c (macro_start_file): Update.
2288 * objfiles.c (get_objfile_bfd_data): Initialize macro_cache.
2289 (free_objfile_per_bfd_storage): Destroy macro_cache.
2290 (allocate_objfile, free_objfile): Update.
2291 * objfiles.h (struct objfile_per_bfd_storage) <macro_cache>:
2293 (struct objfile) <macro_cache>: Remove.
2294 * symfile.c (reread_symbols): Update.
2295 * symmisc.c (print_symbol_bcache_statistics): Update.
2296 (print_objfile_statistics): Update.
2300 * elfread.c (elf_symtab_read): Update.
2301 * objfiles.c (objfiles_bfd_data): New global.
2302 (get_objfile_bfd_data, free_objfile_per_bfd_storage)
2303 (objfile_bfd_data_free, set_objfile_per_bfd): New functions.
2304 (allocate_objfile, free_objfile): Update.
2305 (_initialize_objfiles): Initialize objfiles_bfd_data.
2306 * objfiles.h (struct objfile_per_bfd_storage): New.
2307 (struct objfile) <per_bfd>: New field.
2308 <filename_cache>: Remove.
2309 (set_objfile_per_bfd): Declare.
2310 * symfile.c (reread_symbols): Update. Call
2311 set_objfile_per_bfd.
2312 (allocate_symtab): Update.
2313 * symmisc.c (print_symbol_bcache_statistics): Update.
2314 (print_objfile_statistics): Print the size of the BFD obstack.
2318 * gdb_bfd.h: Include registry.h. Use DECLARE_REGISTRY.
2319 * gdb_bfd.c: Use DEFINE_REGISTRY.
2320 (struct gdb_bfd_data): Add REGISTRY_FIELDS.
2321 (gdb_bfd_ref): Call bfd_alloc_data.
2322 (gdb_bfd_unref): Call bfd_free_data.
2326 * registry.h (struct registry_fields): New.
2327 (REGISTRY_FIELDS): Redefine.
2328 (REGISTRY_ACCESS_FIELD): New macro.
2329 (DEFINE_REGISTRY): Add ACCESS argument. Update defined
2334 * auto-load.c (_initialize_auto_load): Update.
2335 * solib-svr4.c (_initialize_svr4_solib): Update
2336 * solib-dsbt.c (_initialize_dsbt_solib): Update.
2337 * solib-darwin.c (_initialize_darwin_solib): Update.
2338 * registry.h: New file.
2339 * python/py-progspace.c (gdbpy_initialize_pspace): Update.
2340 * python/py-inferior.c (gdbpy_initialize_inferior): Update.
2341 * progspace.h: Include registry.h. Use DECLARE_REGISTRY.
2342 (register_program_space_data_with_cleanup)
2343 (register_program_space_data, program_space_alloc_data)
2344 (clear_program_space_data, set_program_space_data)
2345 (program_space_data): Don't declare.
2346 * progspace.c: Use DEFINE_REGISTRY.
2347 (struct program_space_data, struct
2348 program_space_data_registration, struct
2349 program_space_data_registry, program_space_data_registry)
2350 (register_program_space_data_with_cleanup)
2351 (register_program_space_data, program_space_alloc_data)
2352 (program_space_free_data, clear_program_space_data)
2353 (set_program_space_data, program_space_data): Remove.
2354 * objfiles.h: Include registry.h. Use DECLARE_REGISTRY.
2355 (struct objfile) <data, num_data>: Replace with REGISTRY_FIELDS.
2356 (register_objfile_data_with_cleanup, register_objfile_data)
2357 (clear_objfile_data, set_objfile_data, objfile_data): Don't
2359 * objfiles.c: Use DEFINE_REGISTRY.
2360 (struct objfile_data, struct objfile_data_registration, struct
2361 objfile_data_registry, objfile_data_registry)
2362 (register_objfile_data_with_cleanup, register_objfile_data)
2363 (objfile_alloc_data, objfile_free_data, clear_objfile_data)
2364 (set_objfile_data, objfile_data): Remove.
2365 (_initialize_objfiles): Update.
2366 * jit.c (_initialize_jit): Update.
2367 * inflow.c (_initialize_inflow): Update.
2368 * inferior.h: Include registry.h. Use DECLARE_REGISTRY.
2369 (struct inferior) <data, num_data>: Replace with REGISTRY_FIELDS.
2370 (register_inferior_data_with_cleanup, register_inferior_data)
2371 (clear_inferior_data, set_inferior_data, inferior_data): Don't
2373 * inferior.c: Use DEFINE_REGISTRY.
2374 (struct inferior_data, struct inferior_data_registration, struct
2375 inferior_data_registry, inferior_data_registry)
2376 (register_inferior_data_with_cleanup, register_inferior_data)
2377 (inferior_alloc_data, inferior_free_data clear_inferior_data)
2378 (set_inferior_data, inferior_data): Remove.
2379 * auxv.c (_initialize_auxv): Update.
2380 * ada-lang.c (_initialize_ada_language): Update.
2381 * breakpoint.c (_initialize_breakpoint): Update.
2382 * i386-nat.c (i386_use_watchpoints): Update.
2386 * exec.c (exec_close, exec_file_attach): Update.
2387 (add_to_section_table): Initialize 'key' field.
2388 (add_target_sections, remove_target_sections): Add 'key' argument.
2389 * exec.h (add_target_sections, remove_target_sections): Add
2391 * solib.c (solib_map_sections, update_solib_list, clear_solib)
2392 (reload_shared_libraries_1): Update.
2393 * target.h (struct target_section) <key>: New field.
2397 * cli/cli-cmds.c (filter_sals): Handle nelts == 0 case.
2401 * symfile.c (allocate_symtab): Use host_address_to_string
2402 function instead of cast of pointer to long which is not
2403 compatible with x86_64-w64-mingw32 build.
2407 * mips-tdep.c (is_octeon): New function.
2408 (is_octeon_bbit_op): New function.
2409 (mips32_next_pc): Handle Octeon's bbit instructions.
2410 (mips32_instruction_has_delay_slot): Likewise.
2414 * mips-tdep.c (mips32_next_pc): Fix line spacing of the comment
2415 before the function.
2419 * mips-tdep.c (mips32_next_pc): Consolidate calls to itype_op.
2424 * c-typeprint.c (c_type_print_varspec_prefix): Pass
2425 -1 for SHOW to c_type_print_base for METHODPTR and MEMBERPTR.
2429 * Makefile.in (HFILES_NO_SRCDIR): Fix a typo: golang.h -> go-lang.h.
2430 The typo broke "make TAGS".
2439 * gdbtypes.c (strict_type_checking): New variable.
2440 (show_strict_type_checking): New function.
2441 (rank_one_type): Return NS_POINTER_INTEGER_CONVERSION_BADNESS
2442 if strict type checking is disabled.
2443 (_initialize_gdbtypes): Add "check type" subcommand.
2444 * gdbtypes.h (NS_INTEGER_POINTER_CONVERSION_BADNESS): New struct.
2448 * language.h (type_mode): Remove.
2449 (type_check): Remove.
2450 (struct language_defn): Remove la_type_check.
2451 (STRICT_TYPE): Remove unused macro.
2452 (type_error): Remove.
2453 * language.c (set_type_range_case): Renamed to ...
2454 (set_range_case): ... this. Update all callers.
2455 Remove type_mode/type_check.
2456 (type_mode): Remove.
2457 (type_check): Remove.
2458 (show_type_command): Remove.
2459 (set_type_command): Remove.
2460 (language_info): Remove type checking output.
2461 (type_error): Remove unused function.
2462 (range_error): Update comment.
2463 (unknown_language_defn): Remove la_type_check.
2464 (auto_language_defn): Likewise.
2465 (local_language_defn): Likewise.
2466 (_initialize_language): Remove "check type" subcommand.
2467 * ada-lang.c (ada_language_defn): Remove la_type_check.
2468 * c-lang.c (c_language_defn): Likewise.
2469 (cplus_language_defn): Likewise.
2470 (asm_language_defn): Likewise.
2471 (minimal_language_defn): Likewise.
2472 * d-lang.c (d_language_defn): Likewise.
2473 * f-lang.c (f_language_defn): Likewise.
2474 * go-lang.c (go_language_defn): Likewise.
2475 * jv-lang.c (java_language_defn): Likewise.
2476 * m2-lang.c (m2_language_defn): Likewise.
2477 * objc-lang.c (objc_language_defn): Likewise.
2478 * opencl-lang.c (opencl_language_defn): Likewise.
2479 * p-lang.c (pascal_language_defn): Likewise.
2483 * infcmd.c (_initialize_infcmd): Remove trailing ) in next help text.
2487 * ia64-hpux-nat.c (ia64_hpux_get_register_from_save_state_t):
2489 (ia64_hpux_xfer_memory): Check if inferior_ptid is known before
2490 using the regache. Use ia64_hpux_get_register_from_save_state_t
2491 to access the bsp and bspstore registers if not.
2495 * breakpoint.h (detach_breakpoints): pid parameter is now a ptid.
2496 * breakpoint.c (detach_breakpoints): Change pid parameter into
2497 a ptid. Adjust code accordingly.
2498 * infrun.c (handle_inferior_event): Delete variable child_pid.
2499 Update call to detach_breakpoints to pass the child ptid for
2501 * linux-nat.c (linux_nat_iterate_watchpoint_lwps): Remove
2502 assert that inferior_ptid's lwp is zero.
2503 (linux_handle_extended_wait): Update call to detach_breakpoints.
2504 * inf-ttrace.c (inf_ttrace_follow_fork): Update call to
2509 * inf-ttrace.c (inf_ttrace_follow_fork): When following the
2510 parent, only call detach_breakpoints if tts.tts_event ==
2515 * dwarf2-frame.c (dwarf2_frame_cache): Use
2516 get_frame_address_in_block instead of get_frame_pc as
2517 the bound for executing the frame's FDE.
2521 * gdbtypes.h (enum type_code): Define TYPE_CODE_BITSTRING -1.
2522 * arm-tdep.c (arm_type_align): Remove code handling TYPE_CODE_BITSTRING.
2523 * c-typeprint.c (c_type_print_varspec_prefix): Likewise.
2524 (c_type_print_varspec_suffix): Likewise.
2525 * eval.c (evaluate_subexp_standard): Likewise.
2526 * f-typeprint.c (f_type_print_varspec_prefix): Likewise.
2527 (f_type_print_varspec_suffix): Likewise.
2528 * gdbtypes.c (is_scalar_type): Likewise.
2529 (recursive_dump_type): Likewise.
2530 * infcall.c (value_arg_coerce): Likewise.
2531 * m2-valprint.c (m2_val_print): Likewise.
2532 * p-typeprint.c (pascal_type_print_varspec_prefix): Likewise.
2533 (pascal_type_print_varspec_suffix): Likewise.
2534 (pascal_type_print_base): Likewise.
2535 * p-valprint.c (pascal_val_print): Likewise.
2536 (pascal_val_print): Likewise.
2537 * valops.c (value_slice): Likewise.
2538 * valprint.c (scalar_type_p): Likewise.
2539 * valarith.c (value_bitstring_subscript): Remove.
2540 (value_concat): Remove code handling TYPE_CODE_BITSTRING.
2541 Remove comment on TYPE_CODE_BITSTRING.
2543 * stabsread.c (read_type): Don't set TYPE_CODE (type) to
2544 TYPE_CODE_BITSTRING.
2546 * python/py-type.c (pyty_codes): Move ENTRY (TYPE_CODE_BITSTRING) to
2551 * tracepoint.c (trace_find_none_command): Remove.
2552 (_initialize_tracepoint): Call add_alias_cmd for "tfind none".
2556 * remote.c (handle_notification): Remove parameter 'length'.
2557 (putpkt_binary, getpkt_or_notif_sane_1): Caller update.
2561 * gdbtypes.c (opaque_type_resolution): Make static.
2562 Add missing comment.
2563 (overload_debug): Add missing comment.
2564 (show_opaque_type_resolution): Likewise.
2565 (show_overload_debug): Likewise.
2566 (print_bit_vector): Remove unnecessary forward declaration.
2567 (print_arg_types): Likewise.
2568 (dump_fn_fieldlists): Likewise.
2569 (print_cplus_stuff): Likewise.
2573 * gdb_bfd.c (struct gdb_bfd_data) <archive_bfd>: New field.
2574 (gdb_bfd_ref): Initialize new field.
2575 (gdb_bfd_unref): Unref the archive BFD.
2576 (gdb_bfd_openr_next_archived_file): Acquire a reference to the
2582 * python/py-bpevent.c (create_breakpoint_event_object): Update
2584 * python/py-event.c (evpy_add_attribute): Update comment.
2585 * python/py-exitedevent.c (create_exited_event_object): Fix
2586 reference counting and error handling.
2587 * python/py-newobjfileevent.c (create_new_objfile_event_object):
2588 Fix reference counting.
2589 * python/py-signalevent.c (create_signal_event_object): Fix
2590 reference counting and error handling.
2591 * python/py-stopevent.c (emit_stop_event): Fix reference
2593 * python/py-threadevent.c (get_event_thread): Return a
2595 * python/py-type.c (convert_field): Fix reference counting.
2599 * dwarf2read.c (dwarf_decode_macro_bytes)
2600 <DW_MACRO_GNU_transparent_include>: Use pointer to included data
2605 * infcmd.c (_initialize_infcmd): Update help text for the signal,
2606 stepi, nexti, finish, next, step, jump, and continue commands.
2607 * infrun.c (_initialize_infrun): Update help text for the handle
2612 * gdbtypes.c (struct extra): Delete, unused.
2614 * gdbtypes.c: Whitespace cleanup.
2615 (address_space_name_to_int): Remove "extern" from definition.
2616 (_initialize_gdbtypes): Declare with initialize_file_ftype.
2618 * gdbtypes.c (make_pointer_type): Remove redundant setting of
2619 TYPE_POINTER_TYPE (type).
2623 * solib-svr4.c (svr4_free_library_list): Use free_so.
2627 * .gitignore: Add go-exp.c.
2631 * value.c (show_convenience): Tweak comment.
2632 (_initialize_values): Mention convenience functions in the help text
2633 for "show convenience".
2637 * std-operator.def: Remove TERNOP_SLICE_COUNT.
2638 * breakpoint.c (watchpoint_exp_is_const): Remove handling to
2640 * eval.c (evaluate_subexp_standard): Likewise.
2641 * expprint.c (print_subexp_standard): Likewise.
2642 (dump_subexp_body_standard): Likewise.
2643 * parse.c (operator_length_standard): Likewise.
2647 * std-operator.def: Remove OP_BITSTRING.
2648 * breakpoint.c (watchpoint_exp_is_const): Update.
2649 * eval.c (evaluate_subexp_standard): Remove handling to
2651 * expprint.c (print_subexp_standard): Likewise.
2652 (dump_subexp_body_standard): Likewise.
2653 * parse.c (operator_length_standard): Likewise.
2654 * valops.c (value_bitstring): Remove.
2655 * value.h: Remove the declaration of 'value_bitstring'.
2659 * linespec.c (find_methods): Remove unused variables `i1' and
2661 (decode_line_full): Likewise for `arg_start'.
2665 * gdb_bfd.c (gdb_bfd_unref): Remove unused variable `slot'.
2666 (zlib_decompress_section): Likewise for `section_data'.
2667 (gdb_bfd_map_section): Likewise for `buf' and `retbuf'.
2671 Add $_memeq, $_regex, $_streq, $_strlen convenience functions.
2672 * NEWS: Document them.
2673 * data-directory/Makefile.in (PYTHON_FILES): Add function/__init__.py,
2675 * python/py-type.c (typy_array_1): New function.
2676 (typy_array): Call it.
2677 (typy_vector): New function.
2678 (type_object_methods): Add "vector".
2679 * python/lib/gdb/function/__init__.py: New file.
2680 * python/lib/gdb/function/strfns.py: New file.
2684 * python/py-type.c (convert_field): Use gdb_py_long_from_longest
2685 for TYPE_FIELD_BITPOS.
2686 (typy_get_sizeof): Likewise for TYPE_LENGTH.
2691 * common/vec.h (VEC_merge): Define.
2692 (DEF_VEC_ALLOC_FUNC_I): Add a merge helper.
2693 (DEF_VEC_ALLOC_FUNC_P): Likewise.
2694 (DEF_VEC_ALLOC_FUNC_O): Likewise.
2695 * completer.c: Include gdb_signals.h.
2696 (signal_completer): Define.
2697 * completer.h (signal_completer): Add prototype.
2698 * infcmd.c (_initialize_infcmd): Assign the command
2699 completer for "signal" to handle_completer.
2700 * infrun.c: Include completer.h.
2701 (handle_completer): Define.
2702 (_initialize_infrun): Declare a new local variable c. Store the
2703 result of add_com("handle") to it. Assign the command
2704 completer for "handle" to handle_completer.
2708 * cli/cli-decode.c (set_cmd_prefix): New.
2709 (lookup_cmd_for_prefixlist): New.
2710 (add_prefix_cmd): Call set_cmd_prefix and update field 'prefix'
2711 of each cmd_list_element in *prefixlist.
2712 (add_setshow_cmd_full): set_cmd_prefix.
2713 (add_alias_cmd): Likewise.
2714 * cli/cli-decode.h (struct cmd_list_element) <prefix>: New field.
2715 Declare 'auto_boolean_enums'.
2716 * cli/cli-setshow.c: Include "observer.h".
2717 (notify_command_param_changed_p): New.
2718 (add_setshow_auto_boolean_cmd): Move auto_boolean_enums out.
2720 (do_setshow_command): Split it to ...
2721 (do_set_command, do_show_command): ... them. New.
2722 (do_set_command): Call observer_notify_command_param_changed if
2723 notify_command_param_changed_p returns true.
2724 (cmd_show_list): Caller update.
2725 * auto-load.c (set_auto_load_cmd): Likewise.
2726 * remote.c (show_remote_cmd): Likewise.
2727 * cli/cli-setshow.h: Update declarations.
2728 * top.c (execute_command): Call do_set_command and do_show_command.
2730 * NEWS: Mention new MI notification.
2731 * mi/mi-interp.c: Declare mi_command_param_changed.
2732 (mi_interpreter_init): Attach mi_command_param_changed to
2733 observer command_param_changed.
2734 (mi_command_param_changed): New.
2735 Remove mi_suppress_breakpoint_notifications.
2736 Define global variable mi_suppress_notification.
2737 (mi_breakpoint_created): Update.
2738 (mi_breakpoint_deleted): Likewise.
2739 (mi_breakpoint_modified): Likewise.
2740 * mi/mi-main.c (mi_cmd_execute): Likewise. Check command
2741 'gdb-set' and set mi_suppress_notification.
2742 * mi/mi-main.h: (mi_suppress_notification): New struct.
2747 * fbsd-nat.h (fbsd_find_memory_regions): Use find_memory_region_ftype.
2751 * cli/cli-cmds.c (enablebreaklist): Move it to breakpoint.c.
2752 (skiplist): Move it to skip.c.
2753 (init_cmd_lists): Remove code setting enablebreaklist and
2755 * breakpoint.c (enablebreaklist): Moved from cli/cli-cmds.c.
2756 * cli/cli-cmds.h: Remove declaration of enablebreaklist and
2758 * gdbcmd.h: Likewise.
2759 * skip.c (_initialize_step_skip): Move 'skiplist' from
2764 * cli/cli-dump.c: Add 'static' to some cmd_list_element variables.
2765 * gnu-nat.c, symfile.c: Likewise.
2769 * utils.c (prompt_for_continue_wait_time): New static global.
2770 (make_command_stats_cleanup): Initialize it.
2771 (report_command_stats): Subtract time waiting for user.
2772 (prompt_for_continue): Track time waiting for user.
2773 (defaulted_query): Track time waiting for user.
2777 * eval.c (evaluate_subexp_standard): Fix thinko in handling
2779 * expprint.c (print_subexp_standard, case OP_TYPE): New.
2780 (print_subexp_standard, case UNOP_CAST_TYPE): Don't increment pos.
2781 (print_subexp_standard, case UNOP_DYNAMIC_CAST): Ditto.
2782 (print_subexp_standard, case UNOP_REINTERPRET_CAST): Ditto.
2783 (print_subexp_standard, case UNOP_MEMVAL_TYPE): Ditto.
2784 (dump_subexp_body_standard, case UNOP_DYNAMIC_CAST): Don't increment
2786 (dump_subexp_body_standard, case UNOP_REINTERPRET_CAST): Ditto.
2787 (dump_subexp_body_standard, case UNOP_CAST_TYPE): Ditto.
2788 (dump_subexp_body_standard, case UNOP_MEMVAL_TYPE): Ditto.
2789 (dump_prefix_expression): Handle OP_TYPE.
2793 * breakpoint.c (parse_breakpoint_sals): Remove unused variable
2798 * linux-thread-db.c: #include "gdb_vecs.h".
2799 (try_thread_db_load_from_pdir_1): New arg "subdir". All callers
2801 (try_thread_db_load_from_pdir): New arg "subdir". All callers updated.
2802 (thread_db_load_search): Use a vector to iterate over path elements.
2803 Handle text appearing after "$pdir".
2805 * gdb_string.h: Moved to ...
2806 * common/gdb_string.h: ... here.
2807 * common/vec.h: Remove #ifndef GDBSERVER conditional inclusion of
2808 gdb_string.h and gdb_assert.h.
2812 * tic6x-tdep.c (tic6x_register_to_value): Remove.
2813 (tic6x_value_to_register): Likewise.
2814 (tic6x_gdbarch_init): Don't call set_gdbarch_register_to_value
2815 and set_gdbarch_value_to_register.
2821 * defs.h (find_memory_region_ftype): New comment. New arg modified.
2822 * fbsd-nat.c (fbsd_find_memory_regions): Add the passed modified value.
2823 * gcore.c (gcore_create_callback): New function comment. Add modified
2824 parameter. Only write modified regions. Set SEC_READONLY exactly
2825 according to MODIFIED.
2826 (objfile_find_memory_regions): Ignore separate debug info files. Ass
2827 the passed modified value to FUNC.
2828 * gnu-nat.c (gnu_find_memory_regions): Add the passed modified value.
2829 * linux-tdep.c (linux_find_memory_regions): Try to reads smaps file
2830 first. New variables modified and has_anonymous. Parse the lines of
2831 smaps file. Add the passed MODIFIED value to FUNC.
2832 * procfs.c (find_memory_regions_callback): Add the passed modified
2837 * dwarf2-frame.c (clear_pointer_cleanup): New function.
2838 (dwarf2_frame_cache): Use it.
2839 * frame-unwind.h (frame_sniffer_ftype): Document prologue
2840 cache initialization constraint.
2845 * varobj.c (update_dynamic_varobj_children): Don't call
2851 * cli/cli-cmds.c (list_command): Filter 'sals_end'.
2855 * NEWS: New entry for 'cd' default parameters.
2856 * cli/cli-cmds.c (cd_command): Replace error_no_arg by DIR assignment.
2860 * dwarf2-frame.c (dwarf2_frame_cache): Call do_cleanups before
2865 * inf-child.c (inf_child_fileio_pwrite): If pwrite fails, fall back
2866 to attempting lseek/write.
2867 (inf_child_fileio_pread): Likewise for pread.
2871 * dwarf2loc.c (entry_values_debug): Add 'unsigned'.
2872 (_initialize_dwarf2loc): Call add_setshow_zuinteger_cmd instead of
2873 add_setshow_zinteger_cmd.
2874 * dwarf2loc.h: Update the declaration of 'entry_values_debug'.
2875 * dwarf2read.c (dwarf2_die_debug): Add 'unsigned'.
2876 (_initialize_dwarf2_read): Call add_setshow_zuinteger_cmd
2877 instead of add_setshow_zinteger_cmd.
2878 * darwin-nat.c (dwarwin_debug_flag): Add 'unsigned'.
2879 (_initialize_darwin_inferior): Call add_setshow_zuinteger_cmd
2880 instead of add_setshow_zinteger_cmd.
2881 * frame.c (frame_debug): Add 'unsigned'.
2882 (_intialize_frame): Call add_setshow_zuinteger_cmd instead of
2883 add_setshow_zinteger_cmd.
2884 * frame.h: Update the declaration of 'frame_debug'.
2885 * gdbtypes.c (overload_debug): Add 'unsigned'.
2886 (_initialize_gdbtypes): Call add_setshow_zuinteger_cmd instead of
2887 add_setshow_zinteger_cmd.
2888 * inferior.h: Update declaration of 'debug_infrun'.
2889 * infrun.c (debug_infrun): Add 'unsigned'.
2890 (_initialize_infrun): Call add_setshow_zuinteger_cmd instead of
2891 add_setshow_zinteger_cmd.
2892 * jit.c (jit_debug): Add 'unsigned'.
2893 (_initialize_jit): Call add_setshow_zuinteger_cmd instead of
2894 add_setshow_zinteger_cmd.
2895 * linux-nat.c (debug_linux_nat): Add 'unsigned'.
2896 (_initialize_linux_nat): Call add_setshow_zuinteger_cmd
2897 instead of add_setshow_zinteger_cmd.
2898 * linux-thread-db.c (libthread_db_debug): Add 'unsigned'.
2899 (_initialize_thread_db): Call add_setshow_zuinteger_cmd instead of
2900 add_setshow_zinteger_cmd.
2901 * machoread.c (mach_o_debug_level): Add 'unsigned'.
2902 (_initialize_machoread): Call add_setshow_zuinteger_cmd
2903 instead of add_setshow_zinteger_cmd.
2904 * mi/mi-cmd-var.c: Update the declaration of 'varobjdebug'.
2905 * microblaze-tdep.c (microblaze_debug_flag): Add 'unsigned'.
2906 (_initialize_microblaze_tdep): Call add_setshow_zuinteger_cmd
2907 intead of add_setshow_zinteger_cmd.
2908 * mips-tdep.c (mips_debug): Add 'unsigned'.
2909 (_initialize_mips_tdep): Call add_setshow_zuinteger_cmd
2910 instead of add_setshow_zinteger_cmd.
2911 * monitor.c (monitor_debug): Add 'unsigned'.
2912 (_initialize_remote_monitors): Call add_setshow_zuinteger_cmd instead of
2913 add_setshow_zinteger_cmd.
2914 * observer.c (observer_debug): Add 'unsigned'.
2915 (_initialize_observer): Call add_setshow_zuinteger_cmd instead of
2916 add_setshow_zinteger_cmd.
2917 * parse.c (expressiondebug): Add 'unsigned'.
2918 (_initialize_parse): Call add_setshow_zuinteger_cmd instead of
2919 add_setshow_zinteger_cmd.
2920 * record.c (record_debug): Add 'unsigned'.
2921 (_initialize_record): Call add_setshow_zuinteger_cmd instead of
2922 add_setshow_zinteger_cmd.
2923 * record.h: Update the declaration of 'record_debug'.
2924 * stap-probe.c (stap_expression_debug): Add 'unsigned'.
2925 (_initialize_stap_probe): Call add_setshow_zuinteger_cmd instead of
2926 add_setshow_zinteger_cmd.
2927 * serial.c (global_serial_debug_p): Add 'unsigned'.
2928 (_initialize_serial): Call add_setshow_zuinteger_cmd instead of
2929 add_setshow_zinteger_cmd.
2930 * solib-dsbt.c (solib_dsbt_debug): Add 'unsigned'.
2931 (_initialize_dsbt_solib): Call add_setshow_zuinteger_cmd instead of
2932 add_setshow_zinteger_cmd.
2933 * solib-frv.c (solib_frv_debug): Add 'unsigned'.
2934 (_initialize_frv_solib): Call add_setshow_zuinteger_cmd instead of
2935 add_setshow_zinteger_cmd.
2936 * target.c (targetdebug): Add 'unsigned'.
2937 (initialize_targets): Call add_setshow_zuinteger_cmd instead of
2938 add_setshow_zinteger_cmd.
2939 * valops.c (overload_debug): Add 'unsigned'.
2940 * varobj.c (varobjdebug): Add 'unsigned'.
2941 (_initialize_varobj): Call add_setshow_zuinteger_cmd instead of
2942 add_setshow_zinteger_cmd.
2943 * xtensa-tdep.c (xtensa_debug_level): Add 'unsigned'.
2944 (_initialize_xtensa_tdep): Call add_setshow_zuinteger_cmd
2945 instead of add_setshow_zinteger_cmd.
2947 * arch-utils.h: Remove the declaration of 'gdbarch_debug'.
2948 * gdbarch.sh (gdbarch_debug): Add 'unsigned'.
2949 (extern void _initialize_gdbarch): Call add_setshow_zuinteger_cmd
2950 instead of add_setshow_zinteger_cmd.
2951 * gdbarch.c, gdbarch.h: Re-generated.
2955 * nto-tdep.c: Don't include cli/cli-decode.h and
2957 (_initialize_nto_tdep): Remove.
2958 * nto-tdep.h (struct nto_target_ops) <internal_debugging>:
2960 Remove macro nto_internal_debugging.
2964 * configure.tgt (m32c-*-*) [gdb_target_obs]: Remove prologue-value.o.
2965 (mep-*-*) [gdb_target_obs]: Likewise.
2969 * ppc-linux-tdep.c (ppc_linux_init_abi): Register
2970 linux_get_siginfo_type.
2974 * infcall.c (call_function_by_hand): Move BP_ADDR comment to
2976 (call_function_by_hand) <ON_STACK>: Call write_memory with
2977 gdbarch_breakpoint_from_pc, if possible.
2978 (call_function_by_hand) <AT_ENTRY_POINT>: The BP_ADDR comment is moved
2983 * tracepoint.c: Add 'static' for some variables.
2987 * go32-nat.c: Declare _initialize_go32_nat.
2988 * ser-go32.c: Declare _initialize_ser_dos.
2989 * top.c (do_chdir_cleanup): Add 'static'.
2993 * linespec.c (linespec_lex_number): A number followed
2994 by quotes is a valid number, too.
2998 * remote-sim.c (gdb_os_poll_quit): Don't check immediate_quit.
3002 * arm-linux-nat.c (arm_linux_hw_breakpoint_initialize): Do not
3003 attempt to 4-byte-align HW breakpoint addresses for Thumb.
3007 * varobj.c (varobj_invalidate_iter): All varobj must be marked as
3008 invalid or reevaluated to prevent prevent references to possibly
3009 delete'd type objects being left in the varobj.
3014 * copying.awk: Print buffer-read-only and vi ro markers.
3015 * copying.c: Rebuild.
3016 * gdbarch.sh (copyright): Print buffer-read-only and vi ro markers.
3017 * gdbarch.c, gdbarch.h: Rebuild.
3018 * target-descriptions.c (maint_print_c_tdesc_cmd): Print
3019 buffer-read-only and vi ro markers.
3020 * features/arm-with-iwmmxt.c: Rebuild.
3021 * features/arm-with-m-fpa-layout.c: Rebuild.
3022 * features/arm-with-m-vfp-d16.c: Rebuild.
3023 * features/arm-with-m.c: Rebuild.
3024 * features/arm-with-neon.c: Rebuild.
3025 * features/arm-with-vfpv2.c: Rebuild.
3026 * features/arm-with-vfpv3.c: Rebuild.
3027 * features/i386/amd64-avx-linux.c: Rebuild.
3028 * features/i386/amd64-avx.c: Rebuild.
3029 * features/i386/amd64-linux.c: Rebuild.
3030 * features/i386/amd64.c: Rebuild.
3031 * features/i386/i386-avx-linux.c: Rebuild.
3032 * features/i386/i386-avx.c: Rebuild.
3033 * features/i386/i386-linux.c: Rebuild.
3034 * features/i386/i386-mmx-linux.c: Rebuild.
3035 * features/i386/i386-mmx.c: Rebuild.
3036 * features/i386/i386.c: Rebuild.
3037 * features/i386/x32-avx-linux.c: Rebuild.
3038 * features/i386/x32-avx.c: Rebuild.
3039 * features/i386/x32-linux.c: Rebuild.
3040 * features/i386/x32.c: Rebuild.
3041 * features/mips-dsp-linux.c: Rebuild.
3042 * features/mips-linux.c: Rebuild.
3043 * features/mips64-dsp-linux.c: Rebuild.
3044 * features/mips64-linux.c: Rebuild.
3045 * features/rs6000/powerpc-32.c: Rebuild.
3046 * features/rs6000/powerpc-32l.c: Rebuild.
3047 * features/rs6000/powerpc-403.c: Rebuild.
3048 * features/rs6000/powerpc-403gc.c: Rebuild.
3049 * features/rs6000/powerpc-405.c: Rebuild.
3050 * features/rs6000/powerpc-505.c: Rebuild.
3051 * features/rs6000/powerpc-601.c: Rebuild.
3052 * features/rs6000/powerpc-602.c: Rebuild.
3053 * features/rs6000/powerpc-603.c: Rebuild.
3054 * features/rs6000/powerpc-604.c: Rebuild.
3055 * features/rs6000/powerpc-64.c: Rebuild.
3056 * features/rs6000/powerpc-64l.c: Rebuild.
3057 * features/rs6000/powerpc-7400.c: Rebuild.
3058 * features/rs6000/powerpc-750.c: Rebuild.
3059 * features/rs6000/powerpc-860.c: Rebuild.
3060 * features/rs6000/powerpc-altivec32.c: Rebuild.
3061 * features/rs6000/powerpc-altivec32l.c: Rebuild.
3062 * features/rs6000/powerpc-altivec64.c: Rebuild.
3063 * features/rs6000/powerpc-altivec64l.c: Rebuild.
3064 * features/rs6000/powerpc-cell32l.c: Rebuild.
3065 * features/rs6000/powerpc-cell64l.c: Rebuild.
3066 * features/rs6000/powerpc-e500.c: Rebuild.
3067 * features/rs6000/powerpc-e500l.c: Rebuild.
3068 * features/rs6000/powerpc-isa205-32l.c: Rebuild.
3069 * features/rs6000/powerpc-isa205-64l.c: Rebuild.
3070 * features/rs6000/powerpc-isa205-altivec32l.c: Rebuild.
3071 * features/rs6000/powerpc-isa205-altivec64l.c: Rebuild.
3072 * features/rs6000/powerpc-isa205-vsx32l.c: Rebuild.
3073 * features/rs6000/powerpc-isa205-vsx64l.c: Rebuild.
3074 * features/rs6000/powerpc-vsx32.c: Rebuild.
3075 * features/rs6000/powerpc-vsx32l.c: Rebuild.
3076 * features/rs6000/powerpc-vsx64.c: Rebuild.
3077 * features/rs6000/powerpc-vsx64l.c: Rebuild.
3078 * features/rs6000/rs6000.c: Rebuild.
3079 * features/s390-linux32.c: Rebuild.
3080 * features/s390-linux32v1.c: Rebuild.
3081 * features/s390-linux32v2.c: Rebuild.
3082 * features/s390-linux64.c: Rebuild.
3083 * features/s390-linux64v1.c: Rebuild.
3084 * features/s390-linux64v2.c: Rebuild.
3085 * features/s390x-linux64.c: Rebuild.
3086 * features/s390x-linux64v1.c: Rebuild.
3087 * features/s390x-linux64v2.c: Rebuild.
3088 * features/tic6x-c62x-linux.c: Rebuild.
3089 * features/tic6x-c62x.c: Rebuild.
3090 * features/tic6x-c64x-linux.c: Rebuild.
3091 * features/tic6x-c64x.c: Rebuild.
3092 * features/tic6x-c64xp-linux.c: Rebuild.
3093 * features/tic6x-c64xp.c: Rebuild.
3097 * c-exp.y (classify_name): Avoid assignment in condition.
3101 * amd64-windows-tdep.c: Include "frame.h".
3102 (amd64_windows_skip_trampoline_code): New function.
3103 (amd64_windows_init_abi): Add trampoline registration.
3107 * tracepoint.c (cur_traceframe_number): Remove.
3108 (set_tfile_traceframe): Remove.
3109 (tfile_trace_find, tfile_fetch_registers): Update callers.
3110 (tfile_xfer_partial, tfile_get_trace_state_variable_value): Likewise.
3111 (tfile_open, tfile_trace_find): Likewise.
3115 * thread.c (switch_to_thread): Don't call registers_changed.
3119 * Makefile.in (SFILES): Remove objc-exp.y.
3120 (YYFILES): Remove objc-exp.c.
3121 (YYOBJ): Remove objc-exp.o.
3122 (local-maintainer-clean): Don't mention objc-exp.c.
3123 * c-exp.y: Include objc-lang.h.
3124 (%union) <class>: New field.
3125 (NSSTRING, SELECTOR, CLASSNAME, OBJC_LBRAC): New tokens.
3126 (exp): Clone subscript production for OBJC_LBRAC. Add various
3127 Objective C productions.
3128 (msglist, msgarglist, msgarg): New productions.
3129 (array_mod, func_mod, operator): Clone productions for
3131 (parse_string_or_char): Handle '@' strings.
3132 (lex_one_token): Return OBJC_LBRAC. Recognize @selector.
3133 (classify_name): Check la_name_of_this. Recognize ObjC class
3135 * objc-exp.y: Remove.
3136 * objc-lang.c (objc_language_defn): Use c_parse, c_error.
3137 * objc-lang.h (objc_parse, objc_error): Don't declare.
3141 * python/py-inferior.c (infpy_threads): Call update_thread_list ().
3145 * auto-load.c (auto_load_info_scripts): Remove immediate_quit increment
3150 * copying.c: Rebuild.
3151 * copying.awk: Don't use immediate_quit. Use 'no_set_class', not
3156 * symmisc.c (print_symbol_bcache_statistics): Use QUIT, not
3158 (print_objfile_statistics): Likewise.
3159 (maintenance_print_symbols): Likewise.
3160 (maintenance_print_msymbols): Likewise.
3161 (maintenance_print_objfiles): Likewise.
3162 * psymtab.c (print_partial_symbols): Call QUIT.
3163 (maintenance_print_psymbols): Likewise. Don't modify
3165 * copying.c (show_copying_command): Don't modify immediate_quit.
3166 (show_warranty_command): Likewise.
3167 * cli/cli-cmds.c (show_version): Don't modify immediate_quit.
3171 * linespec.c (linespec_lexer_lex_number): The input
3172 is also a valid number if the next character is a comma
3177 * NEWS: Document new --enable-libmcheck/--disable-libmcheck
3182 * machoread.c: Include gdb_bfd.h.
3186 * dwarf2loc.c (locexpr_describe_location_piece): Use uint64_t for
3191 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Expand parameter
3193 (dwarf2_evaluate_loc_desc): Likewise.
3194 (dwarf2_loc_desc_needs_frame): Likewise.
3195 (locexpr_describe_location_1): Likewise.
3196 * dwarf2loc.h (struct dwarf2_locexpr_baton): Make SIZE as
3198 (struct dwarf2_loclist_baton): Likewise.
3199 * dwarf2read.c (struct dwarf_block): Likewise.
3200 (dump_die_shallow): Use pulongest to print dwarf_block.size.
3201 (decode_locdesc): Expand SIZE and I to size_t.
3205 * contrib/cc-with-tweaks.sh: Put into comment path gdb/contrib/.
3209 * doublest.c (convert_doublest_to_floatformat): If the exponent
3210 is too small, treat the value as zero. If the exponent is too
3211 large, treat the value as infinity.
3215 * configure.ac: Add --enable-lmcheck configure option.
3216 * configure: Regenerate.
3220 * NEWS: Mention maint info bfds.
3221 * gdb_bfd.c (all_bfds): New global.
3222 (gdb_bfd_ref, gdb_bfd_unref): Update all_bfds.
3223 (print_one_bfd, maintenance_info_bfds, _initialize_gdb_bfd):
3228 * configure.tgt: Add v850*-*-rtems*.
3232 * macrotab.c (macro_bcache_str): Remove cast.
3236 * linespec.c (linespec_lexer_lex_number): Update comments,
3237 change the return and add check to make sure the input is
3238 the decimal numbers.
3239 (linespec_lexer_lex_one): If linespec_lexer_lex_number return
3240 false, call linespec_lexer_lex_string.
3244 * symfile.c (symbol_file_add): Don't open BFD twice.
3248 * breakpoint.c (create_breakpoint): Store condition for pending
3253 * m68k-tdep.c (m68k_reg_struct_return_p): Accept complex types.
3254 (m68k_return_value): Handle complex types like structures.
3255 (m68k_svr4_return_value): Likewise.
3259 * gdb_bfd.c (zlib_decompress_section) <!HAVE_ZLIB_H>: Adjust
3260 parameters to bfd_get_section_name.
3264 * cli/cli-setshow.c: Handle case 'var_uinteger'
3265 and 'var_zuninteger' together. Handle case 'var_integer' and
3266 'var_zinteger' together.
3270 * linespec.c (convert_linespec_to_sal): Don't add
3271 any symbols to the result vector if symbol_to_sal
3276 * linespec.c (decode_objc): Record the function name
3281 * rs6000-nat.c (add_vmap): Rewrite archive loop. Fix reference
3283 * exec.c (exec_close_1): Unconditionally release vmap's BFD.
3284 (map_vmap): Acquire a reference to the BFD.
3288 * p-valprint.c (pascal_object_print_value): Replace potentially
3289 unsafe alloca with xmalloc/xfree.
3290 * valops.c (search_struct_method): Likewise.
3294 * solib-svr4.c (enable_break): Update.
3295 * bfd-target.h (target_bfd_reopen): Update documentation.
3299 * symfile.c (separate_debug_file_exists): Update.
3300 (gdb_bfd_open_maybe_remote): Rename from bfd_open_maybe_remote.
3301 (reread_symbols): Update.
3302 * elfread.c (build_id_verify): Update.
3303 * symfile.h (gdb_bfd_open_maybe_remote): Rename from
3304 bfd_open_maybe_remote.
3308 * gdb_bfd.c (gdb_bfd_ref, gdb_bfd_unref): Fix comment.
3312 * coffread.c (coff_symfile_read): Make a cleanup for 'debugfile'
3314 * elfread.c (elf_symfile_read): Make a cleanup for 'debugfile'
3316 * jit.c (jit_bfd_try_read_symtab): Make a cleanup for 'nbfd'.
3317 * machoread.c (macho_add_oso_symfile): Make a cleanup for
3319 (macho_symfile_read): Make a cleanup for 'dsym_bfd'.
3320 * objfiles.c (allocate_objfile): Acquire a new reference.
3321 * rs6000-nat.c (add_vmap): Don't acquire a BFD reference.
3322 * solib.c (solib_read_symbols): Don't acquire a BFD reference.
3323 * spu-linux-nat.c (spu_symbol_file_add_from_memory): Make
3324 a cleanup for 'nbfd'.
3325 * symfile-mem.c (symbol_file_add_from_memory): Make a cleanup
3327 * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't
3328 make a cleanup for 'abfd'.
3329 (symbol_file_add): Make a BFD cleanup.
3333 * cli/cli-dump.c (bfd_openr_with_cleanup): Use gdb_bfd_openr.
3334 (bfd_openw_with_cleanup): Use gdb_bfd_openw.
3335 * corelow.c (core_open): Use gdb_bfd_fopen.
3336 * dsrec.c (load_srec): Use gdb_bfd_openr.
3337 * exec.c (exec_file_attach): Use gdb_bfd_fopen.
3338 * gcore.c (gcore_memory_sections): Use gdb_bfd_openw.
3339 * gdb_bfd.c (gdb_bfd_fopen, gdb_bfd_openr, gdb_bfd_openw)
3340 (gdb_bfd_openr_iovec, gdb_bfd_openr_next_archived_file)
3341 (gdb_bfd_fdopenr): New functions.
3342 * gdb_bfd.h (gdb_bfd_fopen, gdb_bfd_openr, gdb_bfd_openw)
3343 (gdb_bfd_openr_iovec, gdb_bfd_openr_next_archived_file)
3344 (gdb_bfd_fdopenr): Declare.
3345 * jit.c (bfd_open_from_target_memory): Use gdb_bfd_openr_iovec.
3346 * m32-rom.c (m32r_load, m32r_upload_command): Use gdb_bfd_openr.
3347 * machoread.c (macho_symfile_read_all_oso): Use gdb_bfd_openr,
3348 gdb_bfd_openr_next_archived_file.
3349 (macho_check_dsym): Use gdb_bfd_openr.
3350 (macho_add_oso_symfile): Don't call gdb_bfd_stash_filename.
3351 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_fdopenr.
3352 * remote-m32r-sdi.c (m32r_load): Use gdb_bfd_openr.
3353 * remote-mips.c (mips_load_srec, pmon_load_fast): Use
3355 * remote.c (remote_bfd_open): Use gdb_bfd_openr_iovec.
3356 * rs6000-nat.c (add_vmap): Use gdb_bfd_openr, gdb_bfd_fdopenr,
3357 gdb_bfd_openr_next_archived_file.
3358 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3360 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
3362 * solib-spu.c (spu_bfd_fopen): Use gdb_bfd_openr_iovec.
3363 * solib.c (solib_bfd_fopen): Use gdb_bfd_fopen.
3364 * spu-linux-nat.c (spu_bfd_open): Use gdb_bfd_openr_iovec.
3365 * symfile.c (bfd_open_maybe_remote): Use gdb_bfd_openr.
3366 (symfile_bfd_open): Use gdb_bfd_fopen.
3367 (generic_load): Use gdb_bfd_openr.
3368 * windows-nat.c (windows_make_so): Use gdb_bfd_openr.
3372 * bfd-target.c (target_bfd_reopen): Update.
3373 * cli/cli-dump.c (bfd_openr_with_cleanup)
3374 (bfd_openw_with_cleanup): Update.
3375 * corelow.c (core_open): Update.
3376 * dsrec.c (load_srec): Update.
3377 * exec.c (exec_file_attach): Update.
3378 * gcore.c (create_gcore_bfd): Update.
3379 * gdb_bfd.c (gdb_bfd_ref): Return void.
3380 (gdb_bfd_open): Update.
3381 * gdb_bfd.h (gdb_bfd_ref): Return void.
3383 * jit.c (jit_bfd_try_read_symtab): Update.
3384 * m32r-rom.c (m32r_load, m32r_upload_command): Update.
3385 * machoread.c (macho_symfile_read_all_oso): Update.
3386 (macho_check_dsym): Update.
3387 * procfs.c (insert_dbx_link_bpt_in_file): Update.
3388 * remote-m32r-sdi.c (m32r_load): Update.
3389 * remote-mips.c (mips_load_srec, pmon_load_fast): Update.
3390 * rs6000-nat.c (add_vmap): Update.
3391 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3393 * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
3394 * solib-spu.c (spu_bfd_open): Update.
3395 * solib.c (solib_bfd_fopen, solib_read_symbols): Update.
3396 * spu-linux-nat.c (spu_bfd_open): Update.
3397 * symfile.c (bfd_open_maybe_remote, symfile_bfd_open)
3398 (generic_load): Update.
3399 * windows-nat.c (windows_make_so): Update.
3403 * sh-tdep.c (sh_treat_as_flt_p): Remove unused variable LEN.
3407 * tilegx-linux-tdep.c (tilegx_linux_sigframe_init): Fix
3408 SIGTRAMP_FRAME unwinding.
3412 * NEWS: Document new options "set/show use-deprecated-index-sections",
3413 and delete reference to --use-deprecated-index-sections.
3414 * symfile.h (use_deprecated_index_sections): Delete.
3415 * dwarf2read.c (use_deprecated_index_sections): Make static.
3416 (read_index_from_section): Update wording of how to load
3417 deprecated index sections.
3418 (_initialize_dwarf2_read): New options
3419 "set/show use-deprecated-index-sections".
3420 * main.c (captured_main): Delete --use-deprecated-index-sections.
3427 * infrun.c (handle_inferior_event) <new thread>: Don't special
3428 case minus_one_ptid.
3429 <TARGET_WAITKIND_SPURIOUS>: Ditto.
3430 * linux-thread-db.c (thread_get_info_callback): Don't return early
3431 if the thread is zombie.
3432 (thread_from_lwp): Change return type to void. Rewrite stale
3434 (attach_thread): Don't return early if the thread is zombie,
3435 instead set its "dying" flag.
3436 (thread_db_wait): Don't return TARGET_WAITKIND_SPURIOUS anymore.
3437 (find_new_threads_callback): Don't return early if the thread is
3442 * linux-nat.c (linux_nat_wait): Dump the passed in target options.
3443 * target.c (target_wait): Likewise.
3444 (str_comma_list_concat_elem, do_option, target_options_to_string):
3446 * target.h (target_options_to_string): Declare.
3451 * dwarf2read.c (dwarf_decode_macros)
3452 <DW_MACRO_GNU_define_indirect_alt, DW_MACRO_GNU_undef_indirect_alt,
3453 DW_MACRO_GNU_transparent_include_alt>: New cases.
3454 (dwarf_decode_macro_bytes) <DW_MACRO_GNU_define_indirect,
3455 DW_MACRO_GNU_undef_indirect>: Examine 'section_is_dwz'.
3459 * dwarf2read.c (try_open_dwo_file): Don't call
3460 gdb_bfd_stash_filename.
3464 * i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr)
3465 (i386_record_lea_modrm, i386_record_push, i386_record_floats)
3466 (i386_process_record): Tweak description comments.
3470 * i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr)
3471 (i386_process_record): Use record_read_memory.
3472 * record.c (record_read_memory): New function.
3473 (record_arch_list_add_mem, record_exec_insn): Use
3475 * record.h (record_read_memory): Declare.
3479 * cli/cli-setshow.c (do_setshow_command): Don't check pointer is
3484 * record.c (record_resume): Ask the target beneath to report all
3489 * dwarf2read.c (dwarf2_ranges_read): Ignore ranges starting at zero if
3490 there's no section at address zero.
3491 (dwarf2_record_block_ranges): Ditto.
3495 * command.h, remote.c: Fix a typo in comment.
3500 * ax-gdb.c (gen_expr) <OP_TYPEOF, OP_DECLTYPE>: New cases.
3501 * breakpoint.c (watchpoint_exp_is_const) <OP_TYPEOF,
3502 OP_DECLTYPE>: New cases.
3503 * c-exp.y (TYPEOF, DECLTYPE): New tokens.
3504 (type_exp): Add new productions.
3505 (ident_tokens): Add __typeof__, typeof, __typeof, __decltype,
3507 * eval.c (evaluate_subexp_standard) <OP_TYPEOF, OP_DECLTYPE>:
3509 * expprint.c (dump_subexp_body_standard) <OP_TYPEOF,
3510 OP_DECLTYPE>: New case.
3511 * parse.c (operator_length_standard) <OP_TYPEOF, OP_DECLTYPE>:
3513 * std-operator.def (OP_TYPEOF, OP_DECLTYPE): New constants.
3514 * varobj.c (varobj_create): Handle OP_TYPEOF, OP_DECLTYPE.
3518 * c-exp.y (enum token_flags): New.
3519 (struct token) <cxx_only>: Remove.
3521 (tokentab3, tokentab2, ident_tokens): Update.
3522 (lex_one_token): Update. Handle FLAG_SHADOW.
3526 * ax-gdb.c (gen_expr): Handle UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE.
3527 * breakpoint.c (watchpoint_exp_is_const): Handle UNOP_CAST_TYPE,
3528 UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST.
3529 * c-exp.y (exp): Emit UNOP_MEMVAL_TYPE, UNOP_CAST_TYPE. Update
3530 for changes to UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST. Use
3531 type_exp production where appropriate.
3532 * eval.c (evaluate_subexp_standard) <UNOP_CAST_TYPE>: New case.
3533 <UNOP_DYNAMIC_CAST, UNOP_REINTERPRET_CAST>: Update.
3534 <UNOP_MEMVAL_TYPE>: New case.
3535 (evaluate_subexp_for_address) <UNOP_MEMVAL_TYPE>: New case.
3536 (evaluate_subexp_for_sizeof) <UNOP_MEMVAL_TYPE>: New case.
3537 * expprint.c (print_subexp_standard) <UNOP_CAST_TYPE>: New case.
3538 <UNOP_MEMVAL_TYPE>: New case.
3539 (dump_subexp_body_standard) <UNOP_DYNAMIC_CAST,
3540 UNOP_REINTERPRET_CAST>: Update.
3541 <UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
3542 * parse.c (operator_length_standard) <UNOP_DYNAMIC_CAST,
3543 UNOP_REINTERPRET_CAST>: Update.
3544 <UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
3545 * stack.c (return_command): Also check for UNOP_CAST_TYPE.
3546 * std-operator.def (UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE): New
3552 * cli/cli-setshow.c (do_setshow_command): Handle case 'var_filename'
3553 and case 'var_optional_filename' together.
3554 * infcmd.c (_initialize_infcmd): Call add_setshow_string_noescape_cmd
3555 instead of add_setshow_optional_filename_cmd for setshow command
3556 'args'. Set completer for 'set args'.
3560 * common/gdb_vecs.h: Moved here from ./gdb_vecs.h.
3561 * common/gdb_vecs.c: New file, contents from utils.c.
3562 * common/host-defs.h: New file, contents from defs.h.
3563 * utils.h: New file, contents from defs.h.
3564 * defs.h: Move all declarations of objects defined in utils.c
3565 to utils.h (except QUIT() and related).
3566 #include "utils.h", "host-defs.h".
3567 * probe.h (probe_p): Move here from gdb_vecs.h.
3568 * symfile.c: #include "probe.h" instead of "gdb_vecs.h".
3569 * utils.c (free_char_ptr_vec): Moved to common/gdb_vecs.c.
3570 (dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): Ditto.
3571 * Makefile.in (SFILES): Add common/gdb_vecs.c.
3572 (HFILES_NO_SRCDIR): Add common/gdb_vecs.h, common/host-defs.h, utils.h.
3573 (COMMON_OBS): Add gdb_vecs.o.
3574 (gdb_vecs.o): New rule.
3578 * linespec.c (add_sal_to_sals): Add LITERAL_CANONICAL
3579 parameter. If non-zero, use SYMNAME as the canonical name
3582 (convert_linespec_to_sals): Use add_sal_to_sals for
3584 (decode_line_full): No need to "fill in missing canonical names"
3585 anymore. Simply make cleanups for the allocated names.
3589 * linespec.c (struct linespec): Constify expression,
3590 source_filename, function_name, and label_name.
3591 (symbol_not_found_error): Make all parameters const.
3592 (linespec_parser_delete): No need to check for NULL
3593 when using xfree. Cast const char * to char * for xfree.
3597 * breakpoint.c (invalid_thread_id_error): New function.
3598 (find_condition_and_thread): Use invalid_thread_id_error.
3599 (watch_command_1): Likewise.
3603 * cc-with-index.sh, cc-with-dwz.sh: Remove.
3604 * contrib/cc-with-tweaks.sh: New file.
3608 * dwarf2read.c (struct dwz_file) <gdb_index>: New field.
3609 (locate_dwz_sections): Recognize .gdb_index.
3610 (create_cus_from_index_list): New function.
3611 (create_cus_from_index): Use it. Handle .dwz data.
3612 (read_index_from_section): New function, extracted from
3614 (dwarf2_read_index): Use it. Read .gdb_index from dwz file,
3619 * dwarf2read.c (struct dwarf2_per_objfile) <dwz_file>: New field.
3620 (struct dwarf2_per_cu_data) <length>: No longer bitfield.
3621 <is_dwz>: New field.
3622 (struct dwz_file): New.
3623 (struct partial_die_info) <is_dwz, spec_is_dwz>: New fields.
3624 (locate_dwz_sections, dwarf2_get_dwz_file)
3625 (get_abbrev_section_for_cu): New functions.
3626 (error_check_comp_unit_head, read_and_check_comp_unit_head)
3627 (read_and_check_type_unit_head): Add abbrev_section argument.
3628 (create_debug_types_hash_table): Update.
3629 (init_cutu_and_read_dies): Use proper abbrev section.
3630 (init_cutu_and_read_dies_no_follow): Likewise.
3631 (set_partial_user): Do nothing if PST==NULL.
3632 (read_comp_units_from_section): New function.
3633 (create_all_comp_units): Use it.
3634 (scan_partial_symbols, partial_die_parent_scope): Update.
3635 (skip_one_die): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
3636 (process_imported_unit_die, read_partial_die): Handle .dwz files.
3637 (find_partial_die): Add offset_in_dwz argument. Update.
3638 (guess_partial_die_structure_name, fixup_partial_die): Update.
3639 (read_attribute_value): Handle DW_FORM_GNU_ref_alt,
3640 DW_FORM_GNU_strp_alt.
3641 (read_indirect_string_from_dwz): New function.
3642 (dwarf2_const_value_attr): Handle DW_FORM_GNU_strp_alt.
3643 (dump_die_shallow): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
3644 (is_ref_attr): Handle DW_FORM_GNU_ref_alt.
3645 (follow_die_offset): Add offset_in_dwz argument.
3646 (follow_die_ref, dwarf2_fetch_die_location_block): Update.
3647 (skip_form_bytes): Handle DW_FORM_GNU_strp_alt.
3648 (dwarf_decode_macro_bytes): Add section_is_dwz argument.
3649 Handle new macro forms.
3650 (dwarf_decode_macros): Update.
3651 (dwarf2_find_containing_comp_unit): Add offset_in_dwz argument.
3652 (dwarf2_per_objfile_free): Unref dwz_bfd, if it exists
3653 (lookup_die_type): Handle DW_FORM_GNU_ref_alt.
3654 (create_debug_types_hash_table): Use correct abbrev section.
3655 (get_debug_line_section): New function.
3656 (dwarf_decode_line_header, dwarf_decode_lines_1): Use it.
3657 (process_full_comp_unit): Pass 'required' argument to
3658 end_symtab_get_static_block.
3659 * buildsym.h (end_symtab_get_static_block): Update.
3660 * buildsym.c (end_symtab_get_static_block): Add 'required'
3662 (end_symtab, end_expandable_symtab): Update.
3666 * dwarf2read.c: Don't include zlib.h or sys/mman.h.
3668 (struct dwarf2_section_info) <map_addr, map_len>: Remove.
3669 (zlib_decompress_section): Remove.
3670 (dwarf2_read_section): Use gdb_bfd_map_section.
3671 (munmap_section_buffer): Remove.
3672 (free_dwo_file, dwarf2_per_objfile_free): Don't use
3673 munmap_section_buffer.
3674 * gdb_bfd.c: Include zlib.h, sys/mman.h.
3675 (struct gdb_bfd_section_data): New.
3676 (free_one_bfd_section): New function.
3677 (gdb_bfd_close_or_warn): Use free_one_bfd_section.
3678 (get_section_descriptor, zlib_decompress_section)
3679 (gdb_bfd_map_section): New functions.
3680 * gdb_bfd.h (gdb_bfd_map_section): Declare.
3684 * dwarf2read.c (try_open_dwo_file): use gdb_bfd_open.
3688 * gdb_bfd.c (struct gdb_bfd_data): New.
3689 (gdb_bfd_cache): New global.
3690 (struct gdb_bfd_cache_search): New.
3691 (hash_bfd, eq_bfd, gdb_bfd_open): New functions.
3692 (gdb_bfd_ref, gdb_bfd_unref): Use gdb_bfd_data.
3693 * gdb_bfd.h (gdb_bfd_open): Declare.
3697 * utils.c (make_cleanup_bfd_unref): Rename from
3698 make_cleanup_bfd_close.
3699 * defs.h (make_cleanup_bfd_unref): Rename from
3700 make_cleanup_bfd_close.
3701 * cli/cli-dump.c (bfd_openr_with_cleanup): Update.
3702 (bfd_openw_with_cleanup): Update.
3703 * corelow.c (core_open): Update.
3704 * dsrec.c (load_srec): Update.
3705 * m32r-rom.c (m32r_load, m32r_upload_command): Update.
3706 * remote-m32r-sdi.c (m32r_load): Update.
3707 * remote-mips.c (mips_load_srec): Update.
3708 (pmon_load_fast): Update.
3709 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3711 (darwin_bfd_open): Update.
3712 * solib.c (solib_bfd_fopen): Update.
3713 * symfile-mem.c (symbol_file_add_from_memory): Update.
3714 * symfile.c (symbol_file_add_with_addrs_or_offsets): Update.
3715 (symfile_bfd_open): Update.
3716 (generic_load): Update.
3720 * remote-mips.c (mips_load_srec): Use make_cleanup_bfd_close.
3721 (pmon_load_fast): Likewise.
3722 * m32r-rom.c (m32r_load): Use make_cleanup_bfd_close.
3723 (m32r_upload_command): Likewise.
3724 * dsrec.c (load_srec): Use make_cleanup_bfd_close.
3725 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3726 Use make_cleanup_bfd_close.
3730 * symfile.c (symfile_bfd_open): Don't copy name. Call
3731 gdb_bfd_stash_filename.
3732 (load_command): Open the new BFD before freeing the old.
3733 (bfd_open_maybe_remote): Call gdb_bfd_stash_filename.
3734 * symfile-mem.c (symbol_file_add_from_memory): Don't copy name.
3735 Call gdb_bfd_stash_filename.
3736 * spu-linux-nat.c (spu_bfd_open): Don't copy name.
3737 * solib-spu.c (spu_bfd_fopen): Don't copy name. Call
3738 gdb_bfd_stash_filename.
3739 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3740 Free found_pathname.
3741 * rs6000-nat.c (add_vmap): Don't copy filename. Call
3742 gdb_bfd_stash_filename.
3743 * remote.c (remote_bfd_open): Call gdb_bfd_stash_filename.
3744 * machoread.c (macho_add_oso_symfile): Call
3745 gdb_bfd_stash_filename.
3746 (macho_symfile_read_all_oso): Arrange to free archive_name. Call
3747 gdb_bfd_stash_filename.
3748 (macho_check_dsym): Don't copy filename. Call
3749 gdb_bfd_stash_filename.
3750 * jit.c (bfd_open_from_target_memory): Don't copy the filename.
3751 * gdb_bfd.c (gdb_bfd_stash_filename): New function.
3752 * gdb_bfd.h (gdb_bfd_stash_filename): Declare.
3753 * gcore.c (create_gcore_bfd): Call gdb_bfd_stash_filename.
3754 * exec.c (exec_close): Don't free the BFD's filename.
3755 (exec_file_attach): Don't copy the filename. Call
3756 gdb_bfd_stash_filename.
3757 * corelow.c (core_close): Don't free the BFD's filename.
3758 (core_open): Call gdb_bfd_stash_filename.
3759 * corefile.c (reopen_exec_file): Remove #if 0 code.
3760 * solib.c (solib_bfd_fopen): Call gdb_bfd_stash_filename. Free
3762 * dwarf2read.c (try_open_dwo_file): Call gdb_bfd_stash_filename.
3766 * dwarf2read.c (try_open_dwo_file): Use gdb_bfd_ref and
3768 (free_dwo_file): Use gdb_bfd_unref.
3769 * cli/cli-dump.c: Include gdb_bfd.h.
3770 (bfd_openw_with_cleanup): Use gdb_bfd_ref.
3771 (bfd_openr_with_cleanup): Likewise.
3772 * windows-nat.c (windows_make_so): Use gdb_bfd_ref,
3774 * utils.c: Include gdb_bfd.h.
3775 (do_bfd_close_cleanup): Use gdb_bfd_unref.
3776 * symfile.c: Include gdb_bfd.h.
3777 (separate_debug_file_exists): Use gdb_bfd_unref.
3778 (bfd_open_maybe_remote): Use gdb_bfd_ref.
3779 (symfile_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
3780 (generic_load): Use gdb_bfd_ref.
3781 (reread_symbols): Use gdb_bfd_unref.
3782 * symfile-mem.c: Include gdb_bfd.h.
3783 (symbol_file_add_from_memory): Use make_cleanup_bfd_close.
3784 * spu-linux-nat.c (spu_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
3785 * solib.c: Include gdb_bfd.h.
3786 (solib_bfd_fopen): Use gdb_bfd_ref.
3787 (solib_bfd_open): Use gdb_bfd_unref.
3788 (free_so_symbols): Use gdb_bfd_unref.
3789 (reload_shared_libraries_1): Use gdb_bfd_unref.
3790 * solib-spu.c: Include gdb_bfd.h.
3791 (spu_bfd_fopen): Use gdb_bfd_ref, gdb_bfd_unref.
3792 * solib-pa64.c (pa64_solib_create_inferior_hook): Use gdb_bfd_ref,
3794 * solib-frv.c: Include gdb_bfd.h.
3795 (enable_break2): Use gdb_bfd_unref.
3796 * solib-dsbt.c: Include gdb_bfd.h.
3797 (enable_break2): Use gdb_bfd_unref.
3798 * solib-darwin.c: Include gdb_bfd.h.
3799 (darwin_solib_get_all_image_info_addr_at_init): Use gdb_bfd_ref,
3801 (darwin_bfd_open): Use gdb_bfd_unref.
3802 * rs6000-nat.c (add_vmap): Use gdb_bfd_ref, gdb_bfd_unref.
3803 * remote-mips.c: Include gdb_bfd.h.
3804 (mips_load_srec): Use gdb_bfd_ref.
3805 (pmon_load_fast): Use gdb_bfd_ref.
3806 * remote-m32r-sdi.c: Include gdb_bfd.h.
3807 (m32r_load): Use gdb_bfd_ref.
3808 * record.c: Include gdb_bfd.h.
3809 (record_save_cleanups): Use gdb_bfd_unref.
3810 (cmd_record_save): Use gdb_bfd_unref.
3811 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_ref,
3813 * objfiles.h (gdb_bfd_close_or_warn): Remove.
3814 (gdb_bfd_ref, gdb_bfd_unref): Move to gdb_bfd.h.
3815 * objfiles.c: Include gdb_bfd.h.
3816 (free_objfile): Use gdb_bfd_unref.
3817 (gdb_bfd_close_or_warn, gdb_bfd_ref, gdb_bfd_unref): Move to
3819 * machoread.c (macho_add_oso_symfile): Use gdb_bfd_unref.
3820 (macho_symfile_read_all_oso): Use gdb_bfd_ref, gdb_bfd_unref.
3821 (macho_check_dsym): Likewise.
3822 * m32r-rom.c: Include gdb_bfd.h.
3823 (m32r_load): Use gdb_bfd_ref.
3824 (m32r_upload_command): Use gdb_bfd_ref.
3825 * jit.c: Include gdb_bfd.h.
3826 (jit_bfd_try_read_symtab): Use gdb_bfd_ref, gdb_bfd_unref.
3827 * gdb_bfd.h: New file.
3828 * gdb_bfd.c: New file.
3829 * gcore.c: Include gdb_bfd.h.
3830 (create_gcore_bfd): Use gdb_bfd_ref.
3831 (do_bfd_delete_cleanup): Use gdb_bfd_unref.
3832 (gcore_command): Use gdb_bfd_unref.
3833 * exec.c: Include gdb_bfd.h.
3834 (exec_close): Use gdb_bfd_unref.
3835 (exec_close_1): Use gdb_bfd_unref.
3836 (exec_file_attach): Use gdb_bfd_ref.
3837 * elfread.c: Include gdb_bfd.h.
3838 (build_id_verify): Use gdb_bfd_unref.
3839 * dsrec.c: Include gdb_bfd.h.
3840 (load_srec): Use gdb_bfd_ref.
3841 * corelow.c: Include gdb_bfd.h.
3842 (core_close): Use gdb_bfd_unref.
3843 (core_open): Use gdb_bfd_ref.
3844 * bfd-target.c: Include gdb_bfd.h.
3845 (target_bfd_xclose): Use gdb_bfd_unref.
3846 (target_bfd_reopen): Use gdb_bfd_ref.
3847 * Makefile.in (SFILES): Add gdb_bfd.c.
3848 (HFILES_NO_SRCDIR): Add gdb_bfd.h.
3849 (COMMON_OBS): Add gdb_bfd.o.
3853 * breakpoint.c (find_condition_and_thread): Initialize
3855 (create_breakpiont): find_condition_and_thread will now
3856 initialize COND_STRING, THREAD, and REST (and TASK).
3857 (addr_string_to_sals): Likewise.
3861 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_NO_HISTORY>:
3862 Pull the single step breakpoints out of the target.
3866 * probe.c (probe_safe_evaluate_at_pc): Rename variable `n_probes'.
3867 * stap-probe.c (compile_probe_arg): Likewise.
3871 * elfread.c (elf_get_probe_argument_count): Remove `objfile' argument.
3872 (elf_compile_to_ax): Likewise.
3873 * infrun.c (insert_exception_resume_from_probe): Likewise.
3874 (check_exception_resume): Remove `objfile' variable.
3875 * probe.c (find_probe_by_pc): Remove `objfile' argument.
3876 (struct probe_and_objfile, probe_and_objfile_s): Delete.
3877 (collect_probes): Adjust return value to `VEC (probe_p) *'.
3878 (compare_entries): Rename to...
3879 (compare_probes): ...this. Adjust function to work with
3880 `struct probe *'. Rename variables `ea' and `eb' to `pa' and `pb'
3882 (gen_ui_out_table_header_info): Adjust `probes' argument to be
3884 (print_ui_out_info): Adjust argument to be `struct probe *'.
3885 (info_probes_for_ops): Adjust internal computations to use
3887 (probe_safe_evaluate_at_pc): Refactor to not pass `objfile' anymore.
3888 * probe.h (struct probe_ops) <get_probe_argument_count, compile_to_ax,
3889 gen_info_probes_table_values>: Remove `objfile' argument.
3890 (struct probe) <objfile>: New field.
3891 (find_probe_by_pc): Remove `objfile' argument.
3892 * stap-probe.c (stap_parse_probe_arguments): Likewise.
3893 (stap_get_probe_argument_count): Likewise.
3894 (stap_get_arg): Likewise.
3895 (stap_evaluate_probe_argument): Likewise.
3896 (stap_compile_to_ax): Likewise.
3897 (compile_probe_arg): Refactor not to pass `objfile' anymore.
3898 (handle_stap_probe): Fill `objfile' field from `struct probe'.
3899 (stap_gen_info_probes_table_header): Remove `objfile' argument.
3900 * symfile.h (struct sym_probe_fns) <sym_evaluate_probe_argument,
3901 sym_compile_to_ax>: Likewise.
3906 * defs.h (GDB_MI_MSG_WIDTH): New.
3907 * ser_base (ser_base_read_error_fd): New function.
3908 (do_ser_base_readchar): Poll error file descriptor as well as
3910 (generic_readchar): Refactor error handling.
3914 * NEWS: Create a new section for the next release branch.
3915 Rename the section of the current branch, now that it has
3920 GDB 7.5 branch created (branch timestamp: 2012-07-18 03:22 UTC)
3921 * version.in: Bump version to 7.5.50.20120718-cvs.
3925 * linespec.c (linespec_parse_line_offset): Make parameter
3931 * f-valprint.c (info_common_command): New variable frame_id.
3932 Reinitialize FI form FRAME_ID after each print_variable_and_value.
3933 * printcmd.c (print_variable_and_value): Extend function comment.
3934 Add comment for invalidated FRAME.
3935 * stack.c (backtrace_command_1): New variable frame_id. Reinitialize
3936 FI form FRAME_ID after each print_frame_local_vars.
3937 (struct print_variable_and_value_data): Change frame to frame_id.
3938 (do_print_variable_and_value): New variable frame, initialize it from
3939 p->frame_id. Add comment for invalidated FRAME.
3940 (print_frame_local_vars, print_frame_arg_vars): New function comment.
3941 Update CB_DATA.FRAME to CB_DATA.FRAME_ID initialization. Add comment
3942 for invalidated FRAME.
3947 * linux-nat.c (linux_nat_detach): Don't unregister from the event
3952 * jv-typeprint.c (c_type_print_varspec_suffix): Don't declare.
3956 * dwarf2read.c (stmt_list_hash): New struct.
3957 (type_unit_group): Embed "per_cu" member, remove pointer.
3958 New union member "t", move member "tus" into it, all uses updated.
3959 New member "hash", replaces member "line_offset, all uses updated.
3960 (quick_file_names): Replace member "offset" with "hash", all uses
3962 (hash_stmt_list_entry, eq_stmt_list_entry): New functions.
3963 (hash_file_name_entry, eq_file_name_entry): Call them.
3964 (hash_type_unit_group, eq_type_unit_group): Ditto.
3965 (dw2_get_cu, dw2_get_primary_cu): Replace assert with a better one.
3966 (dw2_get_file_names_reader): Fix file name table calculation for TUs.
3967 (dw2_get_file_names): Update.
3968 (create_type_unit_group): Replace "per_cu" arg with "cu".
3969 All callers updated. Fix "quick" (.gdb_index) handling.
3970 (get_type_unit_group): Replace "per_cu" arg with "cu".
3971 All callers updated.
3972 (build_type_unit_groups): Don't reset tu_stats.
3974 * symtab.c (filename_seen_cache): Delete members "tab_alloc_size",
3975 "tab_cur_size". Change member "tab" to be a htab_t.
3976 (create_filename_seen_cache): Update.
3977 (clear_filename_seen_cache, delete_filename_seen_cache): Update.
3978 (filename_seen): Update.
3982 * symtab.c (filename_seen): Update comment.
3987 * buildsym.c (end_symtab_1): Split it to ...
3988 (end_symtab_get_static_block): ... this ...
3989 (end_symtab_from_static_block): ... and this function.
3990 (end_symtab, end_expandable_symtab): Call them.
3991 * buildsym.h (end_symtab_get_static_block)
3992 (end_symtab_from_static_block): New declarations.
3993 * dwarf2read.c (process_full_comp_unit): New variable static_block.
3994 Set its valid CU ranges.
3998 * dwarf2loc.c (disassemble_dwarf_expression): Handle
3999 DW_OP_GNU_parameter_ref.
4003 * dwarf2read.c (read_call_site_scope): Do not gdb_assert for invalid
4004 read-in CALL_SITE_PARAMETER_PARAM_OFFSET.
4008 * symtab.c (output_source_filename): Delete unnecessary forward decl.
4009 (filename_seen_cache): New struct.
4010 (INITIAL_FILENAME_SEEN_CACHE_SIZE): New macro.
4011 (create_filename_seen_cache): New function.
4012 (clear_filename_seen_cache, delete_filename_seen_cache): New functions.
4013 (filename_seen): Delete arg "first". New arg "cache". All callers
4015 (output_source_filename_data): New struct.
4016 (output_source_filename): Delete arg "first". New arg "data".
4017 All callers updated.
4018 (sources_info): Delete local "first". New locals "data", "cleanups".
4019 Rewrite to use filename_seen_cache.
4020 (add_partial_filename_data): Delete member "first". New member
4021 "filename_seen_cache". All uses updated.
4022 (make_source_files_completion_list): Rewrite to use
4023 filename_seen_cache.
4027 * psymtab.c (map_symbol_filenames_psymtab): Skip shared psymtabs.
4032 * dwarf2read.c (dwarf2_per_objfile): New members n_type_unit_groups,
4033 all_type_unit_groups, type_unit_groups, tu_stats.
4034 (dwarf2_per_cu_data): Move "imported_symtabs" into new union "s".
4035 All uses updated. Add type_unit_group to union "s".
4036 (type_unit_group): New struct.
4037 (IS_TYPE_UNIT_GROUP): New macro.
4038 (abbrev_table): Delete unused member "section".
4039 (dw2_do_instantiate_symtab): Early exit if type_unit_group.
4040 (dw2_get_cu): Assert not used with type_unit_group.
4041 (dw2_get_primary_cu): New function.
4042 (dw2_build_type_unit_groups_reader): New function.
4043 (dw2_build_type_unit_groups): New function.
4044 (dw2_get_file_names): Assert not called on type units.
4045 (dw2_map_symtabs_matching_filename): Call dw2_build_type_unit_groups.
4046 Redo loop to iterate over type unit groups instead of type units.
4047 (dw2_expand_symtabs_matching, dw2_map_symbol_filenames): Ditto.
4048 (read_abbrev_offset): New function.
4049 (init_cutu_and_read_dies): New arg "abbrev_table". All callers
4051 (create_partial_symtab): New function.
4052 (process_psymtab_comp_unit_reader): Assert not used with type units.
4053 Call create_partial_symtab.
4054 (process_psymtab_type_unit): Delete.
4055 (hash_type_unit_group, eq_type_unit_group): New functions.
4056 (allocate_type_unit_groups_table): New function.
4057 (NO_STMT_LIST_TYPE_UNIT_PSYMTAB): New macro.
4058 (NO_STMT_LIST_TYPE_UNIT_PSYMTAB_SIZE): New macro.
4059 (create_type_unit_group, get_type_unit_group): New functions.
4060 (tu_abbrev_offset): New struct.
4061 (sort_tu_by_abbrev_offset): New function.
4062 (add_type_unit_group_to_table): New function.
4063 (build_type_unit_groups): New function.
4064 (build_type_psymtabs_reader): New function.
4065 (build_type_psymtab_dependencies): New function.
4066 (build_type_psymtabs): Rewrite.
4067 (scan_partial_symbols): Flag an error if a DW_TAG_imported_unit
4068 is seen in a type unit.
4069 (process_queue): Move symtab expansion debugging printfs here.
4070 Call process_full_type_unit for type units.
4071 (compute_symtab_includes): Assert not called for type units.
4072 (process_cu_includes): Don't call compute_symtab_includes for
4074 (process_full_type_unit): New function.
4075 (process_imported_unit_die): Flag an error if called for type units.
4076 (handle_DW_AT_stmt_list): Delete arg "want_line_info". All callers
4077 updated. Assert not called for type units.
4078 (read_file_scope): Call dwarf2_start_symtab.
4079 (setup_type_unit_groups): New function.
4080 (read_type_unit_scope): Rewrite.
4081 (abbrev_table_read_table): Initialize abbrev_table->offset.
4082 (abbrev_table_free_cleanup): New function.
4083 (dwarf2_start_symtab): New function.
4084 (load_full_type_unit): Assert not called for type unit groups.
4085 * buildsym.c (finish_block_internal): New arg "expandable".
4086 All callers updated.
4087 (start_symtab): Move most contents to ...
4088 (restart_symtab): ... here. New function.
4089 (reset_symtab_globals): New function.
4090 (end_symtab_1): Renamed from end_symtab. New arg "expandable".
4091 Call reset_symtab_globals.
4092 (end_symtab, end_expandable_symtab): New functions.
4093 (set_missing_symtab, augment_type_symtab): New functions.
4094 * buildsym.h (end_expandable_symtab): Declare.
4095 (augment_type_symtab, restart_symtab): Declare.
4096 * psympriv.h (struct partial_symtab): New member "anonymous".
4097 * psymtab.c (partial_map_symtabs_matching_filename): Ignore
4099 (read_psymtabs_with_filename): Ditto.
4100 (map_symbol_filenames_psymtab, psymtab_to_fullname): Ditto.
4101 (expand_symtabs_matching_via_partial): Ditto.
4102 (dump_psymtab): Update.
4103 * dictionary.c (dict_add_pending): New function.
4104 * dictionary.h (dict_add_pending): Declare.
4108 * buildsym.c (start_subfile): Remove unnecessary check for
4111 * psymtab.c (allocate_psymtab): Use host_address_to_string.
4113 * dwarf2read.c (load_full_type_unit): Simplify.
4115 * dwarf2read.c (dwarf2_per_objfile): Change type of all_type_units
4116 to struct signatured_type **. All uses updated.
4118 * dwarf2read.c (dwarf2_attr_no_follow): Delete unused arg "cu".
4119 All callers updated.
4123 * c-exp.y (check_parameter_typelist): New function.
4124 (parameter_typelist): Call it.
4125 * eval.c (make_params): Handle '(void)' case.
4126 * gdbtypes.c (lookup_function_type_with_arguments): Handle
4131 * common/linux-ptrace.c: Include gdb_assert.h.
4132 <__i386__> (linux_ptrace_test_ret_to_nx_instr): New declaration.
4133 <__i386__>: Include sys/reg.h, sys/mman.h, signal.h, sys/wait.h and
4135 (linux_ptrace_test_ret_to_nx, linux_ptrace_init_warnings): New
4137 * common/linux-ptrace.h (linux_ptrace_init_warnings): New declarations.
4138 * linux-nat.c (linux_child_post_attach)
4139 (linux_child_post_startup_inferior): Call linux_ptrace_init_warnings.
4143 * linux-thread-db.c (thread_db_find_new_threads_silently): Do not apply
4144 nptl <2.7 bug workaround for core files.
4148 * linux-nat.c (resume_lwp, linux_nat_resume): Remove LP->SIGINFO
4150 (save_siginfo): Remove.
4151 (stop_wait_callback, linux_nat_filter_event): Remove the save_siginfo
4153 (resume_stopped_resumed_lwps): Remove LP->SIGINFO clearing.
4154 (linux_nat_get_siginfo): Use PTRACE_GETSIGINFO.
4155 * linux-nat.h (struct lwp_info): Remove field siginfo.
4159 Code cleanup for the next patch.
4160 * arm-linux-nat.c (arm_linux_stopped_data_address): Change variable
4161 siginfo_p to siginfo, update its users incl. the linux_nat_get_siginfo
4163 * ia64-linux-nat.c (ia64_linux_stopped_data_address): Likewise.
4164 (ia64_linux_stopped_data_address):
4165 * linux-nat.c (linux_nat_get_siginfo): Add parameter siginfo, change
4167 * linux-nat.h (linux_nat_get_siginfo): Likewise.
4168 * ppc-linux-nat.c (ppc_linux_stopped_data_address): Change variable
4169 siginfo_p to siginfo, update its users incl. the linux_nat_get_siginfo
4175 * findcmd.c (parse_find_args): New variable pattern_buf_size_need.
4176 Increase buffer sizes to 2x we need, not just 2x of the previous size.
4180 * c-exp.y (DOTDOTDOT): New token.
4181 (func_mod, exp): Use parameter_typelist.
4182 (parameter_typelist): New production.
4183 (tokentab3): Add "..." token.
4184 * eval.c (make_params): Handle varargs.
4185 * gdbtypes.c (lookup_function_type_with_arguments): Handle
4191 * c-exp.y (%union) <tvec>: Change type.
4192 (func_mod): Now uses <tvec> type.
4193 (exp): Update for tvec change.
4194 (direct_abs_decl): Push the typelist.
4195 (func_mod): Return a typelist.
4196 (nonempty_typelist): Update for tvec change.
4197 * gdbtypes.c (lookup_function_type_with_arguments): New function.
4198 * gdbtypes.h (lookup_function_type_with_arguments): Declare.
4199 * parse.c (pop_type_list): New function.
4200 (push_typelist): New function.
4201 (follow_types): Handle tp_function_with_arguments.
4202 * parser-defs.h (type_ptr): New typedef. Define a VEC.
4203 (enum type_pieces) <tp_function_with_arguments>: New constant.
4204 (union type_stack_elt) <typelist_val>: New field.
4205 (push_typelist): Declare.
4209 * c-exp.y (%union) <type_stack>: New field.
4210 (abs_decl, direct_abs_decl): Use <type_stack> type. Update.
4211 (ptr_operator_ts): New production.
4213 * parse.c (type_stack_reserve): New function.
4214 (check_type_stack_depth): Use it.
4215 (pop_type_stack, append_type_stack, push_type_stack)
4216 (get_type_stack, type_stack_cleanup): New functions.
4217 (follow_types): Handle tp_type_stack.
4218 (_initialize_parse): Simplify initialization.
4219 * parser-defs.h (enum type_pieces) <tp_type_stack>: New
4221 (union type_stack_elt) <stack_val>: New field.
4222 (get_type_stack, append_type_stack, push_type_stack)
4223 (type_stack_cleanup): Declare.
4227 * parser-defs.h (type_stack, type_stack_size, type_stack_depth):
4229 (struct type_stack): New.
4230 * parse.c (type_stack, type_stack_size, type_stack_depth):
4232 (type_stack): New global.
4233 (parse_exp_in_context, check_type_stack_depth)
4234 (insert_into_type_stack, insert_type, push_type, push_type_int)
4235 (insert_type_address_space, pop_type, pop_type_int)
4236 (_initialize_parse): Update.
4240 * c-exp.y (func_mod, direct_abs_decl, abs_decl, ptr_operator):
4245 * c-lang.c (c_printstr): Remove ununsed variable WIDTH.
4250 * cp-valprint.c (cp_print_value): Replace potentially unsafe
4251 alloca with xmalloc/xfree.
4255 * MAINTAINERS (Write After Approval): Add myself to the list.
4259 * dwarf2read.c (dw2_expand_symtabs_matching): Fix typo.
4263 * ax-gdb.c (cli/cli-utils.h): New include.
4264 (linespec.h): Ditto.
4265 (agent_eval_command_one): New function.
4266 (agent_command_1): Ditto.
4267 (agent_command): Call function agent_command_1.
4268 (agent_eval_command): Ditto.
4269 (_initialize_ax_gdb): Change help for "maint agent"
4270 and "maint agent-eval".
4274 * breakpoint.c (check_for_argument): Move to file cli/cli-utils.c.
4275 * cli/cli-utils.c (check_for_argument): New function.
4276 * cli/cli-utils.h (check_for_argument): Ditto.
4280 * NEWS: Mention x32 ABI support.
4284 * amd64-tdep.c (amd64_x32_init_abi): Set sp_regnum_from_eax to
4285 AMD64_RSP_REGNUM and pc_regnum_from_eax to AMD64_RIP_REGNUM.
4287 * i386-tdep.c (i386_gdbarch_init): Initialize sp_regnum_from_eax
4288 and pc_regnum_from_eax to -1. Update SP regnum from
4289 sp_regnum_from_eax and PC regnum from pc_regnum_from_eax if
4292 * i386-tdep.h (gdbarch_tdep): Add sp_regnum_from_eax and
4297 Fix 'warning: parameter has incomplete type' with gcc-3.4.6.
4298 * dwarf2expr.h: Include gdbtypes.h.
4299 (enum call_site_parameter_kind, union call_site_parameter_u): Remove
4300 these forward declarations.
4301 (cu_offset, sect_offset): Move these ...
4302 * gdbtypes.h: Remove include dwarf2expr.h.
4303 (cu_offset, sect_offset): ... here.
4307 * amd64-linux-tdep.c (linux_sigtramp_code): Renamed to ...
4308 (amd64_linux_sigtramp_code): This.
4309 (amd64_x32_linux_sigtramp_code): New.
4310 (LINUX_SIGTRAMP_LEN): Updated.
4311 (amd64_linux_sigtramp_start): Check x32 sigtramp.
4315 * linux-thread-db.c (thread_db_new_objfile): Fix comment typos.
4319 * config.in: Regenerate.
4320 * configure: Regenerate.
4321 * configure.ac: Remove check for gnu/libc-version.h.
4322 * linux-thread-db.c <HAVE_GNU_LIBC_VERSION_H>: Remove include of
4324 (enable_thread_event_reporting) <HAVE_GNU_LIBC_VERSION_H>: Remove
4325 variables libc_version, libc_major and libc_minor. Replace sscanf by
4326 inferior_has_bug. Extend the comment.
4330 * linux-thread-db.c (inferior_has_bug): New function.
4331 (thread_db_find_new_threads_silently): Return boolean as checked by
4332 inferior_has_bug, describe it in the comments.
4333 (try_thread_db_load_1): Move call to thread_db_find_new_threads_silently
4334 earlier. Abort the initialization if it returned non-zero.
4335 (thread_db_new_objfile): Exclude debug files.
4336 (thread_db_find_new_threads_2): Preinitialize ERR. Check errors also
4341 * dwarf2read.c (maybe_queue_comp_unit): Move definition next to others
4342 related to queue management.
4344 * dwarf2read.c (create_debug_types_hash_table): Use "debug dwarf2-read"
4345 instead of "debug dwarf2-die" in debugging printfs.
4346 (create_debug_info_hash_table_reader): Ditto.
4347 (create_debug_info_hash_table): Ditto.
4348 (init_dwo_file): Ditto.
4349 (init_cutu_and_read_dies): Add debugging printf.
4350 (init_cutu_and_read_dies_no_follow): Ditto.
4351 (process_psymtab_comp_unit_reader): Ditto.
4355 Add target-side support for dynamic printf.
4356 * NEWS: Mention the additional style.
4357 * breakpoint.h (struct bp_target_info): New fields tcommands, persist.
4358 (struct bp_location): New field cmd_bytecode.
4359 * breakpoint.c: Include format.h.
4360 (disconnected_dprintf): New global.
4361 (parse_cmd_to_aexpr): New function.
4362 (build_target_command_list): New function.
4363 (insert_bp_location): Call it.
4364 (remove_breakpoints_pid): Skip dprintf breakpoints.
4365 (print_one_breakpoint_location): Ditto.
4366 (dprintf_style_agent): New global.
4367 (dprintf_style_enums): Add dprintf_style_agent.
4368 (update_dprintf_command_list): Add agent case.
4369 (agent_printf_command): New function.
4370 (_initialize_breakpoint): Add new commands.
4371 * common/ax.def (printf): New bytecode.
4372 * ax.h (ax_string): Declare.
4373 * ax-gdb.h (gen_printf): Declare.
4374 * ax-gdb.c: Include cli-utils.h, format.h.
4375 (gen_printf): New function.
4376 (maint_agent_print_command): New function.
4377 (_initialize_ax_gdb): Add maint agent-printf command.
4378 * ax-general.c (ax_string): New function.
4379 (ax_print): Add printf disassembly.
4380 * Makefile.in (SFILES): Add format.c
4381 (COMMON_OBS): Add format.o.
4382 * common/format.h: New file.
4383 * common/format.c: New file.
4384 * printcmd.c: Include format.h.
4385 (ui_printf): Call parse_format_string.
4386 * remote.c (remote_state): New field breakpoint_commands.
4387 (PACKET_BreakpointCommands): New enum.
4388 (remote_breakpoint_commands_feature): New function.
4389 (remote_protocol_features): Add new BreakpointCommands entry.
4390 (remote_can_run_breakpoint_commands): New function.
4391 (remote_add_target_side_commands): New function.
4392 (remote_insert_breakpoint): Call it.
4393 (remote_insert_hw_breakpoint): Ditto.
4394 (_initialize_remote): Add new packet configuration for
4395 target-side breakpoint commands.
4396 * target.h (struct target_ops): New field
4397 to_can_run_breakpoint_commands.
4398 (target_can_run_breakpoint_commands): New macro.
4399 * target.c (update_current_target): Handle
4400 to_can_run_breakpoint_commands.
4404 Execute -ix and -iex only after system and user gdbinit files.
4405 * main.c (captured_main): Move CMDARG_INIT_FILE and CMDARG_INIT_COMMAND
4406 processing down after gdbinit files.
4410 Add fnmatch-gnu module.
4411 * gnulib/Makefile.in (aclocal_m4_deps): Add new files and remove one.
4412 * gnulib/configure.ac (AC_INIT): Use now import/memmem.c.
4413 * gnulib/aclocal.m4: Regenerate.
4414 * gnulib/config.in: Regenerate.
4415 * gnulib/configure: Regenerate.
4416 * gnulib/import/dummy.c: Remove.
4417 * gnulib/import/Makefile.am: Regenerate.
4418 * gnulib/import/Makefile.in: Likewise.
4419 * gnulib/import/m4/gnulib-cache.m4: Likewise.
4420 * gnulib/import/m4/gnulib-comp.m4: Likewise.
4421 * gnulib/import/alloca.c: New file.
4422 * gnulib/import/alloca.in.h: Likewise.
4423 * gnulib/import/config.charset: Likewise.
4424 * gnulib/import/fnmatch.c: Likewise.
4425 * gnulib/import/fnmatch.in.h: Likewise.
4426 * gnulib/import/fnmatch_loop.c: Likewise.
4427 * gnulib/import/localcharset.c: Likewise.
4428 * gnulib/import/localcharset.h: Likewise.
4429 * gnulib/import/m4/alloca.m4: Likewise.
4430 * gnulib/import/m4/codeset.m4: Likewise.
4431 * gnulib/import/m4/configmake.m4: Likewise.
4432 * gnulib/import/m4/fcntl-o.m4: Likewise.
4433 * gnulib/import/m4/fnmatch.m4: Likewise.
4434 * gnulib/import/m4/glibc21.m4: Likewise.
4435 * gnulib/import/m4/localcharset.m4: Likewise.
4436 * gnulib/import/m4/locale-fr.m4: Likewise.
4437 * gnulib/import/m4/locale-ja.m4: Likewise.
4438 * gnulib/import/m4/locale-zh.m4: Likewise.
4439 * gnulib/import/m4/mbrtowc.m4: Likewise.
4440 * gnulib/import/m4/mbsinit.m4: Likewise.
4441 * gnulib/import/m4/mbsrtowcs.m4: Likewise.
4442 * gnulib/import/m4/mbstate_t.m4: Likewise.
4443 * gnulib/import/m4/stdbool.m4: Likewise.
4444 * gnulib/import/m4/wchar_h.m4: Likewise.
4445 * gnulib/import/m4/wctype_h.m4: Likewise.
4446 * gnulib/import/m4/wint_t.m4: Likewise.
4447 * gnulib/import/mbrtowc.c: Likewise.
4448 * gnulib/import/mbsinit.c: Likewise.
4449 * gnulib/import/mbsrtowcs-impl.h: Likewise.
4450 * gnulib/import/mbsrtowcs-state.c: Likewise.
4451 * gnulib/import/mbsrtowcs.c: Likewise.
4452 * gnulib/import/ref-add.sin: Likewise.
4453 * gnulib/import/ref-del.sin: Likewise.
4454 * gnulib/import/stdbool.in.h: Likewise.
4455 * gnulib/import/streq.h: Likewise.
4456 * gnulib/import/strnlen1.c: Likewise.
4457 * gnulib/import/strnlen1.h: Likewise.
4458 * gnulib/import/verify.h: Likewise.
4459 * gnulib/import/wchar.in.h: Likewise.
4460 * gnulib/import/wctype.in.h: Likewise.
4464 Support shell wildcards for 'set auto-load safe-path'.
4465 * auto-load.c: Include fnmatch.h.
4466 (filename_is_in_dir): Rename to ...
4467 (filename_is_in_pattern_1, filename_is_in_pattern): ... here and split
4468 it. Update function comment. Rename dir_len to pattern_len. New
4469 variables filename_len, pattern and filename. Add more DEBUG_AUTO_LOAD
4470 messages. Use gdb_filename_fnmatch.
4471 (filename_is_in_auto_load_safe_path_vec): Rename variable dir to
4473 (_initialize_auto_load): Extend the "set auto-load safe-path" help text.
4474 * defs.h (gdb_filename_fnmatch): New declaration.
4475 * utils.c: Include fnmatch.h.
4476 (gdb_filename_fnmatch): New function.
4480 * breakpoint.c (BREAK_ARGS_HELP): Include help message for the new
4481 `-probe' and `-probe-stap' options.
4485 * breakpoint.c: Removed always_inserted_auto, always_inserted_on,
4486 always_inserted_off, and always_inserted_enums.
4487 Change always_inserted_mode's type to 'enum auto_boolean'.
4488 (show_always_inserted_mode, breakpoint_always_inserted_mode): Update
4490 (_initialize_breakpoint): Call add_setshow_auto_boolean_cmd instead
4491 of add_setshow_enum_cmd.
4492 * infrun.c: Remove can_use_displaced_stepping_auto,
4493 can_use_displaced_stepping_on, can_use_displaced_stepping_off, and
4494 can_use_displaced_stepping_enum.
4495 Change can_use_displaced_stepping's type to 'enum auto_boolean'.
4496 (show_can_use_displaced_stepping, use_displaced_stepping): Update callers.
4497 (_initialize_infrun): Call add_setshow_auto_boolean_cmd instead of
4498 add_setshow_enum_cmd.
4502 * dwarf2read.c (signatured_type): Make "per_cu" member first.
4503 (init_cutu_and_read_dies): Handle rereading a DWO CU while it's
4504 currently being read. Propagate DW_AT_comp_dir to DWO DIE.
4508 * linespec.c: #include "stack.h".
4509 (decode_line_with_current_source): Moved here from symtab.c and
4510 renamed from decode_line_spec. All callers updated.
4511 (decode_line_with_last_displayed): Moved here from breakpoint.c and
4512 renamed from decode_line_spec_1. All callers updated.
4513 * linespec.h (decode_line_with_current_source): Move declaration here
4514 from symtab.h and renamed from decode_line_spec.
4515 (decode_line_with_last_displayed): Move declaration here from symtab.h
4516 and renamed from decode_line_spec_1.
4517 * macrocmd.c: #include "linespec.h".
4518 * symtab.c: Remove #include "linespec.h".
4522 * dwarf2read.c (get_cu_length): New function.
4523 (offset_in_cu_p, error_check_comp_unit_head): Call it.
4524 (create_debug_types_hash_table): Ditto.
4525 (init_cutu_and_read_dies): Ditto.
4526 (init_cutu_and_read_dies_no_follow): Ditto.
4528 * dwarf2read.c (dwarf2_find_base_address): Move definition.
4530 * dwarf2read.c (ABBREV_HASH_SIZE): Remove enclosing #ifndef/#endif.
4531 (struct abbrev_table): Define.
4532 (dwarf2_cu): Replace members dwarf2_abbrevs, abbrev_obstack with
4534 (init_cutu_and_read_dies): Update.
4535 (abbrev_table_alloc_abbrev): New function. Replaces
4536 dwarf_alloc_abbrev. All callers updated.
4537 (abbrev_table_add_abbrev): New function.
4538 (abbrev_table_lookup_abbrev): New function. Replaces
4539 dwarf2_lookup_abbrev. All callers updated.
4540 (abbrev_table_read_table): New function. Contents moved here from
4541 dwarf2_read_abbrevs.
4542 (dwarf2_read_abbrevs): Call it.
4543 (abbrev_table_free): New function.
4544 (dwarf2_free_abbrev_table): Call it.
4548 * osdata.c (info_osdata_command): Filter out "Title" columns
4550 * common/linux-osdata.c (struct osdata_type): Add title field.
4551 (osdata_table): Add titles to each entry.
4552 (linux_command_xfer_osdata): Add a column for title data.
4556 Make logging work for MI.
4558 * interps.h (interp_set_logging_ftype): New typedef.
4559 (struct interp_procs): New field set_logging_proc.
4560 (current_interp_set_logging): Declare.
4561 * interps.c (current_interp_set_logging): New function.
4562 * cli/cli-logging.c: Include interps.h.
4563 (set_logging_redirect): Call current_interp_set_logging.
4564 (pop_output_files): Ditto.
4565 (handle_redirections): Ditto, plus skip ui-out redirect if MI.
4566 * mi/mi-console.h (mi_console_set_raw): Declare.
4567 * mi/mi-console.c (mi_console_set_raw): New function.
4568 * mi/mi-interp.c (saved_raw_stdout): New global.
4569 (mi_set_logging): New function.
4570 (_initialize_mi_interp): Add it to interp procs.
4574 * symtab.c (lookup_symbol_aux_objfile): Use
4575 ALL_OBJFILE_PRIMARY_SYMTABS.
4577 * gdbtypes.c (lookup_typename): Rename local variable "tmp" to "type".
4581 * common/buffer.c: Include inttypes.h and stdint.h.
4582 (buffer_xml_printf): Use PRId64, PRIu64, PRIx64 and PRIo64.
4587 * gdbthread.h (ALL_THREADS): New macro.
4588 (thread_list): Declare.
4589 * infrun.c (handle_inferior_event) <spurious signal>: Don't keep
4590 going, but instead fall through to the stepping handling.
4591 * linux-nat.c (resume_lwp): New parameter 'signo'. Resume with
4592 the passed in signal. Adjust debug output.
4593 (resume_callback): Rename to ...
4594 (linux_nat_resume_callback): ... this. Pass the thread's last
4595 stop signal, if in "pass" state.
4596 (linux_nat_resume): Adjust to rename.
4597 (stop_wait_callback): New assertion. Don't respawn signals;
4598 instead let the LWP remain with SIGNALLED set.
4599 (linux_nat_wait_1): Remove flushing of pending SIGSTOPs.
4600 * remote.c (append_pending_thread_resumptions): New.
4601 (remote_vcont_resume): Call it.
4602 * target.h (target_resume): Extend comment.
4606 * auxv.c (fprint_target_auxv): Handle extended cache data tags.
4610 * dwarf2read.c (dwarf2_cu): Add ranges_base.
4611 Delete have_addr_base, unused. All uses updated.
4612 (init_cutu_and_read_dies): Process DW_AT_GNU_ranges_base.
4613 (dwarf2_get_pc_bounds): Add ranges_base.
4614 (dwarf2_record_block_ranges): Ditto.
4619 * varobj.c (varobj_create): Update.
4620 (varobj_set_value): Update.
4621 * tracepoint.c (validate_actionline): Update.
4622 (encode_actions_1): Update.
4623 * parse.c (parse_exp_1): Add 'pc' argument.
4624 (parse_exp_in_context): Add 'pc' argument. Change how
4625 expression_context_pc is set.
4626 (parse_expression): Update.
4627 (parse_field_expression): Update.
4628 * expression.h (parse_exp_1): Update.
4629 * eval.c (parse_to_comma_and_eval): Update.
4630 * breakpoint.c (set_breakpoint_condition): Update.
4631 (update_watchpoint): Update.
4632 (init_breakpoint_sal): Update
4633 (find_condition_and_thread): Update.
4634 (watch_command_1): Update.
4635 (update_breakpoint_locations): Update.
4636 * ada-lang.c (ada_read_renaming_var_value): Update.
4637 (create_excep_cond_exprs): Update.
4641 * dwarf2read.c (per_cu_header_read_in): Simplify, and handle
4646 * dwarf2read.c (read_and_check_comp_unit_head): Delete unnecessary
4648 (error_check_comp_unit_head): New arg abbrev_section. All callers
4650 (read_and_check_comp_unit_head): Ditto.
4651 (read_and_check_type_unit_head): Ditto.
4655 New attribute 'last' for gdb.Symtab_and_line.
4656 * NEWS (Python Scripting): Add entry about the new attribute.
4657 * python/py-symtab.c (salpy_get_last): New function which
4658 implements the get method for the 'last' attribute of
4659 gdb.Symtab_and_line.
4660 (sal_object_getset): Add entry for the 'last' attribute.
4664 * dwarf2read.c (dwo_section_names): Add macinfo_dwo, macro_dwo.
4665 (dwo_sections): Add macinfo, macro.
4666 (dwarf2_locate_dwo_sections): Watch for macro sections.
4667 (dwarf_decode_macros): Remove args lh, abfd, section, section_name.
4668 All callers updated. Handle DWO files.
4670 * NEWS: Mention new options "set debug dwarf2-read" and
4671 "set debug symtab-create".
4672 * dwarf2read.c (dwarf2_read_debug): New static global.
4673 (dwarf2_build_psymtabs_hard): Add debugging printfs.
4674 (process_queue): Ditto.
4675 (process_full_comp_unit): Ditto.
4676 (_initialize_dwarf2_read): Add new option "set debug dwarf2-read".
4677 * elfread.c (elf_symfile_read): Add debugging printf.
4678 * minsyms.c (install_minimal_symbols): Ditto.
4679 * psymtab.c (allocate_psymtab): Ditto.
4680 * symfile.c (allocate_symtab): Ditto.
4681 * symtab.c (symtab_create_debug): New global.
4682 (_initialize_symtab): Add new option "set debug symtab-create".
4683 * symtab.h (symtab_create_debug): Declare.
4685 * dwarf2read.c (lookup_dwo_comp_unit): Enhance comment.
4686 (lookup_dwo_type_unit): Ditto.
4691 * amd64-linux-nat.c: Include <sys/user.h>.
4692 (ps_get_thread_area): Use PTRACE_PEEKUSER to get fs_base/gs_base
4693 if HAVE_STRUCT_USER_REGS_STRUCT_FS_BASE or
4694 HAVE_STRUCT_USER_REGS_STRUCT_GS_BASE is defined.
4696 * configure.ac: Check if the fs_base and gs_base members of
4697 `struct user_regs_struct' exist.
4698 * config.in: Regenerated.
4699 * configure: Likewise.
4704 * python/python.c (gdbpy_write): Check for interrupted output.
4708 * arm-tdep.c (arm_in_function_epilogue_p): Recognize POP with a single
4709 register as a stack alignment in ARM mode.
4713 Update gnulib to GIT commit a39f53ccb70a613e647e1019fb4c63645220267e.
4714 * gnulib/config.in: Regenerate.
4715 * gnulib/configure: Likewise.
4716 * gnulib/import/m4/extensions.m4: Update it.
4717 * gnulib/import/m4/gnulib-common.m4: Likewise.
4718 * gnulib/import/m4/memmem.m4: Likewise.
4719 * gnulib/import/m4/mmap-anon.m4: Likewise.
4720 * gnulib/import/m4/multiarch.m4: Likewise.
4721 * gnulib/import/stdint.in.h: Likewise.
4725 * corefile.c (write_memory_with_notification): New.
4726 * gdbcore.h: Declare write_memory_with_notification.
4727 * ada-lang.c (ada_value_assign): Replace 'write_memory' and
4728 'observer_notify_memory_changed' with 'write_memory_with_notification'.
4729 * valops.c (value_assign): Likewise.
4730 * python/py-inferior.c (infpy_write_memory): Call
4731 'write_memory_with_notification'.
4735 * cc-with-index.sh: Use also -ex "set auto-load no".
4740 * NEWS: Document additions to .gdb_index.
4741 * dwarf2read.c: #include "gdb/gdb-index.h".
4742 (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): New macro.
4743 (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): New macro.
4744 (DW2_GDB_INDEX_CU_SET_VALUE): New macro.
4745 (dwarf2_read_index): Recognize version 7.
4746 (dw2_do_expand_symtabs_matching): New args want_specific_block,
4747 block_kind, domain): All callers updated.
4748 (dw2_find_symbol_file): Handle new index CU values.
4749 (dw2_expand_symtabs_matching): Match symbol kind if requested.
4750 (add_index_entry): New args is_static, kind. All callers updated.
4751 (offset_type_compare, uniquify_cu_indices): New functions
4752 (symbol_kind): New function.
4753 (write_psymtabs_to_index): Remove duplicate CU values.
4754 (write_psymtabs_to_index): Write .gdb_index version 7.
4758 * configure.ac (build_warnings): Add -Wdeclaration-after-statement.
4759 * configure: Regenerate.
4763 * python/py-inferior.c: Update comments of infpy_read_memory
4764 and infpy_write_memory.
4769 * parser-defs.h (insert_type, insert_type_address_space): Declare.
4770 (push_type_address_space): Remove.
4771 * parse.c (insert_into_type_stack): New function.
4772 (insert_type): Likewise.
4773 (insert_type_address_space): Rename from push_type_address_space.
4774 Insert tp_space_identifier.
4775 * c-exp.y (ptr_operator): New production.
4776 (abs_decl): Use ptr_operator.
4777 (space_identifier): Call insert_type_address_space.
4778 (ptype): Don't use const_or_volatile_or_space_identifier.
4779 (const_or_volatile_noopt): Call insert_type.
4780 (conversion_type_id, conversion_declarator): New productions.
4781 (operator): Use conversion_type_id.
4785 * symtab.h (minimal_symbol): New member created_by_gdb.
4786 * elfread.c (elf_symtab_read): Set created_by_gdb for @plt minsym
4788 * symtab.c (lookup_symbol_in_objfile_from_linkage_name): New function.
4789 (search_symbols): Call it instead of lookup_symbol.
4790 Skip symbols created by gdb. Only scan minsyms if nfiles == 0.
4792 * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_const_index.
4793 Adjust address for DW_OP_GNU_addr_index.
4794 * dwarf2expr.h (dwarf_expr_context): Update comment.
4795 * dwarf2loc.c (locexpr_describe_location_piece): New arg per_cu,
4796 all callers updated. Handle TLS vars described with
4797 DW_OP_GNU_const_index.
4798 (disassemble_dwarf_expression): Handle DW_OP_GNU_addr_index
4799 and DW_OP_GNU_const_index.
4800 * dwarf2read.c (decode_locdesc): Handle DW_OP_GNU_addr_index.
4802 * block.c (find_block_in_blockvector): Make explicit the fact that we
4803 ignore GLOBAL_BLOCK.
4807 * c-exp.y (operator): Remove trailing space after "delete" and
4813 Switch i386 and derived targets to ON_STACK.
4814 * amd64-dicos-tdep.c (amd64_dicos_push_dummy_code): Remove.
4815 (amd64_dicos_init_abi): Remove its installment.
4816 * dicos-tdep.c (dicos_init_abi): Remove the
4817 set_gdbarch_call_dummy_location call. Update the comment here.
4818 * i386-dicos-tdep.c (i386_dicos_push_dummy_code): Remove.
4819 (i386_dicos_init_abi): Remove its installment.
4820 * i386-tdep.c (i386_push_dummy_code): New function.
4821 (i386_gdbarch_init): Call set_gdbarch_call_dummy_location, install
4822 i386_push_dummy_code.
4826 Remove stale dummy frames.
4827 * breakpoint.c: Include dummy-frame.h.
4828 (longjmp_breakpoint_ops): New variable.
4829 (update_breakpoints_after_exec, breakpoint_init_inferior): Delete also
4830 bp_longjmp_call_dummy.
4831 (bpstat_what, bptype_string, print_one_breakpoint_location)
4832 (init_bp_location): Support bp_longjmp_call_dummy.
4833 (set_longjmp_breakpoint): Use longjmp_breakpoint_ops. Comment why.
4834 (set_longjmp_breakpoint_for_call_dummy)
4835 (check_longjmp_breakpoint_for_call_dummy, longjmp_bkpt_dtor): New
4837 (initialize_breakpoint_ops): Initialize longjmp_breakpoint_ops.
4838 * breakpoint.h (enum bptype): New item bp_longjmp_call_dummy. Delete
4839 FIXME comment and extend the other comment for bp_call_dummy.
4840 (set_longjmp_breakpoint_for_call_dummy)
4841 (check_longjmp_breakpoint_for_call_dummy): New declarations.
4842 * dummy-frame.c: Include gdbthread.h.
4843 (pop_dummy_frame_bpt): New function.
4844 (pop_dummy_frame): Call pop_dummy_frame_bpt.
4845 (dummy_frame_discard): New function.
4846 (cleanup_dummy_frames): Update the comment about longjmps.
4847 * dummy-frame.h (dummy_frame_discard): New declaration.
4848 * gdbthread.h (struct thread_info): Extend initiating_frame comment.
4849 * infcall.c (call_function_by_hand): New variable longjmp_b. Call
4850 set_longjmp_breakpoint_for_call_dummy. Chain its breakpoints with BPT.
4851 * infrun.c (handle_inferior_event) <BPSTAT_WHAT_CLEAR_LONGJMP_RESUME>:
4852 Add case 4 comment. Call check_longjmp_breakpoint_for_call_dummy and
4853 keep_going if IS_LONGJMP and there is no other reason to stop.
4857 * remote-sim.c (sim_command_completer): Initialize
4862 * dwarf2expr.c (execute_stack_op): Support DW_OP_GNU_parameter_ref.
4863 * dwarf2loc.c (call_site_parameter_matches): Support
4864 CALL_SITE_PARAMETER_PARAM_OFFSET.
4865 (needs_dwarf_reg_entry_value): Push stub value.
4866 * dwarf2read.c (read_call_site_scope): New variable origin. Support
4867 CALL_SITE_PARAMETER_PARAM_OFFSET and its DW_AT_abstract_origin.
4868 * gdbtypes.h (enum call_site_parameter_kind): New item
4869 CALL_SITE_PARAMETER_PARAM_OFFSET.
4870 (struct call_site.parameter.u): New field param_offset.
4874 Code cleanup: Generalize call_site.parameter key.
4875 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_entry_value>: Remove
4876 variable dwarf_reg. New variable kind_u. Update parameters to
4877 push_dwarf_reg_entry_value.
4878 (ctx_no_push_dwarf_reg_entry_value): Update parameters.
4879 * dwarf2expr.h (enum call_site_parameter_kind)
4880 (union call_site_parameter_u): Forward declarations.
4881 (struct dwarf_expr_context_funcs): Update parameters and their
4882 description for push_dwarf_reg_entry_value.
4883 (ctx_no_push_dwarf_reg_entry_value): Update parameters.
4884 * dwarf2loc.c (call_site_parameter_matches): New function.
4885 (dwarf_expr_reg_to_entry_parameter): Update parameters and their
4886 description. Use call_site_parameter_matches.
4887 (dwarf_expr_push_dwarf_reg_entry_value, value_of_dwarf_reg_entry):
4888 Update parameters and their description.
4889 (value_of_dwarf_block_entry): Remove variables dwarf_reg and fb_offset.
4890 New variable kind_u. Adjust the caller for updated parameters.
4891 (needs_dwarf_reg_entry_value): Update parameters.
4892 * dwarf2read.c (read_call_site_scope): New variable loc. Use it
4893 instead of attr. Update for the changed fields of struct
4894 call_site_parameter.
4895 * gdbtypes.h: Include dwarf2expr.h.
4896 (enum call_site_parameter_kind): New.
4897 (struct call_site.parameter): New field kind. Wrap dwarf_reg and
4898 fb_offset into new union u.
4902 * amd64-tdep.c (amd64_x32_analyze_stack_align): New function.
4903 (amd64_analyze_prologue): Call amd64_x32_analyze_stack_align
4908 * amd64-linux-nat.c (compat_x32_clock_t): New.
4909 (compat_x32_siginfo_t): Likewise.
4910 (compat_x32_siginfo_from_siginfo): Likewise.
4911 (siginfo_from_compat_x32_siginfo): Likewise.
4912 (amd64_linux_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
4913 and siginfo_from_compat_x32_siginfo for x32.
4917 * tracepoint.c (tfile_xfer_partial): Add a lseek.
4921 * amd64-linux-nat.c (ps_get_thread_area): Check bits_per_word
4922 instead of gdbarch_ptr_bit.
4923 * amd64-nat.c (amd64_native_gregset_reg_offset): Likewise.
4924 (amd64_supply_native_gregset): Likewise.
4925 (amd64_collect_native_gregset): Likewise.
4926 * amd64-tdep.c (amd64_supply_fxsave): Likewise.
4927 (amd64_supply_xsave): Likewise.
4928 (amd64_collect_fxsave): Likewise.
4929 (amd64_collect_xsave): Likewise.
4933 * amd64-linux-nat.c (AMD64_LINUX_X32_DS): New.
4934 (amd64_linux_read_description): Check DS segment register for
4939 * dwarf2read.c (dw2_find_symbol_file): Unconditionally use
4940 init_cutu_and_read_dies.
4944 * MAINTAINERS (Write After Approval): Add myself to the list.
4948 * valops.c (value_find_oload_method_list): Now static.
4949 * value.h (value_find_oload_method_list): Don't declare.
4953 * valops.c (find_overload_match): Use value_ind.
4957 * infrun.c (handle_inferior_event): Correct indentation.
4961 * dwarf2loc.c (debug_loc_kind): Add DEBUG_LOC_START_LENGTH.
4962 (DEBUG_LOC_START_END): Renamed from DEBUG_LOC_NORMAL.
4964 (decode_debug_loc_dwo_addresses): New arg "byte_order". All callers
4965 updated. Handle DEBUG_LOC_START_LENGTH.
4966 (dwarf2_find_location_expression): Handle DEBUG_LOC_START_LENGTH.
4967 (loclist_describe_location): Ditto.
4972 * infrun.c (handle_inferior_event): Re-fetch frame and gdbarch
4973 after hiding inline functions.
4977 * inf-ttrace.c (_initialize_hppa_hpux_nat): Rename into
4978 _initialize_inf_ttrace.
4982 * ia64-hpux-nat.c (_initialize_ia64_hpux_nat): Renames
4983 _initialize_hppa_hpux_nat.
4987 * remote-sim.c (sim_command_completer): Change type of return
4988 value to "VEC (char_ptr) *". Adjust implementation accordingly.
4994 * i386-tdep.c (i386_push_dummy_call): Unconditionally align the
4995 stack on a 16-byte boundary.
4999 * jit.c (finalize_symtab): Set function's return type to 'void' by
5005 * amd64-linux-tdep.c (amd64_linux_init_abi_common): New function.
5006 Move bits common to both the classic LP64 and the new x32 ILP32
5008 (amd64_linux_init_abi): Call amd64_linux_init_abi_common.
5009 (amd64_x32_linux_init_abi): New function.
5010 (_initialize_amd64_linux_tdep): Register osabi for bfd_mach_x64_32
5013 * i386-tdep.h (i386_pseudo_register_name): New prototype.
5014 * i386-tdep.c (i386_pseudo_register_name): Make public.
5015 * amd64-tdep.h (amd64_x32_init_abi): New prototype.
5016 * amd64-tdep.c (amd64_dword_names): Add "eip".
5017 (amd64_x32_pseudo_register_type): New function
5018 (amd64_x32_init_abi): New function.
5023 * inferior.h (struct inferior_suspend_state): Comment out.
5024 (struct inferior): Comment out the field suspend.
5025 * infrun.c (struct infcall_suspend_state): Comment out the field
5027 (save_infcall_suspend_state, restore_infcall_suspend_state): Comment
5032 PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
5033 * c-exp.y (classify_inner_name): Remove caller assumptions in the
5034 function comment. Return ERROR for unresolved cases. Implement
5035 returning proper NAME.
5036 (yylex): Accept also NAME from classify_inner_name.
5037 * cp-namespace.c (cp_lookup_nested_type): Rename to ...
5038 (cp_lookup_nested_symbol): ... here. Return any found symbol, not just
5040 * cp-support.h (cp_lookup_nested_type): Update its declaration.
5044 * breakpoint.c (condition_completer): New function.
5045 (_initialize_breakpoint): Use it.
5046 * value.c (complete_internalvar): New function.
5047 * value.h (complete_internalvar): Declare.
5051 * ada-lang.c (ada_make_symbol_completion_list): Return a VEC.
5052 * breakpoint.c (catch_syscall_completer): Return a VEC.
5053 * cli/cli-cmds.c (complete_command): Update.
5054 * cli/cli-decode.c (complete_on_cmdlist): Return a VEC.
5055 (complete_on_enum): Likewise.
5056 * command.h: Include gdb_vecs.h.
5057 (completer_ftype): Change return type.
5058 (complete_on_cmdlist, complete_on_enum): Likewise.
5059 * completer.c (noop_completer, filename_completer)
5060 (location_completer): Return a VEC.
5061 (add_struct_fields): Remove 'nextp' argument. Change 'output'
5063 (expression_completer, complete_line_internal, complete_line)
5064 (command_completer): Return a VEC.
5065 (gdb_completion_word_break_characters, line_completion_function):
5067 * completer.h: Include gdb_vecs.h.
5068 (complete_line, noop_completer, filename_completer)
5069 (expression_completer, location_completer, command_completer):
5071 * f-lang.c (f_word_break_characters): Return a VEC.
5072 * interps.c (interpreter_completer): Return a VEC.
5073 * language.h (struct language_defn)
5074 <la_make_symbol_completion_list>: Return a VEC.
5075 * python/py-cmd.c (cmdpy_completer): Return a VEC.
5076 * symtab.c (free_completion_list): Take a VEC.
5077 (return_val_size, return_val_index): Remove.
5078 (return_val): Now a VEC.
5079 (completion_list_add_name): Update.
5080 (default_make_symbol_completion_list_break_on)
5081 (default_make_symbol_completion_list, make_symbol_completion_list)
5082 (make_symbol_completion_list_fn, make_file_symbol_completion_list):
5084 (add_filename_to_list): Update.
5085 (struct add_partial_filename_data) <list_used, list_alloced>: Remove.
5087 (maybe_add_partial_symtab_filename): Update.
5088 (make_source_files_completion_list): Return a VEC.
5089 * symtab.h (default_make_symbol_completion_list_break_on)
5090 (default_make_symbol_completion_list, make_symbol_completion_list)
5091 (make_symbol_completion_list_fn, make_file_symbol_completion_list)
5092 (make_source_files_completion_list): Update.
5096 * breakpoint.c (add_catch_command): Use completer_ftype.
5097 * breakpoint.h: Include command.h.
5098 (add_catch_command): Use completer_ftype.
5099 * cli/cli-decode.c (set_cmd_completer): Use completer_ftype.
5100 * cli/cli-decode.h (struct cmd_list_element) <completer>:
5101 Use completer_ftype.
5102 * command.h (completer_ftype): New typedef.
5103 (set_cmd_completer): Use it.
5104 * python/py-cmd.c (struct cmdpy_completer) <completer>: Use
5109 Partial revert of previous change.
5111 * serial.c (scb_base): New global.
5112 (serial_for_fd): New.
5113 (serial_open, serial_fdopen_ops): Link new serial in open serials
5115 (do_serial_close): Unlink serial from the open serials chain.
5119 * infrun.c (infrun_thread_stop_requested_callback): Don't switch
5121 (prepare_for_detach): No longer context switch here in non-stop
5123 (fetch_inferior_event): Ditto.
5124 (handle_inferior_event) <STOP_QUIETLY || NO_STOP_QUIETLY>: Switch
5125 to the event thread before removing breakpoints. Switch to the
5126 event thread before inserting breakpoints and resuming.
5127 (handle_inferior_event) <TARGET_WAITKIND_SPURIOUS>: Switch to the
5128 event thread before resuming.
5129 (handle_inferior_event) <stepping_past_singlestep_breakpoint>:
5130 Switch to the event thread before removing breakpoints.
5134 * infcmd.c (construct_inferior_arguments) [__MINGW32__]: Quote
5135 special characters correctly for the Windows shells. See
5136 http://sourceware.org/ml/gdb/2012-06/msg00047.html for the bug
5138 [!__MINGW32__]: Remove extra double quote character from special
5143 * ui-out.h: Remove #if 0 declarations.
5144 * ui-out.c: Remove #if 0 functions.
5148 * ser-base.c (run_async_handler_and_reschedule): New.
5149 (fd_event, push_event): Use it.
5150 * serial.c (serial_open, serial_fdopen_ops): Set the initial
5151 reference count to 1.
5152 (do_serial_close): Set the bufp field to NULL. Use serial_unref
5154 (serial_is_open, serial_ref, serial_unref): New.
5155 * serial.h (serial_open): Adjust comment.
5156 (serial_is_open): Declare.
5157 (serial_close): Adjust comment.
5158 (serial_ref, serial_unref) Declare.
5159 (struct serial): New field 'refcnt'.
5163 Remove #if 0'd "connect" command, and unnecessary associated
5164 refcounting and serial reuse bits.
5166 * serial.h (struct serial): Remove fields 'next' and 'refcnt'.
5167 * serial.c (last_serial_opened): Delete.
5169 (serial_open): Adjust.
5170 (serial_for_fd): Delete.
5171 (serial_fdopen_ops, do_serial_close): Adjust.
5172 (serial_fdopen_ops): Adjust.
5176 * serial.c (do_serial_close): Remove early return when SCB is
5181 * dwarf2read.c (dw2_get_file_names_reader): Ignore partial units.
5185 Fix regression by the "ambiguous linespec" series.
5186 * breakpoint.c (parse_breakpoint_sals): New variable cursal. Use
5187 get_last_displayed_symtab and get_last_displayed_line and depending
5192 * dwarf2read.c (dw2_get_primary_filename_reader): New function.
5193 (dw2_find_symbol_file): Use it.
5197 * mips-linux-tdep.c (mips_gdb_signal_from_target): New
5198 * mips-linux-tdep.h (mips_signals): New
5202 * infrun.c (handle_inferior_event)
5203 <BPSTAT_WHAT_SET_LONGJMP_RESUME>: Don't delete the step-resume
5205 <BPSTAT_WHAT_CLEAR_LONGJMP_RESUME>: Remove longjmp logic; use
5206 exception logic in all cases. Update comments.
5207 (insert_longjmp_resume_breakpoint): Set the exception resume
5212 * mips-tdep.c (mips_push_dummy_code): Handle microMIPS code.
5216 * valarith.c (binop_types_user_defined_p): Fix a typo.
5221 * arch-utils.c (default_return_in_first_hidden_param_p): New.
5222 * arch-utils.h: Declare.
5223 * gdbarch.sh: Add return_in_first_hidden_param_p.
5224 * gdbarch.c, gdbarch.h: Regenerated.
5225 * infcall.c (call_function_by_hand): Call
5226 gdbarch_return_in_first_hidden_param_p instead of
5227 language_pass_by_reference.
5229 * m68k-tdep.c (m68k_return_in_first_hidden_param_p): New.
5230 (m68k_gdbarch_init): Install m68k_return_in_first_hidden_param_p.
5231 * sh-tdep.c (sh_return_in_first_hidden_param_p): New.
5232 (sh_gdbarch_init): Install sh_return_in_first_hidden_param_p.
5233 * tic6x-tdep.c (tic6x_push_dummy_call): Remove local variable
5234 `cplus_return_struct_by_reference'.
5235 (tic6x_return_value): Handle language cplusplus.
5236 (tic6x_return_in_first_hidden_param_p): New.
5237 (tic6x_gdbarch_init): Install tic6x_return_in_first_hidden_param_p.
5241 * dwarf2read.c (dwarf2_cu): Add comment.
5245 * mips-tdep.c (mips_pseudo_register_type): Remove tdep local
5247 (mips_eabi_push_dummy_call): Likewise.
5248 (mips_n32n64_push_dummy_call): Likewise.
5249 (mips_o32_push_dummy_call): Likewise.
5250 (mips_o64_push_dummy_call): Likewise.
5254 * mips-tdep.c (mips_convert_register_p): Correct coding style.
5258 * mips-tdep.c (mips_pseudo_register_type): Use
5259 mips_float_register_p.
5263 * infrun.c (handle_inferior_event): Remove calls to
5264 reinit_frame_cache that follow a context_switch call.
5268 * infrun.c (handle_inferior_event) <deferred_step_ptid>: Use
5269 context_switch and remove stale comment.
5273 * infrun.c (struct execution_control_state): Remove
5274 `new_thread_event' field.
5275 (handle_inferior_event): Simplify new threads handling; don't
5276 resume the inferior if we find a new thread.
5280 * NEWS: Document the deprecation of SH's 'regs' command.
5281 * inferior.h (all_registers_info): Add function declaration.
5282 * sh-tdep.c (sh_show_regs): Remove variable.
5283 (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs, sh2a_show_regs)
5284 (sh2a_nofpu_show_regs, sh3e_show_regs, sh3_dsp_show_regs)
5285 (sh4_show_regs, sh4_nofpu_show_regs, sh_dsp_show_regs)
5286 (sh_show_regs_command): Remove functions.
5287 (sh_gdbarch_init): Don't set sh_show_regs.
5288 (_initialize_sh_tdep): Make the 'regs' command an deprecated alias to
5289 'info all-registers'.
5290 * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs)
5291 (sh64_show_regs): Remove functions.
5292 * sh64-tdep.h (sh64_show_regs): Remove function declaration.
5296 * configure.ac: Move development=true below AC_INIT.
5297 * configure: Regenerate.
5301 * mi/mi-interp.c (mi_interpreter_init): Set raw_stdout from
5306 * corefile.c (read_memory, read_stack, write_memory): Accept LEN
5307 argument as ssize_t.
5308 * gdbcore.h (read_memory, read_stack, write_memory): Likewise.
5309 * remote.c (remote_write_bytes_aux, remote_write_bytes): Likewise.
5310 * target.c (target_read_stack, target_write_memory)
5311 (target_write_raw_memory): Likewise.
5312 * target.h (target_read_stack, target_write_memory)
5313 (target_write_raw_memory): Likewise.
5317 * symfile-mem.c: Change gdb_static_assert to ssize_t.
5318 (target_read_memory_bfd): Cast gdb_assert LEN to ssize_t.
5319 * target.c (target_read_memory): Change LEN to ssize_t.
5320 * target.h (target_read_memory): Change LEN to ssize_t.
5326 * breakpoint.c (until_break_command): Only fetch the selected
5327 frame after decode_line_1.
5331 * solib-svr4.c (enable_break): Don't fallback to setting the solib
5332 event breakpoint at _start, __start or main if a program
5333 interpreter is not found.
5337 * windows-tdep.h (windows_iterate_over_objfiles_in_search_order):
5339 * windows-tdep.c: #include "objfiles.h".
5340 (windows_iterate_over_objfiles_in_search_order): New function.
5341 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
5342 iterate_over_objfiles_in_search_order gdbarch method to
5343 windows_iterate_over_objfiles_in_search_order.
5344 * i386-cygwin-tdep.c (i386_cygwin_init_abi): Likewise.
5348 * gdbarch.sh: Add generation of
5349 "iterate_over_objfiles_in_search_order_cb_ftype" typedef in
5350 gdbarch.h. Add include of "objfiles.h" in gdbarch.c.
5351 (iterate_over_objfiles_in_search_order): New gdbarch method.
5352 * gdbarch.h, gdbarch.c: Regenerate.
5353 * objfiles.h (default_iterate_over_objfiles_in_search_order):
5355 * objfiles.c (default_iterate_over_objfiles_in_search_order):
5357 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
5358 out of lookup_symbol_aux_symtabs.
5359 (lookup_symbol_aux_symtabs): Replace extracted-out code by
5360 call to lookup_symbol_aux_objfile.
5361 (struct global_sym_lookup_data): New type.
5362 (lookup_symbol_global_iterator_cb): New function.
5363 (lookup_symbol_global): Search for symbol using
5364 gdbarch_iterate_over_objfiles_in_search_order and
5365 lookup_symbol_global_iterator_cb.
5366 * findvar.c (struct minsym_lookup_data): New type.
5367 (minsym_lookup_iterator_cb): New function.
5368 (default_read_var_value) [case LOC_UNRESOLVED]: Resolve the
5369 symbol's address via gdbarch_iterate_over_objfiles_in_search_order
5370 and minsym_lookup_iterator_cb.
5374 Revert the following patch:
5375 * findvar.c (default_read_var_value): For LOC_UNRESOLVED symbols,
5376 try locating the symbol in the symbol's own objfile first, before
5377 extending the search to all objfiles.
5378 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
5379 out of lookup_symbol_aux_symtabs.
5380 (lookup_symbol_aux_symtabs): Add new parameter "exclude_objfile".
5381 Replace extracted-out code by call to lookup_symbol_aux_objfile.
5382 Do not search EXCLUDE_OBJFILE.
5383 (lookup_static_symbol_aux): Update call to lookup_symbol_aux_symtabs.
5384 (lookup_symbol_global): Search for matches in the block's objfile
5385 first, before searching all other objfiles.
5389 * breakpoint.c (find_condition_and_thread): Stop parsing
5390 as soon as the first invalid keyword is found.
5394 * copyright.py (EXCLUDE_LIST): Add 'gdb/CONTRIBUTE' to list.
5398 * config/djgpp/djcheck.sh: Add copyright header.
5402 * copyright.py (update_files, main): Fix path to update-copyright
5407 * copyright.py (MULTIPLE_COPYRIGHT_HEADERS): New constant.
5408 (main): Add MULTIPLE_COPYRIGHT_HEADERS to the list of files
5409 for which a reminder to update by hand is printed.
5413 * buildsym.c (make_blockvector): Add comment.
5417 * arch-utils.c (default_gdb_signal_from_target): Delete.
5418 * arch-utils.h (default_gdb_signal_from_target): Delete.
5419 * corelow.c (core_open) <signal mapping>: Extended comment. Check
5420 gdbarch_gdb_signal_from_target_p.
5421 * gdbarch.sh (gdb_signal_from_target): Make it an M method (with
5423 * gdbarch.h: Regenerate.
5424 * gdbarch.c: Regenerate.
5428 * gdbarch.sh (gdb_signal_from_target): Mention that the
5429 implementation of the method must be host independent.
5430 * gdbarch.h: Regenerate.
5434 * symfile-mem.c: 3 new gdb_static_assert for target_read_memory_bfd
5436 (target_read_memory_bfd): New function.
5437 (symbol_file_add_from_memory): Use it.
5441 * symtab.c (lookup_global_symbol_from_objfile): Only scan blockvector
5443 (basic_lookup_transparent_type): Ditto.
5445 * objfiles.h (ALL_OBJFILE_PRIMARY_SYMTABS): New macro.
5446 (ALL_PRIMARY_SYMTABS): Use it.
5447 (ALL_PSPACE_PRIMARY_SYMTABS): Ditto.
5448 * dwarf2read.c (dw2_find_symbol_file): Ditto.
5449 * linespec.c (iterate_over_all_matching_symtabs): Ditto.
5450 * symtab.c (lookup_symbol_aux_objfile): Ditto.
5451 (basic_lookup_transparent_type): Ditto.
5455 * symtab.c (symbol_demangled_name): New variable `dem_name'. Use
5456 it to optimize resolution of demangled name.
5460 * configure.ac (development): Define new variable.
5461 Call AC_CHECK_LIB for mcheck if $development.
5462 (ERROR_ON_WARNING): Enable it by default only if $development.
5463 * config.in: Regenerate.
5464 * configure: Regenerate.
5468 * target.c (target_read_memory): Make LEN argument as size_t.
5469 * target.h (target_read_memory): Likewise.
5473 * tilegx-linux-tdep.c (tilegx_l): Use ULL for 64-bit values.
5477 * ppc-linux-nat.c (have_ptrace_booke_interface): Disable ptrace
5478 BookE interface for PowerPC server processors if not available
5479 in the Linux Kernel.
5483 * linespec.c (decode_objc): Add cleanup to free
5485 (find_linespec_symbols): Add cleanup to free CLASSES.
5486 * symfile.c (find_separate_debug_file_by_debuglink): Add
5487 cleanup to free DEBUGLINK.
5488 * ui-out.c (clear_header_list): No need to check if
5489 HEADER_NEXT.COLHDR is NULL.
5490 Free HEADER_NEXT.COL_NAME.
5494 * ada-lang.c (standard_lookup): Prevent uninitialized variable
5499 * configure.host (gdb_host_cpu): Handle tilegx*.
5500 (gdb_host): Handle tilegx-*-linux*.
5501 * tilegx-linux-nat.c: New file.
5502 * config/tilegx/linux.mh: New file.
5506 * Makefile.in (ALL_TARGET_OBJS): Add tilegx-tdep.o and
5507 tilegx-linux-tdep.o.
5508 (ALLDEPFILES): Add tilegx-linux-nat.c, tilegx-tdep.c and
5509 tilegx-linux-tdep.c.
5510 * configure.tgt: Handle tilegx-*-linux*.
5511 * tilegx-tdep.h: New file.
5512 * tilegx-tdep.c: New file.
5513 * tilegx-linux-tdep.c: New file.
5514 * regformats/reg-tilegx.dat: New file.
5518 * ppc-linux-nat.c (ppc_linux_can_use_hw_breakpoint): fix
5519 accounting of hw watchpoints on ppc.
5523 * source.c (openp): Expand tilde in path entries.
5527 * buildsym.c (block_compar): Fix comment.
5528 (end_symtab): Fix and clarify some comments.
5530 * stabsread.h (cleanup_undefined_stabs_types): Renamed from
5531 cleanup_undefined_types.
5532 * stabsread.c (cleanup_undefined_stabs_types): Ditto.
5533 All callers updated.
5537 * symfile.c (symfile_bfd_open): Don't close desc if bfd_fopen
5539 * solib.c (solib_bfd_fopen): Don't close fd if bfd_fopen fails.
5540 * exec.c (exec_file_attach): Don't close scratch_chan if bfd_fopen
5542 * dwarf2read.c (try_open_dwo_file): Don't close fd if bfd_fopen
5547 * solib-darwin.c (dyld_all_image_addr, dyld_all_image): Move into...
5548 (struct darwin_info): ... New struct.
5549 (solib_darwin_pspace_data): New variable.
5550 (darwin_pspace_data_cleanup): New function.
5551 (get_darwin_info): Likewise.
5552 (darwin_dyld_version_ok, darwin_load_image_infos)
5553 (darwin_solib_get_all_image_info_addr_at_init)
5554 (darwin_solib_read_all_image_info_addr): Add info argument.
5556 (darwin_current_sos): Use per pspace structure.
5557 (darwin_solib_create_inferior_hook): Likewise.
5558 (darwin_clear_solib): Likewise.
5559 (_initialize_darwin_solib): Initialize solib_darwin_pspace_data.
5563 * infrun.c (wait_for_inferior): Move ecss and ecs locals to the
5564 block that uses them. Clear ecss before handling each event.
5568 * solib-svr4.c (svr4_current_sos): New comment on
5569 svr4_current_sos_via_xfer_libraries fall back.
5573 * psymtab.c (lookup_symbol_aux_psymtabs): New variable stab_best. Use
5574 it as a fallback for TYPE_IS_OPAQUE.
5575 * symfile.h (struct quick_symbol_functions): Mention TYPE_OPAQUE
5576 symbols for lookup_symbol.
5580 PR symtab/13277: Resolving opaque structures in ICC generated binaries.
5581 * dwarf2read.c (struct dwarf2_cu) <producer_is_icc>: New field.
5582 (producer_is_gxx_lt_4_6): Move the checking and caching to...
5583 (check_producer): ... this new function, which also checks for ICC
5584 and caches the result.
5585 (producer_is_icc): New function.
5586 (read_structure_type): Don't set TYPE_STUB_SUPPORTED if the
5593 * arch-utils.c (default_gdb_signal_to_host): Rename to ...
5594 (default_gdb_signal_to_target): ... this. Add comment.
5595 (default_gdb_signal_from_host): Rename to ...
5596 (default_gdb_signal_from_target): ... this. Add comment.
5597 * arch-utils.h (default_gdb_signal_to_host): Rename to ...
5598 (default_gdb_signal_to_target): ... this.
5599 (default_gdb_signal_from_host): Rename to ...
5600 (default_gdb_signal_from_target): ... this.
5601 * corelow.c (core_open): Adjust to naming change. Replace comment.
5602 * gdbarch.sh (gdb_signal_from_host): Rename to ...
5603 (gdb_signal_from_target): ... this. Adjust to
5604 default_gdb_signal_from_host naming change. Extend comment.
5605 (gdb_signal_to_host): Rename to ...
5606 (gdb_signal_to_target): ... this. Adjust to
5607 default_gdb_signal_to_host naming change.
5608 * gdbarch.h, gdbarch.c: Renegerate.
5614 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
5620 Replace target_signal with gdb_signal throughout.
5626 * tui/tui-hooks.c (tui_query_hook): Pre-compute the question
5627 string, instead of reusing the va_list argument.
5631 * cp-support.h (cp_finalize_namespace, cp_initialize_namespace):
5636 * symtab.c (search_symbols): Formatting fixes.
5637 (print_symbol_info): Formatting fixes.
5639 * dwarf2-frame.c (execute_cfa_program): Update to handle long long ->
5640 int64_t change to leb128 API.
5641 (read_encoded_value, decode_frame_entry_1): Ditto.
5642 * dwarf2expr.c (safe_read_uleb128, safe_read_sleb128): Ditto.
5643 (dwarf_block_to_dwarf_reg, dwarf_block_to_dwarf_reg_deref): Ditto.
5644 (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): Ditto.
5645 (execute_stack_op): Ditto.
5646 * dwarf2expr.h (gdb_read_uleb128, gdb_read_sleb128): Ditto.
5647 (safe_read_uleb128, safe_read_sleb128): Ditto.
5648 * dwarf2loc.c (decode_debug_loc_dwo_addresses): Ditto.
5649 (dwarf2_compile_expr_to_ax): Ditto.
5650 (locexpr_describe_location_piece): Ditto.
5651 (disassemble_dwarf_expression): Ditto.
5652 (locexpr_describe_location_1): Ditto.
5657 * Makefile.in (SUBDIR_MI_OBS): Add mi-cmd-info.o.
5658 (SUBDIR_MI_SRCS): Add mi-cmd-info.c.
5659 (mi-cmd-info.o): New rule.
5660 * osdata.h (info_osdata_command): New declaration.
5661 * osdata.c (info_osdata_command): Change to non-static.
5662 * mi/mi-cmds.h (mi_cmd_info_os): New declaration.
5663 * mi/mi-cmds.c (mi_cmds): Add -info-os MI command.
5664 * mi/mi-cmd-info.c: New file.
5668 * symtab.c (search_symbols): Pass NULL for file_matcher to
5669 expand_symtabs_matching if there are no files to match.
5671 * gdbtypes.c (lookup_typename): Simplify.
5675 * arch-utils.h (default_target_signal_to_host): Delete.
5676 * arch-utils.c (default_target_signal_to_host): Delete.
5677 * gdbarch.sh (target_signal_to_host): Remove.
5678 * gdbarch.h, gdbarch.c: Regenerate.
5682 * dwarf2-frame.c (struct dwarf2_cie): Make initial_instructions, end
5684 (struct dwarf2_fde): Make instructions, end "const gdb_byte *".
5685 (execute_cfa_program): Update to match API of leb128 functions.
5686 (read_1_byte, read_4_bytes, read_8_bytes): Make buf parameter
5688 (read_unsigned_leb128, read_signed_leb128): Delete.
5689 (read_initial_length): Change type of buf argument to
5691 (read_encoded_value): Update to match API of leb128 functions.
5692 (decode_frame_entry): Change result to "const gdb_byte *", and
5693 similarly for "start" parameter.
5694 (decode_frame_entry_1): Ditto. Use new leb128 reader functions.
5695 (dwarf2_build_frame_info): Change local frame_ptr to
5697 * dwarf2expr.c (safe_read_uleb128, safe_read_sleb128): Replaces
5698 read_uleb128, read_sleb128. All callers updated.
5699 (safe_skip_leb128): New function.
5700 (dwarf_block_to_dwarf_reg): Update to match API of leb128 functions.
5701 Call gdb_read_uleb128, gdb_skip_leb128 instead of read_uleb128.
5702 (dwarf_block_to_dwarf_reg_deref): Update to match API of leb128
5703 functions. Call gdb_read_uleb128, gdb_read_sleb128 instead of
5704 read_uleb128, read_sleb128.
5705 (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): Ditto.
5706 (execute_stack_op): Update to match API of leb128 functions.
5707 * dwarf2expr.h: #include "leb128.h".
5708 (read_uleb128, read_sleb128): Delete.
5709 (gdb_read_uleb128, gdb_read_sleb128, gdb_skip_leb128): New functions.
5710 (safe_read_uleb128, safe_read_sleb128, safe_skip_leb128): Declare.
5711 * dwarf2loc.c (debug_loc_kind): New enum.
5712 (decode_debug_loc_addresses): New function.
5713 (decode_debug_loc_dwo_addresses): New function.
5714 (dwarf2_find_location_expression): Rewrite.
5715 (dwarf2_compile_expr_to_ax): Update to match API of leb128 functions.
5716 (locexpr_describe_location_piece): Ditto.
5717 (disassemble_dwarf_expression): Ditto.
5718 (locexpr_describe_location_1): Ditto.
5719 (loclist_describe_location): Rewrite.
5720 * dwarf2loc.h (dwarf2_loclist_baton): New member "from_dwo".
5721 * dwarf2read.c (die_reader_specs): New member "buffer_end".
5722 (dwarf2_section_buffer_overflow_complaint): Renamed from
5723 dwarf2_macros_too_long_complaint. All callers updated.
5724 (skip_leb128): Delete.
5725 (init_cu_die_reader): Initialize reader->buffer_end.
5726 (skip_one_die): Replace call to skip_leb128 with safe_skip_leb128.
5727 (skip_form_bytes): New arg buffer_end. All callers updated.
5728 Replace call to skip_leb128 with gdb_skip_leb128.
5729 (skip_unknown_opcode): New arg mac_end. All callers updated.
5730 (fill_in_loclist_baton): Initialize baton->from_dwo.
5734 * mips-linux-nat.c (mips_linux_read_description): Use a more
5735 verbose error message.
5739 * NEWS: Add MIPS/Linux DSP support.
5740 * mips-linux-tdep.c: Document post-2.6.12 o32 sigcontext layout.
5741 (SIGCONTEXT_DSPCTL): New macro.
5742 (SIGCONTEXT_HI1, SIGCONTEXT_LO1): Likewise.
5743 (SIGCONTEXT_HI2, SIGCONTEXT_LO2): Likewise.
5744 (SIGCONTEXT_HI3, SIGCONTEXT_LO3): Likewise.
5745 (N64_SIGCONTEXT_HI1, N64_SIGCONTEXT_HI2): Likewise.
5746 (N64_SIGCONTEXT_HI3): Likewise.
5747 (N64_SIGCONTEXT_LO1, N64_SIGCONTEXT_LO2): Likewise.
5748 (N64_SIGCONTEXT_LO3): Likewise.
5749 (N64_SIGCONTEXT_DSPCTL): Likewise.
5750 (N64_SIGCONTEXT_FPCSR): Clarify definition.
5751 (mips_linux_o32_sigframe_init): Handle DSP registers.
5752 (mips_linux_n32n64_sigframe_init): Likewise.
5756 * common/buffer.c (buffer_grow): ARI fix: Remove unneeded
5761 * target.h (store_waitstatus): Move declaration ...
5762 * inf-child.h (store_waitstatus): ... here.
5763 * target.c: Move inclusion of gdb_wait.h, and ...
5764 (store_waitstatus): ... this ...
5765 * inf-child.c: ... here.
5766 * linux-nat.c: Include inf-child.h.
5767 * rs6000-nat.c: Include inf-child.h.
5768 * spu-linux-nat.c: Include inf-child.h.
5772 * tracepoint.c (start_tracing): Add missing i18n markup.
5773 (stop_tracing, set_trace_user): Ditto.
5774 (set_trace_notes, set_trace_stop_notes): Ditto.
5779 * gnu-v3-abi.c (gnuv3_baseclass_offset): Return early for Java
5781 * value.h (value_cast_pointers): Update.
5782 * valops.c (value_cast_pointers): Add 'subclass_check' argument.
5783 (value_cast): Update.
5784 (update_search_result): New function.
5785 (do_search_struct_field): New, from search_struct_field. Check
5786 for ambiguous results.
5787 (search_struct_field): Rewrite.
5788 * infcall.c (value_arg_coerce): Update.
5789 * eval.c (evaluate_subexp_standard) <STRUCTOP_MEMBER>: Use
5790 value_cast_pointers.
5791 * ada-lang.c (ada_convert_actual): Update.
5795 * macroexp.c (macro_stringify): Terminate the string.
5799 * NEWS (--with-auto-load-dir): Prepend $debugdir to the default path.
5801 * auto-load.c (auto_load_expand_dir_vars): New function.
5802 (auto_load_safe_path_vec_update): Use it, remove the
5803 substitute_path_component call thanks to it.
5804 (auto_load_objfile_script): Remove the debug_file_directory processing.
5805 Use auto_load_expand_dir_vars, remove the substitute_path_component
5807 * configure: Regenerate.
5808 * configure.ac (--with-auto-load-dir): Prepend $debugdir to the default
5809 path. Escape $ also for $debugdir.
5810 (--with_auto_load_safe_path): Escape $ also for $debugdir.
5811 * utils.c (substitute_path_component): Accept also DIRNAME_SEPARATOR.
5815 * dwarf2read.c (recursively_find_pc_sect_symtab): Initialize "s"
5816 before use. Check for symtab->includes == NULL before scanning it.
5820 * mips-tdep.c (mips_reg3_to_reg): Optimize storage.
5824 * NEWS: Add microMIPS support and "set mips compression",
5825 "show mips compression" commands.
5826 * mips-tdep.h (mips_isa): New enum.
5827 (gdbarch_tdep): Add mips_isa.
5828 (mips_pc_is_mips16): Update prototype.
5829 (mips_pc_is_mips, mips_pc_is_micromips): New prototypes.
5830 * mips-tdep.c (mips_compression_mips16): New variable.
5831 (mips_compression_micromips): Likewise.
5832 (mips_compression_strings): Likewise.
5833 (mips_compression_string): Likewise.
5834 (is_mips16_isa, is_micromips_isa): New functions.
5835 (is_mips16_addr): Rename to...
5836 (is_compact_addr): ... this.
5837 (unmake_mips16_addr): Likewise to...
5838 (unmake_compact_addr): ... this.
5839 (make_mips16_addr): Likewise to...
5840 (make_compact_addr): ... this.
5841 (is_mips_addr, is_mips16_addr, is_micromips_addr): New
5843 (mips_elf_make_msymbol_special): Handle microMIPS code.
5844 (msymbol_is_special): Rename to...
5845 (msymbol_is_mips16): ... this.
5846 (mips_make_symbol_special, mips_pc_is_mips16): Update
5848 (msymbol_is_mips, msymbol_is_micromips): New functions.
5849 (mips16_to_32_reg): Rename to...
5850 (mips_reg3_to_reg): ... this.
5851 (mips_pc_is_mips, mips_pc_is_micromips): New functions.
5852 (mips_pc_isa): Likewise.
5853 (mips_read_pc, mips_unwind_pc, mips_write_pc): Handle microMIPS
5855 (mips_fetch_instruction): Pass return status instead of printing
5856 an error message if requested. Handle microMIPS code. Bail out
5858 (micromips_op): New macro.
5859 (b0s4_imm, b0s5_imm, b0s5_reg, b0s7_imm, b0s10_imm): Likewise.
5860 (b1s9_imm, b2s3_cc, b4s2_regl, b5s5_op, b5s5_reg): Likewise.
5861 (b6s4_op, b7s3_reg): Likewise.
5862 (b0s6_op, b0s11_op, b0s12_imm, b0s16_imm, b0s26_imm): Likewise.
5863 (b6s10_ext, b11s5_reg, b12s4_op): Likewise.
5864 (mips_insn_size): New function.
5865 (mips32_next_pc): Update mips_fetch_instruction call.
5866 (micromips_relative_offset7): New function.
5867 (micromips_relative_offset10): Likewise.
5868 (micromips_relative_offset16): Likewise.
5869 (micromips_pc_insn_size): Likewise.
5870 (micromips_bc1_pc): Likewise.
5871 (micromips_next_pc): Likewise.
5872 (unpack_mips16): Update mips_fetch_instruction call.
5873 (extended_mips16_next_pc): Update according to change to
5875 (mips_next_pc): Update mips_pc_is_mips16 call. Handle microMIPS
5877 (mips16_scan_prologue): Update mips_fetch_instruction call.
5878 Update according to change to mips16_to_32_reg.
5879 (mips_insn16_frame_sniffer): Update mips_pc_is_mips16 call.
5880 (mips_insn16_frame_base_sniffer): Likewise.
5881 (micromips_decode_imm9): New function.
5882 (micromips_scan_prologue): Likewise.
5883 (mips_micro_frame_cache): Likewise.
5884 (mips_micro_frame_this_id): Likewise.
5885 (mips_micro_frame_prev_register): Likewise.
5886 (mips_micro_frame_sniffer): Likewise.
5887 (mips_micro_frame_unwind): New variable.
5888 (mips_micro_frame_base_address): New function.
5889 (mips_micro_frame_base): New variable.
5890 (mips_micro_frame_base_sniffer): New function.
5891 (mips32_scan_prologue): Update mips_fetch_instruction call.
5892 (mips_insn32_frame_sniffer): Check for the standard MIPS ISA
5893 rather than for MIPS16.
5894 (mips_insn32_frame_base_sniffer): Likewise.
5895 (mips_addr_bits_remove): Handle microMIPS code.
5896 (deal_with_atomic_sequence): Rename to...
5897 (mips_deal_with_atomic_sequence): ... this. Update the type
5898 of the variable used to hold an instruction. Remove the ISA bit
5899 check. Update mips_fetch_instruction call.
5900 (micromips_deal_with_atomic_sequence): New function.
5901 (deal_with_atomic_sequence): Likewise.
5902 (mips_about_to_return): Handle microMIPS code. Update
5903 mips_fetch_instruction call.
5904 (heuristic_proc_start): Check for the standard MIPS ISA rather
5905 than for MIPS16. Update mips_pc_is_mips16 and
5906 mips_fetch_instruction calls. Handle microMIPS code.
5907 (mips_push_dummy_code): Handle microMIPS code.
5908 (mips_eabi_push_dummy_call): Likewise.
5909 (mips_o32_return_value): Update mips_pc_is_mips16 call.
5910 (mips_o64_push_dummy_call): Handle microMIPS code.
5911 (mips_o64_return_value): Update mips_pc_is_mips16 call.
5912 (is_delayed): Remove function.
5913 (mips_single_step_through_delay): Replace the call to is_delayed
5914 with mips32_instruction_has_delay_slot. Correct MIPS16 handling.
5915 Handle microMIPS code.
5916 (mips_skip_prologue): Update mips_pc_is_mips16 call. Handle
5918 (mips32_in_function_epilogue_p): Update mips_fetch_instruction
5920 (micromips_in_function_epilogue_p): New function.
5921 (mips16_in_function_epilogue_p): Update mips_fetch_instruction
5923 (mips_in_function_epilogue_p): Update mips_pc_is_mips16 call.
5925 (gdb_print_insn_mips): Likewise.
5926 (mips_breakpoint_from_pc): Likewise.
5927 (mips_remote_breakpoint_from_pc): New function.
5928 (mips32_instruction_has_delay_slot): Simplify making use of the
5929 updated mips_fetch_instruction interface.
5930 (micromips_instruction_has_delay_slot): New function.
5931 (mips16_instruction_has_delay_slot): Simplify making use of the
5932 updated mips_fetch_instruction interface.
5933 (mips_adjust_breakpoint_address): Check for the standard MIPS
5934 ISA rather than for MIPS16 ISA. Update for unmake_compact_addr
5935 calls. Handle microMIPS code.
5936 (mips_get_mips16_fn_stub_pc): Update mips_fetch_instruction call.
5937 (mips_skip_trampoline_code): Handle microMIPS code.
5938 (global_mips_compression): New function.
5939 (mips_gdbarch_init): Handle the compressed ISA setting from ELF
5940 file flags. Register the microMIPS remote breakpoint handler
5941 and heuristic frame unwinder.
5942 (show_mips_compression): New function.
5943 (_initialize_mips_tdep): Add the "set mips compression" and
5944 "show mips compression" commands.
5951 * amd64-darwin-tdep.c:
5952 * arm-symbian-tdep.c:
5956 * bfin-linux-tdep.c:
5963 * dwarf2-frame-tailcall.c:
5992 * microblaze-tdep.c:
5993 * mips-linux-tdep.c:
6001 * python/py-finishbreakpoint.c:
6002 * python/py-inferior.c:
6003 * python/py-infthread.c:
6007 * remote-m32r-sdi.c:
6011 * rs6000-aix-tdep.c:
6037 * amd64-darwin-tdep.c:
6038 * arm-symbian-tdep.c:
6039 * arm-tdep.c: Delete unused variables.
6043 Rename $ddir to $datadir.
6044 * NEWS (--with-auto-load-dir): Rename $ddir to $datadir.
6045 * auto-load.c (auto_load_safe_path_vec_update)
6046 (auto_load_gdb_datadir_changed, auto_load_objfile_script): Likewise.
6047 * configure: Regenerate.
6048 * configure.ac (--with-auto-load-dir, --with-auto-load-safe-path):
6049 Likewise. Remove the 'use $ddir' help string.
6053 * auto-load.c (show_auto_load_safe_path): Accept any combination of
6054 DIRNAME_SEPARATOR and IS_DIR_SEPARATOR for wild-match.
6059 * valprint.h (struct value_print_options) <symbol_print>: New
6061 * valprint.c (user_print_options): Add default for symbol_print.
6062 (show_symbol_print): New function.
6063 (generic_val_print): Respect symbol_print.
6064 (_initialize_valprint): Add "print symbol" setting.
6065 * f-valprint.c (f_val_print): Respect symbol_print.
6066 * c-valprint.c (c_val_print): Respect symbol_print.
6068 * printcmd.c (print_address_symbolic): Return int. Ignore some
6070 (print_address_demangle): Return int.
6071 * defs.h: (print_address_symbolic): Return int.
6072 * value.h (print_address_demangle): Return int.
6076 * valprint.c (val_print_string): Don't print leading space.
6077 * p-valprint.c (pascal_val_print) <TYPE_CODE_PTR>: Optionally
6078 print space before string or vtbl.
6079 * m2-valprint.c (print_unpacked_pointer): Optionally print space
6081 * jv-valprint.c (java_value_print): Print space before string.
6082 * go-valprint.c (print_go_string): Print space before string.
6083 * f-valprint.c (f_val_print) <TYPE_CODE_PTR>: Optionally print
6084 space before string.
6085 * c-valprint.c (c_val_print) <TYPE_CODE_PTR>: Optionally print
6086 space before string or vtbl.
6087 * auxv.c (fprint_target_auxv): Print space after address.
6091 * printcmd.c (print_address_demangle): Remove special case for 0.
6095 * printcmd.c (print_address_demangle): Add 'opts' argument.
6096 * p-valprint.c (pascal_val_print): Update.
6097 * jv-valprint.c (java_val_print): Update.
6099 * valprint.c (generic_val_print): Update.
6100 (print_function_pointer_address): Add 'options' argument. Remove
6101 'addressprint' argument. Update.
6102 * m2-valprint.c (print_unpacked_pointer): Update.
6103 * gnu-v3-abi.c (print_one_vtable): Update.
6104 (gnuv3_print_method_ptr): Update.
6105 * f-valprint.c (f_val_print): Update.
6106 * cp-valprint.c (cp_print_value_fields): Update.
6107 * valprint.h (print_function_pointer_address): Update.
6108 * c-valprint.c (c_val_print): Update.
6112 * psymtab.c (find_pc_sect_symtab_from_partial): Return the symtab
6113 directly corresponding to the found psymtab.
6114 * dwarf2read.c (recursively_find_pc_sect_symtab): New function.
6115 (dw2_find_pc_sect_symtab): Use it.
6116 * block.h (blockvector_contains_pc): Declare.
6117 * block.c (find_block_in_blockvector): New function.
6118 (blockvector_for_pc_sect): Use it.
6119 (blockvector_contains_pc): New function.
6123 * mips-tdep.h (mips_write_pc): New prototype.
6124 * mips-tdep.c (mips_write_pc): Make external, add description.
6125 * mips-linux-tdep.c (mips_linux_write_pc): Use mips_write_pc,
6130 * mips-tdep.c (mips_read_pc): Use gdbarch_pc_regnum instead of
6132 (mips_unwind_pc, mips_write_pc): Likewise.
6133 (mips_gdbarch_init): Remove a comment on gdbarch_pc_regnum and
6138 * procfs.c (procfs_find_new_threads, procfs_pid_to_str,
6139 proc_warn, proc_error, proc_get_status, proc_flags,
6140 proc_why, proc_what, proc_nsysarg, proc_sysargs,
6141 proc_set_run_on_last_close, proc_unset_run_on_last_close,
6142 proc_unset_inherit_on_fork, proc_set_async, proc_unset_async,
6143 proc_stop_process, proc_wait_for_stop, proc_run_process,
6144 proc_set_traced_signals, proc_set_traced_faults,
6145 proc_set_traced_sysentry, proc_set_traced_sysexit,
6146 proc_set_held_signals, proc_get_held_signals,
6147 proc_get_traced_signals, proc_get_traced_faults,
6148 proc_get_traced_sysentry, proc_get_traced_sysexit,
6149 proc_clear_current_fault, proc_set_current_signal,
6150 proc_clear_current_signal, proc_get_gregs, proc_get_fpregs,
6151 proc_set_gregs, proc_set_fpregs, proc_kill, proc_parent_pid,
6152 proc_get_nthreads, proc_get_nthreads, proc_get_nthreads,
6153 proc_get_current_thread, proc_get_current_thread,
6154 proc_get_current_thread, proc_update_threads,
6155 proc_update_threads, proc_update_threads, proc_update_threads,
6156 proc_iterate_over_threads, procfs_find_new_threads,
6157 procfs_pid_to_str): Make static. Remove advance declaration.
6158 (proc_cursig): Make static. Conditionalized defintion on
6159 PROCFS_DONT_PIOCSSIG_CURSIG being defined.
6160 (proc_syscall, proc_set_kill_on_last_close,
6161 proc_unset_kill_on_last_close, proc_set_inherit_on_fork,
6162 proc_get_pending_signals, proc_get_signal_actions,
6163 proc_trace_signal, proc_ignore_signal): Delete.
6167 * coffread.c (cs_section_address): Passing proper argument for
6168 `bfd_get_section_vma'.
6169 * dwarf2read.c (dwarf2_locate_sections): Likewise, for
6170 `bfd_get_section_flags'.
6171 * remote.c (remote_trace_set_readonly_regions): Likewise, for
6172 `bfd_get_section_vma'.
6177 * macrotab.h: (macro_define_special): Declare.
6178 (enum macro_special_kind): New.
6179 (struct macro_definition) <argc, replacement>: Update comments.
6180 * macrotab.c (new_macro_definition): Unconditionally set 'argc'.
6181 (macro_define_object_internal): New function.
6182 (macro_define_object): Use it.
6183 (macro_define_special): New function.
6184 (fixup_definition): New function.
6185 (macro_lookup_definition, foreach_macro_in_scope)
6186 (foreach_macro): Use fixup_definition.
6187 * macroexp.h (macro_stringify): Declare.
6188 * macroexp.c (free_buffer_return_text): New function.
6189 (stringify): Constify "arg".
6190 (macro_stringify): New function.
6191 * dwarf2read.c (macro_start_file): Call macro_define_special.
6196 * breakpoint.h (bp_location): Add related_address member.
6197 * inferior.h (get_return_value): Take a pointer to struct value
6198 instead of struct type for the function requested.
6199 * value.h (using_struct_return): Likewise.
6200 * gdbarch.sh (return_value): Take a pointer to struct value
6201 instead of struct type for the function requested.
6202 * breakpoint.c (set_breakpoint_location_function): Initialize
6203 related_address for bp_gnu_ifunc_resolver breakpoints.
6204 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Pass the
6205 requested function's address to gdbarch_return_value.
6206 * eval.c (evaluate_subexp_standard): Pass the requested
6207 function's address to using_struct_return.
6208 * infcall.c (call_function_by_hand): Pass the requested
6209 function's address to using_struct_return and
6210 gdbarch_return_value.
6211 * infcmd.c (get_return_value): Take a pointer to struct value
6212 instead of struct type for the function requested.
6213 (print_return_value): Update accordingly.
6214 (finish_command_continuation): Likewise.
6215 * stack.c (return_command): Pass the requested function's
6216 address to using_struct_return and gdbarch_return_value.
6217 * value.c (using_struct_return): Take a pointer to struct value
6218 instead of struct type for the function requested. Pass the
6219 requested function's address to gdbarch_return_value.
6220 * python/py-finishbreakpoint.c (finish_breakpoint_object):
6221 New function_value member, replacing function_type.
6222 (bpfinishpy_dealloc): Update accordingly.
6223 (bpfinishpy_pre_stop_hook): Likewise.
6224 (bpfinishpy_init): Likewise. Record the requested function's
6226 * mips-tdep.c (mips_fval_reg): New enum.
6227 (mips_o32_push_dummy_call): For MIPS16 FP doubles do not swap
6228 words put in GP registers.
6229 (mips_o64_push_dummy_call): Update a comment.
6230 (mips_o32_return_value): Take a pointer to struct value instead
6231 of struct type for the function requested and use it to check if
6232 using the MIPS16 calling convention. Return the designated
6233 general purpose registers for floating-point values returned in
6235 (mips_o64_return_value): Likewise.
6236 * ppc-tdep.h (ppc_sysv_abi_return_value): Update prototype.
6237 (ppc_sysv_abi_broken_return_value): Likewise.
6238 (ppc64_sysv_abi_return_value): Likewise.
6239 * alpha-tdep.c (alpha_return_value): Take a pointer to struct
6240 value instead of struct type for the function requested.
6241 * amd64-tdep.c (amd64_return_value): Likewise.
6242 * amd64-windows-tdep.c (amd64_windows_return_value): Likewise.
6243 * arm-tdep.c (arm_return_value): Likewise.
6244 * avr-tdep.c (avr_return_value): Likewise.
6245 * bfin-tdep.c (bfin_return_value): Likewise.
6246 * cris-tdep.c (cris_return_value): Likewise.
6247 * frv-tdep.c (frv_return_value): Likewise.
6248 * h8300-tdep.c (h8300_return_value): Likewise.
6249 (h8300h_return_value): Likewise.
6250 * hppa-tdep.c (hppa32_return_value): Likewise.
6251 (hppa64_return_value): Likewise.
6252 * i386-tdep.c (i386_return_value): Likewise.
6253 * ia64-tdep.c (ia64_return_value): Likewise.
6254 * iq2000-tdep.c (iq2000_return_value): Likewise.
6255 * lm32-tdep.c (lm32_return_value): Likewise.
6256 * m32c-tdep.c (m32c_return_value): Likewise.
6257 * m32r-tdep.c (m32r_return_value): Likewise.
6258 * m68hc11-tdep.c (m68hc11_return_value): Likewise.
6259 * m68k-tdep.c (m68k_return_value): Likewise.
6260 (m68k_svr4_return_value): Likewise.
6261 * m88k-tdep.c (m88k_return_value): Likewise.
6262 * mep-tdep.c (mep_return_value): Likewise.
6263 * microblaze-tdep.c (microblaze_return_value): Likewise.
6264 * mn10300-tdep.c (mn10300_return_value): Likewise.
6265 * moxie-tdep.c (moxie_return_value): Likewise.
6266 * mt-tdep.c (mt_return_value): Likewise.
6267 * ppc-linux-tdep.c (ppc_linux_return_value): Likewise.
6268 * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Likewise.
6269 (ppc_sysv_abi_broken_return_value): Likewise.
6270 (ppc64_sysv_abi_return_value): Likewise.
6271 * ppcnbsd-tdep.c (ppcnbsd_return_value): Likewise.
6272 * rl78-tdep.c (rl78_return_value): Likewise.
6273 * rs6000-aix-tdep.c (rs6000_return_value): Likewise.
6274 * rx-tdep.c (rx_return_value): Likewise.
6275 * s390-tdep.c (s390_return_value): Likewise.
6276 * score-tdep.c (score_return_value): Likewise.
6277 * sh-tdep.c (sh_return_value_nofpu): Likewise.
6278 (sh_return_value_fpu): Likewise.
6279 * sh64-tdep.c (sh64_return_value): Likewise.
6280 * sparc-tdep.c (sparc32_return_value): Likewise.
6281 * sparc64-tdep.c (sparc64_return_value): Likewise.
6282 * spu-tdep.c (spu_return_value): Likewise.
6283 * tic6x-tdep.c (tic6x_return_value): Likewise.
6284 * v850-tdep.c (v850_return_value): Likewise.
6285 * vax-tdep.c (vax_return_value): Likewise.
6286 * xstormy16-tdep.c (xstormy16_return_value): Likewise.
6287 * xtensa-tdep.c (xtensa_return_value): Likewise.
6288 * gdbarch.c: Regenerate.
6289 * gdbarch.h: Regenerate.
6293 * python/python.c (gdbpy_find_pc_line): Use gdb_py_ulongest.
6297 * breakpoint.c (init_breakpoint_sal): Add quotes around part
6298 of command in two error message.
6302 * breakpoint.c (init_breakpoint_sal): Remove trailing spaces.
6306 * breakpoint.c (find_condition_and_thread): Minor reformatting.
6310 * NEWS (show auto-load scripts-directory): Add forgotten command.
6314 * spu-tdep.c (spu_catch_start): Update create_breakpoint caller
6319 * amd64-tdep.c: Include features/i386/x32.c and
6320 features/i386/x32-avx.c.
6321 (_initialize_amd64_tdep): Call initialize_tdesc_x32 and
6322 initialize_tdesc_x32_avx.
6327 * breakpoint.h (enum bptype): New type bp_dprintf.
6328 (struct breakpoint): New field extra_string.
6329 (struct breakpoint_ops): Add arg to create_breakpoints_sal.
6330 (create_breakpoint): Add extra_string arg.
6331 * breakpoint.c (dprintf_breakpoint_ops): New.
6332 (is_breakpoint): Add bp_dprintf.
6333 (bpstat_what): Add dprintf case.
6334 (bptype_string): Ditto.
6335 (print_one_breakpoint_location): Ditto.
6336 (init_bp_location): Ditto.
6337 (bkpt_print_mention): Ditto.
6338 (dprintf_style_enums): New array.
6339 (dprintf_style): New global.
6340 (dprintf_function): New global.
6341 (dprintf_channel): New global.
6342 (update_dprintf_command_list): New function.
6343 (update_dprintf_commands): New function.
6344 (init_breakpoint_sal): Add extra_string argument, handle it.
6345 (create_breakpoint_sal): Add extra_string argument.
6346 (create_breakpoints_sal): Add extra_string argument, update callers.
6347 (find_condition_and_thread): Add extra argument.
6348 (create_breakpoint): Add extra_string argument, record it.
6349 (dprintf_command): New function.
6350 (break_command_1): Add arg to create_breakpoint call.
6351 (handle_gnu_v3_exceptions): Ditto.
6352 (trace_command): Ditto.
6353 (ftrace_command): Ditto.
6354 (strace_command): Ditto.
6355 (bkpt_print_mention): Add dprintf case.
6356 (create_breakpoint_sal_default): Add extra_string argument.
6357 (_initialize_breakpoint): Add new commands.
6358 * mi/mi-cmd-break.c (mi_cmd_break_insert): Add arg to call.
6359 * python/py-breakpoint.c (bppy_init): Ditto.
6360 * python/py-finishbreakpoint.c (bpfinishpy_init): Ditto.
6364 * mips-tdep.c (mips_push_dummy_code): Correct description typo.
6368 * python/python.c (gdbpy_find_pc_line): Use ULONGEST instead of
6373 Add a new function gdb.find_pc_line to the Python API.
6374 * NEWS (Python Scripting): Add entry about the new function.
6375 * python/python.c (gdbpy_find_pc_line): New function which
6376 implements gdb.find_pc_line.
6377 (GdbMethods): Add entry for the new function.
6381 * amd64-linux-tdep.c (_initialize_amd64_linux_tdep): Call
6382 initialize_tdesc_x32_linux and initialize_tdesc_x32_avx_linux.
6386 * inferior.c: Include completer.h
6387 (initialize_inferiors): Set completer of add-inferior to
6392 * amd64-linux-tdep.c (amd64_linux_core_read_description): Check
6393 gdbarch_ptr_bit for x32 core dump.
6397 * amd64-linux-tdep.c: Include features/i386/x32-linux.c
6398 and features/i386/x32-avx-linux.c.
6403 * NEWS: Describe new info os commands.
6404 * common/linux-osdata.c (PID_T, TIME_T): Define.
6405 (MAX_PID_T_STRLEN): New.
6406 (linux_common_core_of_thread): Add comment. Change to use PID_T and
6408 (command_from_pid): Add comment. Change to use PID_T.
6409 (commandline_from_pid): Change to use PID_T.
6410 (user_from_pid): Add comment.
6411 (get_process_owner): Add comment. Change to use PID_T and
6413 (get_number_of_cpu_cores): Add comment.
6414 (get_cores_used_by_process): Add comment. Change to use PID_T and
6416 (linux_xfer_osdata_processes): Change to use PID_T and
6418 (compare_processes): New function.
6419 (linux_xfer_osdata_processgroups): New function.
6420 (linux_xfer_osdata_threads): Change to use PID_T.
6421 (linux_xfer_osdata_fds): New function.
6422 (format_socket_state, print_sockets): New functions.
6423 (union socket_addr): New union.
6424 (linux_xfer_osdata_isockets): New function.
6425 (time_from_time_t, group_from_gid): New functions.
6426 (linux_xfer_osdata_shm): New function.
6427 (linux_xfer_osdata_sem): New function.
6428 (linux_xfer_osdata_msg): New function.
6429 (linux_xfer_osdata_modules): New function.
6430 (osdata_table): Add new entries.
6431 * common/buffer.c (buffer_xml_printf): Add support for long and
6432 long long format specifiers.
6436 * amd64-linux-tdep.h (tdesc_x32_linux): New.
6437 (tdesc_x32_avx_linux): Likewise.
6441 Implement multi-component --with-auto-load-dir.
6442 * NEWS (set auto-load scripts-directory, --with-auto-load-dir): New
6444 (--with-auto-load-safe-path): Update the default value description.
6445 * auto-load.c (auto_load_dir, set_auto_load_dir, show_auto_load_dir):
6447 (auto_load_objfile_script): Add DEBUG_AUTO_LOAD output. Remove
6448 GDB_DATADIR NULL check. Replace GDB_DATADIR/auto-load by
6449 AUTO_LOAD_DIR. Support $ddir and multiple components in it.
6450 (_initialize_auto_load): Initialize also auto_load_dir. Install new
6451 "set auto-load scripts-directory".
6452 * config.in: Regenerate.
6453 * configure: Regenerate.
6454 * configure.ac (--with-auto-load-dir): New configure option.
6455 (--auto-load-safe-path): Change the default to --with-auto-load-dir.
6459 Provide $ddir substitution for --with-auto-load-safe-path.
6460 * NEWS (--with-auto-load-safe-path, --without-auto-load-safe-path): New
6462 * auto-load.c: Include observer.h.
6463 (auto_load_safe_path_vec_update): Call substitute_path_component for
6464 each component. New variable ddir_subst.
6465 (auto_load_gdb_datadir_changed): New function.
6466 (set_auto_load_safe_path): Rename DEFAULT_AUTO_LOAD_SAFE_PATH to
6467 AUTO_LOAD_SAFE_PATH. New comment.
6468 (_initialize_auto_load): Rename DEFAULT_AUTO_LOAD_SAFE_PATH to
6469 AUTO_LOAD_SAFE_PATH. Install auto_load_gdb_datadir_changed.
6470 * config.in: Regenerate.
6471 * configure: Regenerate.
6472 * configure.ac (--auto-load-safe-path): Rename
6473 DEFAULT_AUTO_LOAD_SAFE_PATH to AUTO_LOAD_SAFE_PATH. Default to
6474 GDB_DATADIR/auto-load.
6475 * defs.h (substitute_path_component): New declaration.
6476 * top.c: Include observer.h.
6477 (set_gdb_datadir): New function.
6478 (init_main): Install it for "set data-directory".
6479 * utils.c (substitute_path_component): New function.
6483 Make auto-load handle multiple components of DEBUG_FILE_DIRECTORY.
6484 * auto-load.c (auto_load_objfile_script): Remove check for NULL
6485 DEBUG_FILE_DIRECTORY. Handle multiple components of
6486 DEBUG_FILE_DIRECTORY.
6490 * dwarf2read.c (recursively_write_psymbols): New function.
6491 (write_psymtabs_to_index): Use it.
6493 * dwarf2read.c (struct dwarf2_queue_item) <pretend_language>: New
6495 (load_cu, dw2_do_instantiate_symtab, process_psymtab_comp_unit)
6496 (load_partial_comp_unit): Update.
6497 (queue_comp_unit): Add argument 'pretend_language'.
6498 (process_queue): Update.
6499 (psymtab_to_symtab_1): Skip dependencies that have a user.
6500 (load_partial_comp_unit_reader): Give meaning to the 'data'
6502 (load_full_comp_unit): Add 'pretend_language' argument.
6503 (process_full_comp_unit): Add 'pretend_language' argument. Set
6505 (process_imported_unit_die, read_file_scope, read_type_unit_scope):
6507 (maybe_queue_comp_unit): Add 'pretend_language' argument.
6508 (follow_die_offset, follow_die_sig, read_signatured_type_reader):
6510 (prepare_one_comp_unit): Add 'pretend_language' argument.
6512 * dwarf2read.c: (dwarf2_per_cu_ptr): New typedef.
6513 (struct dwarf2_per_objfile) <just_read_cus>: New field.
6514 (struct dwarf2_per_cu_data) <imported_symtabs>: New field.
6515 (dw2_do_instantiate_symtab): Check whether symtab was read in
6517 (dw2_instantiate_symtab): Add assertion. Call
6518 process_cu_includes.
6519 (process_psymtab_comp_unit): Compute 'dependencies' for psymtab.
6520 (partial_symtab_p): New typedef.
6521 (set_partial_user): New function.
6522 (dwarf2_build_psymtabs_hard): Use set_partial_user.
6523 (scan_partial_symbols): Add imported CU to imported_symtabs.
6524 (dwarf2_psymtab_to_symtab): Call process_cu_includes.
6525 (psymtab_to_symtab_1): Do nothing if psymtab is readin.
6526 (get_symtab, recursively_compute_inclusions)
6527 (compute_symtab_includes, process_cu_includes)
6528 (process_imported_unit_die): New functions.
6529 (process_die) <DW_TAG_imported_unit>: New case.
6530 (dwarf2_per_objfile_free): Free 'imported_symtabs'.
6532 * dwarf2read.c (struct dwarf2_per_cu_data) <psymtab>: Update
6534 (struct partial_die_info) <locdesc>: Remove.
6536 (process_psymtab_comp_unit): Add 'read_partial' argument.
6538 (process_type_comp_unit, dwarf2_build_psymtabs_hard): Update.
6539 (scan_partial_symbols): Handle DW_TAG_imported_unit.
6540 (add_partial_symbol): Update.
6541 (process_die): Handle DW_TAG_partial_unit.
6542 (read_file_scope): Update comment.
6543 (load_partial_dies): Handle DW_TAG_imported_unit.
6544 (read_partial_die): Handle DW_TAG_partial_unit, DW_AT_import.
6545 (determine_prefix, dwarf2_name): Handle DW_TAG_partial_unit.
6549 * cc-with-dwz.sh: New file.
6553 * symtab.h (struct symtab) <includes, user>: New fields.
6554 * block.h (struct block_iterator) <d, idx, which>: New fields.
6555 * block.c (initialize_block_iterator, find_iterator_symtab)
6556 (block_iterator_step, block_iter_name_step)
6557 (block_iter_match_step): New functions.
6558 (block_iterator_first, block_iterator_next)
6559 (block_iter_name_first, block_iter_name_next)
6560 (block_iter_match_first, block_iter_match_next): Rewrite.
6561 (get_block_symtab): New function.
6565 * jv-lang.c (get_java_class_symtab): Use allocate_global_block,
6567 * jit.c (finalize_symtab): Use allocate_global_block,
6569 * buildsym.c (finish_block_internal): New function, from old
6571 (finish_block): Rewrite.
6572 (end_symtab): Use finish_block_internal, set_block_symtab.
6573 * block.h (struct global_block): New.
6574 (allocate_global_block, set_block_symtab): Declare.
6575 * block.c (allocate_global_block, set_block_symtab): New
6580 * psymtab.c (partial_map_expand_apply): Add assertion.
6581 (partial_map_symtabs_matching_filename): Skip included psymtabs.
6582 (psymtab_to_symtab): Find unshared psymtab.
6583 (dump_psymtab): Print including psymtabs.
6584 (recursively_search_psymtabs): New function.
6585 (expand_symtabs_matching_via_partial): Use it.
6586 * psympriv.h (struct partial_symtab) <user, searched_flag>: New
6588 (enum psymtab_search_status): New.
6592 * tracepoint.c (scope_info): Update.
6593 * symtab.c (lookup_block_symbol, iterate_over_symbols)
6594 (find_pc_sect_symtab, search_symbols)
6595 (default_make_symbol_completion_list_break_on)
6596 (make_file_symbol_completion_list): Update.
6597 * symmisc.c (dump_symtab_1): Update.
6598 * stack.c (print_frame_args, iterate_over_block_locals)
6599 (print_frame_labels, iterate_over_block_arg_vars): Update.
6600 * python/py-block.c (block_object) <dict>: Remove.
6602 <iter>: Change type.
6603 (blpy_iter): Update.
6604 (blpy_block_syms_iternext): Update.
6605 * psymtab.c (map_block): Use block iterators.
6606 * objfiles.c (objfile_relocate1): Use ALL_DICT_SYMBOLS.
6607 * mi/mi-cmd-stack.c (list_args_or_locals): Update.
6608 * mdebugread.c (parse_symbol, mylookup_symbol): Update.
6609 * infrun.c (check_exception_resume): Update.
6610 * cp-support.c (make_symbol_overload_list_block): Update.
6611 * coffread.c (patch_opaque_types): Update.
6612 * buildsym.c (finish_block, end_symtab): Use ALL_DICT_SYMBOLS.
6613 * block.h (struct block_iterator): New.
6614 (block_iterator_first, block_iterator_next, block_iter_name_first)
6615 (block_iter_name_next, block_iter_match_first)
6616 (block_iter_match_next): Declare.
6617 (ALL_BLOCK_SYMBOLS): Redefine.
6618 * block.c (block_iterator_first, block_iterator_next)
6619 (block_iter_name_first, block_iter_name_next)
6620 (block_iter_match_first, block_iter_match_next): New functions.
6621 * ada-lang.c (ada_add_block_symbols)
6622 (ada_make_symbol_completion_list): Use block iterator.
6626 * psymtab.c (PSYMTAB_TO_SYMTAB): Remove.
6627 (find_pc_sect_symtab_from_partial, lookup_symbol_aux_psymtabs)
6628 (lookup_partial_symbol, find_last_source_symtab_from_partial)
6629 (read_psymtabs_with_filename, map_matching_symbols_psymtab)
6630 (expand_symtabs_matching_via_partial, maintenance_check_symtabs):
6635 * config/djgpp/fnchange.lst: Add entries for print-file-var-lib1.c,
6636 print-file-var-lib2.c, print-file-var-main.c and
6637 print-file-var.exp (located in gdb/testsuite/gdb.base).
6641 * findvar.c (default_read_var_value): For LOC_UNRESOLVED symbols,
6642 try locating the symbol in the symbol's own objfile first, before
6643 extending the search to all objfiles.
6644 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
6645 out of lookup_symbol_aux_symtabs.
6646 (lookup_symbol_aux_symtabs): Add new parameter "exclude_objfile".
6647 Replace extracted-out code by call to lookup_symbol_aux_objfile.
6648 Do not search EXCLUDE_OBJFILE.
6649 (lookup_static_symbol_aux): Update call to lookup_symbol_aux_symtabs.
6650 (lookup_symbol_global): Search for matches in the block's objfile
6651 first, before searching all other objfiles.
6655 * printcmd.c (set_command): Add pre/post inc/dec.
6659 * gdb.1: Document -ex option.
6663 * infcall.c (call_function_by_hand): Remove AT_SYMBOL handling.
6664 * inferior.h (AT_SYMBOL): Delete.
6668 * mips-tdep.c (mips_push_dummy_code): New function.
6669 (mips_gdbarch_init): Set the gdbarch call_dummy_location to
6670 ON_STACK and install mips_push_dummy_code as our gdbarch
6671 push_dummy_code routine.
6675 * target.c (set_maintenance_target_async_permitted): Rename to ...
6676 (set_target_async_command): ... this.
6677 (show_maintenance_target_async_permitted): Rename to ...
6678 (show_target_async_command): ... this.
6679 (initialize_targets): Adjust.
6683 * go-exp.y (classify_name): Add missing assignment of fields of
6688 Display the ">" prompt in interactive mode while reading canned
6689 commands, even when the current interpreter is MI.
6691 * interps.c (interp_set_temp): New function.
6693 * interps.h (interp_set_temp): Add prototype.
6695 * cli/cli-script.c (restore_interp): New cleanup function.
6696 (read_command_lines): Temporarily override the current interpreter
6697 with CLI and arrange for restoring the original one.
6701 * microblaze-rom.c (_initialize_picobug_rom): Add prototype.
6705 * probe.c (parse_probes): Move conditional to check for
6706 debuginfo files from here...
6707 * stap-probe.c (stap_get_probes): ... to here.
6712 * amd64-tdep.c (amd64_analyze_prologue): Additionally check for
6713 `movl %esp, %ebp' for the X32 ABI.
6717 * dwarf2read.c (dwarf_tag_name): Return const char *. Use
6719 (dwarf_attr_name): Return const char *. Use get_DW_AT_name.
6720 (dwarf_form_name): Return const char *. Use get_DW_FORM_name.
6721 (dwarf_stack_op_name): Remove.
6722 (dwarf_cfi_name): Return const char *. Use get_DW_ATE_name.
6723 (decode_locdesc): Use get_DW_OP_name.
6724 * dwarf2loc.c (unimplemented): Use get_DW_OP_name.
6725 (dwarf2_compile_expr_to_ax): Likewise.
6726 (disassemble_dwarf_expression): Likewise.
6727 * dwarf2expr.h: (dwarf_stack_op_name): Remove.
6731 * sh-linux-tdep.c: Include trad-frame.h and tramp-frame.h.
6732 (sh_linux_sigtramp_cache): New function.
6733 (sh_linux_sigreturn_init): New function.
6734 (sh_linux_rt_sigreturn_init): New function.
6735 (SH_MOVW,SH_TRAP,SH_OR_R0_R0): New symbols for instruction
6737 (SH_NR_SIGRETURN,SH_NR_RT_SIGRETURN): New symbols for sigreturn
6739 (sh_linux_sigreturn_tramp_frame): New tramp_frame definition.
6740 (sh_linux_rt_sigreturn_tramp_frame): Likewise.
6741 (sh_linux_init_abi): Add init calls to register new tramp_frame
6742 definitions under 32-bit SH, update comments.
6748 * amd64-linux-tdep.c: Include glibc-tdep.h.
6749 (amd64_linux_init_abi): Install glibc_skip_solib_resolver as
6750 gdbarch_skip_solib_resolver callback.
6754 * auto-load.c (set_auto_load_safe_path): Reset AUTO_LOAD_SAFE_PATH
6755 back to DEFAULT_AUTO_LOAD_SAFE_PATH if it is being set to "".
6756 (show_auto_load_safe_path): Check any-directory by comparison with "/".
6757 (add_auto_load_safe_path): Change the error message.
6758 (_initialize_auto_load): Change the "safe-path" help text.
6759 * configure: Regenerate
6760 * configure.ac (--without-auto-load-safe-path): Set
6761 WITH_AUTO_LOAD_SAFE_PATH to /.
6765 * stap-probe.h: Do not include unecessary `probe.h'.
6769 * elfread.c (elf_symtab_read): Use bfd_abs_section_ptr and
6770 bfd_und_section_ptr.
6771 * machoread.c (macho_symtab_add_minsym): Use bfd_abs_section_ptr
6772 and bfd_com_section_ptr.
6776 * MAINTAINERS (Past Maintainers): Add Chris Faylor.
6780 * windows-nat.h (segment_register_p_ftype): New typedef.
6781 (windows_set_segment_register_p): Add declaration.
6782 * windows-nat.c (segment_register_p): New static global.
6783 (windows_set_segment_register_p): New function.
6784 (do_windows_fetch_inferior_registers): Add special handling
6785 for segment registers.
6786 * amd64-windows-nat.c: #include "amd64-tdep.h".
6787 (amd64_windows_segment_register_p): New function.
6788 (_initialize_amd64_windows_nat): Call windows_set_segment_register_p.
6789 * i386-windows-nat.c: #include "i386-tdep.h".
6790 (i386_windows_segment_register_p): New function.
6791 (_initialize_i386_windows_nat): Call windows_set_segment_register_p.
6795 * printcmd.c (set_command): Emit a warning if the expression is not
6800 * nto-procfs.c (procfs_find_new_threads, procfs_pid_to_str):
6805 * stap-probe.c (stap_is_operator): Change declaration.
6806 (stap_get_opcode): Change return value.
6807 (stap_parse_argument_1): Update calls to `stap_get_opcode' and
6808 `stap_parse_argument_1'.
6812 * infrun.c (displaced_step_fixup): Add "displaced:" prefix to
6817 Add two new methods global_block and static_block to gdb.Symtab
6819 * NEWS (Python scripting): Add entry about the new methods.
6820 * python/py-symtab.c (stpy_global_block): New function which
6821 implements the gdb.Symtab.global_block() method.
6822 (stpy_static_block): New function which implements the
6823 gdb.Symtab.static_block() method.
6824 (symtab_object_methods): Add entries for the two new methods.
6828 * dwarf2read.c (dw2_find_symbol_file): Don't crash if there are no
6833 * i386-tdep.c (i386_fetch_pointer_argument): Remove extra
6835 (i386_process_record): Ditto.
6839 * infcall.c (unwind_on_signal_p): Make static.
6843 * sol-thread.c (solaris_pid_to_str): Make static.
6844 (_initialize_sol_thread): Add prototype.
6848 * sol-thread.c (procfs_pid_to_str): Delete extern declaration.
6852 * MAINTAINERS: Remove myself.
6856 Fix --without-auto-load-safe-path for MS-Windows host platform.
6857 * auto-load.c (filename_is_in_dir): Return 1 for DIR_LEN 0.
6861 * gdb_curses.h: Undefine KEY_EVENT before including curses
6862 headers. Move "#undef MOUSE_MOVED" before any curses header
6867 * features/i386/i386-mmx-linux.c: Regenerate.
6868 * features/rs6000/powerpc-32.c: Likewise.
6869 * features/rs6000/powerpc-32l.c: Likewise.
6870 * features/rs6000/powerpc-403.c: Likewise.
6871 * features/rs6000/powerpc-403gc.c: Likewise.
6872 * features/rs6000/powerpc-405.c: Likewise.
6873 * features/rs6000/powerpc-505.c: Likewise.
6874 * features/rs6000/powerpc-601.c: Likewise.
6875 * features/rs6000/powerpc-602.c: Likewise.
6876 * features/rs6000/powerpc-603.c: Likewise.
6877 * features/rs6000/powerpc-604.c: Likewise.
6878 * features/rs6000/powerpc-64.c: Likewise.
6879 * features/rs6000/powerpc-64l.c: Likewise.
6880 * features/rs6000/powerpc-750.c: Likewise.
6881 * features/rs6000/powerpc-860.c: Likewise.
6882 * features/rs6000/powerpc-e500.c: Likewise.
6883 * features/rs6000/powerpc-e500l.c: Likewise.
6884 * features/rs6000/powerpc-isa205-32l.c: Likewise.
6885 * features/rs6000/powerpc-isa205-64l.c: Likewise.
6886 * features/rs6000/rs6000.c: Likewise.
6890 * i386-tdep.c (i386_stap_parse_special_token) <s>: Remove unused
6892 * stap-probe.c (stap_parse_single_operand) <reg_suffix,
6893 reg_ind_suffix, reg_suffix_len, reg_ind_suffix_len>: Likewise.
6894 (stap_parse_argument) <e>: Likewise.
6895 (handle_stap_probe) <byte_order>: Likewise.
6899 * dwarf2read.c (init_cutu_and_read_dies): Renamed from
6900 init_and_read_dies_worker. All callers updated.
6901 (init_cu_and_read_dies, init_tu_and_read_dies): Delete. All calls
6902 replaced with init_cutu_and_read_dies.
6903 (load_partial_comp_unit): Pass 1 for use_existing_cu.
6904 (find_partial_die): Remove FIXME. Don't free current CU.
6908 * contrib: New directory.
6909 * contrib/test_pubnames_and_indexes.py: New file.
6913 * dwarf2read.c (dwarf_decode_macros): New arg section_name.
6914 All callers updated.
6915 (init_cu_die_reader): Verify the section is non-empty.
6916 (dwarf_decode_line_header): Don't dereference section->asection
6917 until we know the section is present.
6921 * tracepoint.c (start_tracing, stop_tracing): Checking for NULL
6926 * gdb-code-style.el: New hook gdb-markup-hook
6927 and gdb-comment-hook.
6931 Initial support for Fission. http://gcc.gnu.org/wiki/DebugFission
6932 * symfile.c (default_symfile_relocate): Use sectp->owner instead of
6934 * symfile.h (dwarf2_debug_sections): New member addr.
6935 * dwarf2expr.c (execute_stack_op): New case DW_OP_GNU_addr_index.
6936 (ctx_no_get_addr_index): New function.
6937 * dwarf2expr.h (dwarf_expr_context_funcs): New member get_addr_index.
6938 (ctx_no_get_addr_index): Declare.
6939 * dwarf2-frame.c (dwarf2_frame_ctx_funcs): Update.
6940 * dwarf2loc.c (dwarf_expr_get_addr_index): New function.
6941 (dwarf_expr_ctx_funcs): Update.
6942 (needs_get_addr_index): New function.
6943 (needs_frame_ctx_funcs): Update.
6944 * dwarf2loc.h (dwarf2_read_addr_index): Declare.
6945 * dwarf2read.c: #include "gdbcore.h".
6946 (dwarf2_per_objfile): New members addr, dwo_files.
6947 (dwarf2_elf_names): Add entry for addr.
6948 (struct dwo_section_names): New type.
6949 (dwo_section_names): New static global.
6950 (dwarf2_cu): New members dwo_unit, addr_base, have_addr_base.
6951 (dwarf2_per_cu_data): New member is_debug_types, all boolean uses of
6952 old debug_types_section member updated to use this.
6953 Rename member debug_types_section to info_or_types_section,
6955 (signatured_type): Rename member type_offset to type_offset_in_tu,
6956 all uses updated. New member type_offset_in_section.
6957 (struct dwo_sections): New type.
6958 (struct dwo_unit): New type.
6959 (struct dwo_file): New type.
6960 (die_reader_specs): New member dwo_file.
6961 (dwarf2_locate_sections): Watch for .debug_addr.
6962 (zlib_decompress_section): Use sectp->owner instead of objfile->obfd.
6963 (dwarf2_read_section): Get bfd of section from bfd's asection,
6965 (create_cus_from_index): Initialize the_cu->info_or_types_section.
6966 (create_signatured_type_table_from_index): Initialize
6967 sig_type->info_or_types_section.
6968 (dw2_get_file_names): Statement lists for type units with DWO files
6969 live in the DWO file.
6970 (create_debug_types_hash_table): New function.
6971 (create_all_type_units): Rewrite.
6972 (init_cu_die_reader): New arg dwo_file, all callers updated.
6973 (init_and_read_dies_worker): Get section from
6974 this_cu->info_or_types_section. Set sig_type->type_offset_in_section.
6975 Watch for DW_AT_GNU_dwo_name and if present lookup the file and
6976 continue reading the CU/TU from there.
6977 (init_cutu_and_read_dies_no_follow): New arg dwo_file, all callers
6978 updated. Get section from this_cu->info_or_types_section.
6979 (create_all_comp_units): Initialize this_cu->info_or_types_section.
6980 (skip_one_die): New cases DW_FORM_GNU_addr_index,
6981 DW_FORM_GNU_str_index.
6982 (hash_dwo_file, eq_dwo_file): New functions.
6983 (allocate_dwo_file_hash_table): New function.
6984 (hash_dwo_unit, eq_dwo_unit): New functions.
6985 (allocate_dwo_unit_table): New function.
6986 (dwarf2_locate_dwo_sections): New function.
6987 (struct create_dwo_info_table_data): New type.
6988 (create_debug_info_hash_table_reader): New function.
6989 (create_debug_info_hash_table): New function.
6990 (try_open_dwo_file, open_dwo_file, init_dwo_file): New function.
6991 (lookup_dwo_file): New function.
6992 (lookup_dwo_comp_unit, lookup_dwo_type_unit): New functions.
6993 (free_dwo_file, free_dwo_file_cleanup): New functions.
6994 (free_dwo_file_from_slot, free_dwo_files): New functions.
6995 (dwarf2_get_pc_bounds): Handle DW_FORM_GNU_addr_index.
6996 (dwarf2_record_block_ranges): Ditto.
6997 (read_partial_die): Ditto.
6998 (process_enumeration_scope): Update to use type_offset_in_section.
6999 (read_full_die_1): New function.
7000 (read_full_die): Rewrite.
7001 (read_attribute_value): New cases DW_FORM_GNU_addr_index,
7002 DW_FORM_GNU_str_index.
7003 (read_addr_index_1, read_addr_index): New functions.
7004 (read_addr_index_from_leb128): New function.
7005 (struct dwarf2_read_addr_index_data): New type.
7006 (dwarf2_read_addr_index_reader): New function.
7007 (dwarf2_read_addr_index): New function.
7008 (read_str_index): New function.
7009 (leb128_size): New function.
7010 (dwarf_decode_line_header): Delete arg abfd, all callers updated.
7011 If processing a type unit from a DWO file, get the line section
7013 (var_decode_location): Watch for DW_OP_GNU_addr_index.
7014 (dwarf2_const_value_attr): New cases DW_FORM_GNU_addr_index,
7015 DW_FORM_GNU_str_index.
7016 (lookup_die_type): Check whether section offset of type's die is
7017 known before looking it up. Remove assert. Condition can
7018 legimately happen for inter-cu type references.
7019 (dwarf_attr_name): Handle Fission attributes.
7020 (dwarf_form_name): Handle Fission forms.
7021 (dump_die_shallow): New cases DW_FORM_GNU_addr_index,
7022 DW_FORM_GNU_str_index.
7023 (follow_die_sig): Update to use type_offset_in_section.
7024 (decode_locdesc): New case DW_OP_GNU_addr_index.
7025 (skip_form_bytes): New cases DW_FORM_GNU_addr_index,
7026 DW_FORM_GNU_str_index.
7027 (cu_debug_loc_section): New function.
7028 (fill_in_loclist_baton, dwarf2_symbol_mark_computed): Call it.
7029 (dwarf2_per_objfile_free): Unmap .debug_addr section.
7030 Free DWO files if present.
7031 * xcoffread.c (dwarf2_xcoff_names): Add .debug_addr.
7033 Refactor DIE reading.
7034 * dwarf2read.c (dwarf2_per_objfile): Replace members
7035 debug_info_type_hash and debug_types_type_hash with die_type_hash.
7036 (die_reader_specs): New member "die_section". Temporarily make
7037 member "buffer" non-const, pending constifying all info_ptr uses.
7038 (die_reader_func_ftype): New typedef.
7039 (dw2_get_file_names_reader): New function.
7040 (dw2_get_file_names): Rewrite.
7041 (read_and_check_type_unit_head): Rename arg type_offset to
7043 (create_all_type_units): Improve debugging message.
7044 Improve dummy type unit check.
7045 (init_cu_die_reader): New arg "section". All callers updated.
7046 (init_and_read_dies_worker): New function.
7047 (init_cu_and_read_dies, init_tu_and_read_dies): New functions.
7048 (init_cutu_and_read_dies_no_follow): New function.
7049 (init_cutu_and_read_dies_simple): New function.
7050 (process_psymtab_comp_unit_reader): New function.
7051 (process_psymtab_comp_unit): Delete args section,
7052 is_debug_types_section. Rewrite. All callers updated.
7053 (process_psymtab_type_unit): Renamed from process_type_comp_unit.
7054 All callers updated. Rewrite.
7055 (load_partial_comp_unit_reader): New function.
7056 (load_partial_comp_unit): Rewrite.
7057 (skip_children): New arg reader. Delete args buffer, cu.
7058 All callers updated.
7059 (skip_one_die): New arg reader. Delete args buffer, cu.
7060 All callers updated.
7061 (locate_pdi_sibling): New arg reader. Delete args buffer, abfd, cu.
7062 All callers updated.
7063 (load_full_comp_unit_reader): New function.
7064 (load_full_comp_unit): Rewrite.
7065 (read_comp_unit): Delete.
7066 (read_die_and_children_1): Delete, contents moved ...
7067 (read_die_and_children): ... here.
7068 (dwarf2_read_abbrevs): New arg abbrev_section. All callers updated.
7069 (load_partial_dies): New arg reader. Delete args abfd, buffer, cu.
7070 All callers updated.
7071 (read_partial_die): New arg reader. Delete args abfd, buffer, cu.
7072 All callers updated.
7073 (find_partial_die): Rewrite load_all_dies support.
7074 (read_attribute_value): New arg reader. Delete args abfd, cu.
7075 All callers updated.
7076 (read_attribute): New arg reader. Delete args abfd, cu.
7077 All callers updated.
7078 (load_full_type_unit): Add assert.
7079 (read_signatured_type_reader): New function.
7080 (read_signatured_type): Rewrite.
7081 (free_stack_comp_unit): Remove call to age_cached_comp_units.
7082 (free_one_cached_comp_unit): Change target_cu arg to target_per_cu.
7083 All callers updated. Set per_cu->cu = NULL after freeing it.
7084 (dwarf2_per_cu_offset_and_type): Renamed from dwarf2_offset_and_type.
7085 (per_cu_offset_and_type_hash): Renamed from offset_and_type_hash.
7086 (per_cu_offset_and_type_eq): Renamed from offset_and_type_eq.
7087 (set_die_type): Update.
7088 (get_die_type_at_offset): Update.
7089 (read_file_scope): Call prepare_one_comp_unit.
7090 (read_type_unit_scope): Ditto.
7091 (prepare_one_comp_unit): Set producer if present.
7095 * probe.c (compile_rx_or_error): Silence ARI warning about missing
7096 gettext function on `error'.
7100 * dwarf2read.c (dwarf2_read_index): Don't use index if symbol table
7106 * breakpoint.c (struct breakpoint_objfile_data)
7107 <longjmp_searched>,<longjmp_probes>,<exception_searched>,
7108 <exception_probes>: New fields.
7109 (free_breakpoint_probes): New function.
7110 (create_longjmp_master_breakpoint): Prefer SystemTap probe over
7111 `_Unwind_DebugHook'.
7112 (create_exception_master_breakpoint): Likewise.
7113 (_initialize_breakpoint): Registering cleanup for SystemTap probes.
7114 * infrun.c: Including necessary header files for handling SystemTap
7116 (handle_inferior_event): Handling longjmp breakpoint and exceptions
7117 via SystemTap probes.
7118 (check_exception_resume): Remove `func' argument. Handle exception
7119 unwinding breakpoint set via a SystemTap probe.
7120 (insert_exception_resume_from_probe): New function.
7126 * Makefile.in (SFILES): Add `probe' and `stap-probe'.
7127 (COMMON_OBS): Likewise.
7128 (HFILES_NO_SRCDIR): Add `probe'.
7129 * NEWS: Mention support for static and SystemTap probes.
7130 * amd64-tdep.c (amd64_init_abi): Initializing proper fields used by
7131 SystemTap probes' arguments parser.
7132 * arm-linux-tdep.c: Including headers needed to perform the parsing
7133 of SystemTap probes' arguments.
7134 (arm_stap_is_single_operand): New function.
7135 (arm_stap_parse_special_token): Likewise.
7136 (arm_linux_init_abi): Initializing proper fields used by SystemTap
7137 probes' arguments parser.
7138 * ax-gdb.c (require_rvalue): Removing static declaration.
7139 (gen_expr): Likewise.
7140 * ax-gdb.h (gen_expr): Declaring function.
7141 (require_rvalue): Likewise.
7142 * breakpoint.c: Include `gdb_regex.h' and `probe.h'.
7143 (bkpt_probe_breakpoint_ops): New variable.
7144 (momentary_breakpoint_from_master): Set the `probe' value.
7145 (add_location_to_breakpoint): Likewise.
7146 (break_command_1): Using proper breakpoint_ops according to the
7147 argument passed by the user in the command line.
7148 (bkpt_probe_insert_location): New function.
7149 (bkpt_probe_remove_location): Likewise.
7150 (bkpt_probe_create_sals_from_address): Likewise.
7151 (bkpt_probe_decode_linespec): Likewise.
7152 (tracepoint_probe_create_sals_from_address): Likewise.
7153 (tracepoint_probe_decode_linespec): Likewise.
7154 (tracepoint_probe_breakpoint_ops): New variable.
7155 (trace_command): Using proper breakpoint_ops according to the
7156 argument passed by the user in the command line.
7157 (initialize_breakpoint_ops): Initializing breakpoint_ops for
7158 static probes on breakpoints and tracepoints.
7159 * breakpoint.h (struct bp_location) <probe>: New field.
7160 * cli-utils.c (skip_spaces_const): New function.
7161 (extract_arg): Likewise.
7162 * cli-utils.h (skip_spaces_const): Likewise.
7163 (extract_arg): Likewise.
7164 * coffread.c (coff_sym_fns): Add `sym_probe_fns' value.
7165 * configure.ac: Append `stap-probe.o' to be generated when ELF
7167 * configure: Regenerate.
7168 * dbxread.c (aout_sym_fns): Add `sym_probe_fns' value.
7169 * elfread.c: Include `probe.h' and `arch-utils.h'.
7170 (probe_key): New variable.
7171 (elf_get_probes): New function.
7172 (elf_get_probe_argument_count): Likewise.
7173 (elf_evaluate_probe_argument): Likewise.
7174 (elf_compile_to_ax): Likewise.
7175 (elf_symfile_relocate_probe): Likewise.
7176 (stap_probe_key_free): Likewise.
7177 (elf_probe_fns): New variable.
7178 (elf_sym_fns): Add `sym_probe_fns' value.
7179 (elf_sym_fns_lazy_psyms): Likewise.
7180 (elf_sym_fns_gdb_index): Likewise.
7181 (_initialize_elfread): Initialize objfile cache for static
7183 * gdb_vecs.h (struct probe): New forward declaration.
7184 (probe_p): New VEC declaration.
7185 * gdbarch.c: Regenerate.
7186 * gdbarch.h: Regenerate.
7187 * gdbarch.sh (stap_integer_prefix): New variable.
7188 (stap_integer_suffix): Likewise.
7189 (stap_register_prefix): Likewise.
7190 (stap_register_suffix): Likewise.
7191 (stap_register_indirection_prefix): Likewise.
7192 (stap_register_indirection_suffix): Likewise.
7193 (stap_gdb_register_prefix): Likewise.
7194 (stap_gdb_register_suffix): Likewise.
7195 (stap_is_single_operand): New function.
7196 (stap_parse_special_token): Likewise.
7197 (struct stap_parse_info): Forward declaration.
7198 * i386-tdep.c: Including headers needed to perform the parsing
7199 of SystemTap probes' arguments.
7200 (i386_stap_is_single_operand): New function.
7201 (i386_stap_parse_special_token): Likewise.
7202 (i386_elf_init_abi): Initializing proper fields used by SystemTap
7203 probes' arguments parser.
7204 * i386-tdep.h (i386_stap_is_single_operand): New function.
7205 (i386_stap_parse_special_token): Likewise.
7206 * machoread.c (macho_sym_fns): Add `sym_probe_fns' value.
7207 * mipsread.c (ecoff_sym_fns): Likewise.
7208 * objfiles.c (objfile_relocate1): Support relocation for static
7210 * parse.c (prefixify_expression): Remove static declaration.
7211 (initialize_expout): Likewise.
7212 (reallocate_expout): Likewise.
7213 * parser-defs.h (initialize_expout): Declare function.
7214 (reallocate_expout): Likewise.
7215 (prefixify_expression): Likewise.
7216 * ppc-linux-tdep.c: Including headers needed to perform the parsing
7217 of SystemTap probes' arguments.
7218 (ppc_stap_is_single_operand): New function.
7219 (ppc_stap_parse_special_token): Likewise.
7220 (ppc_linux_init_abi): Initializing proper fields used by SystemTap
7221 probes' arguments parser.
7222 * probe.c: New file, for generic statically defined probe support.
7223 * probe.h: Likewise.
7224 * s390-tdep.c: Including headers needed to perform the parsing of
7225 SystemTap probes' arguments.
7226 (s390_stap_is_single_operand): New function.
7227 (s390_gdbarch_init): Initializing proper fields used by SystemTap
7228 probes' arguments parser.
7229 * somread.c (som_sym_fns): Add `sym_probe_fns' value.
7230 * stap-probe.c: New file, for SystemTap probe support.
7231 * stap-probe.h: Likewise.
7232 * symfile.h: Include `gdb_vecs.h'.
7233 (struct sym_probe_fns): New struct.
7234 (struct sym_fns) <sym_probe_fns>: New field.
7235 * symtab.c (init_sal): Initialize `probe' field.
7236 * symtab.h (struct probe): Forward declaration.
7237 (struct symtab_and_line) <probe>: New field.
7238 * tracepoint.c (start_tracing): Adjust semaphore on breakpoints
7240 (stop_tracing): Likewise.
7241 * xcoffread.c (xcoff_sym_fns): Add `sym_probe_fns' value.
7246 * ax-gdb.c (gen_expr): Clean up code to handle internal variables
7247 and to compile agent expressions.
7248 * infrun.c (siginfo_make_value): New argument `ignore'.
7249 (siginfo_funcs): New struct.
7250 (_initialize_infrun): New argument when calling
7251 `create_internalvar_type_lazy'.
7252 * thread.c (thread_id_make_value): New argument `ignore'.
7253 (thread_funcs): New struct.
7254 (_initialize_thread): New argument when calling
7255 `create_internalvar_type_lazy'.
7256 * tracepoint.c (sdata_make_value): New argument `ignore'.
7257 (sdata_funcs): New struct.
7258 (_initialize_tracepoint): New argument when calling
7259 `create_internalvar_type_lazy'.
7260 * value.c (make_value): New struct.
7261 (create_internalvar_type_lazy): New argument `data'.
7262 (compile_internalvar_to_ax): New function.
7263 (value_of_internalvar): Properly handling `make_value' case.
7264 (clear_internalvar): Likewise.
7265 (show_convenience): Adding `TRY_CATCH' block.
7266 * value.h (internalvar_make_value): Delete, replace by...
7267 (struct internalvar_funcs): ... this.
7268 (create_internalvar_type_lazy) <fun>: Delete argument.
7269 (create_internalvar_type_lazy) <funcs>, <data>: New arguments.
7270 (compile_internalvar_to_ax): New function.
7271 * windows-tdep.c (tlb_make_value): New argument `ignore'.
7272 (tlb_funcs): New struct.
7273 (_initialize_windows_tdep): New argument when calling
7274 `create_internalvar_type_lazy'.
7278 * dwarf2read.c (dwarf2_get_pc_bounds): Check DW_AT_high_pc form to
7279 see whether it is an address or a constant offset from DW_AT_low_pc.
7280 (dwarf2_record_block_ranges): Likewise.
7281 (read_partial_die): Likewise.
7285 * MAINTAINERS (Write After Approval): Add myself to the list.
7289 * proc-utils.h (proc_prettyprint_signalset): New prototype.
7290 (proc_prettyprint_signal): Likewise.
7291 (proc_prettyprint_faultset): Likewise.
7292 (proc_prettyprint_fault): Likewise.
7293 (proc_prettyprint_actionset): Likewise.
7294 (proc_prettyprint_flags): Move to new proc-flags.c section.
7295 (proc_prettyfprint_flags): New prototype.
7296 * procfs.c (proc_nsysarg, proc_sysargs): Add prototypes.
7297 (proc_syscall, proc_cursig): Likewise.
7298 (proc_set_kill_on_last_close): Likewise.
7299 (proc_unset_kill_on_last_close): Likewise.
7300 (proc_set_watchpoint): Make static.
7301 (proc_delete_dead_threads): Likewise.
7302 (procfs_set_watchpoint): Likewise.
7303 (_initialize_procfs): Add prototype.
7304 * proc-events.c: Include proc-utils.h.
7305 (init_syscall_table): Make static.
7306 * proc-api.c (_initialize_proc_api): Add prototype.
7307 * proc-flags.c: Include proc-utils.h.
7311 * configure.ac: Add AC_ARG_PROGRAM.
7312 * configure: Regenerate.
7316 Fix DW_AT_lower_bound defaults for DWARF-4+.
7317 * dwarf2read.c (read_subrange_type): Remove initialization of low and
7318 high. New variable low_default_is_valid. Implement DWARF-4+
7319 DW_AT_lower_bound defaults. Print complaint for DW_AT_lower_bound with
7320 no default by the DWARF standard.
7325 * infrun.c (handle_inferior_event): Move the check for return
7326 trampolines ahead of the check for function trampolines.
7327 * mips-tdep.h (MIPS_S2_REGNUM, MIPS_GP_REGNUM): New macros.
7328 * mips-tdep.c (mips_str_mips16_call_stub): New variable.
7329 (mips_str_mips16_ret_stub): Likewise.
7330 (mips_str_call_fp_stub): Likewise.
7331 (mips_str_call_stub): Likewise.
7332 (mips_str_fn_stub): Likewise.
7333 (mips_str_pic): Likewise.
7334 (mips_in_frame_stub): New function.
7335 (mips_unwind_pc): Return the return address rather than the PC
7336 if the PC of an intermediate frame is inside a call thunk.
7337 (mips_is_stub_suffix): New function.
7338 (mips_is_stub_mode): Likewise.
7339 (mips_get_mips16_fn_stub_pc): Likewise.
7340 (mips_skip_mips16_trampoline_code): Update to handle all the
7341 currently generated stub types. Don't recurse into __fn_stub
7342 thunks. Remove heuristics to handle stubs beyond etext/_etext.
7343 Use cooked register accesses.
7344 (mips_in_return_stub): Reintroduce function.
7345 (mips_skip_trampoline_code): Traverse trampolines recursively.
7346 (mips_gdbarch_init): Handle MIPS16 return trampolines.
7354 * arm-tdep.h (VFP_REGISTER_SIZE): Define.
7355 * features/arm-with-m-vfp-d16.xml: New file. Describes
7356 Cortex-M with VFPv4-sp-d16 FPU register layout.
7357 * features/Makefile (WHICH): Add arm-with-m-vfp-d16.
7358 * features/arm-with-m-vfp-d16.c: New. Generated from above.
7359 * arm-tdep.c: Include arm-with-m-vfp-d16.c.
7360 (arm-register_g_packet_guesses): Add vfp-d16 guess.
7361 (_initialise_arm_tdep): Initialize arm-with-m-vfp-d16 tdesc.
7365 * cli/cli-decode.c (print_doc_line): Use stream instead of
7370 * features/arm-with-iwmmxt.c: Regenerate.
7371 * features/arm-with-m-fpa-layout.c: Likewise.
7372 * features/arm-with-m.c: Likewise.
7373 * features/arm-with-neon.c: Likewise.
7374 * features/arm-with-vfpv2.c: Likewise.
7375 * features/arm-with-vfpv3.c: Likewise.
7376 * features/mips-dsp-linux.c: Likewise.
7377 * features/mips-linux.c: Likewise.
7378 * features/mips64-dsp-linux.c: Likewise.
7379 * features/mips64-linux.c: Likewise.
7380 * features/s390-linux32.c: Likewise.
7381 * features/s390-linux32v1.c: Likewise.
7382 * features/s390-linux32v2.c: Likewise.
7383 * features/s390-linux64.c: Likewise.
7384 * features/s390-linux64v1.c: Likewise.
7385 * features/s390-linux64v2.c: Likewise.
7386 * features/s390x-linux64.c: Likewise.
7387 * features/s390x-linux64v1.c: Likewise.
7388 * features/s390x-linux64v2.c: Likewise.
7389 * features/tic6x-c62x-linux.c: Likewise.
7390 * features/tic6x-c62x.c: Likewise.
7391 * features/tic6x-c64x-linux.c: Likewise.
7392 * features/tic6x-c64x.c: Likewise.
7393 * features/tic6x-c64xp-linux.c: Likewise.
7394 * features/tic6x-c64xp.c: Likewise.
7395 * target-descriptions.c: Only generate `field_type' and `type'
7396 variables when needed.
7400 * cli/cli-cmds.c (cd_command): Use memmove instead of strcpy.
7404 Initial pass at Go language support.
7406 * Makefile.in (SFILES): Add go-exp.y, go-lang.c, go-typeprint.c,
7408 (COMMON_OBS): Add go-lang.o, go-val.print.o, go-typeprint.o.
7409 (YYFILES): Add go-exp.c.
7410 (YYOBJ): Add go-exp.o.
7411 (local-maintainer-clean): Delete go-exp.c.
7412 * defs.h (enum language): Add language_go.
7413 * dwarf2read.c: #include "go-lang.h".
7414 (fixup_go_packaging): New function.
7415 (process_full_comp_unit): Call it when processing Go CUs.
7416 (dwarf2_physname): Add Go support.
7417 (read_file_scope): Handle missing language spec for GNU Go.
7418 (set_cu_language): Handle DW_LANG_Go.
7419 * go-exp.y: New file.
7420 * go-lang.h: New file.
7421 * go-lang.c: New file.
7422 * go-typeprint.c: New file.
7423 * go-valprint.c: New file.
7424 * symtab.c: #include "go-lang.h".
7425 (symbol_set_language): Handle language_go.
7426 (symbol_find_demangled_name, symbol_set_names): Ditto.
7427 (symbol_natural_name, demangle_for_lookup, find_main_name): Ditto.
7431 avoid a few strncpy-induced buffer overruns
7432 * procfs.c (procfs_make_note_section): Be sure to NUL-terminate
7433 fname and psargs before trying to concatenate.
7434 * tui/tui-stack.c (tui_get_function_from_frame): NUL-terminate
7435 "name" before applying strchr.
7439 * CONTRIBUTE: Use unified diff instead of context diff when
7444 * mips-tdep.c (mips_about_to_return): Remove dead MIPS16 support
7445 code. Handle JR.HB correctly.
7450 (is_mips16_addr, unmake_mips16_addr, make_mips16_addr): Group
7451 with the other MIPS16 helpers.
7455 * observer.sh: Conditionally declare `args', thus cleaning up
7456 unused instances of this variable.
7460 Revert this patch to allow breakpoint always-inserted
7463 * breakpoint.c: Include record.h.
7464 (breakpoints_always_inserted_mode): Return false when the record
7467 * breakpoint.c (iterate_over_bp_locations): New.
7468 * breakpoint.h: Declare.
7469 New typedef walk_bp_location_callback.
7470 * record.c (record_open): Call record_init_record_breakpoints.
7471 (record_sync_record_breakpoints): New.
7472 (record_init_record_breakpoints): New.
7473 * NEWS: Mention supporting breakpoint always-inserted mode in
7478 * mi/mi-main.c (mi_cmd_execute): Choose a live thread not just
7483 * breakpoint.c (ep_is_catchpoint): Renamed to ...
7484 (is_catchpoint): ... it.
7485 (print_one_breakpoint_location): Caller update.
7486 * breakpoint.h: Update declaration.
7490 * configure.tgt (sparc-*-linux*): Set build_gdbserver to yes.
7494 * buildsym.c (add_free_pendings): Remove.
7495 * buildsym.h (add_free_pendings): Remove.
7499 * dwarf2read.c (partial_die_full_name): Record DW_FORM_ref_addr in
7500 attr.u.unsnd instead of attr.u.addr.
7501 (read_attribute_value) Ditto for cases DW_FORM_ref_addr,
7502 DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4, DW_FORM_reg8,
7504 (dump_die_shallow): Update cases DW_FORM_ref_addr,
7505 DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4. Add cases DW_FORM_ref8,
7507 (dwarf2_get_ref_die_offset): Use DW_UNSND for reference attributes.
7511 * mips-tdep.c (mips_n32n64_return_value): Fix coding style.
7512 (mips_o32_return_value): Likewise.
7513 (mips_o64_return_value): Likewise.
7517 * ada-lang.c (ada_evaluate_subexp): Add cases for
7518 TYPE_CODE_INTERNAL_FUNCTION and for TYPE_GNU_IFUNC, following
7519 their treatment in eval.c.
7523 * sparc-tdep.c (X_DISP10): Define.
7524 (sparc_analyze_control_transfer): Handle compare-and-branch.
7528 * features/Makefile (WHICH): Add arm-with-m and arm-with-m-fpa-layout.
7529 * arm-tdep.c (arm_register_g_packet_guesses): Fix comment.
7534 * mips-tdep.c (mips_float_register_p): New function.
7535 (mips_convert_register_float_case_p): Use mips_float_register_p.
7536 (mips_register_type): Likewise.
7537 (mips_print_register): Likewise.
7538 (print_gp_register_row): Likewise.
7539 (mips_print_registers_info): Likewise.
7543 * mips-tdep.c (mips_elf_make_msymbol_special): Fix identification
7548 * MAINTAINERS (Write After Approval): Add myself to the list.
7552 * MAINTAINERS: Update my e-mail address.
7556 * acx_configure_dir.m4 (ACX_CONFIGURE_DIR): Handle absolute
7558 * configure: Regenerate.
7562 * cp-support.h: Include `gdb_vecs.h'. Delete `const_char_ptr' VEC
7564 * gdb_vecs.h: Declare `const_char_ptr' VEC.
7568 Fix compilation compatibility with python-2.4
7569 * python/py-type.c (convert_field): Cast ADDRSTRING for
7570 PyObject_SetAttrString as non-const. New comment.
7574 * top.c (quit_target): Use all_cleanups.
7575 * main.c (captured_command_loop): Use all_cleanups.
7576 * exceptions.c (throw_exception): Use all_cleanups.
7580 * Makefile.in (GNULIB_BUILDDIR): New.
7581 (LIBGNU, INCGNU, GNULIB_H): Adjust.
7582 (SUBDIRS): Add $(GNULIB_BUILDDIR).
7583 (CLEANDIRS). Remove gnulib/import.
7584 (REQUIRED_SUBDIRS): Replace gnulib/import with $(GNULIB_BUILDDIR).
7586 (distclean): Remove the $(GNULIB_BUILDDIR) directory.
7587 (gnulib/import/Makefile): Replace gnulib/import with
7588 $(GNULIB_BUILDDIR). Set CONFIG_FILES to just Makefile.
7589 (ACLOCAL_AMFLAGS): Remove '-I gnulib/import/m4'.
7590 (aclocal_m4_deps): Remove the gnulib dependencies. Add
7591 acx_configure_dir.m4.
7592 * acinclude.m4: Include acx_configure_dir.m4.
7593 * acx_configure_dir.m4: New file.
7594 * aclocal.m4: Regenerate.
7595 * configure.ac: Remove gl_EARLY, gl_INIT and AM_INIT_AUTOMAKE
7596 calls. Configure gnulib using ACX_CONFIGURE_DIR.
7597 (GNULIB): New variable.
7598 (GNULIB_STDINT_H): Adjust.
7599 (AC_OUTPUT): Don't output gnulib/Makefile.
7600 * gdb/defs.h: Include build-gnulib/config.h.
7601 * aclocal.m4: Regenerate.
7602 * config.in: Regenerate.
7603 * configure: Regenerate.
7605 * gnulib/Makefile.in: New file.
7606 * gnulib/configure.ac: New file.
7607 * gnulib/aclocal.m4: New file.
7608 * gnulib/config.in: New file.
7609 * gnulib/configure: New file.
7610 * gnulib/: Re-run gnulib-tool to adjust.
7614 * cleanups.h (struct cleanup): Move to cleanups.c.
7615 (make_cleanup_dtor_ftype): New typedef.
7616 (make_cleanup_dtor): Use it.
7617 (ALL_CLEANUPS): Replace with ...
7618 (all_cleanups): ... this. Declare. All uses updated.
7619 * cleanups.c: #include "gdb_assert.h".
7620 (sentinel_cleanup): New static global.
7621 (SENTINEL_CLEANUP): Define.
7622 (cleanup_chain, final_cleanup_chain): Initialize to SENTINEL_CLEANUP.
7623 (make_my_cleanup2): Assert result is non-NULL.
7624 (all_cleanups): New function.
7625 (save_my_cleanups): Initialize new chain to SENTINEL_CLEANUP instead
7630 * Makefile.in (HFILES_NO_SRCDIR): Remove gnulib/wchar.in.h.
7631 Adjust paths to gnulib imported files.
7635 * gnulib/: Move whole directory ...
7636 * gnulib/import/: ... here, and re-rerun gnulib-tool to adjust.
7637 * Makefile.in (LIBGNU, INCGNU, GNULIB_H, CLEANDIRS)
7638 (REQUIRED_SUBDIRS, all-lib, gnulib/Makefile, ACLOCAL_AMFLAGS)
7639 (aclocal_m4_deps): Adjust.
7640 * aclocal.m4: Regenerate.
7641 * configure: Regenerate.
7642 * configure.ac: Adjust AC_OUTPUT output.
7646 * Makefile.in (SFILES): Add common/vec.c and remove vec.c.
7648 * vec.c: Move it ...
7649 * common/vec.c: ... here.
7650 * vec.h: Move it ...
7651 * common/vec.h: ... here.
7655 * gdb-code-style.el: New.
7659 Update gnulib from latest git.
7660 (639ea5ae15e39fe48d43e04864b2997301e4b969)
7662 * gnulib/Makefile.am: Update.
7663 * gnulib/dummy.c: Update.
7664 * gnulib/extra/arg-nonnull.h: Update.
7665 * gnulib/extra/c++defs.h: Update.
7666 * gnulib/extra/update-copyright: Update.
7667 * gnulib/extra/warn-on-use.h: Update.
7668 * gnulib/inttypes.in.h: Update.
7669 * gnulib/m4/00gnulib.m4: Update.
7670 * gnulib/m4/extensions.m4: Update.
7671 * gnulib/m4/gnulib-cache.m4: Update.
7672 * gnulib/m4/gnulib-common.m4: Update.
7673 * gnulib/m4/gnulib-comp.m4: Update.
7674 * gnulib/m4/gnulib-tool.m4: Update.
7675 * gnulib/m4/include_next.m4: Update.
7676 * gnulib/m4/inttypes-pri.m4: Update.
7677 * gnulib/m4/inttypes.m4: Update.
7678 * gnulib/m4/longlong.m4: Update.
7679 * gnulib/m4/memchr.m4: Update.
7680 * gnulib/m4/memmem.m4: Update.
7681 * gnulib/m4/mmap-anon.m4: Update.
7682 * gnulib/m4/multiarch.m4: Update.
7683 * gnulib/m4/onceonly.m4: Update.
7684 * gnulib/m4/stddef_h.m4: Update.
7685 * gnulib/m4/stdint.m4: Update.
7686 * gnulib/m4/string_h.m4: Update.
7687 * gnulib/m4/warn-on-use.m4: Update.
7688 * gnulib/m4/wchar_h.m4: Update.
7689 * gnulib/m4/wchar_t.m4: Update.
7690 * gnulib/m4/wint_t.m4: Update.
7691 * gnulib/memchr.c: Update.
7692 * gnulib/memmem.c: Update.
7693 * gnulib/stddef.in.h: Update.
7694 * gnulib/stdint.in.h: Update.
7695 * gnulib/str-two-way.h: Update.
7696 * gnulib/string.in.h: Update.
7697 * gnulib/wchar.in.h: Update.
7699 * gnulib/extra/arg-nonnull.h: Delete.
7700 * gnulib/extra/c++defs.h: Delete.
7701 * gnulib/extra/warn-on-use.h: Delete.
7702 * gnulib/m4/wchar_h.m4: Delete.
7703 * gnulib/m4/wint_t.m4: Delete.
7704 * gnulib/wchar.in.h: Delete.
7706 * gnulib/extra/snippets/arg-nonnull.h: New.
7707 * gnulib/extra/snippets/c++defs.h: New.
7708 * gnulib/extra/snippets/warn-on-use.h: New.
7710 * aclocal.m4: Regenerate.
7711 * config.in: Regenerate.
7712 * configure: Regenerate.
7713 * gnulib/Makefile.in: Regenerate.
7717 Reimport the update-copyright module from gnulib
7718 (250b80067c1e1d8faa0c42fb572f721975b929c5).
7720 * configure: Regenerate.
7721 * gnulib/Makefile.am: Update.
7722 * gnulib/Makefile.in: Regenerate.
7723 * gnulib/extra/update-copyright: Update.
7724 * gnulib/m4/gnulib-cache.m4: Update.
7725 * gnulib/m4/gnulib-comp.m4: Update.
7729 * configure.ac (aix): Put -lpthread into libs.
7730 * configure: Regenerate.
7734 * linespec.c (convert_linespec_to_sals): Don't use
7736 (compare_msymbols): Arguments are minsym_and_objfile, not
7737 minimal_symbol*. Don't use SYMBOL_OBJ_SECTION.
7741 Revert gnulib/ part of:
7743 Copyright year update in most files (performed by copyright.sh).
7747 Fix 64-bit constants on 32-bit hosts.
7748 * dwarf2read.c (read_unsigned_leb128): Change declaration return type
7749 from unsigned long to ULONGEST.
7750 (read_signed_leb128): Change declaration return type from long to
7752 (dwarf2_const_value_attr): Change declaration parameter value from long
7754 (dwarf2_compute_name): Change variable value from long to LONGEST.
7755 (read_unsigned_leb128): Change return type, variable result and some
7756 casts from unsigned long to ULONGEST.
7757 (read_signed_leb128): Change return type, variable result and some
7758 casts from long to LONGEST.
7759 (dwarf2_const_value_data, dwarf2_const_value_attr): Change parameter
7760 value from long to LONGEST.
7761 (dwarf2_const_value): Change variable value from long to LONGEST.
7762 * symmisc.c (print_symbol): Change SYMBOL_VALUE format strings to use
7763 plongest and hex_string.
7764 * symtab.h (struct general_symbol_info): Change ivalue from long to
7765 LONGEST, remove the comment.
7766 * tracepoint.c (validate_actionline, collect_symbol, scope_info):
7767 Change SYMBOL_VALUE format strings to use plongest and hex_string.
7772 * ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL.
7773 * ada-lang.c (ada_discrete_type_high_bound)
7774 (ada_discrete_type_low_bound): Fix function comment. Use
7775 TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
7776 (ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL.
7777 (pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
7778 * ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST.
7779 Use TYPE_FIELD_ENUMVAL.
7780 * ada-valprint.c (print_optional_low_bound, ada_print_scalar)
7781 (ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
7782 * c-typeprint.c (c_type_print_base): Move variable lastval to inner
7783 block, change it to LONGEST. Use TYPE_FIELD_ENUMVAL for
7785 * coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL.
7786 * dwarf2read.c (process_enumeration_scope): Likewise.
7787 * gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of
7789 (class StructMainTypePrettyPrinter): Support also
7790 FIELD_LOC_KIND_ENUMVAL.
7791 * gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for
7793 (recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
7794 (copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL.
7795 * gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL.
7796 (struct main_type.flds_bnds.fields.loc): Adjust bitpos comment. New
7798 (struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to
7799 accommodate enumval.
7800 (struct call_site): Adjust loc_kind to accommodate enumval.
7801 (FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL)
7802 (TYPE_FIELD_ENUMVAL): New macros.
7803 * m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL.
7804 * mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for
7806 * p-typeprint.c (pascal_type_print_base): Likewise.
7807 * python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use
7809 * python/lib/gdb/types.py (make_enum_dict): Likewise.
7810 * python/py-type.c (convert_field): New variable addrstring. Use
7811 TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
7812 (check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL.
7813 * stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL.
7814 * typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for
7816 * valprint.c (generic_val_print): Likewise.
7820 * dwarf2read.c (lookup_signatured_type): Return NULL instead of 0.
7822 * dwarf2read.c: Whitespace fixes.
7823 (lookup_signatured_type): Tweak comment.
7824 (get_die_type_at_offset): Fix comment.
7828 * xcoffread.c (xcoff_secnum_to_sections): New function.
7829 (secnum_to_section, secnum_to_bfd_section): Reimplement
7830 using xcoff_secnum_to_sections. Rename "secnum" parameter
7832 (RECORD_MINIMAL_SYMBOL): Delete.
7833 (record_minimal_symbol): New function.
7834 (scan_xcoff_symtab): Replace uses of RECORD_MINIMAL_SYMBOL
7835 by call to record_minimal_symbol and set misc_func_recorded
7836 to 1. Set last_csect_sec to the XCOFF section index instead
7837 of GDB's section_offset index. Update calls to
7838 prim_record_minimal_symbol_and_info to pass the BFD section
7843 * xcoffread.c (read_xcoff_symtab): Delete variables
7844 last_csect_val and last_csect_sec and associated code.
7848 * cleanups.c (make_my_cleanup,make_my_cleanup2): Make static.
7849 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
7850 * cleanups.h (make_my_cleanup,make_my_cleanup2): Delete
7851 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Delete.
7853 * cleanups.h: New file.
7854 * cleanups.c: New file.
7855 * Makefile.in (SFILES): Add cleanups.c.
7856 (HFILES_NO_SRCDIR): Add cleanups.h.
7857 (COMMON_OBS): Add cleanups.o.
7858 * defs.h (struct cleanup): Moved to cleanups.h.
7859 (do_cleanups,do_final_cleanups): Ditto.
7860 (discard_cleanups,discard_final_cleanups): Ditto
7861 (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
7862 (save_cleanups,save_final_cleanups): Ditto.
7863 (restore_cleanups,restore_final_cleanups): Ditto.
7864 (null_cleanup): Ditto.
7865 (make_my_cleanup,make_my_cleanup2): Ditto.
7866 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
7867 * utils.c (cleanup_chain,final_cleanup_chain): Moved to cleanups.c.
7868 (do_cleanups,do_final_cleanups): Ditto.
7869 (discard_cleanups,discard_final_cleanups): Ditto
7870 (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
7871 (save_cleanups,save_final_cleanups): Ditto.
7872 (restore_cleanups,restore_final_cleanups): Ditto.
7873 (null_cleanup): Ditto.
7874 (make_my_cleanup,make_my_cleanup2): Ditto.
7875 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
7877 * utils.c (make_cleanup_freeargv): Use make_cleanup instead of
7879 (make_cleanup_dyn_string_delete): Ditto.
7880 (make_cleanup_ui_file_delete): Ditto.
7881 (make_cleanup_ui_out_redirect_pop): Ditto.
7882 (make_cleanup_free_section_addr_info): Ditto.
7883 (make_cleanup_restore_integer): Ditto.
7884 (make_cleanup_unpush_target): Ditto.
7885 (make_cleanup_value_free_to_mark): Ditto.
7886 (make_cleanup_value_free): Ditto.
7887 (make_cleanup_free_so): Ditto.
7891 New option "set debug auto-load".
7892 * NEWS: New commands "set debug auto-load" and "show debug auto-load".
7893 * auto-load.c (debug_auto_load, show_debug_auto_load: New.
7894 (auto_load_safe_path_vec_update)
7895 (filename_is_in_auto_load_safe_path_vec): Call fprintf_unfiltered
7897 (file_is_auto_load_safe): New parameters debug_fmt and ....
7898 Call fprintf_unfiltered if DEBUG_AUTO_LOAD.
7899 (source_gdb_script_for_objfile): Extend the file_is_auto_load_safe
7900 caller by explanatory string.
7901 (_initialize_auto_load): Register "set debug auto-load".
7902 * auto-load.h (file_is_auto_load_safe): New parameters debug_fmt
7904 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
7905 (try_thread_db_load_from_dir): Extend the file_is_auto_load_safe caller
7906 by explanatory string.
7907 * main.c (captured_main): Likewise.
7908 * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile)
7909 (source_section_scripts): Likewise.
7913 New option "set auto-load safe-path".
7914 * NEWS: New commands "set auto-load safe-path"
7915 and "show auto-load safe-path".
7916 * auto-load.c: Include gdb_vecs.h, readline/tilde.h and completer.h.
7917 (auto_load_safe_path, auto_load_safe_path_vec)
7918 (auto_load_safe_path_vec_update, set_auto_load_safe_path)
7919 (show_auto_load_safe_path, add_auto_load_safe_path, filename_is_in_dir)
7920 (filename_is_in_auto_load_safe_path_vec, file_is_auto_load_safe): New.
7921 (source_gdb_script_for_objfile): New variable is_safe. Call
7922 file_is_auto_load_safe. Return if it is not.
7923 (struct loaded_script): New field loaded.
7924 (maybe_add_script): Add parameter loaded. Initialize SLOT with it.
7925 (print_script): Use LOADED indicator instead of FULL_PATH. Change
7926 output "Missing" to "No".
7927 (_initialize_auto_load): New variable cmd. Initialize
7928 auto_load_safe_path. Register "set auto-load safe-path",
7929 "show auto-load safe-path" and "add-auto-load-safe-path".
7930 * auto-load.h (maybe_add_script): Add parameter loaded.
7931 (file_is_auto_load_safe): New declaration.
7932 * config.in: Regenerate.
7933 * configure: Regenerate.
7934 * configure.ac: New parameters --with-auto-load-safe-path
7935 and --without-auto-load-safe-path.
7936 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
7937 (try_thread_db_load_from_dir): Check file_is_auto_load_safe first.
7938 * main.c (captured_main): Check file_is_auto_load_safe for
7940 * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile): New
7941 variable is_safe. Call file_is_auto_load_safe. Return if it is not.
7942 (source_section_scripts): Call file_is_auto_load_safe. Return if it is
7947 auto-load: Implementation.
7948 * NEWS: New descriptions for "info auto-load",
7949 "info auto-load gdb-scripts", "info auto-load python-scripts",
7950 "info auto-load local-gdbinit" and "info auto-load libthread-db".
7951 Deprecate "info auto-load-scripts", "set auto-load-scripts on|off"
7952 and "show auto-load-scripts". New description for "set auto-load",
7953 "show auto-load", "set auto-load gdb-scripts",
7954 "show auto-load gdb-scripts", "set auto-load python-scripts",
7955 "show auto-load python-scripts", "set auto-load local-gdbinit",
7956 "show auto-load local-gdbinit", "set auto-load libthread-db" and
7957 "show auto-load libthread-db".
7958 * auto-load.c: Remove include python/python-internal.h. Add includes
7959 exceptions.h, cli/cli-script.h, gdbcmd.h, cli/cli-decode.h and
7961 (GDB_AUTO_FILE_NAME, source_gdb_script_for_objfile)
7962 (auto_load_gdb_scripts, show_auto_load_gdb_scripts): New.
7963 (gdbpy_global_auto_load): Rename to ...
7964 (global_auto_load): ... here.
7965 (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
7966 (auto_load_local_gdbinit_loaded, show_auto_load_local_gdbinit)
7967 (script_language_gdb, source_gdb_script_for_objfile): New.
7968 (struct loaded_script): New field language.
7969 (hash_loaded_script_entry, eq_loaded_script_entry): Calculate also
7971 (maybe_add_script): Add parameter language. Drop redundant
7972 entry.full_path initialization. Initialize entry.language and
7974 (auto_load_objfile_script): Change parameter suffix to language.
7975 Remove the call of maybe_add_script.
7976 Call language->source_script_for_objfile.
7977 (load_auto_scripts_for_objfile, struct collect_matching_scripts_data):
7979 (collect_matching_scripts): Adjust it for
7980 struct collect_matching_scripts_data.
7981 (auto_load_info_scripts_pattern_nl): New variable.
7982 (info_auto_load_scripts): Rename to ...
7983 (auto_load_info_scripts): ... here, add parameter language. Adjust it
7984 for struct collect_matching_scripts_data.
7985 (info_auto_load_gdb_scripts, info_auto_load_local_gdbinit)
7986 (set_auto_load_cmd, auto_load_set_cmdlist_get, show_auto_load_cmd)
7987 (auto_load_show_cmdlist_get, info_auto_load_cmd)
7988 (auto_load_info_cmdlist_get): New.
7989 (_initialize_auto_load): Move add_info of "auto-load-scripts" to
7990 python/py-auto-load.c. New installment for "set auto-load gdb-scripts",
7991 "info auto-load gdb-scripts", "set auto-load local-gdbinit" and
7992 "info auto-load local-gdbinit".
7993 * auto-load.h (struct script_language): New.
7994 (gdbpy_global_auto_load): Rename to ...
7995 (global_auto_load): ... here.
7996 (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
7997 (auto_load_local_gdbinit_loaded): New declarations.
7998 (maybe_add_script): New parameter language.
7999 (auto_load_objfile_script): Change parameter suffix to language.
8000 (load_auto_scripts_for_objfile, auto_load_info_scripts_pattern_nl)
8001 (auto_load_info_scripts, auto_load_set_cmdlist_get)
8002 (auto_load_show_cmdlist_get, auto_load_info_cmdlist_get): New
8004 * linux-thread-db.c: Include auto-load.h and ctype.h.
8005 (auto_load_thread_db, show_auto_load_thread_db): New.
8006 (struct thread_db_info): New field filename.
8007 (delete_thread_db_info): Call xfree for FILENAME.
8008 (try_thread_db_load): Initialize FILENAME.
8009 (try_thread_db_load_from_pdir, try_thread_db_load_from_dir): Return
8010 if !AUTO_LOAD_THREAD_DB.
8011 (info_auto_load_libthread_db_compare, info_auto_load_libthread_db): New.
8012 (_initialize_thread_db): Install auto_load_thread_db
8013 as "set auto-load libthread-db" and install info_auto_load_libthread_db
8014 as "info auto-load libthread-db".
8015 * main.c (captured_main): Rename gdbpy_global_auto_load to
8016 global_auto_load. Initialize AUTO_LOAD_LOCAL_GDBINIT_PATHNAME and
8017 AUTO_LOAD_LOCAL_GDBINIT_LOADED.
8018 (print_gdb_help): Extend the help for 'local init file'.
8019 * python/py-auto-load.c: Remove a comment about gdb scripts extension.
8020 (GDBPY_AUTO_SECTION_NAME): Extend the comment it is Python specific.
8021 (auto_load_scripts): Rename to ...
8022 (auto_load_python_scripts): ... here, update the comment.
8023 (gdbpy_load_auto_script_for_objfile): New declaration.
8024 (show_auto_load_python_scripts, script_language_python)
8025 (gdbpy_load_auto_script_for_objfile): New.
8026 (source_section_scripts): Refactor the code.
8027 (load_auto_scripts_for_objfile): Rename to ...
8028 (gdbpy_load_auto_scripts_for_objfile): ... here, update the
8029 auto_load_objfile_script caller, drop GDBPY_GLOBAL_AUTO_LOAD checking.
8030 (info_auto_load_python_scripts): New.
8031 (gdbpy_initialize_auto_load): New variables cmd and cmd_name.
8032 Rename "set auto-load-scripts" to "set auto-load python-scripts".
8033 Register "set auto-load-scripts" as its deprecated alias. Register
8034 "info auto-load python-scripts". Register "info auto-load-scripts" as
8035 its deprecated alias.
8036 (load_auto_scripts_for_objfile): Rename to ...
8037 (gdbpy_load_auto_scripts_for_objfile): ... here.
8038 * python/python.h (load_auto_scripts_for_objfile): Rename to ...
8039 (gdbpy_load_auto_scripts_for_objfile): ... here.
8043 auto-load: Move files.
8044 * Makefile.in (SFILES): Add auto-load.c.
8045 (HFILES_NO_SRCDIR): Add auto-load.h.
8046 (COMMON_OBS): Add auto-load.o.
8047 (distclean): Change .gdbinit for gdb-gdb.gdb.
8048 * auto-load.c: New file, with parts from python/py-auto-load.c.
8049 * auto-load.h: New file, with parts from python/python.h.
8050 * configure: Regenerate.
8051 * configure.ac (AC_OUTPUT): Change .gdbinit for gdb-gdb.gdb.
8052 * gdb-gdb.gdb.in: New file, renamed from gdbinit.in.
8053 * gdbinit.in: Remove file, rename it to gdb-gdb.gdb.in.
8054 * main.c: Include auto-load.h.
8055 * python/py-auto-load.c: Move include filenames.h, gdb_regex.h,
8056 command.h, observer.h and progspace.h to auto-load.c. Add include
8058 (gdbpy_global_auto_load, struct auto_load_pspace_info)
8059 (struct loaded_script, auto_load_pspace_data)
8060 (auto_load_pspace_data_cleanup, get_auto_load_pspace_data)
8061 (hash_loaded_script_entry, eq_loaded_script_entry)
8062 (init_loaded_scripts_info, get_auto_load_pspace_data_for_loading)
8063 (maybe_add_script): Move to auto-load.c.
8064 (source_section_scripts): Change maybe_add_script parameters passing,
8065 use script_not_found_warning_print.
8066 (clear_section_scripts, auto_load_objfile_script)
8067 (auto_load_new_objfile, loaded_script_ptr)
8068 (DEF_VEC_P (loaded_script_ptr), collect_matching_scripts, print_script)
8069 (sort_scripts_by_name, info_auto_load_scripts): Move to auto-load.c.
8070 (gdbpy_initialize_auto_load): Move auto_load_pspace_data,
8071 auto_load_new_objfile and info_auto_load_scripts initizations to
8073 * python/python.h (gdbpy_global_auto_load): Move to auto-load.h.
8078 * charset.c (find_charset_names): Remove variables ix and elt.
8079 Use free_char_ptr_vec.
8080 * elfread.c (build_id_to_debug_filename): New variables debugdir_vec,
8081 back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
8082 debugdir_end. New variable debugdir_len.
8083 * gdb_vecs.h (free_char_ptr_vec, make_cleanup_free_char_ptr_vec)
8084 (dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): New
8086 * progspace.c (clear_program_space_solib_cache): Remove variables ix
8087 and elt. Use free_char_ptr_vec.
8088 * source.c (add_path): Remove variables argv, arg and argv_index.
8089 New variables dir_vec, back_to, ix and name.
8090 Use dirnames_to_char_ptr_vec_append. Use freeargv instead of
8091 make_cleanup_freeargv. Remove variable separator. Simplify the code
8092 no longer expecting DIRNAME_SEPARATOR.
8093 (openp): Remove variable p, p1 and len. New variables dir_vec,
8094 back_to, ix and dir. Use dirnames_to_char_ptr_vec. Simplify the code
8095 no longer expecting DIRNAME_SEPARATOR.
8096 * symfile.c (find_separate_debug_file): New variables debugdir_vec,
8097 back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
8099 * utils.c (free_char_ptr_vec, do_free_char_ptr_vec)
8100 (make_cleanup_free_char_ptr_vec, dirnames_to_char_ptr_vec_append)
8101 (dirnames_to_char_ptr_vec): New functions.
8106 * source.c (add_path): Remove always true conditional 'p == 0' and
8107 unindent its code block.
8111 * gdbtypes.h (FIELD_BITPOS): Rename to ...
8112 (FIELD_BITPOS_LVAL): ... this.
8113 (FIELD_BITPOS): New.
8114 (SET_FIELD_BITPOS): Adjust to use FIELD_BITPOS_LVAL.
8115 * dwarf2read.c (dwarf2_add_field): Use SET_FIELD_BITPOS.
8116 * gdbtypes.c (append_composite_type_field_aligned): Adjust to use
8118 * gnu-v3-abi.c (build_gdb_vtable_type): Adjust to use
8120 * stabsread.c (read_cpp_abbrev, read_one_struct_field)
8121 (read_baseclasses): Adjust to use SET_FIELD_BITPOS.
8122 * target-descriptions.c (tdesc_gdb_type): Adjust to use
8127 Do not rely on FIELD_LOC_KIND_BITPOS being zero.
8128 * ada-lang.c (ada_template_to_fixed_record_type_1): Replace
8129 TYPE_FIELD_BITPOS used as lvalue by SET_FIELD_BITPOS.
8130 * gdbtypes.c (append_flags_type_flag): Likewise, twice.
8131 * jv-lang.c (java_link_class_type): Likewise, once.
8132 * stabsread.c (read_enum_type): Likewise.
8136 * common/agent.c (agent_run_command): Add one more parameter `len'.
8138 * common/agent.h: Update declaration.
8139 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
8141 (linux_child_static_tracepoint_markers_by_strid): Ditto.
8146 * value.c (value_actual_type): New function.
8147 * value.h (value_actual_type): New declaration.
8148 * varobj.c (update_type_if_necessary): New function.
8149 (varobj_create): Call value_actual_type instead of
8151 (install_dynamic_child): distinct changed and type changed MI variable
8153 (update_dynamic_varobj_children): Updated for install_dynamic_child
8154 change. All callers updated.
8155 (varobj_update): Support for MI variable object type change if
8156 the value changed and RTTI is used to determine the type.
8157 (create_child_with_value): Call value_actual_type instead of
8159 (adjust_value_for_child_access): Extended with a new parameter which
8160 specify whether the given value should be casted to enclosing type.
8161 All callers updated.
8165 Import gnulib module inttypes from git
8166 (250b80067c1e1d8faa0c42fb572f721975b929c5)
8167 * Makefile.in (HFILES_NO_SRCDIR): Add gnulib/inttypes.in.h.
8168 (aclocal_m4_deps): Add gnulib/m4/inttypes.m4 and
8169 gnulib/m4/inttypes-pri.m4
8170 * aclocal.m4, config.in, configure: Regenerated.
8171 * gnulib/Makefile.am: Update.
8172 * gnulib/Makefile.in: Update.
8173 * gnulib/m4/gnulib-cache.m4: Update.
8174 * gnulib/m4/gnulib-comp.m4: Update.
8175 * gnulib/inttypes.in.h: New.
8176 * gnulib/m4/inttypes-pri.m4: New.
8177 * gnulib/m4/inttypes.m4: New.
8181 * infrun.c (resume): Update PC address to the real PC after
8182 preparing to do displaced stepping.
8186 * dwarf2read.c (lookup_signatured_type): Remove arg "objfile", unused.
8187 All callers updated.
8191 * i386bsd-nat.c (_initialize_i386bsd_nat): Add missing prototype.
8195 * dwarf2read.c (create_all_type_units): Renamed from
8196 create_debug_types_hash_table. All callers updated.
8198 * dwarf2read.c (create_signatured_type_table_from_index): Rename
8199 local type_sig to sig_type, type_offset to type_offset_in_tu.
8200 (hash_signatured_type): Renamed from hash_type_signature,
8201 all callers updated.
8202 (eq_signatured_type): Renamed from eq_type_signature,
8203 all callers updated.
8204 (create_debug_types_hash_table): Rename local type_sig to sig_type.
8205 (process_enumeration_scope): Ditto.
8206 (lookup_signatured_type_at_offset): Ditto.
8207 (load_full_type_unit, read_signatured_type): Ditto.
8211 * remote.c (async_remote_interrupt): Correct function name in
8213 (async_remote_interrupt_twice): Ditto.
8217 * source.c (find_and_open_source): Consistently pass resulting
8218 full path through xfullpath.
8222 Provide more specific displaced-stepping memory error message.
8223 * infrun.c (displaced_step_prepare): New variable status. Call
8224 target_read_memory instead of read_memory, provide more specific
8230 * darwin-nat.c (darwin_execvp): Revert previous patch.
8235 * darwin-nat.c (darwin_resume_thread): Call darwin_set_sstep only
8240 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Fix
8245 New command 'explore' which helps explore values and types in
8247 * NEWS: Add an entry about the new 'explore' command.
8248 * data-directory/Makefile.in: Add gdb/command/explore.py
8249 * python/lib/gdb/command/explore.py: Implemention of the 'explore'
8250 command using the GDB Python API.
8254 * mips-tdep.c (mips_skip_pic_trampoline_code): Correct sign
8255 extension in jump target calculation.
8259 * mips-tdep.c (mips32_next_pc): Handle JALX.
8263 * Makefile.in (gnulib/Makefile): Remove duplicated dependency.
8267 * Makefile.in (aclocal_m4_deps): Add gnulib/m4/gnulib-cache.m4
8268 and gnulib/m4/gnulib-tool.m4.
8272 * dwarf2read.c (dwarf2_per_cu_data). Clarify comment.
8273 (load_partial_dies): Clarify comment.
8274 (find_partial_die): Support rereading type units.
8275 Clarify CU handling, if we know offset is in CU, don't search for the
8276 containing CU. Add comment regarding memory waste.
8280 * features/Makefile (WHICH): Add i386/x32, i386/x32-linux,
8281 i386/x32-avx and i386/x32-avx-linux.
8282 (i386/x32-expedite): New.
8283 (i386/x32-linux-expedite): Likewise.
8284 (i386/x32-avx-expedite): Likewise.
8285 (i386/x32-avx-linux-expedite): Likewise.
8286 ($(outdir)/i386/x32.dat): Likewise.
8287 ($(outdir)/i386/x32-linux.dat): Likewise.
8288 ($(outdir)/i386/x32-avx.dat): Likewise.
8289 ($(outdir)/i386/x32-avx-linux.dat): Likewise.
8291 * features/i386/x32-avx-linux.xml: New file.
8292 * features/i386/x32-avx.xml: Likewise.
8293 * features/i386/x32-core.xml: Likewise.
8294 * features/i386/x32-linux.xml: Likewise.
8295 * features/i386/x32.xml: Likewise.
8297 * features/i386/x32-avx-linux.c: New. Generated.
8298 * features/i386/x32-avx.c: Likewise.
8299 * features/i386/x32-linux.c: Likewise.
8300 * features/i386/x32.c: Likewise.
8301 * regformats/i386/x32-avx-linux.dat: Likewise.
8302 * regformats/i386/x32-avx.dat: Likewise.
8303 * regformats/i386/x32-linux.dat: Likewise.
8304 * regformats/i386/x32.dat: Likewise.
8308 * darwin-nat.c (darwin_kill_inferior): Always use the no ptrace
8309 code to kill the inferior.
8313 * ada-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8315 * c-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8317 * cp-name-parser.y (yyss, yysslim, yyssp, yystacksize, yyvs)
8318 (yyvsp): New defines.
8319 * f-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8321 * jv-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8323 * m2-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8325 * objc-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8327 * p-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
8332 * sparc64-tdep.c (sparc64_store_arguments)
8333 (sparc64_store_arguments): Fix coding style.
8337 * sparc64-tdep.c (sparc64_store_arguments): Fix handling of
8338 complex floats, adjust some related comments and tighten a related
8340 (sparc64_extract_return_value): Handle complex floats.
8344 * dwarf2read.c (load_partial_dies): Change condition to assert.
8348 * amd64-tdep.c (amd64_analyze_prologue): Recognize both variations of
8353 * v850-tdep.c (E_NUM_OF_V850_REGS, E_NUM_OF_V850E_REGS): Fix
8355 (v850_frame_cache): Use gdbarch_num_regs() instead of E_NUM_REGS.
8356 (v850_gdbarch_init): Set `num_regs' as appropriate for the
8361 * linespec.c (decode_compound): Remove.
8362 (enum offset_relative_sign): New enum.
8363 (struct line_offset): New struct.
8364 (struct linespec): New struct.
8365 (struct linespec_state): Move file_symtabs,
8366 user_filename, and user_function into struct linespec.
8367 Make result an anonymous struct holding vectors of
8368 symbolp and minsym_and_objfile_d.
8369 Add language member.
8370 (enum ls_token_type): New enum.
8371 (linespec_keywords): New array.
8372 (struct ls_token): New struct.
8373 (struct ls_parser): New struct.
8374 (linespec_lexer_lex_number): New function.
8375 (linespec_lexer_lex_keyword): New function.
8376 (is_ada_operator): New function.
8377 (skip_quote_char): New function.
8378 (copy_token_string): New function.
8379 (is_closing_quote_enclosed): New function.
8380 (find_parameter_list_end): New function.
8381 (linespec_lexer_lex_string): New function.
8382 (linespec_lexer_lex_one): New function.
8383 (linespec_lexer_consume_token): New function.
8384 (linespec_lexer_peek_token): New function.
8385 (cplusplus_error): Remove unused function.
8386 (find_methods): Update comment.
8387 (find_toplevel_char): Return const.
8388 (is_objc_method_format): Remove unused function.
8389 (find_toplevel_string): New function.
8390 (is_linespec_boundary): Remove.
8391 (symbol_not_found_error): New function.
8392 (find_method_overload_end): Remove function.
8393 (unexpected_linespec_error): New function.
8394 (keep_name_info): Remove.
8395 (linespec_parse_line_offset): New function.
8396 (linespec_parse_basic): New function.
8397 (canonicalize_linespec): New function.
8398 (decode_line_internal): Remove.
8399 (create_sals_line_offset): New function adapted from
8401 (convert_linespec_to_sals): New function.
8402 (parse_linespec): New function.
8403 (linespec_parser_new): New function.
8404 (linespec_state_destructor): Change parameter type to
8405 struct linespec_state *.
8406 Add language parameter.
8407 Remove freeing of moved members.
8408 (linespec_parser_delete): New function.
8409 (decode_line_full): Use parse_linespec and linespec_parser_new.
8410 (decode_line_1): Likewise.
8411 (decode_indirect): Rename to ...
8412 (linespec_expression_to_pc): ... this and rewrite
8413 to simply find CORE_ADDR, storing this result for later
8415 (locate_first_half): Remove.
8416 (deocde_objc): Add parameter LS.
8417 Initialize new struct collect_info members.
8418 Handle minimal symbols, too.
8419 (decode_compound): Delete.
8420 (lookup_prefix_sym): Rewrite.
8421 (compare_msymbols): New function.
8422 (find_method): Rewrite.
8423 Do not call cplusplus_error.
8424 (symtabs_from_filename): Rewrite.
8425 (collect_function_symbols): Delete.
8426 (find_function_symbols): Rewrite without ARGPTR-style
8428 (decode_all_digits): Delete. (Rewritten as create_sals_line_offset.)
8429 (decode_dollar): Adapted and renamed to ...
8430 (linespec_parse_variable): ... this.
8431 (find_linespec_symbols): New function.
8432 (decode_label): Adapted and renamed to ...
8433 (find_label_symbols): ... this.
8434 (decode_digits_list_mode): Add and use LS argument.
8435 (decode_digits_ordinary): Likewise.
8436 (collect_symbols): Do not collect SALs, just symbols and msymbols.
8437 If in list mode, allow any symbol class. Otherwise, only
8438 permit LOC_BLOCK symbols.
8439 (minsym_found): Update comments.
8440 (search_minsyms_for_name): Do not convert the matching symbol
8441 into a SAL. Simply push the symbol and objfile into the
8443 (decode_variable): Delete. Contents adapted into
8444 find_linespec_symbols.
8446 * cp-support.c (SKIP_SPACE): Remove.
8447 (operator_tokens): Remove unused global.
8448 (cp_validate_operator): Remove.
8449 * cp-support.h (cp_validate_operator): Remove declaration.
8453 * cp-valprint.c (cp_print_value_fields): Check valprint_check_validity
8454 for TYPE_VPTR_FIELDNO.
8455 * valprint.c (valprint_check_validity): Make it global, move the
8456 function comment ...
8457 * value.h (valprint_check_validity): ... to this new declaration.
8461 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use
8462 the STATE32 api for i386 state.
8463 (i386_darwin_store_inferior_registers): Likewise.
8467 * i386-darwin-tdep.c (i386_darwin_thread_state_reg_offset): Fix
8469 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Fix
8475 * darwin-nat.c (darwin_execvp): Set binary preference.
8479 * NEWS (set breakpoint condition-evaluation): Use imperative mood.
8483 * python/python.c (gdbpy_decode_line): Move cleanup creation out
8484 of TRY_CATCH. Fix error handling.
8485 * python/py-value.c (convert_value_from_python): Move 'old'
8486 declaration to innermost scope.
8491 -Wshadow warning fix.
8492 * ada-lang.c (ada_make_symbol_completion_list): Rename parameters
8493 "wild_match" and "encoded" into "wild_match_p" and "encoded_p".
8494 Adjust code accordingly.
8498 * ada-lang.c (symbol_completion_add): Rename parameter
8499 "encoded" into "encoded_p". Ajust code and documentation
8505 -Wshadow warning fix.
8506 * ada-lang.c (symbol_completion_add): Rename parameter
8507 "wild_match" into wild_match_p. Update code and documentation
8512 * ada-lang.c (symbol_completion_match): Rename parameter
8513 "encoded" into "encoded_p". Ajust code and documentation
8519 -Wshadow warning fix.
8520 * ada-lang.c (symbol_completion_match): Rename parameter
8521 "wild_match" into "wild_match_p". Adjust code and function
8522 documentation accordingly.
8527 -Wshadow warning fix.
8528 * ada-lang.c (ada_lookup_encoded_symbol): Rename parameter
8529 "symbol_info" into "info". Adjust code accordingly.
8530 (ada_lookup_symbol): Likewise.
8534 * ada-lang.c (ada_lookup_symbol_list): Minor reformatting
8535 of this function's documentation.
8540 -Wshadow warning fix.
8541 * ada-lang.c (ada_lookup_symbol_list): Rename "wild_match"
8542 variable into "wild_match_p". Adjust code accordingly.
8547 -Wshadow warning fix.
8548 * ada-lang.c (ada_add_local_symbols): Rename "wild_match"
8549 parameter into "wild_match_p". Adjust code accordingly.
8550 Document this parameter in the function description.
8555 -Wshadow warning fix.
8556 * ada-lang.c (add_symbols_from_enclosing_procs): Rename
8557 "wild_match" parameter to "wild_match_p" (-Wshadow).
8561 * ada-lang.c (ada_lookup_simple_minsym): Remove trailing spaces
8562 in function documentation.
8567 -Wshadow warning fix.
8568 * ada-lang.c (ada_lookup_simple_minsym): Rename wild_match local
8569 variable into wild_match_p. Adjust code accordingly.
8574 * ada-valprint.c (ada_val_print_1): Move the code handling
8575 TYPE_CODE_ENUM inside its own lexical block. Declare
8576 variables len and val there, instead of in the function's
8577 top level block. Avoid declaring deref_val again in a way
8578 that shadows another variable of the same name declared
8579 in one of the up-level blocks. Just re-use the up-level
8584 * ada-lang.c (ada_lookup_encoded_symbol): Now returns void.
8585 Replace block_found argument by symbol_info. Adjust
8586 implementation accordingly. Add function documentation.
8587 (ada_lookup_symbol): Adjust to new ada_lookup_encoded_symbol.
8589 * ada-lang.h (ada_lookup_encoded_symbol): Update declaration.
8590 * ada-exp.y (write_object_renaming): Adjust to new
8591 ada_lookup_encoded_symbol API.
8595 * ada-lang.h (struct ada_symbol_info): Reformat. Improve
8600 * v850-tdep.c: Add the enum values for mpu and fpu registers.
8601 (v850_register_name): Add the mpu and fpu register names.
8602 (v850e_register_name): Add the mpu and fpu register names.
8603 (v850e2_register_name): New function.
8604 (v850_gdbarch_init): Add case for bfd_mach_v850e2 and
8609 * NEWS: Add entry for Ada varobj support.
8613 * varobj.c (default_value_is_changeable_p): New function,
8614 extracted from varobj_value_is_changeable_p. Add declaration.
8615 (ada_value_is_changeable_p): New function, extracted from
8616 varobj_value_is_changeable_p. Add declaration.
8617 (struct language_specific): New field "value_is_changeable_p".
8618 (languages): Add entries for new field.
8619 (varobj_create): Set language before calling install_new_value.
8620 (varobj_value_is_changeable_p): Reimplement to call the varobj's
8621 "value_is_changeable_p" language callback.
8625 * ada-varobj.h, ada-varobj.c: New files.
8626 * Makefile.in (SFILES): Add ada-varobj.c.
8627 (HFILES_NO_SRCDIR): Add ada-varobj.h.
8628 (COMMON_OBS): Add ada-varobj.o.
8632 * varobj.c (ada_value_has_mutated): Add declaration. New function.
8633 (struct language_specific): New field "value_has_mutated".
8634 (languages): Set field "value_has_mutated" in each entry of array.
8635 (varobj_value_has_mutated): New function.
8636 (varobj_udpdate): Add handling of type mutation.
8637 (value_of_root): Add handling of type mutation.
8638 (ada_value_has_mutated): New function.
8642 * ia64-linux-nat.c (supply_fpregset, ia64_linux_fetch_register):
8643 Always supply $fr0 as 0.0 and $fr1 as 1.0.
8647 * python/py-inferior.c (infpy_read_memory): Remove cleanups and
8648 explicitly free 'buffer' on exit paths. Decref 'membuf_object'
8653 * .dir-locals.el: New file.
8657 * ia64-linux-nat.c (u_offsets): Map IA64_EC_REGNUM to PT_AR_EC.
8661 * ia64-linux-nat.c (ia64_linux_fetch_register): Add special
8666 Eliminate struct ui_stream.
8668 * ui-out.h (struct ui_stream): Delete.
8669 (ui_out_field_stream): Adjust prototype.
8670 (ui_out_stream_new, ui_out_stream_delete)
8671 (make_cleanup_ui_out_stream_delete): Delete declarations.
8672 * ui-out.c (ui_out_field_stream): Change prototype to take a
8673 ui_file instead of a ui_stream. Adjust.
8674 (ui_out_stream_new, ui_out_stream_delete, do_stream_delete)
8675 (make_cleanup_ui_out_stream_delete): Delete.
8676 * breakpoint.c (print_breakpoint_location)
8677 (print_one_detail_ranged_breakpoint, print_it_watchpoint): Use
8678 ui_file/mem_fileopen instead of ui_stream/ui_out_stream_new.
8679 * disasm.c (dump_insns): Ditto.
8680 (do_mixed_source_and_assembly, do_assembly_only): Adjust
8682 (gdb_disassembly): Use ui_file/mem_fileopen instead of
8683 ui_stream/ui_out_stream_new.
8684 * infcmd.c (print_return_value): Ditto.
8685 * osdata.c (info_osdata_command): Don't allocate a local
8687 * stack.c (print_frame_arg, print_frame_args, print_frame): Use
8688 ui_file/mem_fileopen instead of ui_stream/ui_out_stream_new.
8689 * tracepoint.c (print_one_static_tracepoint_marker): Don't
8690 allocate a local ui_stream.
8691 * mi/mi-cmd-stack.c (list_arg_or_local): Use ui_file/mem_fileopen
8692 instead of ui_stream/ui_out_stream_new.
8693 (list_args_or_locals): Don't allocate a local ui_stream.
8694 * mi/mi-main.c (get_register, mi_cmd_data_evaluate_expression)
8695 (mi_cmd_data_read_memory): Use ui_file/mem_fileopen instead of
8696 ui_stream/ui_out_stream_new.
8697 * cli/cli-setshow.c (do_setshow_command): Ditto.
8701 * arm-linux-tdep.c (arm_linux_init_abi): Call
8702 set_gdbarch_process_record. Initialize `arm_swi_record' field.
8703 * arm-tdep.c (arm_process_record): New function.
8704 (deallocate_reg_mem): New function.
8705 (decode_insn): New function.
8706 (thumb_record_branch): New function.
8707 (thumb_record_ldm_stm_swi(): New function.
8708 (thumb_record_misc): New function.
8709 (thumb_record_ld_st_stack): New function.
8710 (thumb_record_ld_st_imm_offset): New function.
8711 (thumb_record_ld_st_reg_offset(): New function.
8712 (thumb_record_add_sub_cmp_mov): New function.
8713 (thumb_record_shift_add_sub): New function.
8714 (arm_record_coproc_data_proc): New function.
8715 (arm_record_coproc): New function.
8716 (arm_record_b_bl): New function.
8717 (arm_record_ld_st_multiple): New function.
8718 (arm_record_ld_st_reg_offset): New function.
8719 (arm_record_ld_st_imm_offset): New function.
8720 (arm_record_data_proc_imm): New function.
8721 (arm_record_data_proc_misc_ld_str): New function.
8722 (arm_record_extension_space): New function.
8723 (arm_record_strx): New function.
8724 (sbo_sbz): New function.
8725 (struct insn_decode_record): New structure for arm insn record.
8726 (REG_ALLOC): New macro for reg allocations.
8727 (MEM_ALLOC): New macro for memory allocations.
8728 * arm-tdep.h (struct gdbarch_tdep): New field 'arm_swi_record'.
8732 * m68klinux-nat.c (fetch_register): Fix strict-aliasing violation.
8733 (store_register): Likewise.
8737 * MAINTAINERS (Write After Approval): Add myself to the list.
8741 * NEWS (set breakpoint condition-evaluation): Change "gdb" to "host".
8742 Describe also the option "auto".
8746 * sparc-linux-nat.c (_initialize_sparc_linux_nat): Fix prototype.
8747 * sparc-nat.c (sparc_xfer_wcookie): Make static.
8751 * jit.c (jit_read_code_entry): Compute alignment and offset of
8752 int64_t member before computing entry_size.
8756 Python scripting: Add new method Value.referenced_value to
8757 gdb.Value which can dereference pointer as well as reference
8759 * NEWS: Add entry under 'Python scripting' about the new method
8760 Value.referenced_value on gdb.Value objects.
8761 * python/py-value.c (valpy_referenced_value): New function
8762 defining a new method on gdb.Value objects which can dereference
8763 pointer and reference values.
8767 * MAINTAINERS (Write After Approval): Add myself to the list.
8771 * symtab.c (skip_prologue_sal): Change test to check for "main()"
8772 in addition to "main".
8776 * expression.h (op_name): Add declaration.
8777 * expprint.c (op_name): Remove declaration. Make non-static.
8778 * ax-gdb.c (gen_expr): Use op_name instead of op_string.
8782 * amd64-linux-nat.c (amd64_linux_siginfo_fixup): Use siginfo_t instead
8784 * arm-linux-nat.c (arm_linux_stopped_data_address): Likewise.
8785 * ia64-linux-nat.c (ia64_linux_stopped_data_address): Likewise.
8786 * linux-nat.c (linux_nat_siginfo_fixup, siginfo_fixup)
8787 (linux_xfer_siginfo, linux_nat_set_siginfo_fixup)
8788 (linux_nat_get_siginfo): Likewise.
8789 * linux-nat.h (struct lwp_info, linux_nat_set_siginfo_fixup)
8790 (linux_nat_get_siginfo): Likewise.
8791 * linux-tdep.c (linux_get_siginfo_type): Likewise.
8792 * ppc-linux-nat.c (ppc_linux_stopped_data_address): Likewise.
8793 * procfs.c (gdb_siginfo_t): Likewise.
8797 * .gitignore: Ignore more files.
8801 * remote.c (remote_start_remote): Clear `rs->starting_up' on early
8806 * amd64-tdep.c (amd64_displaced_step_copy_insn): Complete missing "}" in
8811 Code cleanupp: Use cu_offset and sect_offset compile time type checking.
8812 * dwarf2expr.c (add_piece, dwarf_get_base_type, execute_stack_op)
8813 (ctx_no_dwarf_call, ctx_no_get_base_type): Use cu_offset and
8815 * dwarf2expr.h (cu_offset, sect_offset): New types.
8816 (struct dwarf_expr_context_funcs) <dwarf_call>
8817 (struct dwarf_expr_context_funcs) <get_base_type>: Use cu_offset and
8819 (struct dwarf_expr_context) <len>: Improve the comment.
8820 (struct dwarf_expr_piece, ctx_no_dwarf_call, ctx_no_get_base_type): Use
8821 cu_offset and sect_offset.
8822 * dwarf2loc.c (per_cu_dwarf_call, dwarf_expr_dwarf_call)
8823 (dwarf_expr_get_base_type, needs_frame_dwarf_call)
8824 (dwarf2_compile_expr_to_ax, disassemble_dwarf_expression): Likewise.
8825 * dwarf2loc.h: Include dwarf2expr.h.
8826 (dwarf2_fetch_die_location_block, dwarf2_get_die_type): Use cu_offset
8828 * dwarf2read.c (struct dwarf2_per_objfile) <debug_types_type_hash>:
8829 Improve the comment.
8830 (struct comp_unit_head, struct dwarf2_cu, struct dwarf2_per_cu_data)
8831 (struct signatured_type, struct line_header, struct partial_die_info)
8832 (struct die_info, find_partial_die, dwarf2_get_ref_die_offset)
8833 (lookup_signatured_type_at_offset, dwarf2_find_containing_comp_unit)
8834 (get_die_type_at_offset, create_cus_from_index)
8835 (create_signatured_type_table_from_index, dw2_get_file_names)
8836 (offset_in_cu_p, read_comp_unit_head, error_check_comp_unit_head)
8837 (read_and_check_comp_unit_head, read_and_check_type_unit_head)
8838 (create_debug_types_hash_table, process_psymtab_comp_unit)
8839 (load_partial_comp_unit, create_all_comp_units)
8840 (partial_die_parent_scope, partial_die_full_name, skip_one_die)
8841 (load_full_comp_unit, dwarf2_physname, read_import_statement)
8842 (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8843 (dwarf2_add_member_fn, process_enumeration_scope, read_module_type)
8844 (read_typedef, die_hash, die_eq, read_full_die, dwarf2_read_abbrevs)
8845 (load_partial_dies, read_partial_die, find_partial_die_in_comp_unit)
8846 (find_partial_die, read_attribute_value, lookup_die_type)
8847 (dump_die_shallow, store_in_ref_table): Use cu_offset and sect_offset.
8848 (is_ref_attr): New function comment.
8849 (dwarf2_get_ref_die_offset): New function comment, new variable retval.
8850 Use cu_offset and sect_offset.
8851 (follow_die_offset, follow_die_ref, dwarf2_fetch_die_location_block)
8852 (dwarf2_get_die_type, follow_die_sig, lookup_signatured_type_at_offset)
8853 (load_full_type_unit, read_signatured_type, per_cu_header_read_in)
8854 (dwarf2_find_containing_comp_unit, struct dwarf2_offset_and_type)
8855 (offset_and_type_hash, offset_and_type_eq, set_die_type)
8856 (get_die_type_at_offset, partial_die_hash, partial_die_eq)
8857 (write_one_signatured_type, write_psymtabs_to_index): Use cu_offset and
8863 * python/py-auto-load.c (source_section_scripts): New variable back_to.
8864 Turn fclose and xfree calls into make_cleanup_fclose and make_cleanup
8866 (auto_load_objfile_script): Turn fclose into make_cleanup_fclose.
8870 * NEWS: Describe new options --init-command=FILE, -ix and
8871 --init-eval-command=COMMAND, -iex.
8872 * main.c (struct cmdarg): New enum items CMDARG_INIT_FILE and
8873 CMDARG_INIT_COMMAND.
8874 (captured_main): New enum items OPT_IX and OPT_IEX. Add
8875 "init-command", "init-eval-command", "ix" and "iex" to the variable
8876 long_options. Handle OPT_IX and OPT_IEX. Process them from CMDARG_VEC.
8877 New comment for CMDARG_FILE and CMDARG_COMMAND processing.
8878 (print_gdb_help): Describe --init-command=FILE, -ix and
8879 --init-eval-command=COMMAND, -iex.
8884 * main.c (struct cmdarg): Move it here from main. Add more comments.
8885 (cmdarg_s, VEC (cmdarg_s)): New.
8886 (main): Move struct cmdarg from here. New variables cmdarg_vec and
8887 cmdarg_p. Remove variables cmdsize and ncmd and their initialization.
8888 Install cleanup for cmdarg_vec. Update filling for options 'x' and
8889 'X'. Replace cmdarg processing by cmdarg_vec processing. Remove xfree
8894 * gnu-v3-abi.c (gnuv3_print_vtable): Initialize 'result_vec'.
8899 * dwarf2read.c (process_full_comp_unit): Set LOCATIONS_VALID only for
8904 * tui-tui.win.c (tui_resize_all): Use erase and clearok instead
8909 * source.c (add_path): Use memmove instead of strcpy because the
8914 * value.h (set_value_parent): Add declaration.
8915 * value.c (set_value_parent): New function.
8916 (value_address): If VALUE->PARENT is not NULL, then use it as
8917 the base address instead of VALUE->LOCATION.address.
8918 * ada-lang.c (ada_value_primitive_packed_val): Keep V's address
8919 the same as OBJ's address. Adjust V's offset accordingly.
8924 PR breakpoints/10738
8925 * dwarf2read.c (use_deprecated_index_sections): New global.
8926 (struct partial_die_info): New member may_be_inlined.
8927 (read_partial_die): Set may_be_inlined where appropriate.
8928 (add_partial_subprogram): Add partial symbols for partial
8929 DIEs that may be inlined.
8930 (new_symbol_full): Add inlined subroutines to the current
8932 (write_psymtabs_to_index): Bump version number.
8933 (dwarf2_read_index): Read only version 6 indices unless
8934 use_deprecated_index_sections is set.
8935 * linespec.c (symbol_and_data_callback): New structure.
8936 (iterate_inline_only): New function.
8937 (iterate_over_all_matching_symtabs): New argument
8938 "include_inline". If nonzero, also call the callback for
8939 symbols representing inlined subroutines.
8940 (lookup_prefix_sym): Pass extra argument to the above.
8941 (find_function_symbols): Likewise.
8942 (add_matching_symbols_to_info): Likewise.
8943 * NEWS: Mention that GDB can now set breakpoints on inlined
8948 * p-typeprint.c (pascal_type_print_method_args):
8949 Fix display of parameter of methods.
8953 * amd64-windows-nat.c (_initialize_amd64_windows_nat):
8954 Add missing prototype.
8959 Fix false compilation warning.
8960 * gnu-v3-abi.c (print_one_vtable): Initialize ADDR.
8965 * arm-tdep.c: Include "remote.h" and "features/arm-with-m-fpa-layout.c".
8966 (arm_register_g_packet_guesses): New function.
8967 (arm_gdbarch_init): Don't force a target description with
8968 registers when the executable is detected as M-profile. Instead
8969 set gdbarch->tdep->is_m. Register `g' packet guesses.
8970 (_initialize_arm_tdep): Initialize the new target description.
8971 * features/arm-with-m-fpa-layout.xml: New description.
8972 * features/arm-with-m-fpa-layout.c: New, generated.
8976 * breakpoint.c (breakpoint_xfer_memory): Add assertion.
8977 Update function description.
8978 (insert_bp_location): Do not wipe bl->target_info out.
8979 * mem-break.c: #include "gdb_string.h".
8980 (default_memory_insert_breakpoint): Do not call target_read_memory
8981 with a pointer to the breakpoint's shadow_contents buffer. Use
8982 a local buffer instead.
8983 * m32r-tdep.c (m32r_memory_insert_breakpoint): Ditto.
8987 * NEWS: Mention "info vtbl", not "info vtable".
8988 * cp-support.c (info_vtbl_command): Fix comment.
8989 (_initialize_cp_support): Fix text.
8993 * cp-valprint.c (cp_print_value_fields): Use
8994 print_function_pointer_address for vtable slot.
8998 * gnu-v3-abi.c (struct value_and_voffset): New.
8999 (hash_value_and_voffset, eq_value_and_voffset)
9000 (compare_value_and_voffset, compute_vtable_size)
9001 (print_one_vtable, gnuv3_print_vtable): New functions.
9002 (init_gnuv3_ops): Initialize 'print_vtable' field.
9003 * cp-support.c (info_vtbl_command): New function.
9004 (_initialize_cp_support): Add "info vtbl".
9005 * cp-abi.h (cplus_print_vtable): Declare.
9006 (struct cp_abi_ops) <print_vtable>: New field.
9007 * cp-abi.c (cplus_print_vtable): New function.
9012 * d-lang.c (d_language_defn) <la_iterate_over_symbols>: Set to
9013 iterate_over_symbols.
9017 * dwarf2read.c (dwarf_stack_op_name): Add DW_OP_GNU_encoded_addr,
9018 DW_OP_GNU_parameter_ref.
9022 Fix double prompt of 'interpreter-exec mi'.
9023 * mi/mi-interp.c (mi_execute_command_input_handler): New prototype.
9024 (mi_interpreter_resume): use it.
9025 (mi_execute_command_input_handler): New function.
9026 * mi/mi-main.c (mi_execute_command): Move prompt printing to
9027 mi_execute_command_input_handler.
9031 * darwin-nat-info.c (_initialize_darwin_info_commands): Add
9033 (darwin_debug_port_info): Make static.
9034 * darwin-nat.c (_initialize_darwin_inferior): Add prototype.
9035 * machoread.c (_initialize_machoread): Add prototype.
9036 * i386-darwin-nat.c (i386_darwin_dr_set, i386_darwin_dr_get)
9037 (i386_darwin_set_control, i386_darwin_get_control)
9038 i386_darwin_dr_set_addr, i386_darwin_get_addr)
9039 i386_darwin_get_status, i386_darwin_get_control):
9040 Comment out with HW_WATCHPOINT_NOT_YET_ENABLED macro.
9044 * ax-gdb.c (gen_usual_unary): Remove special handling of
9045 enum and bool types.
9049 * ax-gdb.c (gen_fetch): Add handling for TYPE_CODE_RANGE types.
9053 * aix-thread.c (supply_fprs): Make more consistent with fill_fprs.
9057 * aix-thread.c (fill_sprs): Store the floating point registers
9058 at the correct offsets into vals.
9062 * NEWS: Mention symbol-reloading has been deleted.
9063 * symfile.c (symbol_reloading): Delete.
9064 (show_symbol_reloading): Delete.
9065 (_initialize_symfile): Delete set/show symbol-reloading.
9067 * dwarf2read.c (load_partial_comp_unit): Defer adding cu to
9068 read_in_chain until we have successfully read it in.
9069 (load_full_comp_unit): Ditto.
9070 (read_signatured_type): Add comment.
9074 * stabsread.c (fix_common_block): Change type of valu argument
9079 * rs6000-tdep.c (skip_prologue): Support the oril r29, r1, 0x0
9084 * common/linux-procfs.c (linux_proc_get_int): New, from
9085 linux_proc_get_tgid, change its LWPID type to pid_t, add parameter
9087 (linux_proc_get_tgid): Only call linux_proc_get_int.
9088 (linux_proc_get_tracerpid): New.
9089 (linux_proc_pid_has_state): New, from linux_proc_pid_is_zombie.
9090 (linux_proc_pid_is_stopped, linux_proc_pid_is_zombie): Only call
9091 linux_proc_pid_has_state.
9092 * common/linux-procfs.h (linux_proc_get_tracerpid): New declaration.
9093 * common/linux-ptrace.c: Include linux-procfs.h and buffer.h.
9094 (linux_ptrace_attach_warnings): New.
9095 * common/linux-ptrace.h (struct buffer, linux_ptrace_attach_warnings):
9097 * linux-nat.c: Include exceptions.h, linux-ptrace.h and buffer.h.
9098 (linux_nat_attach): New variables ex, buffer, message and message_s.
9099 Wrap to_attach by TRY_CATCH and call linux_ptrace_attach_warnings.
9103 * Makefile.in (linux-ptrace.o): New.
9104 * common/linux-procfs.c (linux_proc_pid_is_zombie): New,
9106 * common/linux-procfs.h (linux_proc_pid_is_zombie): New declaration.
9107 * common/linux-ptrace.c: New file.
9108 * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-ptrace.o.
9109 * config/arm/linux.mh: Likewise.
9110 * config/i386/linux.mh: Likewise.
9111 * config/i386/linux64.mh: Likewise.
9112 * config/ia64/linux.mh: Likewise.
9113 * config/m32r/linux.mh: Likewise.
9114 * config/m68k/linux.mh: Likewise.
9115 * config/mips/linux.mh: Likewise.
9116 * config/pa/linux.mh: Likewise.
9117 * config/powerpc/linux.mh: Likewise.
9118 * config/powerpc/ppc64-linux.mh: Likewise.
9119 * config/powerpc/spu-linux.mh: Likewise.
9120 * config/s390/s390.mh: Likewise.
9121 * config/sparc/linux.mh: Likewise.
9122 * config/sparc/linux64.mh: Likewise.
9123 * config/xtensa/linux.mh: Likewise.
9124 * linux-nat.c (linux_lwp_is_zombie): Remove, move it to
9125 common/linux-procfs.c.
9126 (wait_lwp): Rename linux_lwp_is_zombie to linux_proc_pid_is_zombie.
9131 * breakpoint.c (init_breakpoint_sal): New flags parameter. Handle
9132 CREATE_BREAKPOINT_FLAGS_INSERTED.
9133 (create_breakpoint_sal, create_breakpoints_sal)
9134 (base_breakpoint_create_breakpoints_sal)
9135 (tracepoint_create_breakpoints_sal)
9136 (strace_marker_create_breakpoints_sal): New flags parameter. Pass
9138 (break_command_1, handle_gnu_v3_exceptions, trace_command)
9139 (ftrace_command, strace_command): Adjust.
9140 (create_tracepoint_from_upload): Pass
9141 CREATE_BREAKPOINT_FLAGS_INSERTED.
9142 * breakpoint.h (enum breakpoint_create_flags): New.
9143 (create_breakpoint): New flags parameter.
9144 * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust.
9145 * python/py-breakpoint.c (bppy_init): Adjust.
9146 * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust.
9147 * spu-tdep.c (spu_catch_start): Adjust.
9153 * remote.c (struct remote_state): New field `starting_up'.
9154 (remote_start_remote): Set and clear it.
9155 (remote_can_download_tracepoint): If starting up, return false.
9159 * inferior.h (struct inferior): Remove fields any_syscall_count,
9160 syscalls_counts and total_syscalls_count. Move them to new
9161 struct catch_syscall_inferior_data in breakpoint.c.
9162 * breakpoint.c: Call DEF_VEC_I(int).
9163 (struct catch_syscall_inferior_data): New.
9164 (get_catch_syscall_inferior_data): New.
9165 (catch_syscall_inferior_data_cleanup): New.
9166 (insert_catch_syscall): Update to access data in
9167 struct catch_syscall_inferior_data.
9168 (insert_catch_syscall): Likewise.
9169 (remove_catch_syscall): Likewise.
9170 (remove_catch_syscall): Likewise.
9171 (is_syscall_catchpoint_enabled): Likewise.
9172 (add_catch_command): Likewise.
9173 (_initialize_breakpoint): Register cleanup.
9174 * breakpoint.h: Removed DEF_VEC_I(int).
9175 * dwarf2loc.c: Call DEF_VEC_I(int).
9176 * mi/mi-main.c: Likewise.
9180 * inf-ptrace.c (inf_ptrace_post_attach): Make static.
9184 * aix-thread.c (_initialize_aix_thread): Add prototype.
9185 * rs6000-nat.c (_initialize_rs6000_nat): Ditto.
9186 * xcoffsolib.c (_initialize_xcoffsolib): Ditto.
9190 * amd64bsd-nat.c: Move #include of "amd64bsd-nat.h" after
9191 include of "amd64-nat.h".
9195 * buildsym.c (record_pending_block): Now static.
9196 * buildsym.h: (record_pending_block): Remove.
9200 * amd64bsd-nat.c: Include amd64bsd-nat.h.
9204 * dwarf2read.c (struct dwarf2_cu) <checked_producer,
9205 producer_is_gxx_lt_4_6>: New fields.
9206 (producer_is_gxx_lt_4_6): Use and update producer cache fields.
9210 * dwarf2read.c (dwarf2_attr): Avoid tail-recursive call.
9214 * ravenscar-sparc-thread.c (_initialize_ravenscar_sparc): Add
9219 * ravenscar-thread.c (_initialize_ravenscar): Add prototype.
9223 Fix -Wmissing-prototypes build.
9224 * arm-linux-nat.c (get_thread_id): Make it static.
9225 * xtensa-linux-nat.c (get_thread_id): Likewise.
9229 * server.c (process_point_options): If a conditional expression
9230 is found, only print a message if remote_debug is nonzero.
9234 * ax-gdb.c (gen_fetch): Fail gracefully and use error instead
9235 of internal error for unknown/unsupported types.
9239 Fix CU relative vs. absolute DIE offsets.
9240 * dwarf2loc.h (dwarf2_fetch_die_location_block): Rename parameter
9241 offset to offset_in_cu.
9242 * dwarf2read.c (process_enumeration_scope): Add CU offset to
9244 (dwarf2_fetch_die_location_block): Rename parameter offset to
9245 offset_in_cu. New variable offset, add CU offset to OFFSET_IN_CU.
9249 * libunwind-frame.c: Rename to ...
9250 * ia64-libunwind-tdep.c: ... here.
9251 * libunwind-frame.h: Rename to ...
9252 * ia64-libunwind-tdep.h: ... here.
9253 * Makefile.in (HFILES_NO_SRCDIR): Rename libunwind-frame.h to
9254 ia64-libunwind-tdep.h.
9255 (ALLDEPFILES): Rename libunwind-frame.c to ia64-libunwind-tdep.c.
9256 * README (--with-libunwind): Rename to ...
9257 (--with-libunwind-ia64): ... here, note it is ia64 specific now.
9258 * config.in: Regenerate.
9259 * configure: Regenerate.
9260 * configure.ac: New option --with-libunwind-ia64, make the
9261 AS_HELP_STRING ia64 specific. Deprecate option --with-libunwind.
9262 Remove AC_DEFINE for HAVE_LIBUNWIND.
9263 * ia64-libunwind-tdep.c: Make the file top comment ia64 specific.
9264 Rename libunwind-frame.h #include to ia64-libunwind-tdep.h.
9265 Rename libunwind-frame in the general comment.
9266 * ia64-libunwind-tdep.h: Make the file top comment ia64 specific.
9267 Rename symbol LIBUNWIND_FRAME_H to IA64_TDEP_LIBUNWIND_FRAME_H.
9268 Move forward declarations inside #ifndef. Rename libunwind-frame in
9269 the general comment.
9270 * ia64-tdep.c: Rename libunwind-frame.h #include to
9271 ia64-libunwind-tdep.h.
9272 (ia64_gdb2uw_regnum, ia64_uw2gdb_regnum, ia64_is_fpreg)
9273 (ia64_libunwind_descr): Rename libunwind-frame to
9274 ia64-libunwind-tdep in these function comments.
9275 * ia64-tdep.h: Rename libunwind-frame.h #include to
9276 ia64-libunwind-tdep.h.
9277 * ia64-vms-tdep.c (ia64_vms_libunwind_descr): Rename libunwind-frame to
9278 ia64-libunwind-tdep in that data comment.
9282 * libunwind-frame.h (struct frame_unwind): New declaration.
9286 * breakpoint.c (_initialize_breakpoint): Fix error in help of
9287 "set breakpoint condition-evaluation" command.
9291 * sparc-stub.c: Move to stubs/
9292 * sh-stub.c: Likewise.
9293 * m68k-stub.c: Likewise.
9294 * m32r-stub.c: Likewise.
9295 * i386-stub.c: Likewise.
9299 * m68klinux-tdep.c (m68k_linux_init_abi): Register
9300 linux_get_siginfo_type.
9302 * m68klinux-nat.c: Include "gdb_proc_service.h".
9303 (PTRACE_GET_THREAD_AREA): Define.
9304 (ps_get_thread_area): New function.
9308 * remote.c (remote_get_noisy_reply): Replace `sprintf' with
9310 (remote_query_attached): Likewise.
9311 (remote_static_tracepoint_marker_at): Likewise.
9312 (remote_set_permissions): Likewise.
9313 (remote_detach_1, extended_remote_attach_1): Likewise.
9314 (send_g_packet, remote_vkill): Likewise.
9315 (extended_remote_disable_randomization): Likewise.
9316 (remote_add_target_side_condition): Likewise.
9317 (remote_insert_breakpoint): Likewise.
9318 (remote_remove_breakpoint): Likewise.
9319 (remote_insert_watchpoint): Likewise.
9320 (remote_remove_watchpoint): Likewise.
9321 (remote_insert_hw_breakpoint): Likewise.
9322 (remote_insert_hw_breakpoint): Likewise.
9323 (remote_remove_hw_breakpoint): Likewise.
9324 (remote_download_command_source): Likewise.
9325 (remote_download_tracepoint): Likewise.
9326 (remote_download_trace_state_variable): Likewise.
9327 (remote_disable_tracepoint): Likewise.
9328 (remote_trace_set_readonly_regions): Likewise.
9329 (remote_get_tracepoint_status): Likewise.
9330 (remote_trace_find): Likewise.
9331 (remote_get_trace_state_variable_value): Likewise.
9332 (remote_set_disconnected_tracing): Likewise.
9333 (remote_set_circular_trace_buffer): Likewise.
9334 (remote_get_min_fast_tracepoint_insn_len): Likewise.
9335 (remote_use_agent): Likewise.
9336 (remote_add_target_side_condition): Add one parameter BUF_SIZE.
9341 * NEWS: Mention QProgramSignals.
9342 * inferior.h (update_signals_program_target): Declare.
9343 * infrun.c: (update_signals_program_target): New.
9344 (handle_command): Update the target of the new program signals
9346 * remote.c (PACKET_QProgramSignals): New enum.
9347 (last_program_signals_packet): New global.
9348 (remote_program_signals): New.
9349 (remote_start_remote): Update the target with the program signals
9351 (remote_protocol_features): Add entry for QPassSignals.
9352 (remote_open_1): Free anc clear last_program_signals_packet.
9353 (init_remote_ops): Install remote_program_signals.
9354 * target.c (update_current_target): Adjust.
9355 (target_program_signals): New.
9356 * target.h (struct target_ops) <to_program_signals>: New field.
9357 (target_program_signals): Declare.
9361 * NEWS: Add subtitle for new z0/z1 conditional breakpoint
9366 * m68klinux-nat.c (getregs_supplies): Make static.
9367 (getfpregs_supplies): Likewise.
9368 (have_ptrace_getregs): Likewise.
9372 * dwarf2read.c (dwarf2_get_die_type): Pass absolute offset
9373 in call to get_die_type_at_offset.
9377 * mi/mi-cmd-break.c: Enforce coding standards, fix comments.
9378 * mi/mi-cmd-disas.c: Ditto.
9379 * mi/mi-cmd-env.c: Ditto.
9380 * mi/mi-cmd-file.c: Ditto.
9381 * mi/mi-cmd-stack.c: Ditto.
9382 * mi/mi-cmd-target.c: Ditto.
9383 * mi/mi-cmd-var.c: Ditto.
9384 * mi/mi-cmds.c: Ditto.
9385 * mi/mi-cmds.h: Ditto.
9386 * mi/mi-console.c: Ditto.
9387 * mi/mi-getopt.c: Ditto.
9388 * mi/mi-getopt.h: Ditto.
9389 * mi/mi-interp.c: Ditto.
9390 * mi/mi-main.c: Ditto.
9391 * mi/mi-out.c: Ditto.
9392 * mi/mi-parse.c: Ditto.
9393 * mi/mi-parse.h: Ditto.
9394 * mi/mi-symbol-cmds.c: Ditto.
9396 * mi/mi-getopt.h: Move mi_opt struct up.
9397 * mi/mi-main.c (captured_mi_execute_command): Remove redundant
9399 * mi/mi-out.c (_initialize_mi_out): Remove empty initialize.
9403 * proc-service.c (ps_pglobal_lookup): Set the current program
9408 * gregset.h [HAVE_SYS_PROCFS_H]: Include <sys/procfs.h>.
9412 * MAINTAINERS: List Maciej W. Rozycki as the mips maintainer.
9417 * common/linux-osdata.c (linux_common_core_of_thread): New function
9419 * linux-nat.c (linux_nat_wait_1): Replace linux_nat_core_of_thread_1
9420 call by linux_common_core_of_thread.
9421 (linux_nat_core_of_thread_1): Remove.
9422 * linux-nat.h (linux_nat_core_of_thread_1): Remove declaration.
9423 * linux-thread-db.c: Include linux-osdata.h.
9424 (update_thread_core): Replace linux_nat_core_of_thread_1 call by
9425 linux_common_core_of_thread.
9429 * value.c (value_primitive_field): Don't fetch contents for
9434 * jv-valprint.c (java_value_print): Correctly compute 'obj_addr'.
9438 * s390-nat.c: Include "gregset.h".
9442 * libunwind-frame.c (LIBUNWIND_SO): Change .7 to .8.
9443 [!LIBUNWIND_SO] (LIBUNWIND_SO_7): New #define.
9444 (libunwind_load): New variable so_error, use it for dlerror. Try to
9445 load also LIBUNWIND_SO_7.
9449 * i387-tdep.c (i387_supply_xsave): Assert the xsave section buffer
9450 is not NULL, and remove resulting dead code.
9454 * sh-tdep.c (sh_skip_prologue): Provide an upper limit on the function
9455 prologue to sh_analyze_prologue.
9456 (sh_analyze_prologue): Make better use of such an upper limit, and
9457 generally be more cautious about accessing memory.
9461 * ia64-vms-tdep.c (_initialize_ia64_vms_tdep): Rename from
9462 _initialize_ia64_hpux_tdep.
9468 * i387-tdep.c (i387_supply_xsave): If we have an xsave buffer, and
9469 the register state is clear, supply explicit zero, instead of
9470 marking the register unavailable.
9474 * NEWS: Mention OpenVMS ia64 new target.
9478 * ia64-tdep.h: Include libunwind-frame.h and libunwind-ia64.h.
9479 (ia64_unw_accessors, ia64_unw_rse_accessors)
9480 (ia64_libunwind_descr): Declare.
9481 * ia64-vms-tdep.c: New file.
9482 * ia64-tdep.c (ia64_unw_accessors, ia64_unw_rse_accessors)
9483 (ia64_libunwind_descr): Make them public.
9484 * configure.tgt: Add ia64-*-*vms*.
9485 * Makefile.in (ALL_64_TARGET_OBS): Add ia64-vms-tdep.o
9486 (ALLDEPFILES): Add ia64-vms-tdep.c
9490 * target.h (target_object): Add TARGET_OBJECT_OPENVMS_UIB.
9491 * remote.c (PACKET_qXfer_uib): New enum value.
9492 (remote_protocol_features): Add entry for PACKET_qXfer_uib.
9493 (remote_xfer_partial): Handle TARGET_OBJECT_OPENVMS_UIB.
9494 (_initialize_remote): Call add_packet_config_cmd for
9499 * osabi.c (gdb_osabi_names): Add OpenVMS.
9500 (generic_elf_osabi_sniffer): Likewise.
9501 * defs.h (gdb_osabi): Add GDB_OSABI_OPENVMS.
9505 Removed unused code.
9506 * libunwind-frame.c (libunwind_frame_unwind)
9507 (libunwind_frame_base_address): Remove.
9508 * libunwind-frame.h (libunwind_frame_base_address): Remove declaration.
9512 * common/agent.c (gdb_connect_sync_socket): Add _ markup and
9513 remove trailing new line.
9514 (agent_run_command, agent_run_command): Add _ markup.
9515 (agent_capability_check): Likewise.
9519 * breakpoint.c (set_condition_evaluation_mode): Set
9520 CONDITION_EVALUATION_MODE unconditionally.
9524 * common/agent.c (agent_look_up_symbols): Add one parameter 'arg'.
9525 * common/agent.h: Update declaration.
9526 * inf-child.c (inf_child_use_agent): New.
9527 (inf_child_can_use_agent): New.
9528 (inf_child_target): Initialize fields `to_use_agent'
9529 and `to_can_use_agent'.
9530 * agent.c (agent_new_objfile): New.
9531 (_initialize_agent): Add agent_new_objfile to new_objfile
9534 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9536 (linux_target_install_ops): Initialize field
9537 `to_static_tracepoint_markers_by_strid'.
9538 * remote.c (free_current_marker): Move it to ...
9539 * tracepoint.c (free_current_marker): ... here. New.
9540 (cleanup_target_stop): New.
9541 * tracepoint.h: Declare free_current_marker.
9542 * NEWS: Add one entry about `info static-tracepoint-marker'.
9546 * common/agent.c (agent_loaded_p): New.
9547 (agent_look_up_symbols): New global.
9548 * common/agent.h: Declare agent_loaded_p.
9552 * common/agent.c (struct ipa_sym_addresses) <addr_capability>: New.
9553 (agent_capability_check, agent_capability_invalidate): New.
9554 (symbol_list): New array element.
9555 * common/agent.h (enum agent_capa): New.
9556 * target.c (target_pre_inferior): Call agent_capability_invalidate.
9560 * target.h (struct target_ops) <to_use_agent>: New field.
9561 (struct target_ops) <to_can_use_agent>: New field.
9562 (target_use_agent, target_can_use_agent): New macro.
9563 * target.c (update_current_target): Update.
9564 * remote.c: New enum `PACKET_QAgent'.
9565 (remote_protocol_features): Add a new element.
9566 (remote_use_agent, remote_can_use_agent): New.
9567 (init_remote_ops): Initialize field `can_use_agent' with
9568 remote_can_use_agent. Intiailize field `use_agent' with
9570 * common/agent.c (use_agent): New global.
9571 * common/agent.h: Declare it.
9572 * tracepoint.c (info_static_tracepoint_markers_command): Add
9574 * Makefile.in (SFILES): Add common/agent.c and agent.c.
9575 (COMMON_OBS): Add common/agent.o and agent.o
9576 (common-agent.o): New rule.
9581 * common/agent.c: New.
9582 * common/agent.h: New.
9583 * configure.ac: Add `sys/socket.h' and `sys/un.h' to
9585 * configure, configh.in: Regenerated.
9589 * sh-tdep.c (sh_frame_cache): Don't fetch the FPSCR register
9590 unless it exists for this architecture.
9594 * language.h (struct language_defn): New "method" la_read_var_value.
9595 * findvar.c: #include "language.h".
9596 (default_read_var_value): Renames read_var_value. Rewrite
9597 function description.
9598 (read_var_value): New function.
9599 * value.h (default_read_var_value): Add prototype.
9600 * ada-lang.c (ada_read_renaming_var_value, ada_read_var_value):
9602 (ada_language_defn): Add entry for la_read_var_value.
9603 * c-lang.c, d-lang.c, f-lang.c, jv-lang.c, language.c,
9604 * m2-lang.c, objc-lang.c, opencl-lang.c, p-lang.c: Update
9605 language_defn structures to add entry for new la_read_var_value
9611 PR breakpoints/13776:
9612 * breakpoint.c (breakpoint_init_inferior): Delete step-resume
9614 (delete_longjmp_breakpoint_at_next_stop): New.
9615 * breakpoint.h (delete_longjmp_breakpoint_at_next_stop): Declare.
9616 * target.c (generic_mourn_inferior): Call mark_breakpoints_out
9617 before deleting the inferior. Add comments.
9618 * thread.c (clear_thread_inferior_resources): Don't delete lonjmp
9619 breakpoints immediately, but only on next stop. Move that code
9620 next to where we mark other breakpoints for deletion.
9624 * mips-linux-nat.c (mips_linux_read_description): Add missing i18n
9626 * mips-tdep.c (mips_linux_reg_names): Improve comment to avoid ARI
9631 * linux-thread-db.c (attach_thread): Avoid in_thread_list call.
9635 Fix -Wmissing-prototypes build.
9636 * ppc-linux-nat.c (ppc_linux_get_hwcap): Make static.
9637 * remote-sim.c (gdbsim_has_all_memory): Likewise.
9638 (gdbsim_has_memory): Likewise.
9642 Fix -Wmissing-prototypes build.
9643 * charset.c (phony_iconv_open): Make static.
9644 (phony_iconv_close, phony_iconv): Likewise.
9645 * i386-linux-nat.c (_initialize_i386_linux_nat): New prototype.
9646 * i386-windows-nat.c (_initialize_i386_windows_nat): New
9648 * mingw-hdep.c (_initialize_mingw_hdep): New prototype.
9649 * ser-mingw.c (create_select_thread): Make static.
9650 * windows-termcap.c (tgetent): New prototype.
9651 (tgetnum, tgetflag, tgetstr, tputs, tgoto): Likewise.
9655 Fix -Wmissing-prototypes build.
9656 * windows-nat.c (dll_symbol_command, ctrl_c_handler): Make them static.
9657 (_initialize_windows_nat, _initialize_check_for_gdb_ini)
9658 (_initialize_loadable): New prototypes.
9662 * dwarf2read.c (load_full_comp_unit): Remove unnecessary reading of
9663 abbrev table, read_comp_unit will do it.
9667 Fix -Wmissing-prototypes build.
9668 * alpha-tdep.c (alpha_deal_with_atomic_sequence): Make it static.
9669 * amd64-darwin-tdep.c (_initialize_amd64_darwin_tdep): New prototype.
9670 * amd64-windows-tdep.c (_initialize_amd64_windows_tdep): Likewise.
9671 * arm-symbian-tdep.c (arm_symbian_skip_trampoline_code): Make it static.
9672 (_initialize_arm_symbian_tdep): New prototype.
9673 * arm-wince-tdep.c (arm_wince_skip_main_prologue): Make it static.
9674 * i386-darwin-tdep.c (_initialize_i386_darwin_tdep): New prototype.
9675 * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn): Make it
9677 * lm32-tdep.c (_initialize_lm32_tdep): New prototype.
9678 * microblaze-linux-tdep.c (_initialize_microblaze_linux_tdep): New
9680 * microblaze-tdep.c (microblaze_debug, microblaze_fetch_instruction)
9681 (microblaze_skip_prologue, microblaze_frame_cache): Make them static.
9682 * mips-linux-tdep.c (mips_linux_regset_from_core_section): Make it
9684 * moxie-tdep.c (moxie_process_record): Likewise.
9685 * remote-mips.c (mips_can_use_watchpoint, mips_insert_watchpoint)
9686 (mips_remove_watchpoint, mips_stopped_by_watchpoint): Make them static.
9687 * rl78-tdep.c (rl78_breakpoint_from_pc): Make it static.
9688 (_initialize_rl78_tdep): New prototype.
9689 * rx-tdep.c (rx_breakpoint_from_pc): Make it static.
9690 (_initialize_rx_tdep): New prototype.
9691 * solib-darwin.c (darwin_in_dynsym_resolve_code): Make it static.
9692 (_initialize_darwin_solib): New prototype.
9693 * solib-spu.c: Include solib-spu.h.
9694 (_initialize_spu_solib): New prototype.
9695 * spu-multiarch.c (_initialize_spu_multiarch): New prototype.
9696 * tic6x-tdep.c (tic6x_analyze_prologue, tic6x_skip_prologue)
9697 (tic6x_breakpoint_from_pc, tic6x_frame_unwind_cache)
9698 (tic6x_software_single_step): Make it static.
9699 (_initialize_tic6x_tdep): New prototype.
9703 Fix -Wmissing-prototypes build.
9704 * cris-tdep.c (cris_can_use_hardware_watchpoint)
9705 (cris_region_ok_for_watchpoint, cris_stopped_data_address): Remove.
9709 Fix -Wmissing-prototypes build.
9710 * frv-tdep.c (frv_check_watch_resources, frv_stopped_data_address)
9711 (frv_have_stopped_data_address): Remove.
9715 Fix -Wmissing-prototypes build.
9716 * Makefile.in (HFILES_NO_SRCDIR): Add sh64-tdep.h.
9717 * sh-tdep.c: Include sh64-tdep.h.
9718 * sh-tdep.h (sh64_gdbarch_init, sh64_show_regs): Remove declarations.
9719 * sh64-tdep.c: Include sh64-tdep.h.
9720 * sh64-tdep.h: New file.
9724 * mips-tdep.c (mips32_scan_prologue): Correct indentation.
9728 * mips-tdep.c (mips_gdbarch_init): Only set pc_regnum and
9729 sp_regnum once the gdbarch_init_osabi hook has been called.
9733 * mips-tdep.c (mips32_bc1_pc): New function.
9734 (mips32_next_pc): Handle BC1ANY2F, BC1ANY2T, BC1ANY4F, BC1ANY4T,
9735 BPOSGE32 and BPOSGE64 instructions.
9736 (deal_with_atomic_sequence): Likewise.
9737 (mips32_instruction_has_delay_slot): Likewise.
9744 * features/mips-dsp.xml: New file.
9745 * features/mips64-dsp.xml: New file.
9746 * features/mips-dsp-linux.xml: New file.
9747 * features/mips64-dsp-linux.xml: New file.
9748 * features/Makefile (WHICH): Add mips-dsp-linux and
9750 (mips-dsp-expedite, mips64-dsp-expedite): New variables.
9751 * features/mips-dsp-linux.c: New file.
9752 * features/mips64-dsp-linux.c: New file.
9753 * regformats/mips-dsp-linux.dat: New file.
9754 * regformats/mips64-dsp-linux.dat: New file.
9755 * mips-linux-nat.c (mips_linux_register_addr): Handle DSP
9757 (mips64_linux_register_addr): Likewise.
9758 (mips64_linux_regsets_fetch_registers): Likewise.
9759 (mips64_linux_regsets_store_registers): Likewise.
9760 (mips64_linux_fetch_registers): Update call to
9761 mips64_linux_regsets_fetch_registers.
9762 (mips64_linux_store_registers): Update call to
9763 mips64_linux_regsets_store_registers.
9764 (mips_linux_read_description): Probe for DSP registers.
9765 (_initialize_mips_linux_nat): Call initialize_tdesc_mips_dsp_linux
9766 and initialize_tdesc_mips64_dsp_linux.
9767 * mips-linux-tdep.c (supply_gregset, mips64_supply_gregset):
9768 Remove padding of no longer used embedded register slots.
9769 * mips-linux-tdep.h (DSP_BASE, DSP_CONTROL): New macros.
9770 (MIPS_RESTART_REGNUM): Redefine enum value.
9771 * mips-tdep.c (mips_generic_reg_names): Remove trailing null
9773 (mips_tx39_reg_names): Likewise.
9774 (mips_linux_reg_names): New array of register names for Linux
9776 (mips_register_name): Check for a null pointer in
9777 mips_processor_reg_names and return an empty string.
9778 (mips_register_type): Exclude embedded registers for the IRIX
9780 (mips_pseudo_register_type): Likewise. Use dynamic numbers to
9781 refer to FP registers, LO, HI, BadVAddr, Cause and PC. Handle
9783 (mips_stab_reg_to_regnum): Handle DSP accumulators.
9784 (mips_dwarf_dwarf2_ecoff_reg_to_regnum): Likewise.
9785 (mips_gdbarch_init): Likewise. Initialize internal register
9786 indices for the Linux ABI. Use dynamic numbers to refer to
9787 registers, as applicable, while parsing the target description.
9788 * mips-tdep.h (struct mips_regnum): Add dspacc/dspctl offsets.
9792 * frame.h (read_frame_register_unsigned): Fix typo in function
9797 * jit-reader.in [!__cplusplus]
9798 (GDB_DECLARE_GPL_COMPATIBLE_READER): Add missing backslash.
9802 * configure.ac (build_warnings): Add -Wmissing-prototypes.
9803 * configure: Regenerate.
9807 * amd64-linux-tdep.c (amd64_linux_record_signal): Make static.
9808 * breakpoint.c (create_exception_master_breakpoint, trace_command)
9809 (ftrace_command, strace_command): Make static.
9810 * d-lang.c (_initialize_d_language): Declare.
9811 * dwarf2expr.c (_initialize_dwarf2expr): Declare.
9812 * dwarf2loc.c (_initialize_dwarf2loc):
9813 * dwarf2read.c (process_psymtab_comp_unit): Make static.
9814 * exec.c (exec_get_section_table): Make static.
9815 * i386-linux-tdep.c (i386_linux_record_signal): Make static.
9816 * infcmd.c (ensure_valid_thread, ensure_not_tfind_mode): Make static.
9817 * inferior.c (remove_inferior_command, add_inferior_command)
9818 (clone_inferior_command): Make static.
9819 * linux-nat.c (linux_nat_thread_address_space)
9820 (linux_nat_core_of_thread): Make static.
9821 * linux-tdep.c (_initialize_linux_tdep): Declare.
9822 * objc-lang.c (_initialize_objc_lang): Declare.
9823 * opencl-lang.c (builtin_opencl_type, opencl_language_arch_info):
9825 (_initialize_opencl_language): Declare.
9826 * record.c (_initialize_record): Declare.
9827 * remote.c (demand_private_info, remote_get_tib_address)
9828 (remote_supports_cond_tracepoints)
9829 (remote_supports_fast_tracepoints, remote_get_tracepoint_status):
9831 * skip.c (_initialize_step_skip): Declare.
9832 * symtab.c (skip_prologue_using_lineinfo): Make static.
9833 * tracepoint.c (delete_trace_state_variable)
9834 (trace_variable_command, delete_trace_variable_command)
9835 (get_uploaded_tsv, find_matching_tracepoint_location)
9836 (find_matching_tsv, create_tsv_from_upload, get_traceframe_info):
9838 * value.c (pack_unsigned_long): Make static.
9839 * varobj.c (varobj_ensure_python_env): Make static.
9840 * windows-tdep.c (_initialize_windows_tdep): Declare.
9841 * xml-syscall.c (make_cleanup_free_syscalls_info): Make static.
9845 * linux-tdep.c (linux_has_shared_address_space): Make static. Add
9847 (linux_init_abi): Install it as has_shared_address_space gdbarch
9852 * observer.c (observer_test_first_notification_function)
9853 (observer_test_second_notification_function)
9854 (observer_test_third_notification_function): Add declarations.
9858 * common/signals.c (default_target_signal_to_host)
9859 (default_target_signal_from_host): Move ...
9860 * arch-utils.c: ... here.
9861 * arch-utils.h (default_target_signal_to_host)
9862 (default_target_signal_from_host): Declare.
9864 * common/signals.c (target_signal_from_command): Move ...
9865 * infrun.c: ... here.
9866 * inferior.h (target_signal_from_command): Declare.
9867 * target.h (target_signal_from_command)
9868 (default_target_signal_from_host, default_target_signal_to_host):
9869 Delete declarations.
9871 * common/signals.c (_initialize_signals): Delete.
9875 * jit-reader.in (plugin_is_GPL_compatible): Add declarations for
9876 both __cplusplus and !__cplusplus.
9880 * psymtab.c (find_and_open_source): Delete declaration.
9881 * source.c (find_and_open_source): Move comment ...
9882 * source.h (find_and_open_source): ... to this new declaration.
9886 * inline-frame.c: Include inline-frame.h.
9890 * tui/tui-data.c (set_gen_win_origin): Delete.
9891 * tui/tui-data.h (tui_set_gen_win_origin): Delete declaration.
9892 * tui/tui-regs.c (tui_last_reg_element_no_in_line): Delete.
9896 * remote.c (encode_actions): Delete declaration.
9897 * tracepoint.c (encode_actions): Make extern.
9898 * tracepoint.h (encode_actions): Declare.
9902 * python/py-breakpoint.c: Include python.h.
9903 * python/py-continueevent.c (create_continue_event_object): Make
9905 * python/py-lazy-string.c (stpy_get_type): Make static.
9906 * python/py-newobjfileevent.c (create_new_objfile_event_object):
9908 * python/py-utils.c (unicode_to_target_python_string): Make
9910 * python/py-value.c: Include python.h.
9914 * inferior.c (delete_threads_of_inferior): Delete.
9918 Import fallback definitions from glibc.
9920 * gdb_proc_service.h [!HAVE_PROC_SERVICE_H] (struct
9921 ps_prochandle): Forward declare.
9922 (ps_err_e): Use glibc's comments.
9923 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
9924 (ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
9925 (ps_lsetfpregs, ps_getpid, ps_get_thread_area, ps_pglobal_lookup)
9926 (ps_pstop, ps_pcontinue, ps_lstop, ps_lcontinue, ps_lgetxregsize)
9927 (ps_lgetxregs, ps_lsetxregs, ps_plog): Declare.
9928 (struct ps_prochandle): Adjust comment.
9932 * ada-lang.c (ada_modulus_from_name): Delete.
9933 * ada-lex.l (lexer_init): Make static.
9939 * frame.c (read_frame_register_unsigned): New.
9940 * frame.h (read_frame_register_unsigned): Declare.
9941 * i387-tdep.c (print_i387_status_word): New parameter `status_p'.
9943 (print_i387_control_word): New parameter `control_p'. Handle it.
9944 (i387_print_float_info): Handle unavailable float registers.
9948 * linespec.c (decode_line_2): Sort the list of methods
9949 alphabetically before presenting the user with a selection
9954 * dwarf2read.c (dwarf2_cu): Remove unused members has_form_ref_addr,
9956 (dwarf2_read_abbrevs): Remove corresponding initialization.
9960 * NEWS: Mention new python command class gdb.COMMAND_USER.
9961 * cli/cli-cmds.c (show_user): Print error when used on a python
9963 (init_cli_cmds): Update documentation strings for "show user" and
9964 "set/show max-user-call-depth" to clarify that it does not apply to
9966 * python/py-cmd.c (cmdpy_init): Treat class_user as a valid class in
9968 (gdbpy_initialize_commands): Add COMMAND_USER as a constant in
9970 * top.c (execute_command): Only execute a user-defined command as a
9971 legacy macro if c->user_commands is set.
9975 * valprint.h (struct generic_val_print_decorations): New.
9976 (generic_val_print): Declare.
9977 * valprint.c (generic_val_print): New function.
9978 * p-valprint.c (p_decorations): New global.
9979 (pascal_val_print) <TYPE_CODE_REF, TYPE_CODE_ENUM,
9980 TYPE_CODE_FLAGS, TYPE_CODE_FUNC, TYPE_CODE_RANGE, TYPE_CODE_INT,
9981 TYPE_CODE_FLT, TYPE_CODE_VOID, TYPE_CODE_ERROR, TYPE_CODE_UNDEF,
9982 TYPE_CODE_BOOL, TYPE_CODE_CHAR>: Call generic_val_print.
9983 * m2-valprint.c (m2_decorations): New global.
9984 (m2_val_print) <TYPE_CODE_REF, TYPE_CODE_ENUM, TYPE_CODE_FUNC,
9985 TYPE_CODE_BOOL, TYPE_CODE_RANGE, TYPE_CODE_INT, TYPE_CODE_CHAR,
9986 TYPE_CODE_FLT, TYPE_CODE_METHOD, TYPE_CODE_VOID, TYPE_CODE_UNDEF,
9987 TYPE_CODE_ERROR>: Call generic_val_print.
9988 * f-valprint.c (f_decorations): New global.
9989 (f_val_print): Use print_function_pointer_address.
9990 <TYPE_CODE_REF, TYPE_CODE_FUNC, TYPE_CODE_CHAR, TYPE_CODE_FLAGS,
9991 TYPE_CODE_FLT, TYPE_CODE_VOID, TYPE_CODE_ENUM, TYPE_CODE_RANGE,
9992 TYPE_CODE_BOOL, TYPE_CODE_COMPLEX, TYPE_CODE_UNDEF>: Call
9994 * c-valprint.c (c_decorations): New global.
9995 (c_val_print) <TYPE_CODE_MEMBERPTR, TYPE_CODE_REF, TYPE_CODE_ENUM,
9996 TYPE_CODE_FLAGS, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_CODE_BOOL,
9997 TYPE_CODE_RANGE, TYPE_CODE_CHAR, TYPE_CODE_FLT,
9998 TYPE_CODE_DECFLOAT, TYPE_CODE_VOID, TYPE_CODE_ERROR,
9999 TYPE_CODE_UNDEF, TYPE_CODE_COMPLEX>: Call generic_val_print.
10000 * ada-valprint.c (ada_val_print_1) <TYPE_CODE_FLAGS>: Remove
10005 * valprint.c (val_print): Update.
10006 * p-valprint (pascal_val_print): Return void.
10007 * p-lang.h (pascal_val_print): Return void.
10008 * m2-valprint.c (m2_val_print): Return void.
10009 * m2-lang.h (m2_val_print): Return void.
10010 * language.h (struct language_defn) <la_val_print>: Return void.
10011 * language.c (unk_lang_val_print): Return void.
10012 * jv-valprint.c (java_val_print): Return void.
10013 * jv-lang.h (java_val_print): Return void.
10014 * f-valprint.c (f_val_print): Return void.
10015 * f-lang.h (f_val_print): Return void.
10016 * d-valprint.c (d_val_print): Return void.
10017 (dynamic_array_type): Update.
10018 * d-lang.h (d_val_print): Return void.
10019 * c-valprint.c (c_val_print): Return void.
10020 * c-lang.h (c_val_print): Return void.
10021 * ada-valprint.c (ada_vada_val_print, ada_val_print_1): Return
10023 * ada-lang.h (ada_val_print): Return void.
10027 * value.h (val_print): Return void.
10028 * valprint.c (val_print): Return void.
10032 * value.h (common_val_print): Return void.
10033 * valprint.c (common_val_print): Return void.
10037 * value.h (value_print): Return void.
10038 * valprint.c (value_print): Return void.
10039 * p-valprint.c (pascal_value_print): Return void.
10040 * p-lang.h (pascal_value_print): Return void.
10041 * language.h (struct language_defn) <la_value_print>: Return
10043 * language.c (unk_lang_value_print): Return void.
10044 * jv-valprint.c (java_value_print): Return void.
10045 * jv-lang.h (java_value_print): Return void.
10046 * f-valprint.c (c_value_print): Don't declare.
10048 * c-valprint.c (c_value_print): Return void.
10049 * c-lang.h (c_value_print): Return void.
10050 * ada-valprint.c (ada_value_print): Return void.
10051 * ada-lang.h (ada_value_print): Return void.
10055 * value.c (value_primitive_field): Handle virtual base classes.
10059 * gdbtypes.h (struct vbase): Remove.
10063 * c-valprint.c (print_function_pointer_address): Move...
10064 * valprint.c: ... here. Make non-static.
10065 * m2-valprint.c (print_function_pointer_address): Remove.
10066 * valprint.h (print_function_pointer_address): Declare.
10070 * NEWS: Document the fact that one can provide a condition when
10071 creating an Ada exception catchpoint.
10075 * valprint.c (val_print_type_code_flags): Fix placement of
10080 * copyright.py (MULTILINE_COMMENT_PREFIXES): Delete.
10081 (update_files): Do not set MULTILINE_COMMENT_PREFIXES
10082 environment variable before calling update-copyright.
10086 * gnulib/extra/update-copyright: Update to the latest from
10087 gnulib's git repository.
10088 * copyright.py: Set UPDATE_COPYRIGHT_USE_INTERVALS environment
10089 variable to 2 instead of 1.
10093 * varobj.c (c_value_of_variable): Remove dead code.
10097 * ada-lex.p (processId): Do not modify already encoded IDs.
10098 Update function documentation.
10102 * ada-lang.h (ada_find_renaming_symbol): Replace parameter
10103 "name" with "struct symbol *name_sym".
10104 * ada-exp.y (write_var_or_type): Update call to
10105 ada_find_renaming_symbol.
10106 "name" with "struct symbol *name_sym". Adjust Implementation
10107 accordingly. Adjust the function documentation.
10111 * ada-lang.h (ada_find_any_symbol, ada_find_any_type): Delete.
10112 * ada-lang.c (ada_find_any_type): Add advance declaration.
10113 Make static. Replace ada_find_any_symbol by
10114 ada_find_any_type_symbol.
10115 (ada_find_any_type_symbol): Renames ada_find_any_symbol.
10116 Improve function description. Make static.
10117 (ada_find_renaming_symbol, find_old_style_renaming_symbol):
10118 Replace ada_find_any_symbol by ada_find_any_type_symbol.
10122 * ada-lang.c (struct tag_args): Delete.
10123 (ada_get_tsd_type): Function body moved up in source file.
10124 (ada_tag_name_1, ada_tag_name_2): Delete.
10125 (ada_get_tsd_from_tag): New function.
10126 (ada_tag_name_from_tsd): New function.
10127 (ada_tag_name): Use a TRY_CATCH block instead of catch_errors
10128 to determine the tag name.
10132 * ada-lang.h (ada_get_decoded_value, ada_get_decoded_type): Add
10134 * ada-lang.c (ada_get_decoded_value, ada_get_decoded_type): New
10139 * ada-lang.c (ada_is_ignored_field): Rewrite wrong comment.
10143 * ada-lang.c (ada_lookup_symbol_list): Only cache the result of
10148 * ada-lang.c (constrained_packed_array_type): If there is a
10149 parallel XA type, use it to determine the array index type.
10153 * ada-valprint.c (ada_val_print_1): If our value is a reference
10154 to an array descriptor, dereference it before converting it
10159 * ada-lang.c (ada_to_fixed_value): Call unwrap_value before
10160 creating fixed value.
10161 (ada_value_ind, ada_coerce_ref, assign_component)
10162 (ada_evaluate_subexp): Remove call to unwrap_value before
10163 call to ada_to_fixed_value.
10167 * ada-lang.c (to_fixed_array_type): Set result's type name.
10171 * ada-lang.c (catch_ada_exception_command_split): Add new
10172 argument cond_string. Add support for condition at end of
10173 "catch exception" commands.
10174 (ada_decode_exception_location): Add new argument cond_string.
10175 Update call to catch_ada_exception_command_split.
10176 (create_ada_exception_catchpoint): Add new argument cond_string.
10177 Set the breakpoint condition if needed.
10178 (catch_ada_exception_command): Update call to
10179 ada_decode_exception_location.
10180 (ada_decode_assert_location): Add function documentation.
10181 Add support for condition at end of "catch assert" command.
10182 (catch_assert_command): Update calls to ada_decode_assert_location
10183 and create_ada_exception_catchpoint.
10187 Fix disp-step-syscall.exp: fork: single step over fork.
10188 * i386-linux-tdep.c (-i386_linux_get_syscall_number): Rename to ...
10189 (i386_linux_get_syscall_number_from_regcache): ... here, new function
10190 comment, change parameters gdbarch and ptid to regcache. Remove
10191 parameter regcache, initialize gdbarch from regcache here.
10192 (i386_linux_get_syscall_number, i386_linux_displaced_step_copy_insn):
10194 (i386_linux_init_abi): Install i386_linux_displaced_step_copy_insn
10196 * i386-tdep.c (i386_syscall_p): Check also for 'sysenter' and
10197 'syscall'. Make the 'int' check more strict.
10201 Fix reverse mode for syscall on AMD CPUs in 32-bit mode.
10202 * i386-linux-tdep.c (i386_linux_intx80_sysenter_record): Rename to ...
10203 (i386_linux_intx80_sysenter_syscall_record): ... here.
10204 (i386_linux_init_abi): Initialize also I386_SYSCALL_RECORD.
10205 Use the renamed function name.
10209 * arm-linux-tdep.c (arm_linux_copy_svc): Reset stale FRAME.
10210 * breakpoint.c (until_break_command): Likewise.
10211 * elfread.c (elf_gnu_ifunc_resolver_stop): Likewise.
10212 * infcall.c (call_function_by_hand): Likewise.
10213 * infcmd.c (finish_forward): Likewise.
10214 * infrun.c (insert_exception_resume_breakpoint): Likewise.
10218 * ada-tasks.c (ada_tasks_inferior_data_sniffer): Rework code to
10219 avoid variable assignments inside condition.
10223 Fix static analysis issue found by cppcheck.
10224 * microblaze-tdep.c (microblaze_extract_return_value): Fix
10225 uninitialized BUF for size 2.
10231 * mips-tdep.c (mips32_instruction_has_delay_slot): New function.
10232 (mips16_instruction_has_delay_slot): Likewise.
10233 (mips_segment_boundary): Likewise.
10234 (mips_adjust_breakpoint_address): Likewise.
10235 (mips_gdbarch_init): Use mips_adjust_breakpoint_address.
10240 * infrun.c (handle_inferior_event): Don't proceed through
10241 shared library trampolines if stepping at the machine
10246 * mips-linux-tdep.c (mips_linux_init_abi): Set num_pseudo_regs
10251 * sh-tdep.c (sh_make_stub_cache, sh_stub_this_id)
10252 (sh_stub_unwind_sniffer): New functions.
10253 (sh_stub_unwind): New variable.
10254 (sh_gdbarch_init): Wire everything.
10258 * linux-nat.c (pid_is_stopped): Delete, moved to common/.
10259 (linux_nat_post_attach_wait): Adjust to use
10260 linux_proc_pid_is_stopped.
10261 * common/linux-procfs.h (linux_proc_pid_is_stopped): Declare.
10262 * common/linux-procfs.c (linux_proc_pid_is_stopped): New function,
10263 based on pid_is_stopped from both linux-nat.c and
10264 gdbserver/linux-low.c, and renamed.
10268 * remote.c (remote_watchpoint_addr_within_range): New function.
10269 (init_remote_ops): Use it.
10273 * target.h (target_watchpoint_addr_within_range): Document macro.
10277 * stack.c (set_last_displayed_sal): Issue internal_error instead
10278 of warning, and issue it after clearing the last displayed sal.
10283 * breakpoint.c (until_break_command): Install breakpoints after
10284 all frame manipulations.
10288 * remote.c (remote_supports_cond_breakpoints): New forward
10290 (remote_add_target_side_condition): New function.
10291 (remote_insert_breakpoint): Add target-side breakpoint
10292 conditional if supported.
10293 (remote_insert_hw_breakpoint): Likewise.
10294 (init_remote_ops): Set to_supports_evaluation_of_breakpoint_conditions
10297 * target.c (update_current_target): Inherit
10298 to_supports_evaluation_of_breakpoint_conditions.
10299 Default to_supports_evaluation_of_breakpoint_conditions to return_zero.
10301 * target.h (struct target_ops)
10302 <to_supports_evaluation_of_breakpoint_conditions>: New field.
10303 (target_supports_evaluation_of_breakpoint_conditions): New #define.
10305 * breakpoint.c (get_first_locp_gte_addr): New forward declaration.
10306 (condition_evaluation_both, condition_evaluation_auto,
10307 condition_evaluation_host, condition_evaluation_target,
10308 condition_evaluation_enums, condition_evaluation_mode_1,
10309 condition_evaluation_mode): New static globals.
10310 (translate_condition_evaluation_mode): New function.
10311 (breakpoint_condition_evaluation_mode): New function.
10312 (gdb_evaluates_breakpoint_condition_p): New function.
10313 (ALL_BP_LOCATIONS_AT_ADDR): New helper macro.
10314 (mark_breakpoint_modified): New function.
10315 (mark_breakpoint_location_modified): New function.
10316 (set_condition_evaluation_mode): New function.
10317 (show_condition_evaluation_mode): New function.
10318 (bp_location_compare_addrs): New function.
10319 (get_first_location_gte_addr): New helper function.
10320 (set_breakpoint_condition): Free condition bytecode if locations
10321 has become unconditional. Call mark_breakpoint_modified (...).
10322 (condition_command): Call update_global_location_list (1) for
10324 (breakpoint_xfer_memory): Use is_breakpoint (...).
10325 (is_breakpoint): New function.
10326 (parse_cond_to_aexpr): New function.
10327 (build_target_condition_list): New function.
10328 (insert_bp_location): Handle target-side conditional
10329 breakpoints and call build_target_condition_list (...).
10330 (update_inserted_breakpoint_locations): New function.
10331 (insert_breakpoint_locations): Handle target-side conditional
10333 (bpstat_check_breakpoint_conditions): Add comment.
10334 (bp_condition_evaluator): New function.
10335 (bp_location_condition_evaluator): New function.
10336 (print_breakpoint_location): Print information on where the condition
10338 (print_one_breakpoint_location): Likewise.
10339 (init_bp_location): Call mark_breakpoint_location_modified (...) for
10340 breakpoint location.
10341 (force_breakpoint_reinsertion): New functions.
10342 (update_global_location_list): Handle target-side breakpoint
10344 Reinsert locations that are already inserted if conditions have
10346 (bp_location_dtor): Free agent expression bytecode.
10347 (disable_breakpoint): Call mark_breakpoint_modified (...).
10348 Call update_global_location_list (...) with parameter 1 for breakpoints.
10349 (disable_command): Call mark_breakpoint_location_modified (...).
10350 Call update_global_location_list (...) with parameter 1 for breakpoints.
10351 (enable_breakpoint_disp): Call mark_breakpoint_modified (...).
10352 (enable_command): mark_breakpoint_location_modified (...).
10353 (_initialize_breakpoint): Update documentation and add
10354 condition-evaluation breakpoint subcommand.
10356 * breakpoint.h: Include ax.h.
10357 (condition_list): New data structure.
10358 (condition_status): New enum.
10359 (bp_target_info) <cond_list>: New field.
10360 (bp_location) <condition_changed, cond_bytecode>: New fields.
10361 (is_breakpoint): New prototype.
10365 * remote.c (remote_state) <cond_breakpoints>: New field.
10366 (PACKET_ConditionalBreakpoints): New enum.
10367 (remote_cond_breakpoint_feature): New function.
10368 (remote_protocol_features): Add new ConditionalBreakpoints entry.
10369 (remote_supports_cond_breakpoints): New function.
10370 (_initialize_remote): Add new packet configuration for
10371 target-side conditional breakpoints.
10375 * NEWS: Mention target-side conditional breakpoint support,
10376 new condition-evaluation breakpoint subcommand and remote
10381 * breakpoint.c (bp_location_compare): Sort by pspace before sorting by
10386 * sh-tdep.c (sh_skip_prologue): Use skip_prologue_using_sal.
10387 (after_prologue): Remove.
10391 * jv-valprint.c (java_val_print): Remove dead code.
10395 * ada-tasks.c (struct ada_tasks_inferior_data): Add
10396 known_tasks_element and known_tasks_length fields.
10397 (read_known_tasks_array): Change argument type. Use pointer type
10398 and number of elements from DATA. Adjust.
10399 (read_known_tasks_list): Likewise.
10400 (get_known_tasks_addr): Remove.
10401 (ada_set_current_inferior_known_tasks_addr): Renamed to ...
10402 (ada_tasks_inferior_data_sniffer): ... this. Use symtab for element
10403 type and array length. Merge former get_known_tasks_addr code.
10408 * infcmd.c (finish_forward): New variable frame_id, initialize it, use
10409 it after set_momentary_breakpoint.
10414 * breakpoint.c (watchpoint_exp_is_constant): Add UNOP_CAST to switch.
10418 * dwarf2read.c (dwarf2_read_index): Correct misspelling.
10419 (find_slot_in_mapped_hash): Likewise.
10424 * configure.ac (MAKEINFO): Replace AC_CHECK_PROG by AC_ARG_VAR.
10425 (MAKEINFOFLAGS): Replace static string by AC_ARG_VAR.
10426 * configure: Regenerate.
10431 * ia64-tdep.c: Do not include libunwind-ia64.h.
10432 * libunwind-frame.h: Remove #ifdef HAVE_LIBUNWIND_H guard.
10433 Include libunwind-ia64.h instead of libunwind.h.
10434 * configure.ac (--with-libunwind, $enable_libunwind): Don't check
10435 for libunwind.h existence.
10436 * configure, config.in: Regenerate.
10440 * c-valprint.c (c_value_print): Use value_rtti_indirect_type
10441 instead of value_rtti_target_type.
10442 * eval.c (evaluate_subexp_standard): Use value_rtti_indirect_type
10443 instead of value_rtti_target_type.
10444 * typeprint.c (whatis_exp): Use value_rtti_indirect_type instead of
10445 value_rtti_target_type.
10446 * valops.c (value_ind): Extract function readjust_indirect_value_type.
10447 (value_rtti_target_type): Rename to ...
10448 (value_rtti_indirect_type): ... here and make it indirect. Update
10450 * value.c (readjust_indirect_value_type): New function.
10451 (coerce_ref): Support for enclosing type setting for references
10452 with readjust_indirect_value_type.
10453 * value.h (readjust_value_type): New declaration.
10454 (value_rtti_target_type): Rename to ...
10455 (value_rtti_indirect_type): ... here.
10459 * MAINTAINERS (Write After Approval): Add myself to the list.
10463 * objfiles.c (add_to_objfile_sections): Remove outdated comments.
10464 Rename objfile_p_char parameter to objfilep.
10465 (build_objfile_section_table): Result is now void. All callers
10467 * objfiles.h (struct objfile): Tweak comments, whitespace.
10468 (build_objfile_section_table): Update.
10470 * elfread.c (elf_symfile_segments): Fix warning text.
10475 * dwarf2read.c (dw2_expand_symtabs_matching): Only visit a
10476 particular set of file names once.
10477 (dw2_map_symbol_filenames): Likewise.
10482 * main.c (write_files): Remove the declaration.
10483 (external_editor_command): Move the declaration ...
10484 [GDBTK] (external_editor_command): ... here. Fix the comment.
10488 * dwarf2read.c (dw2_map_symtabs_matching_filename): Remove
10493 * darwin-nat.h (enum darwin_msg_state): Add comments.
10497 * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Fix jb_pc_offset
10502 * breakpoint.c (watchpoint_exp_is_const): Add missing empty line
10503 between function description and implementation.
10508 * python/py-event.c (event_object_getset): New global.
10509 (event_object_type): Reference it.
10510 * python/py-type.c (field_object_getset): New global.
10511 (field_object_type): Reference it.
10512 * python/python-internal.h (gdb_py_generic_dict): Declare.
10513 * python/py-utils.c (gdb_py_generic_dict): New function.
10517 * solib-darwin.c (darwin_current_sos): Check magic and filetype
10521 * sh-tdep.c (sh_is_renesas_calling_convention): Fix handling of
10522 TYPE_CALLING_CONVENTION annotation.
10526 * MAINTAINERS: Add rx to target ISA section.
10527 * Makefile.in (ALL_TARGET_OBS): Add rx-tdep.o.
10528 (ALLDEPFILES): Add rx-tdep.c.
10532 * symfile.c (symbol_file_add_main_1): Use inferior's
10534 * solib.c (solib_read_symbols): Use inferior's symfile_flags.
10535 * linux-nat.c (linux_child_follow_fork): Set symfile_flags on
10537 * infrun.c (handle_vfork_child_exec_or_exit): Set symfile_flags on
10539 (follow_exec): Use inferior's symfile_flags.
10540 * inferior.h (struct inferior) <symfile_flags>: New field.
10545 * remote-sim.c (gdbsim_create_inferior): Call error() when
10546 sim_create_inferior() fails.
10550 * machoread.c: Initialize nbr_syms to avoid warnings-as-errors failure.
10555 * thread.c (struct current_thread_cleanup) <was_removable>: New
10557 (restore_current_thread_cleanup_dtor): Restore 'removable' field.
10558 (make_cleanup_restore_current_thread): Initialize new field.
10562 * MAINTAINERS: Add rl78 to target ISA section.
10563 * Makefile.in (ALL_TARGET_OBS): Add rl78-tdep.o.
10564 (ALLDEPFILES): Add rl78-tdep.c.
10565 * NEWS: Mention rl78 as a new target.
10569 * frame.c (find_frame_sal): Initialize sal->pspace field from frame
10571 * stack.c (set_last_displayed_sal): Validate that PSPACE is not NULL.
10576 * infcmd.c (registers_info): Print just the current register's
10581 * python/py-symbol.c (sympy_value): Use _().
10585 * remote.c (remote_detach_1, extended_remote_attach_1): Tweak
10586 output to be like native targets'.
10587 (remote_pid_to_str): Special case the null ptid.
10591 * NEWS: Mention enable count command.
10592 * breakpoint.h (struct breakpoint): New field enable_count.
10593 * breakpoint.c (enable_breakpoint_disp): Add count argument.
10594 (enable_breakpoint): Add arg to call.
10595 (struct disp_data): New struct.
10596 (do_enable_breakpoint_disp): Interp arg as disp_data and unpack.
10597 (do_map_enable_once_breakpoint): Create a struct and pass it.
10598 (do_map_enable_delete_breakpoint): Ditto.
10599 (do_map_enable_count_breakpoint): New function.
10600 (enable_count_command): New function.
10601 (bpstat_stop_status): Decrement enable_count.
10602 (print_one_breakpoint_location): Report enable count.
10603 (_initialize_breakpoint): Add enable count command.
10607 * rl78-tdep.c (reggroups.h): Include.
10608 (RL78_RAW_BANK0_R0_REGNUM, RL78_RAW_BANK0_R1_REGNUM)
10609 (RL78_RAW_BANK0_R2_REGNUM, RL78_RAW_BANK0_R3_REGNUM)
10610 (RL78_RAW_BANK0_R4_REGNUM, RL78_RAW_BANK0_R5_REGNUM)
10611 (RL78_RAW_BANK0_R6_REGNUM, RL78_RAW_BANK0_R7_REGNUM)
10612 (RL78_RAW_BANK1_R0_REGNUM, RL78_RAW_BANK1_R1_REGNUM)
10613 (RL78_RAW_BANK1_R2_REGNUM, RL78_RAW_BANK1_R3_REGNUM)
10614 (RL78_RAW_BANK1_R4_REGNUM, RL78_RAW_BANK1_R5_REGNUM)
10615 (RL78_RAW_BANK1_R6_REGNUM, RL78_RAW_BANK1_R7_REGNUM)
10616 (RL78_RAW_BANK2_R0_REGNUM, RL78_RAW_BANK2_R1_REGNUM)
10617 (RL78_RAW_BANK2_R2_REGNUM, RL78_RAW_BANK2_R3_REGNUM)
10618 (RL78_RAW_BANK2_R4_REGNUM, RL78_RAW_BANK2_R5_REGNUM)
10619 (RL78_RAW_BANK2_R6_REGNUM, RL78_RAW_BANK2_R7_REGNUM)
10620 (RL78_RAW_BANK3_R0_REGNUM, RL78_RAW_BANK3_R1_REGNUM)
10621 (RL78_RAW_BANK3_R2_REGNUM, RL78_RAW_BANK3_R3_REGNUM)
10622 (RL78_RAW_BANK3_R4_REGNUM, RL78_RAW_BANK3_R5_REGNUM)
10623 (RL78_RAW_BANK3_R6_REGNUM, RL78_RAW_BANK3_R7_REGNUM): Add to
10624 beginning of register list.
10625 (RL78_BANK0_R0_REGNUM, RL78_BANK0_R1_REGNUM, RL78_BANK0_R2_REGNUM)
10626 (RL78_BANK0_R3_REGNUM, RL78_BANK0_R4_REGNUM, RL78_BANK0_R5_REGNUM)
10627 (RL78_BANK0_R6_REGNUM, RL78_BANK0_R7_REGNUM, RL78_BANK1_R0_REGNUM)
10628 (RL78_BANK1_R1_REGNUM, RL78_BANK1_R2_REGNUM, RL78_BANK1_R3_REGNUM)
10629 (RL78_BANK1_R4_REGNUM, RL78_BANK1_R5_REGNUM, RL78_BANK1_R6_REGNUM)
10630 (RL78_BANK1_R7_REGNUM, RL78_BANK2_R0_REGNUM, RL78_BANK2_R1_REGNUM)
10631 (RL78_BANK2_R2_REGNUM, RL78_BANK2_R3_REGNUM, RL78_BANK2_R4_REGNUM)
10632 (RL78_BANK2_R5_REGNUM, RL78_BANK2_R6_REGNUM, RL78_BANK2_R7_REGNUM)
10633 (RL78_BANK3_R0_REGNUM, RL78_BANK3_R1_REGNUM, RL78_BANK3_R2_REGNUM)
10634 (RL78_BANK3_R3_REGNUM, RL78_BANK3_R4_REGNUM, RL78_BANK3_R5_REGNUM)
10635 (RL78_BANK3_R6_REGNUM, RL78_BANK3_R7_REGNUM): Move these into
10636 the pseudo registers. Rearrange other pseudo registers too so
10637 that the bank registers appear at the end.
10638 (rl78_register_type): Account for the fact that the byte sized
10639 bank registers are now pseudo-registers.
10640 (rl78_register_name): Rearrange the register name array. Make
10641 initial set of raw banked registers inaccessible.
10642 (rl78_register_reggroup_p, rl78_register_sim_regno): New functions.
10643 (rl78_pseudo_register_read, rl78_pseudo_register_write): Add
10644 case for copying bytes back and forth between raw and pseudo
10645 versions of the banked registers. Update other cases to reflect
10647 (rl78_return_value): Update to account for changed names of
10649 (rl78_gdbarch_init): Register rl78_register_reggroup_p() and
10650 rl78_register_sim_regno().
10654 * rl78-tdep.c (rl78_skip_prologue): Make `const' the type of
10655 the name parameter being passed to find_pc_partial_function().
10659 * MAINTAINERS: Step down from being ia64 target maintainer.
10663 * ppc-linux-nat.c (fetch_register, store_register): Fix GCC aliasing
10664 compilation warning.
10668 Fix crash on loaded shlibs without loaded exec_bfd.
10669 * exec.c (exec_files_info): Do not crash on NULL EXEC_BFD.
10670 (set_section_command): Replace exec_bfd by p->bfd.
10674 * linespec.c (decode_line_internal): Skip symtabs_from_filename
10675 when we have a C++ qualified name.
10679 * inferior.c (inferior_pid_to_str): New.
10680 (print_inferior, inferior_command): Use it.
10684 * configure.ac (HAVE_ELF test): Put the old CFLAGS at the end of
10686 * configure: Regenerate.
10690 * linespec.c (decode_line_internal): Fix comment correctness.
10695 * Makefile.in (HFILES_NO_SRCDIR): Add amd64bsd-nat.h.
10696 * amd64bsd-nat.c: Add support for debug registers (adapted from
10698 [HAVE_PT_GETDBREGS] (amd64bsd_dr_get, amd64bsd_dr_set)
10699 (amd64bsd_dr_set_control, amd64bsd_dr_set_addr)
10700 (amd64bsd_dr_get_addr, amd64bsd_dr_get_status)
10701 (amd64bsd_dr_get_control): New functions.
10702 * amd64bsd-nat.h: New file (adapted from i386bsd-nat.h).
10703 * amd64fbsd-nat.c: Include "amd64bsd-nat.h", "i386-nat.h".
10704 [HAVE_PT_GETDBREGS] (_initialize_amd64fbsd_nat): Add hardware
10705 watchpoints initialization.
10706 * config/i386/fbsd64.mh (NATDEPFILES): Add i386-nat.o.
10710 * gdb-gdb.py (StructMainTypePrettyPrinter) <struct_field_img>: Print
10712 (StructMainTypePrettyPrinter) <bounds_img>: Print flds_bnds.bounds.
10716 * breakpoint.c (bp_location_compare): Fix comment. Reindent the code.
10720 * language.h (symbol_name_cmp_ftype): Renames
10721 symbol_name_match_p_ftype.
10722 (struct language_defn)[la_get_symbol_name_cmp]: Renames
10723 la_get_symbol_name_match_p.
10724 * ada-lang.c (ada_get_symbol_name_cmp): Renames
10725 ada_get_symbol_name_match_p. Update comment.
10726 (ada_language_defn)[la_get_symbol_name_cmp]: Update value.
10727 * linespec.c (struct symbol_matcher_data)[symbol_name_cmp]:
10728 Renames symbol_name_match_p. Update field type.
10729 (iterate_name_matcher, iterate_over_all_matching_symtabs): Adjust.
10730 * c-lang.c, d-lang.c, f-lang.c, jv-lang.c, m2-lang.c, objc-lang.c,
10731 opencl-lang.c, p-lang.c: Replace "la_get_symbol_name_match_p" by
10732 "la_get_symbol_name_cmp" in comments.
10733 * language.c: Likewise.
10737 * amd64-sol2-tdep.c (amd64_sol2_gregset_reg_offset): Correct
10739 * i386-sol2-nat.c (amd64_sol2_gregset64_reg_offs)
10740 (amd64_sol2_gregset32_reg_offs): Likewise.
10744 * solib-darwin.c (darwin_bfd_open): Make sure that the filename
10745 of the returned BFD is allocated by GDB.
10750 * python/python-internal.h (frame_object_type): Declare.
10751 * python/py-symbol.c (sympy_needs_frame): New function.
10752 (sympy_value): New function.
10753 (symbol_object_getset): Add "needs_frame".
10754 (symbol_object_methods): Add "value".
10755 * python/py-frame.c (frame_object_type): No longer static.
10760 * python/py-symbol.c (sympy_line): New function.
10761 (symbol_object_getset): Add "line".
10765 * charset.c (find_charset_names): Check 'in' against NULL.
10769 * gdbtypes.h (struct main_type): Change type of name,tag_name,
10770 and fields.name members from char * to const char *. All uses updated.
10771 (struct cplus_struct_type): Change type of fn_fieldlists.name member
10772 from char * to const char *. All uses updated.
10773 (type_name_no_tag): Update.
10774 (lookup_unsigned_typename, lookup_signed_typename): Update.
10775 * gdbtypes.c (type_name_no_tag): Change result type
10776 from char * to const char *. All callers updated.
10777 (lookup_unsigned_typename, lookup_signed_typename): Change type of
10778 name parameter from char * to const char *.
10779 * symtab.h (struct cplus_specific): Change type of demangled_name
10780 member from char * to const char *. All uses updated.
10781 (struct general_symbol_info): Change type of name and
10782 mangled_lang.demangled_name members from char * to const char *.
10784 (symbol_get_demangled_name, symbol_natural_name): Update.
10785 (symbol_demangled_name, symbol_search_name): Update.
10786 * symtab.c (symbol_get_demangled_name): Change result type
10787 from char * to const char *. All callers updated.
10788 (symbol_natural_name, symbol_demangled_name): Ditto.
10789 (symbol_search_name): Ditto.
10790 (completion_list_add_name): Change type of symname,sym_text,
10791 text,word parameters from char * to const char *.
10792 (completion_list_objc_symbol): Change type of sym_text,
10793 text,word parameters from char * to const char *.
10794 * ada-lang.c (find_struct_field): Change type of name parameter
10795 from char * to const char *.
10796 (encoded_ordered_before): Similarly for N0,N1 parameters.
10797 (old_renaming_is_invisible): Similarly for function_name parameter.
10798 (ada_type_name): Change result type from char * to const char *.
10799 All callers updated.
10800 * ada-lang.h (ada_type_name): Update.
10801 * buildsym.c (hashname): Change type of name parameter
10802 from char * to const char *.
10803 * buildsym.h (hashname): Update.
10804 * dbxread.c (end_psymtab): Change type of include_list parameter
10805 from char ** to const char **.
10806 * dwarf2read.c (determine_prefix): Change result type
10807 from char * to const char *. All callers updated.
10808 * f-lang.c (find_common_for_function): Change type of name, funcname
10809 parameters from char * to const char *.
10810 * f-lang.c (find_common_for_function): Update.
10811 * f-valprint.c (list_all_visible_commons): Change type of funcname
10812 parameters from char * to const char *.
10813 * gdbarch.sh (static_transform_name): Change type of name parameter
10814 and result from char * to const char *.
10815 * gdbarch.c: Regenerate.
10816 * gdbarch.h: Regenerate.
10817 * i386-sol2-tdep.c (i386_sol2_static_transform_name): Change type
10818 of name parameter from char * to const char *.
10819 * jv-lang.c (java_primitive_type_from_name): Ditto.
10820 (java_demangled_signature_length): Similarly for signature parameter.
10821 (java_demangled_signature_copy): Ditto.
10822 (java_demangle_type_signature): Ditto.
10823 * jv-lang.h (java_primitive_type_from_name): Update.
10824 (java_demangle_type_signature): Update.
10825 * objc-lang.c (specialcmp): Change type of a,b parameters
10826 from char * to const char *.
10827 * p-lang.c (is_pascal_string_type): Change type of arrayname parameter
10828 from char * to const char *. All callers updated.
10829 * p-lang.h (is_pascal_string_type): Update.
10830 * solib-frv.c (find_canonical_descriptor_in_load_object): Change type
10831 of name parameter from char * to const char *.
10832 * sparc-sol2-tdep.c (sparc_sol2_static_transform_name): Ditto.
10833 * utils.c (fprintf_symbol_filtered): Ditto.
10834 * defs.h (fprintf_symbol_filtered): Update.
10835 * sparc-tdep.h (sparc_sol2_static_transform_name): Update.
10836 * stabsread.h (end_psymtab): Update.
10837 * stack.c (find_frame_funname): Change type of funname parameter
10838 from char ** to const char **.
10839 * stack.h (find_frame_funname): Update.
10840 * typeprint.c (type_print): Change type of varstring parameter
10841 from char * to const char *.
10842 * value.h (type_print): Update.
10843 * xcoffread.c (xcoff_start_psymtab): Change type of filename parameter
10844 from char * to const char *. All callers updated.
10845 (xcoff_end_psymtab): Change type of include_list parameter
10846 from char ** to const char **. All callers updated.
10847 (swap_sym): Similarly for name parameter. All callers updated.
10848 * coffread.c (patch_type): Add (char*) cast to xfree parameter.
10850 (process_coff_symbol): Use xstrdup.
10851 * stabsread.c (stabs_method_name_from_physname): Renamed from
10852 update_method_name_from_physname. Change result type from void
10853 to char *. All callers updated.
10854 (read_member_functions): In has_destructor case, store name in objfile
10855 obstack instead of malloc space. In !has_stub case, fix mem leak.
10859 * configure: Rebuild.
10860 * configure.ac: Put -L../bfd and -L../libiberty at the front of
10865 * configure.tgt (rl78-*-elf): New target.
10866 * rl78-tdep.c: New file.
10870 * remote.c (remote_rcmd): Use getpkt_sane to detect timeout
10871 and continue the loop. Add QUIT statement.
10876 * solib.h (gdb_bfd_lookup_symbol_from_symtab): Rename from
10877 bfd_lookup_symbol_from_symtab.
10878 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
10879 gdb_bfd_lookup_symbol_from_symtab.
10883 * mi/mi-cmd-stack.c (list_args_or_locals): For argument symbols,
10884 use SYMBOL_LINKAGE_NAME to find the corresponding non-argument
10885 symbol. Add assertion that sym2 is never NULL.
10889 * blockframe.c (find_pc_partial_function_gnu_ifunc): Change type of
10890 "name" parameter to const char ** from char **. All callers updated.
10891 (find_pc_partial_function): Ditto.
10892 (cache_pc_function_name): Change type to const char * from char *.
10893 * symtab.h ((find_pc_partial_function_gnu_ifunc): Update.
10894 (find_pc_partial_function): Update.
10895 * alpha-tdep.h (struct gdbarch_tdep, member pc_in_sigtramp): Change
10896 type of "name" parameter to const char * from char *.
10898 * arch-utils.c (generic_in_solib_return_trampoline): Change
10899 type of "name" parameter to const char * from char *.
10900 * arch-utils.h (generic_in_solib_return_trampoline): Update.
10901 * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Change
10902 type of "name" parameter to const char * from char *.
10903 * gdbarch.sh (in_solib_return_trampoline): Ditto.
10904 * gdbarch.c: Regenerate.
10905 * gdbarch.h: Regenerate.
10906 * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Update.
10907 * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Update.
10908 * m32r-linux-tdep.c (m32r_linux_pc_in_sigtramp): Change
10909 type of "name" parameter to const char * from char *.
10910 * skip.c (skip_function_pc): Ditto.
10911 * sparc-sol2-tdep.c (sparc_sol2_pc_in_sigtramp): Ditto.
10912 * sparc-tdep.h (sparc_sol2_pc_in_sigtramp): Update.
10913 * sparc64fbsd-tdep.c (sparc64fbsd_pc_in_sigtramp): Ditto.
10914 * sparc64nbsd-tdep.c (sparc64nbsd_pc_in_sigtramp): Ditto.
10915 * sparc64obsd-tdep.c (sparc64obsd_pc_in_sigtramp): Ditto.
10916 * sparcnbsd-tdep.c (sparc32nbsd_pc_in_sigtramp): Ditto.
10917 * sparcobsd-tdep.c (sparc32obsd_pc_in_sigtramp): Ditto.
10918 * nbsd-tdep.c (nbsd_pc_in_sigtramp): Similary for "func_name".
10919 * nbsd-tdep.h (nbsd_pc_in_sigtramp): Update.
10923 * remote.c (remote_get_min_fast_tracepoint_insn_len): Return 0 if
10924 the current inferior has no execution. Make sure the current
10925 remote process matches gdb's current inferior.
10930 * tui/tui-win.c (parse_scrolling_args): Don't write to possibly
10936 * symtab.c (lookup_language_this): Set block_found.
10941 * jit.c (struct jit_inferior_data): Rewrite.
10942 (struct jit_objfile_data): New.
10943 (get_jit_objfile_data): New function.
10944 (add_objfile_entry): Update.
10945 (jit_read_descriptor): Return int. Replace descriptor_addr
10946 argument with inf_data. Update. Don't call error.
10947 (jit_breakpoint_re_set_internal): Reorder logic. Update. Look up
10949 (jit_inferior_init): Don't look up descriptor. Don't call error.
10950 (jit_reset_inferior_data_and_breakpoints)
10951 (jit_inferior_created_observer): Remove.
10952 (jit_inferior_exit_hook): Update.
10953 (jit_executable_changed_observer): Remove.
10954 (jit_event_handler): Update.
10955 (free_objfile_data): Reset inferior data if needed.
10956 (_initialize_jit): Update.
10960 * jit.c (bfd_open_from_target_memory): Move higher in file.
10964 * libunwind-frame.c (libunwind_load): Display message if dlopen
10969 * symtab.h (symbol_found_callback_ftype): New typedef.
10970 (iterate_over_symbols): Use the above.
10971 * symtab.c (iterate_over_symbols): Likewise.
10972 * language.h (language_defn->la_iterate_over_symbols): Likewise.
10973 * ada-lang.c (ada_iterate_over_symbols): Likewise.
10974 * linespec.c (iterate_over_all_matching_symtabs): Likewise.
10975 (iterate_name_matcher): Document return values.
10976 (collect_one_symbol): Likewise.
10977 (collect_function_symbols): Likewise.
10978 (collect_symbols): Likewise.
10982 * ada-lang.c (resolve_subexp): Update.
10983 (ada_lookup_symbol_list): Add 'full_search' argument.
10984 (ada_iterate_over_symbols): Pass 0 as full_search argument to
10985 ada_lookup_symbol_list.
10986 (ada_lookup_encoded_symbol): Update.
10987 (get_var_value): Update.
10988 * ada-exp.y (block_lookup): Update.
10989 (write_var_or_type): Update.
10990 (write_name_assoc): Update.
10991 * ada-lang.h (ada_lookup_symbol_list): Update.
10995 * language.h (struct language_defn) <la_iterate_over_symbols>: Fix
11000 * symtab.h: Remove outdated comment.
11001 (SYMBOL_MATCHES_NATURAL_NAME): Delete.
11005 Fix build error in Darwin port.
11006 * i386-darwin-nat.c: Include i386-nat.h.
11010 PR breakpoints/13568:
11011 * dwarf2read.c (dwarf_decode_macro_bytes): Add 'include_hash'
11012 argument. Check for recursive includes.
11013 (dwarf_decode_macros): Create an include hash.
11017 * configure.tgt (powerpc-*-linux*): Add glibc-tdep.o.
11018 * ppc-linux-tdep.c: Include glibc-tdep.h.
11019 (powerpc32_plt_stub, powerpc32_plt_stub_so): Add PLT stub templates.
11020 (powerpc_linux_in_plt_stub): New function.
11021 (powerpc_linux_in_dynsym_resolve_code): New function.
11022 (ppc_skip_trampoline_code): New function.
11023 (ppc_linux_init_abi): Use PPC specific functions rather than generic.
11024 Use glibc_skip_solib_resolver.
11028 Code cleanup: Make 1440 bytes of data segment read-only.
11029 * arch-utils.c (endian_enum): Make it const char *const [].
11030 * arm-tdep.c (fp_model_strings, arm_abi_strings, arm_mode_strings):
11032 * breakpoint.c (always_inserted_enums): Likewise.
11033 * cli/cli-cmds.c (script_ext_enums): Likewise.
11034 * cli/cli-decode.c (add_setshow_enum_cmd, complete_on_enum): Make the
11035 enumlist parameter const char *const *.
11036 * cli/cli-decode.h (struct cmd_list_element): Make the enums field
11037 const char *const *.
11038 * command.h (complete_on_enum, add_setshow_enum_cmd): Make the enumlist
11039 parameter const char *const *.
11040 * cris-tdep.c (cris_modes): Make it const char *const [].
11041 * filesystem.c (target_file_system_kinds): Likewise.
11042 * i386-tdep.c (valid_flavors, valid_conventions): Likewise.
11043 * infrun.c (follow_fork_mode_kind_names, follow_exec_mode_names)
11044 (can_use_displaced_stepping_enum, scheduler_enums)
11045 (exec_direction_names): Likewise.
11046 * language.c (_initialize_language): Make the type_or_range_names and
11047 case_sensitive_names variables const char *const [].
11048 * mips-tdep.c (mips_abi_strings): Make it const char *const [].
11049 * python/python.c (python_excp_enums): Likewise.
11050 * remote.c (interrupt_sequence_modes): Likewise.
11051 * rs6000-tdep.c (powerpc_vector_strings): Likewise.
11052 * serial.c (logbase_enums): Likewise.
11053 * sh-tdep.c (sh_cc_enum): Likewise.
11054 * stack.c (print_frame_arguments_choices, print_entry_values_choices):
11056 * symtab.c (multiple_symbols_modes): Likewise.
11057 * tui/tui-win.c (tui_border_kind_enums, tui_border_mode_enums):
11059 * utils.c (internal_problem_modes): Likewise.
11063 Fix the 2012-01-26 regression by la_get_symbol_name_match_p.
11064 * linespec.c (iterate_name_matcher): Negate the SYMBOL_NAME_MATCH_P
11069 * configure.ac (with_python): Fix absolute path handling for win32.
11070 * configure: Regenerate.
11074 * symtab.c: Whitespace cleanup, no code changes.
11076 * symtab.c (lookup_symbol_in_language): Improve comment.
11077 (lookup_symbol_aux): Fix comment.
11079 * psymtab.c (add_psymbol_to_list): Result is now "void".
11080 * psympriv.h (add_psymbol_to_list): Update.
11082 * dwarf2read.c (add_partial_symbol): Delete local psym, unused.
11086 Do not open script filenames twice.
11087 * cli/cli-cmds.c (source_script_from_stream): Pass to
11088 source_python_script also STREAM.
11089 * python/py-auto-load.c (source_section_scripts): Pass to
11090 source_python_script_for_objfile also STREAM.
11091 (auto_load_objfile_script): Pass to source_python_script_for_objfile
11093 * python/python-internal.h (source_python_script_for_objfile): New
11094 parameter file, rename parameter file to filename.
11095 * python/python.c (python_run_simple_file): Call PyRun_SimpleFile
11096 instead if !_WIN32. Update the function comment.
11097 (source_python_script, source_python_script_for_objfile)
11098 (source_python_script): New parameter file, rename parameter file to
11099 filename. Pass FILENAME to python_run_simple_file.
11100 * python/python.h (source_python_script): New parameter file, rename
11101 parameter file to filename.
11105 * corelow.c (core_has_fake_pid): Delete.
11106 (core_close): Delete references to `core_has_fake_pid'.
11107 (add_to_thread_list): Adjust to mark the inferior's pid as fake.
11108 (core_open): Delete references to `core_has_fake_pid'.
11109 (core_pid_to_str): Adjust to check inferior->fake_pid_p instead of
11110 the removed global.
11114 * symfile.h (struct quick_symbol_functions) [expand_symtabs_matching]:
11115 Remove language parameter from name_matcher. Adjust the comment.
11116 * symtab.c (search_symbols_name_matches, expand_partial_symbol_name):
11117 Remove language parameter.
11118 * ada-lang.c (ada_expand_partial_symbol_name): Likewise.
11119 * linespec.c (iterate_name_matcher): Likewise.
11120 * dwarf2read.c (dw2_expand_symtabs_matching): Adjust type of
11121 name_matcher. Adjust call accordingly.
11122 * psymtab.c (expand_symtabs_matching_via_partial): Likewise.
11123 (maintenance_check_symtabs): Adjust type of parameter "fun".
11124 * psymtab.h (maintenance_check_symtabs): Likewise.
11128 * language.h (symbol_name_match_p_ftype): New typedef.
11129 (struct language_defn): Replace field la_symbol_name_compare
11130 by la_get_symbol_name_match_p.
11131 * ada-lang.c (ada_get_symbol_name_match_p): New function.
11132 (ada_language_defn): Use it.
11133 * linespec.c (struct symbol_matcher_data): New type.
11134 (iterate_name_matcher): Rewrite.
11135 (iterate_over_all_matching_symtabs): Pass a pointer to
11136 a symbol_matcher_data struct to expand_symtabs_matching
11137 instead of just the lookup name.
11138 * c-lang.c, d-lang.c, jv-lang.c, m2-lang.c, objc-lang.c,
11139 opencl-lang.c, p-lang.c, language.c: Delete field
11140 la_symbol_name_compare, and replace by NULL for new field
11141 la_get_symbol_name_match_p.
11142 * symfile.h (struct quick_symbol_functions): Update comment.
11146 * breakpoint.c (bpstat_stop_status): Check 'breakpoint_at' before
11152 * solib.c (update_solib_list): Update the program space's
11153 added_solibs and deleted_solibs fields.
11154 * progspace.h (struct program_space) <added_solibs,
11155 deleted_solibs>: New fields.
11156 (clear_program_space_solib_cache): Declare.
11157 * progspace.c (release_program_space): Call
11158 clear_program_space_solib_cache.
11159 (clear_program_space_solib_cache): New function.
11160 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_LOADED>: Call
11161 bpstat_stop_status. Use handle_solib_event.
11162 * breakpoint.c: Include gdb_regex.h.
11163 (print_solib_event): New function.
11164 (bpstat_print): Use print_solib_event.
11165 (bpstat_stop_status): Add special case for bp_shlib_event.
11166 (handle_solib_event): New function.
11167 (bpstat_what): Use handle_solib_event.
11168 (struct solib_catchpoint): New.
11169 (dtor_catch_solib, insert_catch_solib, remove_catch_solib)
11170 (breakpoint_hit_catch_solib, check_status_catch_solib)
11171 (print_it_catch_solib, print_one_catch_solib)
11172 (print_mention_catch_solib, print_recreate_catch_solib): New
11174 (catch_solib_breakpoint_ops): New global.
11175 (catch_load_or_unload, catch_load_command_1)
11176 (catch_unload_command_1): New functions.
11177 (internal_bkpt_check_status): Add special case for
11179 (internal_bkpt_print_it): Use print_solib_event.
11180 (initialize_breakpoint_ops): Initialize
11181 catch_solib_breakpoint_ops.
11182 (_initialize_breakpoint): Register "catch load" and "catch
11184 * breakpoint.h (handle_solib_event): Declare.
11185 * NEWS: Add entry for "catch load" and "catch unload".
11189 * ada-lang.c: Include gdb_vecs.h.
11190 * charset.c: Include gdb_vecs.h.
11191 * tracepoint.h: Include gdb_vecs.h.
11192 * gdb_vecs.h: New file.
11196 * breakpoint.c (breakpoint_hit_catch_fork)
11197 (breakpoint_hit_catch_vfork, breakpoint_hit_catch_syscall)
11198 (breakpoint_hit_catch_exec): Make use of the `ws' argument.
11199 * infrun.c (inferior_has_forked, inferior_has_vforked)
11200 (inferior_has_execd, inferior_has_called_syscall): Delete.
11201 (handle_syscall_event): Get syscall_number from the execution
11202 control state's wait status.
11203 (wait_for_inferior): Don't clear syscall_number.
11207 * breakpoint.c (bpstat_check_location, bpstat_stop_status,
11208 pc_at_non_inline_function): Add `ws' parameter, and pass it down.
11209 (breakpoint_hit_catch_fork, breakpoint_hit_catch_vfork)
11210 (breakpoint_hit_catch_syscall, breakpoint_hit_catch_exec): Add
11212 (breakpoint_hit_ranged_breakpoint): Add `ws' parameter. Return
11213 false for events other than TARGET_SIGNAL_TRAP.
11214 (breakpoint_hit_watchpoint, base_breakpoint_breakpoint_hit):
11215 Add `ws' parameter.
11216 (bkpt_breakpoint_hit): Add `ws' parameter. Return false for
11217 events other than TARGET_SIGNAL_TRAP.
11218 (tracepoint_breakpoint_hit): Add `ws' parameter.
11219 * breakpoint.h (struct breakpoint_ops) <breakpoint_hit>: Add `ws'
11221 (bpstat_stop_status): Same.
11222 (pc_at_non_inline_function): Same.
11223 * infrun.c (handle_syscall_event, handle_inferior_event): Adjust
11224 to pass the current event's waitstatus to bpstat_stop_status
11225 and pc_at_non_inline_function.
11230 * cli/cli-cmds.c (source_script_from_stream): Never fclose STREAM.
11231 Update the function comment for it.
11232 (source_script_with_search): Call make_cleanup_fclose for STREAM.
11233 * cli/cli-script.c (script_from_file): Do not call make_cleanup_fclose
11238 * breakpoint.c (bpstat_stop_status): Moving clearing print_it
11239 outside `bs->stop' block.
11240 (bpstat_what): Rework bp_shlib_event handling.
11241 (internal_bkpt_check_status): If the breakpoint is a
11242 bp_shlib_event, then set bs->stop and bs->print if
11243 stop_on_solib_events is set.
11247 Delete #if 0'd out code.
11248 * stack.c (print_frame_label_vars): Remove.
11249 (catch_info): Likewise.
11250 (_initialize_stack): Remove "info catch" command.
11251 * NEWS: Mention the above.
11255 * remote.c (remote_add_inferior): New `fake_pid_p' parameter. Use
11257 (remote_notice_new_inferior): If the remote end doesn't support
11258 the multiprocess extensions, then the PID is fake.
11259 (add_current_inferior_and_thread): New.
11260 (remote_start_remote): Use it.
11261 (extended_remote_attach_1): Adjust.
11262 (extended_remote_create_inferior_1): Use
11263 add_current_inferior_and_thread.
11267 Fix watchpoints to be specific for each inferior.
11268 * breakpoint.c (watchpoint_in_thread_scope): Verify also
11269 current_program_space.
11270 * i386-nat.c (i386_inferior_data_cleanup): New.
11271 (i386_inferior_data_get): Replace variable inf_data_local by an
11272 inferior_data call.
11273 (i386_use_watchpoints): Initialize i386_inferior_data.
11274 * linux-nat.c (linux_nat_iterate_watchpoint_lwps): Use INFERIOR_PTID
11275 specific iterate_over_lwps.
11279 Fix watchpoints across inferior fork.
11280 * amd64-linux-nat.c (update_debug_registers_callback): Update the
11281 comment for linux_nat_iterate_watchpoint_lwps.
11282 (amd64_linux_dr_set_control, amd64_linux_dr_set_addr): Use
11283 linux_nat_iterate_watchpoint_lwps.
11284 (amd64_linux_prepare_to_resume): New comment on Linux kernel.
11285 * i386-linux-nat.c (update_debug_registers_callback): Update the
11286 comment for linux_nat_iterate_watchpoint_lwps.
11287 (i386_linux_dr_set_control, i386_linux_dr_set_addr): Use
11288 linux_nat_iterate_watchpoint_lwps.
11289 (i386_linux_prepare_to_resume): New comment on Linux kernel.
11290 * i386-nat.c: Include inferior.h.
11291 (dr_mirror): Remove.
11292 (i386_inferior_data, struct i386_inferior_data)
11293 (i386_inferior_data_get): New.
11294 (i386_debug_reg_state): Use i386_inferior_data_get.
11295 (i386_cleanup_dregs, i386_update_inferior_debug_regs)
11296 (i386_insert_watchpoint, i386_remove_watchpoint)
11297 (i386_stopped_data_address, i386_insert_hw_breakpoint)
11298 (i386_remove_hw_breakpoint): New variable state, use
11299 i386_debug_reg_state instead of DR_MIRROR.
11300 * linux-nat.c (delete_lwp): New declaration.
11301 (num_lwps): Move here from downwards.
11302 (delete_lwp_cleanup): New.
11303 (linux_child_follow_fork): Create new child_lp, call
11304 linux_nat_new_thread and linux_nat_prepare_to_resume before calling
11306 (num_lwps): Move upwards.
11307 (linux_nat_iterate_watchpoint_lwps): New.
11308 * linux-nat.h (linux_nat_iterate_watchpoint_lwps_ftype): New.
11309 (linux_nat_iterate_watchpoint_lwps_ftype): New declaration.
11317 * top.c (caution): Rename to ...
11318 (confirm): ... this.
11319 (show_caution): Rename to ...
11320 (show_confirm): ... this.
11321 (quit_cover): Adjust.
11322 (init_main): Adjust.
11323 * top.h (caution): Rename to ...
11324 (confirm): ... this.
11325 * utils.c (internal_vproblem, defaulted_query): Adjust.
11329 * top.c (caution): Update comment.
11330 (execute_command): Don't consider the current value of `caution'.
11334 * cli/cli-cmds.c (find_and_open_script): Handle failure of fdopen.
11338 * inf-child.c: Include "gdb_stat.h" instead of <sys/stat.h>.
11339 * linux-tdep.c (linux_info_proc): Avoid ARI coding style warning.
11340 * target.c (target_fileio_pwrite): Remove buffer address from
11342 (target_fileio_pread): Likewise.
11346 * NEWS: Document remote "info proc" and "generate-core-file".
11350 * gdbarch.sh (find_memory_regions): New callback.
11351 * gdbarch.c, gdbarch.h: Regenerate.
11353 * gcore.c (gcore_memory_sections): Try gdbarch find_memory_regions
11354 callback before falling back to target method.
11356 * linux-nat.c (read_mapping, linux_nat_find_memory_regions): Remove.
11357 (linux_target_install_ops): No longer install it.
11359 * linux-tdep.c (linux_find_memory_regions): New function.
11360 (linux_init_abi): Install it.
11364 * gdbarch.sh (make_corefile_notes): New architecture callback.
11365 * gdbarch.c: Regenerate.
11366 * gdbarch.h: Likewise.
11368 * gcore.c (write_gcore_file): Try gdbarch_make_corefile_notes
11369 before target_make_corefile_notes. If NULL is returned, the
11370 target does not support core file generation.
11372 * linux-nat.c: Include "linux-tdep.h".
11373 (find_signalled_thread, find_stop_signal): Remove.
11374 (linux_nat_do_thread_registers): Likewise.
11375 (struct linux_nat_corefile_thread_data): Likewise.
11376 (linux_nat_corefile_thread_callback): Likewise.
11377 (iterate_over_spus): Likewise.
11378 (struct linux_spu_corefile_data): Likewise.
11379 (linux_spu_corefile_callback): Likewise.
11380 (linux_spu_make_corefile_notes): Likewise.
11381 (linux_nat_collect_thread_registers): New function.
11382 (linux_nat_make_corefile_notes): Replace contents by call to
11383 linux_make_corefile_notes passing linux_nat_collect_thread_registers
11384 as native-only callback.
11386 * linux-tdep.h: Include "bfd.h".
11387 (struct regcache): Add forward declaration.
11388 (linux_collect_thread_registers_ftype): New typedef.
11389 (linux_make_corefile_notes): Add prototype.
11390 * linux-tdep.c: Include "gdbthread.h", "gdbcore.h", "regcache.h",
11391 "regset.h", and "elf-bfd.h".
11392 (find_signalled_thread, find_stop_signal): New functions.
11393 (linux_spu_make_corefile_notes): Likewise.
11394 (linux_collect_thread_registers): Likewise.
11395 (struct linux_corefile_thread_data): New data structure.
11396 (linux_corefile_thread_callback): New funcion.
11397 (linux_make_corefile_notes): Likewise.
11398 (linux_make_corefile_notes_1): Likewise.
11399 (linux_init_abi): Install it.
11403 * gdbarch.sh (info_proc): New callback.
11404 * gdbarch.c, gdbarch.h: Regenerate.
11406 * infcmd.c (info_proc_cmd_1): Try gdbarch info_proc callback
11407 before falling back to the target info_proc callback.
11409 * linux-nat.c: Do not include "cli/cli-utils.h".
11410 (linux_nat_info_proc): Remove.
11411 (linux_target_install_ops): No longer install it.
11413 * linux-tdep.c: Include "cli/cli-utils.h" and <ctype.h>.
11414 (read_mapping): New function.
11415 (linux_info_proc): Likewise.
11416 (linux_init_abi): Install it.
11420 * defs.h (enum info_proc_what): Moved here from linux-nat.c
11421 * infcmd.c: (info_proc_cmd_1): New function.
11422 (info_proc_cmd): New function, moved here from equivalent routine
11423 orignally in linux-nat.c.
11424 (info_proc_cmd_mappings): Likewise.
11425 (info_proc_cmd_stat): Likewise.
11426 (info_proc_cmd_status): Likewise.
11427 (info_proc_cmd_cwd): Likewise.
11428 (info_proc_cmd_cmdline): Likewise.
11429 (info_proc_cmd_exe): Likewise.
11430 (info_proc_cmd_all): Likewise.
11431 (_initialize_infcmd): Install "info proc" command and subcommands.
11433 * target.h (struct target_ops): Add to_info_proc.
11434 (target_info_proc): Add prototype.
11435 * target.c (target_info_proc): New function.
11437 * procfs.c (procfs_info_proc): Add prototype.
11438 (info_proc_cmd): Rename into ...
11439 (procfs_info_proc): ... this. Update argument types as appropriate
11440 for a to_info_proc implementation. Handle "what" argument.
11441 (procfs_target): Install procfs_info_proc.
11442 (_initialize_procfs): No longer install "info proc" command.
11444 * linux-nat.c: (enum info_proc_what): Remove.
11445 (linux_nat_info_proc_cmd_1): Rename into ...
11446 (linux_nat_info_proc): ... this. Update argument types as appropriate
11447 for a to_info_proc implementation.
11448 (linux_nat_info_proc_cmd): Remove.
11449 (linux_nat_info_proc_cmd_mappings): Likewise.
11450 (linux_nat_info_proc_cmd_stat): Likewise.
11451 (linux_nat_info_proc_cmd_status): Likewise.
11452 (linux_nat_info_proc_cmd_cwd): Likewise.
11453 (linux_nat_info_proc_cmd_cmdline): Likewise.
11454 (linux_nat_info_proc_cmd_exe): Likewise.
11455 (linux_nat_info_proc_cmd_all): Likewise.
11456 (linux_target_install_ops): Install linux_nat_info_proc.
11457 (_initialize_linux_nat): No longer install "info proc" command
11462 * configure.ac [AC_CHECK_FUNCS]: Check for readlink.
11463 * config.in, configure: Regenerate.
11465 * target.h (struct target_ops): Add to_fileio_readlink.
11466 (target_fileio_readlink): Add prototype.
11467 * target.c (target_fileio_readlink): New function.
11469 * inf-child.c: Conditionally include <sys/param.h>.
11470 (inf_child_fileio_readlink): New function.
11471 (inf_child_target): Install it.
11473 * remote.c (PACKET_vFile_readlink): New enum value.
11474 (remote_hostio_readlink): New function.
11475 (init_remote_ops): Install it.
11476 (_initialize_remote): Handle vFile:readlink packet type.
11481 * configure.ac [AC_CHECK_FUNCS]: Check for pread and pwrite.
11482 * config.in, configure: Regenerate.
11484 * target.h (struct target_ops): Add to_fileio_open, to_fileio_pwrite,
11485 to_fileio_pread, to_fileio_close, to_fileio_unlink.
11486 (target_fileio_open): Add prototype.
11487 (target_fileio_pwrite): Likewise.
11488 (target_fileio_pread): Likewise.
11489 (target_fileio_close): Likewise.
11490 (target_fileio_unlink): Likewise.
11491 (target_fileio_read_alloc): Likewise.
11492 (target_fileio_read_stralloc): Likewise.
11494 * target.c: Include "gdb/fileio.h".
11495 (target_read_stralloc): Accept trailing, but not embedded NUL bytes.
11496 (default_fileio_target): New function.
11497 (target_fileio_open): Likewise.
11498 (target_fileio_pwrite): Likewise.
11499 (target_fileio_pread): Likewise.
11500 (target_fileio_close): Likewise.
11501 (target_fileio_unlink): Likewise.
11502 (target_fileio_close_cleanup): Likewise.
11503 (target_fileio_read_alloc_1): Likewise.
11504 (target_fileio_read_alloc): Likewise.
11505 (target_fileio_read_stralloc): Likewise.
11507 * inf-child.c: Include "gdb/fileio.h", <sys/types.h>, <sys/stat.h>,
11508 <fcntl.h>, and <unistd.h>.
11509 (inf_child_fileio_open_flags_to_host): New function.
11510 (inf_child_errno_to_fileio_error): Likewise.
11511 (inf_child_fileio_open): Likewise.
11512 (inf_child_fileio_pwrite): Likewise.
11513 (inf_child_fileio_pread): Likewise.
11514 (inf_child_fileio_close): Likewise.
11515 (inf_child_fileio_unlink): Likewise.
11516 (inf_child_target): Install to_fileio routines.
11518 * remote.c (init_remote_ops): Install to_fileio routines.
11523 * remote.c (remote_multi_process_p): Only check for multi-process
11524 protocol feature, do not check for extended protocol.
11525 (remote_supports_multi_process): Check for extended protocol here.
11526 (set_general_process): Likewise.
11527 (extended_remote_kill): Likewise.
11528 (remote_pid_to_str): Likewise.
11529 (remote_query_supported): Always query multiprocess mode.
11534 * inferior.h (struct inferior): Add fake_pid_p.
11535 * inferior.c (exit_inferior_1): Clear fake_pid_p.
11536 * remote.c (remote_start_remote): Set fake_pid_p if we have to use
11537 magic_null_ptid since the remote side doesn't provide a real PID.
11541 * NEWS: Combine the two Python sections.
11545 * target.h (target_close): Update comment on the target's unpush state.
11549 * linux-nat.c (linux_nat_close): Call linux_nat_is_async_p and
11550 linux_nat_async directly instead of going through the target
11552 * target.c (unpush_target): Close target after unpushing it, not
11557 * mdebugread.c (sort_blocks): Replace integer constants with ones
11558 derived from FIRST_LOCAL_BLOCK.
11564 * symfile.c (find_separate_debug_file): New function.
11565 (terminate_after_last_dir_separator): Likewise.
11566 (find_separate_debug_file_by_debuglink): Also try realpath.
11567 * configure.ac (AC_CHECK_FUNCS): Add lstat.
11568 * configure: Regenerate.
11569 * config.in: Regenerate.
11573 * Makefile.in (TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE): Delete.
11574 (main.o): Remove rule.
11575 * configure.ac (BINDIR): Define with AC_DEFINE_DIR.
11576 (--with-sysroot): Rewrite.
11577 * configure: Regenerate.
11578 * config.in: Regenerate.
11582 * parse.c (initialize_expout): New function.
11583 (reallocate_expout): Likewise.
11584 (parse_exp_in_context): Use `initialize_expout' and
11585 `reallocate_expout' when appropriate.
11589 * record.c (struct record_breakpoint, record_breakpoint_p)
11590 (record_breakpoints): New.
11591 (record_insert_breakpoint, record_remove_breakpoint): Manage
11592 record breakpoints list. Only remove breakpoints from the
11593 inferior if they had been inserted there in the first place.
11597 * linespec.c (decode_line_internal): Don't call symtabs_from_filename
11598 if we know we don't have a file name to look for.
11602 * dwarf2-frame.c (dwarf2_frame_cfa): Throw NOT_AVAILABLE_ERROR, if
11603 the frame's stop reason is UNWIND_UNAVAILABLE.
11607 Fix compilation error.
11608 * m2-exp.y (yyerror): Use ANSI C prototype.
11612 * f-exp.y (parse_number): Convert prototype from K&R to ANSI C.
11613 (growbuf_by_size): Likewise.
11614 (yyerror): Likewise.
11615 * m2-exp.y (make_qualname): Remove function (was #if 0'ed).
11616 (modblock): Remove variable (was #if 0'ed).
11617 (parse_number): Convert prototype from K&R to ANSI C.
11618 (yyerror): Likewise.
11619 * objc-exp.y (parse_number): Likewise.
11620 (yyerror): Likewise.
11621 (yylex): Remove #if 0'ed code.
11622 * p-exp.y (uptok): Convert prototype from K&R to ANSI C.
11623 (yyerror): Likewise.
11628 * symtab.h (compare_filenames_for_search): Declare.
11629 * symtab.c (compare_filenames_for_search): New function.
11630 (iterate_over_some_symtabs): Use it.
11631 * symfile.h (struct quick_symbol_functions)
11632 <map_symtabs_matching_filename>: Change spec.
11633 * psymtab.c (partial_map_symtabs_matching_filename): Use
11634 compare_filenames_for_search. Update for new spec.
11635 * dwarf2read.c (dw2_map_symtabs_matching_filename): Use
11636 compare_filenames_for_search. Update for new spec.
11637 * breakpoint.c (clear_command): Use compare_filenames_for_search.
11642 * gdbtypes.h (TYPE_FLAG_ENUM): New macro.
11643 (struct main_type) <flag_flag_enum>: New field.
11644 * dwarf2read.c (process_enumeration_scope): Detect "flag" enums.
11645 * NEWS: Add entries.
11646 * c-valprint.c (c_val_print) <TYPE_CODE_ENUM>: Handle "flag"
11648 * python/lib/gdb/printing.py (_EnumInstance): New class.
11649 (FlagEnumerationPrinter): Likewise.
11653 * breakpoint.c (create_sals_from_address_default): New function.
11654 (create_breakpoints_sal_default): Likewise.
11655 (decode_linespec_default): Likewise.
11656 (is_marker_spec): Removed.
11657 (strace_marker_p): New function.
11658 (init_breakpoint_sal): Using `strace_marker_p' instead of
11660 (create_breakpoint): Call method `create_sals_from_address' from
11661 breakpoint_ops, replacing code that created SALs conditionally
11662 on the type of the breakpoint. Call method `create_breakpoints_sal',
11663 replacing code that created breakpoints conditionally on the type
11665 (base_breakpoint_create_sals_from_address): New function.
11666 (base_breakpoint_create_breakpoints_sal): Likewise.
11667 (base_breakpoint_decode_linespec): Likewise.
11668 (base_breakpoint_ops): Add methods
11669 `base_breakpoint_create_sals_from_address',
11670 `base_breakpoint_create_breakpoints_sal' and
11671 `base_breakpoint_decode_linespec'.
11672 (bkpt_create_sals_from_address): New function.
11673 (bkpt_create_breakpoints_sal): Likewise.
11674 (bkpt_decode_linespec): Likewise.
11675 (tracepoint_create_sals_from_address): Likewise.
11676 (tracepoint_create_breakpoints_sal): Likewise.
11677 (tracepoint_decode_linespec): Likewise.
11678 (strace_marker_create_sals_from_address): Likewise.
11679 (strace_marker_create_breakpoints_sal): Likewise.
11680 (strace_marker_decode_linespec): Likewise.
11681 (strace_marker_breakpoint_ops): New variable.
11682 (addr_string_to_sals): Remove `marker_spec'. Call method
11683 `decode_linespec' from breakpoint_ops, replacing code that decoded
11684 an address string into a SAL. Use `strace_marker_p' instead of
11686 (strace_command): Decide whether we are dealing with a static
11687 tracepoint with marker or not. Use the appropriate breakpoint_ops.
11688 (initialize_breakpoint_ops): Initialize new fields of breakpoint_ops.
11689 * breakpoint.h (linespec_result, linespec_sals): New forward
11691 (breakpoint_ops) <create_sals_from_address>,
11692 <create_breakpoints_sal>, <decode_linespec>: New methods.
11696 * NEWS: Update text for "maint set python print-stack".
11697 It is deprecated in gdb 7.4 and deleted in 7.5.
11701 * gdb_curses.h (MOUSE_MOVED) [__MINGW32__]: Undefine before
11702 including curses.h.
11706 * configure: Regenerate.
11707 * config.in: Regenerate.
11712 * varobj.c (ANONYMOUS_STRUCT_NAME): Define.
11713 (ANONYMOUS_UNION_NAME): Define.
11714 (is_path_expr_parent): New function.
11715 (get_path_expr_parent): New function.
11716 (is_anonymous_child): New function.
11717 (create_child_with_value): If the child is anonymous and without
11718 a name, assign an object name to it.
11719 (c_describe_child): Use get_path_expr_parent to determine
11720 the parent expression.
11721 If there field represents an anonymous struct or union and
11722 has no name, set an appropriate display name and expression.
11723 (cplus_describe_child): Likewise.
11727 * i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
11728 available when %ebp is found to be zero (outermost).
11732 * common/gdb_assert.h (gdb_static_assert): Rename static_assert to
11733 an internal gdb_static_assert.
11734 * mi/mi-common.c: Rename static_assert to gdb_static_assert.
11739 * breakpoint.c (_initialize_breakpoint): Fix help for "catch
11740 catch" and "catch throw".
11744 * blockframe.c (block_innermost_frame): Start search from selected
11745 frame, if present, or otherwise the current frame.
11747 * c-exp.y (variable): Update innermost_block for
11748 'block COLONCOLON NAME' clause.
11749 * m2-exp.y (variable): Ditto.
11750 * objc-exp.y (variable): Ditto.
11755 * python/python.c (finish_python_initialization): Set sys.argv.
11759 * dwarf2read.c (dwarf_decode_lines): Remove arg "abfd". New arg
11760 "want_line_info". All callers updated.
11761 (dwarf_decode_lines_1): New function.
11762 (handle_DW_AT_stmt_list): Add function comment.
11763 New arg "want_line_info". All callers updated.
11764 (read_file_scope,read_type_unit_scope): Move comment from
11765 handle_DW_AT_stmt_list to here.
11769 Fix regression after libiberty/ update for GCC PR 6057 and others.
11770 * c-exp.y (operator) <OPERATOR DELETE>
11771 (operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
11772 * cp-name-parser.y (fill_comp, make_operator, make_dtor)
11773 (make_builtin_type, make_name): New variable i, add gdb_assert.
11774 (operator) <OPERATOR NEW>: Update ARGS to 3.
11775 (operator) <OPERATOR DELETE>: Add trailing space.
11776 (operator) <OPERATOR NEW '[' ']'>: Update ARGS to 3.
11777 (operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
11778 * cp-support.c (cp_canonicalize_string): Check NULL from
11779 cp_comp_to_string, call warning and return.
11783 Fix duplicate .o files after omitting libbfd.a.
11784 * Makefile.in (ALL_TARGET_OBS): Remove corelow.o.
11785 (SFILES): Add corelow.c.
11786 (COMMON_OBS): Add corelow.o.
11787 (ALLDEPFILES): Remove corelow.c.
11788 * config/alpha/alpha-linux.mh (NATDEPFILES): Remove corelow.o.
11789 * config/alpha/alpha-osf3.mh: Likewise.
11790 * config/alpha/fbsd.mh: Likewise.
11791 * config/arm/nbsdaout.mh: Likewise.
11792 * config/arm/nbsdelf.mh: Likewise.
11793 * config/i386/i386gnu.mh: Likewise.
11794 * config/ia64/hpux.mh: Likewise.
11795 * config/ia64/linux.mh: Likewise.
11796 * config/m32r/linux.mh: Likewise.
11797 * config/m68k/linux.mh: Likewise.
11798 * config/mips/irix5.mh: Likewise.
11799 * config/mips/irix6.mh: Likewise.
11800 * config/pa/hpux.mh: Likewise.
11801 * config/pa/linux.mh: Likewise.
11802 * config/powerpc/aix.mh: Likewise.
11803 * config/sparc/linux.mh: Likewise.
11804 * config/sparc/linux64.mh: Likewise.
11805 * config/sparc/sol2.mh: Likewise.
11806 * config/vax/vax.mh: Likewise.
11807 * configure.tgt (alpha*-*-freebsd* alpha*-*-kfreebsd*-gnu)
11808 (alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu, alpha*-*-openbsd*)
11809 (am33_2.0*-*-linux*, arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-linux*)
11810 (arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-netbsd*)
11811 (hppa*-*-openbsd*, i[34567]86-*-dicos*, i[34567]86-*-freebsd*)
11812 (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-netbsd*)
11813 (i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*, i[34567]86-*-nto*)
11814 (i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*)
11815 (i[34567]86-*-solaris*, i[34567]86-*-linux*, i[34567]86-*-cygwin*)
11816 (i[34567]86-*-mingw32*, m68*-*-netbsd*, m68*-*-knetbsd*-gnu)
11817 (m68*-*-openbsd*, m88*-*-openbsd*, microblaze*-linux-*)
11818 (microblaze*-*-linux*, mips*-*-linux*, mips*-*-netbsd*)
11819 (mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
11820 (powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-linux*)
11821 (powerpc64-*-linux*, s390*-*-*, score-*-*, sh*-*-linux*)
11822 (sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
11823 (sparc*-*-freebsd*, sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*)
11824 (sparc-*-knetbsd*-gnu, sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu)
11825 (sparc-*-openbsd*, sparc64-*-openbsd*, tic6x-*-*linux, vax-*-netbsd*)
11826 (vax-*-knetbsd*-gnu, vax-*-openbsd*, x86_64-*-dicos*, x86_64-*-linux*)
11827 (x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu, x86_64-*-netbsd*)
11828 (x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*, xtensa*-*-linux*): Remove
11829 corelow.o from gdb_target_obs.
11830 * corefile.c (core_target): Update the comment on NULL value.
11831 (core_file_command): Replace error by gdb_assert on CORE_TARGET.
11832 * corelow.c (sniff_core_bfd): Call error instead of warning on zero
11833 MATCHES. Drop YUMMY set on NULL.
11834 (core_close): Do not call exit_inferior_silent on zero PID. Do not
11835 reclaim CORE_DATA if it is already NULL.
11839 * gdbtypes.c (safe_parse_type): Initialize type to keep gcc happy.
11840 * varobj.c (varobj_set_value): Initialize val,value to keep gcc happy.
11844 * breakpoint.c (wrapper.h): Don't include.
11848 * Makefile.in (SFILES): Remove wrapper.c.
11849 (HFILES_NO_SRCDIR): Remove wrapper.h.
11850 (COMMON_OBS): Remove wrapper.o.
11851 * cli/cli-interp.c: Don't inlude wrapper.h.
11852 * corelow.c: Likewise.
11853 (core_open): Replace gdb_target_find_new_threads with
11854 TRY_CATCH around target_find_new_threads.
11855 * eval.c (fetch_subexp_value): Likewise for value_fetch_lazy.
11856 * gdbtypes.c (safe_parse_type): Likewise for parse_and_eval_type.
11857 * varobj.c (varobj_create): Likewise for parse_exp_1 and
11858 evaluate_expression.
11859 (varobj_set_value): Likewise for evaluate_expression and
11861 (install_new_variable): Likewise for value_fetch_lazy.
11862 (adjust_value_for_child_access): Likewise for value_ind.
11863 (c_describe_child): Likewise for value_subscript and
11865 (c_value_of_root): Likewise for evaluate_expression.
11866 * wrapper.c: Remove.
11867 * wrapper.h: Remove.
11871 * dwarf2read.c (read_and_check_comp_unit_head): Renamed from
11872 partial_read_comp_unit_head. Replace "buffer", "buffer_size" and
11873 "abfd" args with "section". All callers updated.
11874 Error checking code moved ...
11875 (error_check_comp_unit_head): ... here. New function.
11876 (read_and_check_type_unit_head): Renamed from read_type_unit_head.
11877 Delete arg "abfd". New arg "type_offset". All callers updated.
11878 (create_debug_types_hash_table): Simplify by using
11879 read_and_check_type_unit_head.
11881 * parser-defs.h (namecopy): Delete.
11882 * parse.c (namecopy, namecopy_size): Move into copy_name.
11886 Partially fix duplicate .o files after omitting libbfd.a.
11887 * config/alpha/alpha-osf3.mh (NATDEPFILES): Remove solib.o.
11888 * config/i386/nbsdaout.mh (NATDEPFILES): Remove solib.o.
11889 * config/i386/obsdaout.mh (NATDEPFILES): Remove solib.o.
11890 * config/m68k/nbsdaout.mh (NATDEPFILES): Remove solib.o.
11891 * config/m68k/obsd.mh (NATDEPFILES): Remove solib.o.
11892 * config/powerpc/aix.mh (NATDEPFILES): Remove xcoffread.o.
11893 * config/vax/nbsdaout.mh (NATDEPFILES): Remove solib.o.
11897 * MAINTAINERS: Update my email address.
11901 * dwarf2read.c (dwarf2_per_objfile): Rename n_type_comp_units to
11902 n_type_units. Rename type_comp_units to all_type_units.
11904 (add_signatured_type_cu_to_table): Renamed from
11905 add_signatured_type_cu_to_list. All callers updated.
11907 * gdbtypes.h (struct cplus_struct_type): Delete member
11908 nfn_fields_total. All uses removed.
11912 * dwarf2read.c: Move FIXME from dwarf2_build_psymtabs_hard
11914 (dwarf2_find_comp_unit): Delete.
11915 (process_psymtab_comp_unit): Make result "void".
11916 Delete args buffer, info_ptr, buffer_size, and replace with
11917 "section". All callers updated.
11918 (dwarf2_build_psymtabs_hard): Simplify.
11923 * ada-lang.c (ada_exception_name_addr): Add `volatile' keyword
11924 before `struct gdb_exception'.
11925 * breakpoint.c (update_global_location_list_nothrow)
11926 (update_breakpoint_locations, enable_breakpoint_disp): Likewise.
11927 * cp-abi.c (value_rtti_type): Likewise.
11928 * cp-support.c (cp_validate_operator): Likewise.
11929 * infrun.c (insert_exception_resume_breakpoint)
11930 (check_exception_resume, keep_going): Likewise.
11931 * mi-interp.c (mi_breakpoint_created)
11932 (mi_breakpoint_modified): Likewise.
11933 * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Likewise.
11934 * solib-ia64-hpux.c (ia64_hpux_at_dld_breakpoint_p)
11935 (ia64_hpux_handle_dld_breakpoint_1): Likewise.
11939 * dwarf2read.c (statement_prologue): Delete, unused.
11941 * dwarf2read.c (dwarf2_per_cu_addr_size): Make result type an int.
11942 * dwarf2loc.h (dwarf2_per_cu_addr_size): Update.
11944 * dwarf2read.c (comp_unit_header): Delete, unused.
11948 * configure.tgt [s390*-*-*] (gdb_target_obs): Add corelow.o.
11949 * config/s390/s390.mh (NATDEPFILES): Remove corelow.o.
11953 * infrun.c (normal_stop): Don't skip calling the normal_stop
11954 observers if the thread was doing a multi-step, but stopped for
11955 some reason other than stepping.
11959 * cli/cli-decode.h: Add comments.
11960 (CMD_LIST_AMBIGUOUS): Moved to command.h
11961 (add_cmd, add_alias_cmd, add_prefix_cmd, add_abbrev_prefix_cmd)
11962 (set_cmd_cfunc, set_cmd_sfunc, set_cmd_completer, cmd_cfunc_eq)
11963 (set_cmd_context, get_cmd_context, lookup_cmd, lookup_cmd_1)
11964 (deprecate_cmd, deprecated_cmd_warning, lookup_cmd_composition)
11965 (add_com, add_com_alias, add_info, add_info_alias)
11966 (complete_on_cmdlist, complete_on_enum, help_list): Remove
11968 * command.h: Add and adjust comments.
11969 (CMD_LIST_AMBIGUOUS): Moved here.
11970 (help_cmd, help_cmd_list): Delete declarations.
11974 * dwarf2read.c (dwarf2_read_abbrevs): Delete arg "abfd".
11975 All callers updated.
11976 (load_full_type_unit): Renamed from read_signatured_type_at_offset.
11977 Replace all arguments with "per_cu". All callers updated.
11979 * dwarf2read.c (dwarf2_per_cu_data): Remove outdated comment.
11981 * dwarf2read.c (init_one_comp_unit): Delete arg "objfile".
11982 New arg "per_cu". All callers updated.
11984 Delete #if 0'd out code.
11985 * language.c (binop_result_type): Delete.
11986 (simple_type, ordered_type, same_type, integral_type): Delete.
11987 (numeric_type, character_type, string_type, boolean_type): Delete.
11988 (float_type, structured_type): Delete.
11989 * language.h: Update.
11993 * python/py-value.c (valpy_binop): Initialize 'res_val'.
11997 * corefile.c (close_exec_file): Delete.
11998 (reopen_exec_file): Remove commented out code that seems related
11999 to close_exec_file, which is being deleted here.
12000 * inferior.h (close_exec_file): Delete.
12001 * fork-child.c (fork_inferior): Remove call to fork_inferior.
12005 * ada-lang.c: #include "cli/cli-utils.h".
12006 (get_selections): Use skip_spaces.
12007 (ada_get_next_arg): Use skip_spaces and skip_to_space.
12008 (catch_ada_exception_command_split): Use skip_spaces.
12009 (ada_decode_assert_location): Likewise.
12013 * linespec.c (decode_line_internal): Check for C++ or Java
12014 compound constructs only if the current language is C, C++
12022 Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
12023 * arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
12025 * infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
12026 fall through into AT_ENTRY_POINT.
12027 (call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len. Adjust
12028 DUMMY_ADDR with it.
12029 * ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
12030 PPC_INSN_SIZE skip to 3 times.
12034 * linespec.c (add_minsym): Preserve function descriptors.
12038 * breakpoint.c (all_locations_are_pending): Consider locations
12039 in program spaces executing during startup pending as well.
12043 Copyright year update in most files of the GDB Project.
12047 * copyright.sh: Delete.
12048 * copyright.py: Rewrite.
12052 * gnulib/extra/update-copyright: New file, imported from gnulib.
12056 * README (Copyright and License Notices): New section.
12061 * python/py-value.c (valpy_dereference, valpy_get_address
12062 valpy_get_dynamic_type, valpy_lazy_string, valpy_do_cast)
12063 (valpy_getitem, valpy_call, valpy_binop, valpy_negative)
12064 (valpy_absolute, valpy_richcompare): Free intermediate values.
12068 * ada-lang.c: Reformat the copyright notice.
12072 * Makefile.in (ALL_TARGET_OBS): Remove solib-target.o.
12073 * configure.tgt (arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-symbianelf*)
12074 (i[34567]86-*-dicos*, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*)
12075 (x86_64-*-dicos*, x86_64-*-mingw*): Remove solib-target.o.
12076 Revert this part of:
12078 Build gdb directly from *.o files not using libgdb.a.
12079 * Makefile.in (COMMON_OBS): Remove solib-target.o.
12083 * gdb/common/gdb_thread_db.h, gdb/dbxread.c, gdb/environ.c,
12084 gdb/gcore.h, gdb/rs6000-tdep.h, gdb/s390-nat.c, gdb/tic6x-tdep.c:
12085 Reformat the copyright header.
12089 Revert this part of:
12091 Remove the gdbtui binary.
12092 * gdb.c (main): Remove args.interpreter_p initialization.
12093 * main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
12094 * main.h (struct captured_main_args): Remove interpreter_p.
12098 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2011.
12102 * top.c (print_gdb_version): Update copyright year.
12106 * inf-ptrace.c (inf_ptrace_xfer_partial): Reindent.
12111 Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
12112 * arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
12114 * infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
12115 fall through into AT_ENTRY_POINT.
12116 (call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len. Adjust
12117 DUMMY_ADDR with it.
12118 * ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
12119 PPC_INSN_SIZE skip to 3 times.
12123 * amd64-linux-nat.c (update_debug_registers_callback): New comment on
12125 * i386-linux-nat.c (update_debug_registers_callback): Likewise.
12129 Build gdb directly from *.o files not using libgdb.a.
12130 * Makefile.in (SUBDIR_TUI_OBS): Remove duplicate tui.o.
12131 (COMMON_OBS): Remove solib-target.o.
12132 (LIBGDB_OBS, libgdb.a): Move it before the gdb$(EXEEXT) rule.
12133 (gdb$(EXEEXT)): Replace libgdb.a with $(LIBGDB_OBS).
12134 (LIBGDB_OBS, libgdb.a): Move it above.
12135 * configure.tgt (alpha*-*-linux*, alpha*-*-freebsd*)
12136 (alpha*-*-kfreebsd*-gnu, alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu)
12137 (alpha*-*-openbsd*, am33_2.0*-*-linux*, arm*-wince-pe)
12138 (arm*-*-mingw32ce*, arm*-*-linux*, arm*-*-netbsd*, arm*-*-knetbsd*-gnu)
12139 (arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-linux*)
12140 (hppa*-*-netbsd*, hppa*-*-openbsd*, i[34567]86-*-darwin*)
12141 (i[34567]86-*-dicos*, i[34567]86-*-freebsd*, i[34567]86-*-kfreebsd*-gnu)
12142 (i[34567]86-*-netbsd*, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*)
12143 (i[34567]86-*-nto*, i[34567]86-*-solaris2.1[0-9]*)
12144 (x86_64-*-solaris2.1[0-9]*, i[34567]86-*-solaris*, i[34567]86-*-linux*)
12145 (i[34567]86-*-gnu*, ia64-*-linux*, m32r*-*-linux*, m68*-*-linux*)
12146 (m68*-*-netbsd*, m68*-*-knetbsd*-gnu, m68*-*-openbsd*)
12147 (microblaze*-linux-*, microblaze*-*-linux*, mips*-sgi-irix5*)
12148 (mips*-sgi-irix6*, mips*-*-linux*, mips*-*-netbsd*)
12149 (mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
12150 (powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-aix*, rs6000-*-*)
12151 (powerpc-*-linux*, powerpc64-*-linux*, powerpc*-*-*, s390*-*-*)
12152 (sh*-*-linux*, sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
12153 (sparc-*-linux*, sparc64-*-linux*, sparc*-*-freebsd*)
12154 (sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*, sparc-*-knetbsd*-gnu)
12155 (sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu, sparc-*-openbsd*)
12156 (sparc64-*-openbsd*, sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*)
12157 (sparc-*-solaris2*, sparcv9-*-solaris2*, sparc64-*-solaris2*)
12158 (vax-*-netbsd*, vax-*-knetbsd*-gnu, x86_64-*-darwin*, x86_64-*-dicos*)
12159 (x86_64-*-linux*, x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu)
12160 (x86_64-*-netbsd*, x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*)
12161 (xtensa*-*-linux*, xtensa*): Remove solib.o from gdb_target_obs.
12165 Remove the gdbtui binary.
12166 * .gitignore (/gdbtui): Remove.
12167 * Makefile.in (TUI): Remove.
12168 (SUBDIR_TUI_OBS): Remove tui-main.o.
12169 (SUBDIR_TUI_SRCS): Remove tui/tui-main.c.
12170 (all-tui, install-tui, uninstall-tui, $(TUI)$(EXEEXT), clean-tui)
12171 (tui-main.o): Remove.
12172 (all_object_files): Remove tui-main.o.
12173 * NEWS: New note for the gdbtui removal.
12174 * configure: Rebuilt.
12175 * configure.ac: No longer add all-tui, clean-tui, install-tui and
12176 uninstall-tui to CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL and
12177 CONFIG_UNINSTALL respectively.
12178 * gdb.c (main): Remove args.interpreter_p initialization.
12179 * main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
12180 * main.h (struct captured_main_args): Remove interpreter_p.
12181 * tui/tui-main.c: Remove.
12185 * dwarf2read.c (dwarf2_compute_name): Simplify objfile references.
12186 (dwarf2_physname, read_import_statement): Ditto.
12187 (read_call_site_scope, dwarf2_record_block_ranges): Ditto.
12188 (process_structure_scope read_subroutine_type): Ditto.
12189 (read_typedef, load_partial_dies, read_partial_die): Ditto.
12190 (find_partial_die, dwarf_decode_lines, lookup_die_type): Ditto.
12191 (dwarf2_fetch_die_location_block): Ditto.
12192 (dwarf_decode_macros, dwarf2_symbol_mark_computed): Ditto.
12194 * dwarf2read.c (read_signatured_type): Delete `objfile' arg.
12195 All callers updated.
12196 (load_full_comp_unit, queue_comp_unit, process_queue): Ditto.
12197 (dw2_do_instantiate_symtab, dw2_instantiate_symtab): Ditto.
12198 (process_psymtab_comp_unit, load_partial_comp_unit): Ditto.
12200 * dwarf2read.c (load_cu): Move assert to more useful location.
12202 * dwarf2read.c (free_heap_comp_unit): Renamed from free_one_comp_unit.
12203 All callers updated.
12205 * dwarf2read.c (dwarf2_per_objfile): Add comment.
12206 (dwarf2_elf_names): Minor reformat.
12207 (dwarf2_per_cu_data): Tweak comment.
12208 (dwarf2_read_section): Fix comment.
12209 (create_all_comp_units): Fix comment.
12210 (load_full_comp_unit): Fix comment.
12211 (process_full_comp_unit): Fix comment.
12212 (read_signatured_type): Fix comment.
12214 For older changes see ChangeLog-2011.
12220 version-control: never