3 * ui-file.c (ui_file): Add to_fseek.
4 (ui_file_new): Call set_ui_file_fseek.
5 (null_file_fseek, ui_file_fseek, set_ui_file_fseek,
6 stdio_file_fseek): New functions.
7 (stdio_file_new): Call set_ui_file_fseek.
8 * ui-file.h (ui_file_fseek_ftype): New typedef.
9 (set_ui_file_fseek, ui_file_fseek): New externs.
13 * ui-file.c (set_ui_file_flush): Change flush to flush_ptr.
14 (set_ui_file_isatty): Change isatty to isatty_ptr.
15 (set_ui_file_rewind): Change rewind to rewind_ptr.
16 (set_ui_file_put): Change put to put_ptr.
17 (set_ui_file_write): Change write to write_ptr.
18 (set_ui_file_write_async_safe): Change write_async_safe to
20 (set_ui_file_read): Change read to read_ptr.
21 (set_ui_file_fputs): Change fputs to fputs_ptr.
22 (set_ui_file_data): Change delete to delete_ptr.
26 * solib-darwin.c (darwin_current_sos): Fix indentation.
27 (darwin_read_exec_load_addr): New function.
28 (darwin_solib_create_inferior_hook): Rebase executable.
29 * objfiles.c (objfile_rebase1, objfile_rebase): New functions.
30 * objfiles.h (objfile_rebase1, objfile_rebase): Add prototypes.
34 * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add errno.
35 * gnulib/import/errno.in.h: Import.
36 * gnulib/import/m4/errno_h.m4: Import.
37 * gnulib/aclocal.m4: Regenerate.
38 * gnulib/configure: Regenerate.
39 * gnulib/import/Makefile.am: Update.
40 * gnulib/import/Makefile.in: Update.
41 * gnulib/import/m4/gnulib-cache.m4: Update.
42 * gnulib/import/m4/gnulib-comp.m4: Update.
46 * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
47 8d5bd1402003bd0153984b138735adf537d960b0.
48 * gnulib/aclocal.m4, configure, config.in: Regenerate.
49 * gnulib/import/m4/extern-inline.m4: Import.
50 * gnulib/import/wctype-h.c: Import.
51 * gnulib/import/Makefile.am: Update.
52 * gnulib/import/Makefile.in: Update.
53 * gnulib/import/alloca.in.h: Update.
54 * gnulib/import/extra/snippet/warn-on-use.h: Update.
55 * gnulib/import/localcharset.c: Update.
56 * gnulib/import/m4/fcntl-o.m4: Update.
57 * gnulib/import/m4/gnulib-cache.m4: Update.
58 * gnulib/import/m4/gnulib-comp.m4: Update.
59 * gnulib/import/m4/wctype_h.m4: Update.
60 * gnulib/import/stdbool.in.h: Update.
61 * gnulib/import/verify.h: Update.
62 * gnulib/import/wctype.in.h: Update.
66 * gnulib/update-gnulib.sh: Add call to autoheader.
70 * top.c (xgdb_verbose): Remove.
75 * skip.c (skip_function_command, skip_file_command, skip_info): Remove
76 unused forward declarations.
77 (skip_file_command): Make variables symtab and filename targets const.
78 Use proper 0 vs. NULL constant everywhere.
79 (skip_function_command): Use proper 0 vs. NULL constant everywhere.
80 Include empty line after declarations. Use GNU spacing in a comment.
81 Do not use strlen for end of string check.
82 (skip_info): Use proper 0 vs. NULL constant everywhere. Add column 5
84 (skip_enable_command, skip_disable_command, skip_delete_command)
85 (add_skiplist_entry): Use proper 0 vs. NULL constant everywhere.
86 (function_pc_is_marked_for_skip): Make variable filename target const.
87 Use proper 0 vs. NULL constant everywhere. Fix GNU non-compliant
89 (skip_re_set): Add empty line after function comment. Use proper 0 vs.
90 NULL constant everywhere. Include empty line after declarations. Make
91 variable symtab target const. Do not use strlen for end of string
97 * breakpoint.c (clear_command): Remove variable sal_name_len and its
98 initialization, remove it from the compare_filenames_for_search call.
99 * dwarf2read.c (dw2_map_symtabs_matching_filename): Remove variable
100 name_len and its initialization, remove it from the
101 compare_filenames_for_search calls.
102 * psymtab.c (partial_map_symtabs_matching_filename): Likewise.
103 * symtab.c (compare_filenames_for_search): Remove the search_len
104 parameter, update the function comment, new variable search_len
105 initialized from SEARCH_NAME.
106 (iterate_over_some_symtabs): Remove variable name_len and its
107 initialization, remove it from the compare_filenames_for_search calls.
108 * symtab.h (compare_filenames_for_search): Remove the search_len
113 * Makefile.in (SFILES): Move ravenscar-thread.c from here...
114 (ALLDEPFILES): ... to there.
118 * configure.tgt (sparc-*-*): Add missing '\' in gdb_target_ops.
122 * ppc-ravenscar-thread.h, ppc-ravenscar-thread.c: New files.
123 * Makefile.in (ALL_TARGET_OBS): Add ppc-ravenscar-thread.o.
124 (HFILES_NO_SRCDIR): Add ppc-ravenscar-thread.h.
125 (ALLDEPFILES): Add ppc-ravenscar-thread.c.
126 * configure.tgt: Add ravenscar-thread.o and ppc-ravenscar-thread.o
127 to gdb_target_obs for every target that uses rs6000-tdep.o.
128 * rs6000-tdep.c: #include "ppc-ravenscar-thread.h".
129 (rs6000_gdbarch_init): Call register_e500_ravenscar_ops
130 or register_ppc_ravenscar_ops.
134 * sparc-ravenscar-thread.h: SPARC_RAVENSCAR_THREAD_H renames
135 RAVENSCAR_SPARC_THREAD_H.
136 * sparc-ravenscar-thread.c: Rename all global entities
137 whose name is uses "ravenscar_sparc" as the prefix to use
138 "sparc_ravenscar" instead.
142 * sparc-ravenscar-thread.h: Renames ravenscar-sparc-thread.h.
143 * sparc-ravenscar-thread.c: Renames ravenscar-sparc-thread.c.
144 Adjust sparc-ravenscar-thread.h #include.
145 * sparc-tdep.c: Adjust sparc-ravenscar-thread.h #include
147 * Makefile.in: Replace ravenscar-sparc-thread with
148 sparc-ravenscar-thread throughout.
149 * configure.tgt: Likewise.
153 * gdbarch.sh: Add "struct ravenscar_arch_ops" forward
155 (ravenscar_ops): New gdbarch variable.
156 * gdbarch.h, gdbarch.c: Regenerate.
157 * ravenscar-thread.h (ravenscar_register_arch_ops): Delete.
158 * ravenscar-thread.c (current_arch_ops): Delete.
159 (ravenscar_fetch_registers): Get the ravenscar_arch_ops
161 (ravenscar_store_registers, ravenscar_prepare_to_store): Likewise.
162 (ravenscar_inferior_created): Add gdbarch_ravenscar_ops check.
163 (ravenscar_register_arch_ops): Delete.
164 * ravenscar-sparc-thread.h: New file.
165 * ravenscar-sparc-thread.c: #include "ravenscar-sparc-thread.h".
166 (ravenscar_sparc_ops): Define value statically.
167 (_initialize_ravenscar_sparc): Delete.
168 (register_sparc_ravenscar_ops): New function.
169 * sparc-tdep.c: #include "ravenscar-sparc-thread.h".
170 (sparc32_gdbarch_init): Add call to register_sparc_ravenscar_ops.
171 * Makefile.in (ALL_TARGET_OBS): Add ravenscar-thread.o and
172 ravenscar-sparc-thread.o.
173 (SFILES): Add ravenscar-thread.c.
174 (HFILES_NO_SRCDIR): Add ravenscar-sparc-thread.h.
175 (ALLDEPFILES): ravenscar-sparc-thread.c.
176 * configure.tgt: Add ravenscar-thread.o and ravenscar-sparc-thread.o
178 for all the targets that use sparc-tdep.o.
182 * ravenscar-thread.c (ravenscar_is_open): Delete.
183 (ravenscar_initialize): Move most of the code from here...
184 (ravenscar_inferior_created): ... to there. Invert logic.
185 (ravenscar_close): Delete.
186 (init_ravenscar_thread_ops): Remove setting of
187 ravenscar_ops.to_close.
191 * objfiles.c (init_entry_point_info): Move function from here...
192 * symfile.c (init_entry_point_info): ... to there. Make static.
193 * objfiles.h (objfiles.h): Delete declaration.
197 * symfile.c (syms_from_objfile_1): Renames syms_from_objfile.
198 Remove call to init_entry_point_info. Add OBJFILE's
199 section_offsets and num_sections initialization. Add note
200 about entry info in the function documentation.
201 (syms_from_objfile): New function.
202 * coffread.c (coff_symfile_init): Remove call to
203 init_entry_point_info.
204 * machoread.c (macho_symfile_init): Likewise.
205 * xcoffread.c(xcoff_symfile_init): Likewise.
209 * remote-notif.c (_initialize_notif): Add new commands
210 'set debug notification' and 'show debug notification'.
211 * NEWS: Mention these new commands.
215 * Makefile.in (REMOTE_OBS): Add "remote-notif.o".
216 (SFILES): Add "remote-notif.c".
217 (HFILES_NO_SRCDIR): Add "remote-notif.h" and "common/queue.h".
218 * remote-notif.c: New. Factored out from remote.c.
219 * remote-notif.h: New.
220 * remote.c: Include "remote-notif.h".
221 (stop_reply_xmalloc, do_stop_reply_xfree):
222 (remote_parse_stop_reply, remote_get_pending_stop_replies):
223 (remote_async_get_pending_events_handler): Remove declarations.
224 (remote_parse_stop_reply): Declare.
225 (pending_stop_reply): Remove.
226 (remote_async_get_pending_events_token): Move to
228 (remote_close): Replace 'delete_async_event_handler' with
229 remote_notif_unregister_async_event_handler.
230 Don't call discard_pending_stop_replies.
231 (remote_start_remote): Replace code with remote_notif_parse
232 and remote_notif_get_pending_replies.
233 (remote_open_1): Replace 'create_async_event_handler' with
234 remote_notif_register_async_event_handler.
235 (extended_remote_attach_1): Call remote_notif_parse and
236 notif_stop_reply_push.
237 (struct stop_reply) <next>: Remove.
240 (stop_reply_queue): Change its type.
241 (stop_reply_xmalloc, do_stop_reply_xfree): Remove.
242 (remote_notif_remove_all): New.
243 (discard_pending_stop_replies): Update.
244 (remote_notif_stop_ack, stop_reply_dtr): New.
245 (remote_notif_stop_alloc_event): New.
246 (notif_client_stop): New variable.
247 (stop_reply_match_ptid, stop_reply_match_ptid_and_ws: New.
248 (queued_stop_reply, peek_stop_reply): Adjust.
249 (remote_get_pending_stop_replies): Rename to
250 remote_notif_get_pending_events.
251 (handle_notification): Move to remote-notif.c.
252 (remote_async_get_pending_events_handler): Likewise.
253 (remote_wait_as): Adjust to call remote_notif_parse.
254 Call 'getpkt_or_notif_sane' instead of 'getpkt_sane'.
255 Return minus_one_ptid early if gets a notification.
256 (remote_wait): Call QUEUE_is_empty (notif_reply_p).
257 (_initialize_remote): Call QUEUE_alloc. Update caller.
258 (remote_resume): Call 'remote_notif_process' in all-stop mode.
259 * remote.h: Include "remote-notif.h".
260 (remote_notif_get_pending_replies): Declare.
264 * remote.c (discard_pending_stop_replies): Update declaration.
265 (remote_detach_1, extended_remote_mourn_1): Likewise.
266 (discard_pending_stop_replies): Change parameter from PID to
268 (remote_close): Update caller.
269 (_initialize_remote): Attach discard_pending_stop_replies to
270 inferior_exit observer.
274 * remote.c (getpkt_or_notif_sane): Add one more argument in
276 (getpkt_or_notif_sane_1): Add one more argument.
277 (getpkt_sane): Update caller.
278 (getpkt_or_notif_sane): Likewise. Update call
279 togetpkt_or_notif_sane_1.
280 (remote_wait_ns): Update caller.
285 * common/queue.h: New.
289 * breakpoint.c (print_one_breakpoint_location): Display the
290 state of 'installed' of each non-pending location of a tracepoint
292 (download_tracepoint_locations): Notify 'breakpoint-modified'
293 observer if any tracepoint location is downloaded.
294 * tracepoint.c (start_tracing): Likewise.
295 (merge_uploaded_tracepoints): Record all modified
296 tracepoints and notify 'breakpoint-modified' observer for them.
298 * NEWS: Mention the change for CLI and MI.
302 * breakpoint.c (download_tracepoint_locations): Iterate over
303 ALL_TRACEPOINTS first and then iterate over locations of
309 * solib-target.c (solib_target_current_sos): Remove 'const'
310 qualifier from type of library_document local variable to be
311 able to free it and avoid a memory leak.
312 Use cleanup chain to avoid leak even if exceptino is generated.
317 * symtab.c (lookup_symbol_aux): If constructor is found, consider
318 returning the type instead.
319 * c-exp.y (classify_name): Check STRUCT_DOMAIN if a constructor is
324 Partial fix for PR c++/14160:
325 * c-typeprint.c (c_type_print_base): Use TYPE_FN_FIELD_CONSTRUCTOR.
326 * dwarf2read.c (dwarf2_is_constructor): New function.
327 (dwarf2_add_member_fn): Use it.
328 * gnu-v3-abi.c (gnuv3_pass_by_reference): Use
329 TYPE_FN_FIELD_CONSTRUCTOR.
330 * jv-typeprint.c (java_type_print_base): Use
331 TYPE_FN_FIELD_CONSTRUCTOR.
332 * gdbtypes.h (struct fn_field) <is_constructor>: New field.
334 (TYPE_FN_FIELD_CONSTRUCTOR): New macro.
338 * c-exp.y (block, variable, name_not_typename, lex_one_token,
339 classify_name): Update.
340 * c-valprint.c (c_val_print): Update.
341 * f-exp.y (yylex): Update.
342 * go-exp.y (package_name_p, classify_packaged_name)
343 (classify_name): Update.
344 * jv-exp.y (push_variable): Update.
345 * m2-exp.y (variable): Update.
346 * mi/mi-cmd-stack.c (list_args_or_locals): Update.
347 * p-exp.y (block, variable, yylex): Update.
348 * p-valprint.c (pascal_val_print): Update.
349 * parse.c (write_dollar_variable): Update.
350 * printcmd.c (address_info): Update.
351 * python/py-symbol.c (gdbpy_lookup_symbol): Update.
352 * symtab.c (lookup_symbol_aux, lookup_symbol_in_language)
353 (lookup_symbol): Change type of 'is_a_field_of_this'.
354 (check_field): Add 'is_a_field_of_this' argument.
355 * symtab.h (struct field_of_this_result): New.
356 (lookup_symbol, lookup_symbol_in_language): Update.
360 * symtab.c (check_field): Now static. Move from...
361 * valops.c (check_field): ... here. Remove.
362 * value.h (check_field): Don't declare.
366 * NEWS: Mention "info proc" and core files.
367 * corelow.c (core_info_proc): New function.
368 (init_core_ops): Set to_info_proc.
369 * gdbarch.c, gdbarch.h: Rebuild.
370 * gdbarch.sh (core_info_proc): New method.
371 * infcmd.c (info_proc_cmd_1): Invoke target_info_proc first.
372 * linux-tdep.c (linux_core_info_proc_mappings)
373 (linux_core_info_proc): New functions.
374 (linux_find_memory_region_ftype): New typedef.
375 (linux_find_memory_regions_full): New function, from
376 linux_find_memory_regions.
377 (struct linux_find_memory_regions_data): New.
378 (linux_find_memory_regions_thunk): New function.
379 (linux_find_memory_regions): Rewrite.
380 (struct linux_make_mappings_data): New.
381 (linux_make_mappings_callback)
382 (linux_make_mappings_corefile_notes): New functions.
383 (linux_make_corefile_notes): Call linux_make_mappings_corefile_notes.
384 (linux_init_abi): Call set_gdbarch_core_info_proc.
385 * target.c (target_info_proc): Return 'int'.
386 * target.h (target_info_proc): Update.
390 * windows-nat.c (windows_xfer_shared_libraries): Avoid
391 memory leak when OFFSET >= LEN_AVAIL.
395 * solib-svr4.c (enable_break): Use SECT_OFF_TEXT.
399 * acinclude.m4 (CY_AC_C_WORKS): Remove.
403 * coff-pe-read.c (pe_text_section_offset): Increase size of sname
404 local variable and zero terminate it to avoid possible problems
409 * coff-pe-read.c: Include coff/internal.h.
410 (read_pe_exported_syms): Use SCNNMLEN instead of hardcoded 8.
411 Null terminate buffer explicitly instead of memset the whole
416 * coff-pe-read.c (IMAGE_SCN_CNT_TEXT, IMAGE_SCN_CNT_INITIALIZED_DATA)
417 (IMAGE_SCN_CNT_UNINITIALIZED_DATA): Remove useless checks
418 for already defined macros.
422 * coff-pe-read.h (pe_text_section_offset): Declare new function.
423 * coff-pe-read.c (debug_coff_pe_read): New static variable.
424 (struct read_pe_section_data): Add section_name field.
425 (IMAGE_SCN_CNT_CODE): New macro, if not already defined.
426 (IMAGE_SCN_CNT_INITIALIZED_DATA): Ditto.
427 (IMAGE_SCN_CNT_UNINITIALIZED_DATA): Ditto.
428 (get_pe_section_index): New function.
429 (struct pe_sections_info): New type.
430 (get_section_vmas): Use new struct pe_sections_info.
431 (add_pe_exported_sym): Handle unnamed exported function.
432 (add_pe_forwarded_sym): New function.
433 (read_pe_truncate_name): Truncate at last dot.
434 (pe_as16): New function.
435 (read_pe_exported_syms): Use ordinal of function to
436 retrieve correct RVA address of function and handle
438 (pe_text_section_offset): New function.
439 (show_debug_coff_pe_read): New function.
440 (_initialize_coff_pe_read): New function adding
441 'set/show debug coff_pe_read' commands.
443 * windows-tdep.c (windows_xfer_shared_library): Use
444 pe_text_section_offset function instead of possibly wrong
445 0x1000 constant for .text sextion offset.
449 * gdbarch.sh (do_read): Set IFS to blank.
453 * NEWS: Mention the -catch-load/-catch-unload MI commands.
457 * Makefile.in (SUBDIR_MI_OBS): Add mi-cmd-catch.o.
458 (SUBDIR_MI_SRCS): Add mi/mi-cmd-catch.c.
459 * breakpoint.c (add_solib_catchpoint): New function that
460 can be used by both CLI and MI, factored out from
461 catch_load_or_unload.
462 (catch_load_or_unload): Strip it down and make it use the
463 new add_solib_catchpoint.
464 * breakpoint.h (add_solib_catchpoint): Declare it.
465 * mi/mi-cmd-break.h: New file.
466 * mi/mi-cmd-break.c: Include mi-cmd-break.h.
467 (setup_breakpoint_reporting): New function used for both
468 catchpoints and breakpoints.
469 (mi_cmd_break_insert): Use setup_breakpoint_reporting.
470 * mi/mi-cmd-catch.c: New file.
471 * mi/mi-cmds.c (mi_cmds): Add the handlers for -catch-load
473 * mi/mi-cmds.h: Declare the handlers for -catch-load and
478 * dbxread.c (read_dbx_symtab): Update.
479 (end_psymtab, dbx_psymtab_to_symtab_1, dbx_psymtab_to_symtab)
480 (read_ofile_symtab): Add 'objfile' argument.
481 * dwarf2read.c (process_psymtab_comp_unit_reader)
482 (build_type_psymtabs_reader): Update.
483 (dwarf2_psymtab_to_symtab): Add 'objfile' argument.
484 * mdebugread.c (mdebug_psymtab_to_symtab): Add 'objfile'
486 (parse_procedure, parse_partial_symbols): Update.
487 (psymtab_to_symtab_1): Add 'objfile' argument.
488 * psympriv.h (struct partial_symtab) <objfile>: Remove.
489 <read_symtab>: Add 'objfile' argument.
490 (sort_pst_symbols, discard_psymtab): Update.
491 * psymtab.c (partial_map_expand_apply): Update.
492 (find_pc_sect_psymtab_closer): Add 'objfile' argument.
493 (find_pc_sect_psymtab, find_pc_sect_symtab_from_partial): Update.
494 (find_pc_sect_psymbol): Add 'objfile' argument.
495 (lookup_symbol_aux_psymtabs): Update.
496 (match_partial_symbol, lookup_partial_symbol, psymtab_to_symtab):
497 Add 'objfile' argument.
498 (find_last_source_symtab_from_partial, dump_psymtab)
499 (dump_psymtabs_for_objfile, read_symtabs_for_function)
500 (expand_partial_symbol_tables, read_psymtabs_with_filename)
501 (find_symbol_file_from_partial, map_matching_symbols_psymtab)
502 (expand_symtabs_matching_via_partial): Update.
503 (sort_pst_symbols): Add 'objfile' argument.
504 (allocate_psymtab): Update.
505 (discard_psymtab): Add 'objfile' argument.
506 (maintenance_info_psymtabs, maintenance_check_symtabs): Update.
507 * stabsread.h (end_psymtab): Update.
508 * xcoffread.c (this_symtab_objfile): New global.
509 (process_linenos, enter_line_range, xcoff_next_symbol_text):
511 (read_xcoff_symtab): Add 'objfile' argument.
512 (read_symbol, read_symbol_lineno): Update.
513 (xcoff_psymtab_to_symtab_1, xcoff_psymtab_to_symtab)
514 (xcoff_end_psymtab): Add 'objfile' argument.
515 (scan_xcoff_symtab): Update.
519 Add support for Python 3.
520 * NEWS: Mention Python 3 support.
521 * varobj.c (value_get_print_value): Use
522 python_string_to_target_string.
523 * python/py-block.c: Use PyVarObject_HEAD_INIT in initialization
525 * python/py-breakpoint.c: Ditto.
526 * python/py-cmd.c: Ditto.
527 * python/py-event.c: Ditto.
528 * python/py-event.h: Ditto.
529 * python/py-evtregistry.c: Ditto.
530 * python/py-finishbreakpoint.c: Ditto.
531 * python/py-frame.c: Ditto.
532 * python/py-function.c: Ditto.
533 * python/py-infthread.c: Ditto.
534 * python/py-lazy-string.c: Ditto.
535 * python/py-progspace.c: Ditto.
536 * /python/py-symbol.c: Ditto.
537 * python/py-evts.c: (gdbpy_initialize_py_events): Add module
538 initialization for Python 3.
539 * python/py-inferior.c: Use PyVarObject_HEAD_INIT in initialization
541 (infpy_read_memory): Return memoryview object if Python 3.
542 (infpy_write_memory): Use "s*" operand parsing code for Python 3.
543 (infpy_search_memory): Ditto.
544 (get_buffer): New function for Python 3.
545 * python/py-objfile.c: Use PyVarObject_HEAD_INIT in initialization
547 (objfpy_dealloc): Use Py_TYPE to call tp_free.
548 * python/py-param.c: Use PyVarObject_HEAD_INIT in initialization
550 (get_attr): Use PyUnicode_CompareWithASCIIString if Python 3.
552 * python/py-prettyprint.c (print_string_repr): use PyBytes methods
553 instead of PyString methods if Python 3.
554 (print_children): Skip push_dummy_python_frame call if Python 3.
555 * python/py-symtab.c: Use PyVarObject_HEAD_INIT in initialization
557 (salpy_dealloc): Use Py_TYPE to call tp_free.
558 * python/py-type.c: Use PyVarObject_HEAD_INIT in initialization
560 (field_dealloc): Use Py_TYPE to call tp_free.
561 (typy_dealloc): Ditto.
562 (type_object_as_number): Adjust struct initializations for
563 differences in layout for Python 2 vs. Python 3.
564 * python/py-utils.c (python_string_to_unicode): Omit non-Unicode
565 string case for Python 3.
566 (unicode_to_encoded_python_string): Shorten code (no functional
568 (python_string_to_target_python_string): Comment that in Python 3
569 returned value is a Python "bytes" type.
570 (gdbpy_is_string): Omit non-Unicode string check in Python 3.
571 (gdb_py_object_from_longest): Omit non-long integer case in Python
573 (gdb_py_object_from_ulongest): Ditto.
574 * python/py-value.c: Use PyVarObject_HEAD_INIT in initialization
576 (valpy_dealloc): Use Py_TYPE to call tp_free.
577 (valpy_int): Omit function if Python 3.
578 (convert_value_from_python): Use "%S" format (Python object as a
580 (value_object_as_number): Adjust struct initializations for
581 differences in layout for Python 2 vs. Python 3.
582 * python/python-config.py: Adjust syntax for Python 3
584 Include "sys.abiflags" string as part of python library name, if
585 that attribute exists (Python 3).
586 * python/python-internal.h (IS_PY3): Define if Python 3.
587 (Py_TPFLAGS_HAVE_ITER, Py_TPFLAGS_CHECKTYPES): Define with
588 placeholder value if Python 3.
589 (PyInt_Check, PyInt_FromLong, PyInt_AsLong, PyString_FromString,
590 PyString_Decode, PyString_FromFormat, PyString_Check): Define as
591 analogous Python 3 API function if Python 3.
592 (PyVarObject_HEAD_INIT): Define if not already defined.
594 * python/python.c (eval_python_command): Omit Py_FlushLine call if
596 Check return values of all Python API calls for error.
597 Supply dummy "python" and "python-interactive" commands if Python
598 initialization failed.
599 (_initialize_python): Convert argc to wchar_t** if Python 3.
600 Add module initialization for Python 3.
601 (finish_python_initialization): Pass wchar_t * argument to
602 PySys_SetPath if Python 3.
603 * python/lib/gdb/__init__.py: Define "reload" if Python 3.
604 (_GdbFile): New class for common output file behavior.
605 (GdbOutFile): Subclass from _GdbFile.
606 (GdbOutputErrorFile): Ditto.
607 (auto_load_packages): Adjust syntax for Python 3 compatibility.
608 * python/lib/gdb/printing.py: Define basestr and int if Python 3.
609 * python/lib/gdb/prompt.py: Use sorted() function rather than
611 * python/lib/gdb/command/explore.py: Define raw_input if Python 3.
612 Adjust syntax for Python 3 compatibility.
613 * python/lib/gdb/command/pretty_printers.py: Use sorted() function
614 rather than sort() method.
615 Adjust syntax for Python 3 compatibility.
616 * python/lib/gdb/command/type_printers.py: Ditto.
617 * doc/gdb.texinfo (Inferior.read_memory): Mention that the return
618 value is a memoryview object if Python 3.
622 * coffread.c (coff_objfile_data_key): New global.
623 (coff_symfile_init): Use set_objfile_data.
624 (coff_symfile_read): Use objfile_data.
625 (coff_symfile_finish): Don't free deprecated_sym_private.
626 (coff_free_info): New function.
627 (_initialize_coffread): Initialize coff_objfile_data_key.
628 * mdebugread.c (pending_list): Update comment.
629 * objfiles.h (struct objfile) <deprecated_sym_private>: Remove.
630 * symfile.c (reread_symbols): Don't mention
631 deprecated_sym_private.
632 * xcoffread.c (xcoff_objfile_data_key): New global.
633 (XCOFF_DATA): New macro.
634 (process_linenos, enter_line_range, xcoff_next_symbol_text)
635 (read_xcoff_symtab, coff_getfilename, read_symbol_lineno): Use
637 (xcoff_new_init) Use set_objfile_data.
638 (xcoff_symfile_finish): Don't free deprecated_sym_private.
639 (init_stringtab, swap_sym, scan_xcoff_symtab)
640 (xcoff_get_toc_offset, xcoff_initial_scan): Use XCOFF_DATA.
641 (xcoff_free_info): New function.
642 (_initialize_xcoffread): Initialize xcoff_objfile_data_key.
646 * MAINTAINERS (Write After Approval): Add "Mircea Gherzan".
650 * coffread.c (coff_symfile_init): Use set_objfile_data.
651 (coff_symfile_read): Use DBX_SYMFILE_INFO.
652 * dbxread.c (dbx_objfile_data_key): New global.
653 (dbx_symfile_init): Use set_objfile_data.
654 (dbx_symfile_finish): Don't free deprecated_sym_stab_info.
655 (dbx_free_symfile_info): New function.
656 (coffstab_build_psymtabs, elfstab_build_psymtabs): Use
658 (stabsect_build_psymtabs): Use set_objfile_data.
659 (_initialize_dbxreadb): Initialize dbx_objfile_data_key.
660 * elfread.c (elf_symtab_read): Use DBX_SYMFILE_INFO,
662 (free_elfinfo): Use DBX_SYMFILE_INFO.
663 (elf_symfile_finish): Don't free deprecated_sym_stab_info.
664 (elfstab_offset_sections): Use DBX_SYMFILE_INFO.
665 * gdb-stabs.h (dbx_objfile_data_key): Declare.
666 (DBX_SYMFILE_INFO): Rewrite to use objfile_data.
667 * objfiles.h (struct objfile) <deprecated_sym_stab_info>: Remove.
668 * somread.c (som_symfile_finish): Don't free
669 deprecated_sym_stab_info.
673 * gdbarch.sh (software_single_step): Remove trailing space in
674 comment (gdbarch.h is already correct).
678 * dwarf2read.c (dwarf2_get_dwz_file): Set 'dwz_file'.
682 * dsrec.c (report_transfer_performance): Don't declare.
683 (load_srec): Use gettimeofday, print_transfer_performance.
684 * symfile.c (report_transfer_performance): Remove.
689 * procfs.c (procfs_make_note_section) [NEW_PROC_API]: Output a
691 * sol2-tdep.c (sol2_core_pid_to_str): Print process IDs
692 differently from LWP IDs.
696 * configure.ac (detect type of /proc): Remove Unixware handling.
697 * configure: Regenerate.
698 * proc-api.c (ioctl_table) [PIOCLSTATUS]: Don't mention Unixware.
699 (ioctl_table) [PCRESET]: Remove entry.
700 * proc-events.c (SYS_lwp_create, SYS_lwp_exit, SYS_lwp_wait)
701 (SYS_lwp_self, SYS_lwp_info, SYS_lwp_private, SYS_lwp_kill)
702 (SYS_lwp_suspend, SYS_lwp_continue): Don't define.
703 * proc-why.c (pr_why_table) [PR_SUSPENDED]: Don't mention Unixware.
704 * procfs.c: Remove all UNIXWARE guarded code, and all traces of
705 Unixware in comments throughout.
706 * i386-tdep.c (i386_svr4_sigtramp_p): Don't match _sigacthandler,
707 and remove mention of Unixware.
711 * dwarf2read.c (dwarf2_cu): Enhance comment.
712 (dwarf2_get_pc_bounds): Only add ranges_base for DIEs that live in
714 (dwarf2_record_block_ranges): Ditto.
716 * dwarf2read.c (create_dwo_in_dwp): Tweak comment.
718 * symtab.c (find_pc_sect_symtab): Add comment.
722 * defs.h: Don't check for definition of LONGEST.
723 (min, max): Remove duplicates.
727 * dwarf2read.c (dwarf2_fetch_die_loc_sect_off): New function.
728 (dwarf2_fetch_die_loc_cu_off): Rename from
729 dwarf2_fetch_die_location_block. Rewrite to use
730 dwarf2_fetch_die_loc_sect_off.
731 * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Declare.
732 (dwarf2_fetch_die_loc_cu_off): Rename.
733 * dwarf2loc.c (indirect_pieced_value): Use
734 dwarf2_fetch_die_loc_sect_off.
735 * dwarf2expr.h (struct dwarf_expr_context) <len, data>: Update
737 (struct dwarf_expr_piece) <v.ptr.die>: Now a sect_offset.
738 * dwarf2expr.c (add_piece): Update.
739 (execute_stack_op) <DW_OP_GNU_implicit_pointer>: Update comment.
743 * buildsym.c (struct pending_block): Move from buildsym.h.
744 (pending_blocks): Likewise; now static.
745 (pending_block_obstack): New global.
746 (free_pending_blocks): Free blocks.
747 (record_pending_block): Use pending_block_obstack.
748 * buildsym.h (struct pending_block): Move definition to
750 (pending_blocks): Don't declare.
754 * solib-svr4.c (svr4_solib_create_inferior_hook) [_SCO_DS]: Remove
755 dead SCO code, and adjust function description comment.
759 * configure.ac (CC_HAS_LONG_LONG): Replace by AC_MSG_ERROR.
760 * defs.h (LONGEST, ULONGEST): Remove conditionalization for
762 * dwarf2-frame.c (DW64_CIE_ID): Likewise.
763 * dwarf2read.c (extract_cu_value): Remove the function.
764 (create_cus_from_index_list): Make the return type void, inline the
765 extract_cu_value caller, include new gdb_static_assert.
766 (create_cus_from_index): Make the return type void, update the function
767 comment, update the create_cus_from_index_list caller.
768 (create_signatured_type_table_from_index): Make the return type void,
769 inline the extract_cu_value caller, include new gdb_static_assert.
770 (dwarf2_read_index): Update the create_cus_from_index and
771 create_signatured_type_table_from_index caller.
772 * printcmd.c (ui_printf): Remove conditionalizations for
774 * config.in: Regenerate.
775 * configure: Regenerate.
779 * dwarf2read.c (struct dwarf2_cu): New field producer_is_gcc_lt_4_3.
780 Update the comment for checked_producer.
781 (check_producer): New forward declaration.
782 (producer_is_gcc_lt_4_3): New function.
783 (find_file_and_directory): Simulate *COMP_DIR only for gcc < 4.3.
784 (check_producer): Initialize also PRODUCER_IS_GCC_LT_4_3.
788 * ada-lang.c (ada_make_symbol_completion_list): Add 'code'
790 * c-exp.y (typebase): Add completion productions.
791 * completer.c (expression_completer): Handle tag completion.
792 * expression.h (parse_expression_for_completion): Add argument.
793 * f-lang.c (f_make_symbol_completion_list): Add 'code'
795 * language.h (struct language_defn)
796 <la_make_symbol_completion_list>: Add 'code' argument.
797 * parse.c (expout_tag_completion_type, expout_completion_name):
799 (mark_struct_expression): Add assertion.
800 (mark_completion_tag): New function.
801 (parse_exp_in_context): Initialize new globals.
802 (parse_expression_for_completion): Add 'code' argument. Handle
804 * parser-defs.h (mark_completion_tag): Declare.
805 * symtab.c (default_make_symbol_completion_list_break_on): Add
806 'code' argument. Update.
807 (default_make_symbol_completion_list): Add 'code' argument.
808 (make_symbol_completion_list): Update.
809 (make_symbol_completion_type): New function.
810 * symtab.h (default_make_symbol_completion_list_break_on)
811 (default_make_symbol_completion_list): Update.
812 (make_symbol_completion_type): Declare.
816 * expression.h (parse_expression_for_completion): Rename
817 from parse_field_expression.
818 (parse_completion): Rename from in_parse_field.
819 * c-exp.y (lex_one_token): Update.
820 * completer.c (expression_completer): Update.
821 * go-exp.y (lex_one_token): Update.
822 * p-exp.y (yylex): Update.
823 * parse.c (parse_completion): Rename from in_parse_field.
824 (parse_exp_in_context): Update.
825 (parse_expression_for_completion): Rename from
826 parse_field_expression. Update.
830 * typeprint.c (_initialize_typeprint): Set completer
831 for "whatis" and "ptype".
835 * copyright.py (NOT_FSF_LIST): Remove duplicate entry
836 "sim/common/cgen-fpu.h". Remove invalid entries
837 "sim/common/sim-fpu.c" and "sim/mn10300/sim-main.h",
838 which actually have an FSF copyright header.
842 * osf-share/AT386/cma_thread_io.h: Delete.
843 * osf-share/HP800/cma_thread_io.h: Delete.
844 * osf-share/README: Delete.
845 * osf-share/RIOS/cma_thread_io.h: Delete.
846 * osf-share/cma_attr.h: Delete.
847 * osf-share/cma_deb_core.h: Delete.
848 * osf-share/cma_debug_client.h: Delete.
849 * osf-share/cma_errors.h: Delete.
850 * osf-share/cma_handle.h: Delete.
851 * osf-share/cma_init.h: Delete.
852 * osf-share/cma_list.h: Delete.
853 * osf-share/cma_mutex.h: Delete.
854 * osf-share/cma_sched.h: Delete.
855 * osf-share/cma_semaphore_defs.h: Delete.
856 * osf-share/cma_sequence.h: Delete.
857 * osf-share/cma_stack.h: Delete.
858 * osf-share/cma_stack_int.h: Delete.
859 * osf-share/cma_tcb_defs.h: Delete.
860 * osf-share/cma_util.h: Delete.
861 * Makefile.in (HFILES_NO_SRCDIR): Remove entries for the files
863 * config/djgpp/fnchange.lst: Remove osf-share/cma_stack_int.h entry.
864 * contrib/ari/gdb_find.sh: Remove handling of osf-share.
865 * copyright.sh (NOT_FSF_LIST): Remove "gdb/osf-share" entry.
870 * valops.c (value_cast): Move TYPE_CODE_VOID case earlier.
875 * mi/mi-cmd-var.c (varobj_update_one): Take value of
876 attribute "dynamic" and "displayhint" from printed child,
877 not the root variable.
881 * aix-thread.c (getthrds): Fix type of 4th parameter.
882 (get_signaled_thread): Change type of variable ktid to tid_t.
886 * dwarf2loc.c (dwarf_expr_frame_base): Add check for the return
887 value of get_frame_block.
891 Avoid memory leaks on struct cmd_list_element.doc field.
892 * cli/cli-decode.c (add_alias_cmd): Make a copy of doc field
893 if flags contains DOC_ALLOCATED.
894 (add_setshow_cmd_full): Add DOC_ALLOCATED to set and show
896 (delete_cmd): Handle DOC_ALLOCATED flag.
897 * cli/cli-decode.h (DOC_ALLOCATED): New macro for use
898 in flags filed of struct cmd_list_element.
899 (struct cmd_list_element): Document new flag item.
903 * symmisc.c: Whitespace fixes.
907 * i386-tdep.c (i386_skip_prologue): Using symbol table
908 to find the end of prologue for clang compiled binaries.
909 * amd64-tdep.c (amd64_skip_prologue): Using symbol table
910 to find the end of prologue for clang compiled binaries.
914 * dwarf2read.c (struct dwarf2_per_objfile): Clarify comment.
915 (dw2_find_symbol_file): Delete unused local file_data.
919 * ada-exp.y (write_object_renaming, write_var_or_type)
920 (write_ambiguous_var, write_var_from_sym): Make blocks const.
921 * ada-lang.c (replace_operator_with_call)
922 (find_old_style_renaming_symbol): Make blocks const.
923 * ada-lang.h (ada_find_renaming_symbol): Update.
924 (struct ada_symbol_info) <block>: Now const.
925 * breakpoint.c (watch_command_1): Update.
926 * breakpoint.h (struct watchpoint) <exp_valid_block,
927 cond_exp_valid_block>: Now const.
928 * c-exp.y (classify_inner_name, classify_name): Make block
930 * expprint.c (print_subexp_standard) <OP_VAR_VALUE>: Make 'b'
932 * expression.h (innermost_block, parse_exp_1): Update.
933 (union exp_element) <block>: Now const.
934 * gdbtypes.c (lookup_template_type, lookup_enum, lookup_union)
935 (lookup_struct): Make block argument const.
936 * gdbtypes.h (lookup_template_type): Update.
937 * go-exp.y (classify_name, classify_packaged_name)
938 (package_name_p): Make block argument const.
939 * objc-lang.c (lookup_struct_typedef): Make block argument const.
940 * objc-lang.h (lookup_struct_typedef): Update.
941 * parse.c (parse_exp_in_context, parse_exp_1)
942 (write_exp_elt_block): Make block arguments const.
943 (expression_context_block, innermost_block): Now const.
944 * parser-defs.h (write_exp_elt_block): Update.
945 (expression_context_block, innermost_block, block_found): Now
947 * printcmd.c (struct display) <block>: Now const.
948 * symtab.h (lookup_struct, lookup_union, lookup_enum): Update.
949 * valops.c (address_of_variable): Make block argument const.
950 * value.h (value_of_variable): Update.
951 * varobj.c (struct varobj_root) <valid_block>: Now const.
955 * breakpoint.c (print_one_breakpoint_location): Indent code.
959 * breakpoint.c (print_one_breakpoint_location): Combine two
960 blocks handling 'hit count' together.
964 * infrun.c (error_is_running, ensure_not_running): Move them
966 * infcmd.c (error_is_running, ensure_not_running): ... here.
968 * inferior.h: Remove declarations of error_is_running and
973 * tic6x-linux-tdep.c (tic6x_register_sigcontext_offset): Don't
978 * infrun.c: Make the declaration of 'init_infwait_state'
980 (init_infwait_state): Make it 'static'.
984 * python/python.c (finalize_python): Cast unused PyGILState_Ensure
985 return value to void to avoid compiler warning.
989 * opencl-lang.c (opencl_print_type): New function.
990 (opencl_language_arch_info): Install it.
994 * contrib/ari/gdb_ari.sh: Remove rules for xasprintf and
996 * common/common-utils.c (xasprintf, xvasprintf): Remove.
997 * common/common-utils.h (xasprintf, xvasprintf): Remove.
1001 * ada-lang.c (ada_is_interface_tag): New function.
1002 (ada_is_ignored_field): Add interface tags to the list
1007 * ada-lang.h (ada_tag_value_at_base_address): New function
1009 * ada-lang.c (is_ada95_tag, ada_tag_value_at_base_address):
1011 (ada_to_fixed_type_1, ada_evaluate_subexp): Let ada_tag_base_address
1012 relocate the class-wide value if need be.
1013 (ada_value_struct_elt, ada_value_ind, ada_coerce_ref):
1014 Let ada_tag_value_at_base_address relocate the class-wide access/ref
1015 before dereferencing it.
1016 * ada-valprint.c (ada_val_print_1): Relocate to base address
1017 before displaying the content of an interface-wide ref.
1021 * ada-lang.c (ada_evaluate_subexp): Unwrap only in EVAL_NORMAL.
1030 * eval.c (evaluate_subexp_standard): Get the correct pointer
1031 type for TYPE_CODE_MEMBERPTR.
1035 * rs6000-tdep.c (gdb_print_insn_powerpc): Remove info->mach checking,
1036 since now it is being done by binutils' powerpc_init_dialect().
1041 * solib-darwin.c (gdb_bfd_mach_o_fat_extract): New function.
1042 (darwin_solib_get_all_image_info_addr_at_init, darwin_bfd_open):
1044 * gdb_bfd.h (gdb_bfd_mark_parent): Declare.
1045 * gdb_bfd.c (gdb_bfd_mark_parent): New function.
1046 (gdb_bfd_openr_next_archived_file): Use it.
1050 * configure.ac: Check for linux/perf_event.h.
1051 * config.in: Regenerated.
1052 * configure: Regenerated.
1056 * breakpoint.c (_initialize_breakpoint): Call add_alias_cmd to
1057 abbreviate 'delete tracepoints' to 'delete tr'.
1058 * corefile.c (_initialize_core): Call add_alias_cmd to
1059 abbreviate 'set gnutarget' to 'set g'.
1060 * value.c (_initialize_values): Call add_alias_cmd to abbreviate
1061 'show convenience' to 'show conv'.
1065 * sparc-sol2-nat.c (supply_gregset): Fix first parameter in
1066 call to sparc_supply_fpregset.
1067 (fill_fpregset): Fix first parameter in call to
1068 sparc_collect_fpregset.
1074 * objfiles.c (init_entry_point_info): Call
1075 gdbarch_convert_from_func_ptr_addr and
1076 gdbarch_addr_bits_remove here ...
1077 (entry_point_address_query): ... instead of here.
1078 * solib-svr4.c (exec_entry_point): Call
1079 gdbarch_addr_bits_remove.
1080 * symfile.c (generic_load): Call gdbarch_addr_bits_remove on
1086 * eval.c (evaluate_subexp_standard): Add handling of
1087 TYPE_CODE_MEMBERPTR when calling functions. Correct the
1088 result of ptype for calling a TYPE_CODE_METHODPTR.
1092 * symtab.c (symtab_symbol_info): Fix a -Wformat-extra-args
1100 * NEWS: Mention mini debuginfo feature.
1101 * minidebug.c: New file.
1102 * configure.ac: Check for lzma.
1103 * configure, config.in: Rebuild.
1104 * Makefile.in (LIBLZMA): New variable.
1105 (CLIBS): Include LIBLZMA.
1106 (SFILES): Mention minidebug.c.
1107 (COMMON_OBS): Mention minidebug.o.
1108 * symfile.c (read_symbols): New function.
1109 (syms_from_objfile, reread_symbols): Call it.
1110 * symfile.h (find_separate_debug_file_in_section): Declare.
1114 * exec.c (exec_file_attach): Move cleanup after verifying that
1115 memory has in fact been allocated.
1119 * ada-lang.c (user_select_syms): Use SYMBOL_SYMTAB.
1120 * dwarf2read.c (dw2_find_symbol_file, fixup_go_packaging): Use
1122 * skip.c (skip_info): Use SYMBOL_SYMTAB.
1127 * common/linux-osdata.c (linux_xfer_osdata_fds): Decrease buffer
1128 size parameter passed to readlink by one byte.
1129 * fbsd-nat.c (fbsd_pid_to_exec_file): Ditto.
1130 * linux-nat.c (linux_child_pid_to_exec_file): Ditto.
1131 * nbsd-nat.c (nbsd_pid_to_exec_file): Ditto.
1132 * inf-child.c (inf_child_fileio_readlink): Decrease local buffer's
1137 * f-valprint.c (f77_create_arrayprint_offset_tbl): Remove
1138 extraneous parentheses.
1142 * remote.c (remote_start_remote): Typo fix.
1146 * sparc-tdep.h (struct sparc_fpregset): New data structure.
1147 (sparc32_sunos4_fpregset, sparc32_bsd_fpregset,
1148 sparc32_sol2_fpregset): Declare new globals.
1149 (sparc32_supply_fpregset, sparc32_collect_fpregset): Add new
1150 'fpregset' argument.
1151 * sparc64-tdep.h (sparc64_supply_fpregset,
1152 sparc64_collect_fpregset): Likewise.
1153 (sparc64_sol2_fpregset, sparc64_bsd_fpregset): Declare new
1155 * sparc-nat.h (struct sparc_fpregset): Add forward declaration.
1156 (sparc_fpregset): Declare new global.
1157 (sparc_supply_fpregset, sparc_collect_fpregset): Add new
1158 'fpregset' argument.
1159 * sparc-linux-nat.c (supply_fpregset): Pass sparc_fpregset down
1161 (fill_fpregset): Likewise.
1162 (_initialize_sparc_linux_nat): Set sparc_fpregset to
1163 sparc32_bsd_fpregset.
1164 * sparc-linux-tdep.c (sparc32_linux_supply_core_fpregset): Pass
1165 sparc32_bsd_fpregset down into handler.
1166 (sparc32_linux_collect_core_fpregset): Likewise.
1167 * sparc-nat.c (sparc_fpregset): Define.
1168 (sparc_supply_fpregset): Add 'fpregset' argument.
1169 (sparc_collect_fpregset): Likewise.
1170 (sparc_fetch_inferior_registers): Pass sparc_fpregset down
1171 into fpregset handler.
1172 (sparc_store_inferior_registers): Likewise.
1173 (_initialize_sparc_nat): Set sparc_fpregset to
1174 sparc32_sunos4_fpregset if NULL.
1175 * sparc-sol2-nat.c (supply_gregset): Pass sparc_sol2_fpregset
1177 (fill_fpregset): Likewise.
1178 * sparc-sol2-tdep.c (sparc32_sol2_fpregset): Define.
1179 * sparc-tdep.c (sparc32_supply_fpregset): Add fpregset arg and
1180 use it to compute offsets.
1181 (sparc32_collect_fpregset): Likewise.
1182 (sparc32_sunos4_fpregset, sparc32_bsd_fpregset): Define.
1183 * sparc64-linux-nat.c (supply_fpregset): Pass sparc64_bsd_fpregset
1185 (fill_fpregset): Likewise.
1186 * sparc64-linux-tdep.c (sparc64_linux_supply_core_fpregset):
1188 (sparc64_linux_collect_core_fpregset): Likewise.
1189 * sparc64-sol2-tdep.c (sparc64_sol2_fpregset): Define.
1190 * sparc64-tdep.c (sparc64_supply_fpregset): Add fpregset arg and
1191 use it to compute offsets.
1192 (sparc64_collect_fpregset): Likewise.
1193 (sparc64_bsd_fpregset): Define.
1194 * sparc64fbsd-tdep.c (sparc64fbsd_supply_fpregset): Padd
1195 sparc64_bsd_fpregset down into handler.
1196 (sparc64fbsd_collect_fpregset): Likewise.
1197 * sparc64nbsd-nat.c (sparc64nbsd_supply_fpregset): Add fpregset arg
1198 and pass sparc{32,64}_bsd_fpregset down into handler.
1199 (sparc64nbsd_collect_fpregset): Likewise.
1200 * sparc64nbsd-tdep.c (sparc64nbsd_supply_fpregset): Pass
1201 sparc64_bsd_fpregset down into handler.
1202 * sparc64obsd-tdep.c (sparc64obsd_supply_gregset): Likewise.
1203 * sparcnbsd-nat.c (_initialize_sparcnbsd_nat): Set sparc_fpregset
1204 to sparc32_bsd_fpregset.
1205 * sparcnbsd-tdep.c (sparc32nbsd_supply_gregset): Pass
1206 sparc32_bsd_fpregset down into sparc32_supply_fpregset.
1207 (sparc32nbsd_supply_fpregset): Likewise.
1211 * gdbtypes.h (struct cplus_struct_type) <localtype_ptr>: Remove
1213 (TYPE_LOCALTYPE_PTR, TYPE_LOCALTYPE_FILE, TYPE_LOCALTYPE_LINE):
1215 * c-typeprint.c (c_type_print_base): Update.
1220 * gdbarch.sh (smash_text_address): Remove.
1221 * gdbarch.c, gdbarch.h: Regenerate.
1222 * arm-tdep.c (arm_smash_text_address): Remove.
1223 (arm_gdbarch_init): Don't call set_gdbarch_smash_text_address.
1224 * hppa-tdep.c (hppa_smash_text_address): Remove.
1225 (hppa_addr_bits_remove): Rename from hppa_smash_text_address.
1226 (hppa_gdbarch_init): Don't call set_gdbarch_smash_text_address.
1228 * coffread.c (coff_symtab_read): Caller update.
1229 * dbxread.c (process_one_symbol): Likewise.
1230 * elfread.c (record_minimal_symbol): Likewise.
1231 * somread.c (som_symtab_read): Likewise.
1235 ARI fixes: sprintf rule.
1236 Replace sprintf function calls for char arrays by
1237 calls to xsnprintf calls.
1238 * arm-tdep.c (arm_push_dummy_call): Replace sprintf by xsnprintf.
1239 (arm_dwarf_reg_to_regnum, arm_return_value): Ditto.
1240 (arm_neon_quad_read, arm_pseudo_read): Ditto.
1241 (arm_neon_quad_write, arm_pseudo_write): Ditto.
1242 * breakpoint.c (condition_completer): Ditto.
1243 (create_tracepoint_from_upload): Ditto.
1244 * dwarf2read.c (file_full_name): Ditto.
1245 * gcore.c (gcore_command): Ditto.
1246 * gnu-nat.c (proc_string, gnu_pid_to_str): Ditto.
1247 * go32-nat.c (go32_sysinfo): Ditto.
1248 * interps.c (interp_set): Ditto.
1249 * m32c-tdep.c (make_types): Ditto.
1250 * ppc-linux-nat.c (fetch_register, store_register): Ditto.
1251 * remote-m32r-sdi.c (m32r_open): Ditto.
1252 * sol-thread.c (td_err_string): Ditto.
1253 (td_state_string, solaris_pid_to_str): Ditto.
1254 * symtab.c (gdb_mangle_name): Ditto.
1255 * cli/cli-script.c (execute_control_command): Ditto.
1256 (define_command, document_command): Ditto.
1257 * tui/tui-io.c (tui_rl_display_match_list): Ditto.
1258 * tui/tui-stack.c (tui_make_status_line): Ditto.
1259 * tui/tui-win.c (tui_update_gdb_sizes): Ditto.
1263 * cli/cli-decode.c (complete_on_cmdlist): Add a fourth arg and check
1264 it when looking at ptr->func.
1265 * command.h (complete_on_cmdlist): Add a fourth arg.
1266 * completer.c (complete_line_internal): Add local ignore_help_classes,
1267 and set it to 1 when reason is not handle_help. Pass this down to
1268 lookup_cmd_1 and complete_on_cmdlist.
1272 * completer.c (count_struct_fields): Remove.
1273 (expression_completer): Don't call count_struct_fields.
1277 * annotate.c (breakpoints_changed): Rename to ...
1278 (annotate_breakpoints_changed): ... this.
1279 (annotate_stopped, breakpoint_changed): Adjust caller.
1280 * annotate.h (breakpoints_changed): Rename to ...
1281 (annotate_breakpoints_changed): ... this.
1282 * breakpoint.c (set_breakpoint_condition, breakpoint_set_commands)
1283 (do_map_commands_command, init_raw_breakpoint, clear_command)
1284 (set_ignore_count, enable_breakpoint_disp): Adjust callers.
1288 * common/linux-osdata.c (get_number_of_cpu_cores): Delete.
1289 (linux_xfer_osdata_processes): Fetch _SC_NPROCESSORS_ONLN via
1291 (get_cores_used_by_process): Update comment.
1295 * objfiles.c (init_entry_point_info): Remove trailing spaces.
1299 * infrun.c (handle_inferior_event): Pass 'saved_singlestep_ptid'
1300 to deprecated_context_hook.
1304 * infrun.c (infwait_state): Add static.
1309 * cp-namespace.c (cp_lookup_symbol_in_namespace): Add SEARCH
1310 parameter and pass it to lookup_symbol_file.
1311 (cp_lookup_symbol_imports): Tell cp_lookup_symbol_in_namespace
1312 to search base classes.
1313 (cp_lookup_symbol_namespace): Likewise.
1314 (lookup_namespace_scope): Likewise.
1315 (lookup_symbol_file): Add SEARCH parameter.
1316 If SEARCH is non-zero and no symbol is found, lookup the class
1317 and call cp_lookup_nested_symbol.
1318 (find_symbol_in_baseclass): New function.
1319 (cp_lookup_nested_symbol): Do not let
1320 cp_lookup_symbol_in_namespace search through base classes.
1321 Do that later when there is no global symbol match.
1325 * main.c (gdb_datadir_provided): New static global.
1326 (get_init_files): If --data-directory is provided,
1327 and SYSTEM_GDBINIT lives in data-directory, look for it there.
1332 ARI fixes: move gdb_wait and gdb_stat headers to common subdirectory.
1333 * gdb_stat.h: Delete. Moved to common directory.
1334 * common/gdb_stat.h: New file.
1335 * gdb_wait.h: Delete. Moved to common directory.
1336 * common/gdb_wait.h: New file.
1337 * Makefile.in (H_FILES_NO_SRC): Adapt to new header
1339 * contrib/ari/gdb_ari.sh (wait.h rule): Adapt to new gdb_wait.h
1341 (stat.h rule): Adapt to new gdb_stat.h location.
1342 * common/linux-osdata.c: Include "gdb_stat.h" header instead of
1343 <sys/stat.h> header.
1344 * common/linux-ptrace.c: Include "gdb_wait.h" header instead of
1345 <sys/wait.h> header.
1349 * configure.ac (AC_HEADER_STAT): Remove.
1350 * gdb_stat.h (STAT_MACROS_BROKEN): Remove macro use
1351 and corresponding code.
1352 * configure: Regenerate.
1353 * config.in: Regenerate.
1357 ARI xasprintf rule fixes.
1358 * dwarf2read.c (create_dwo_in_dwp): Use xstrprintf function
1359 instead of xasprintf.
1360 (open_and_init_dwp_file): Ditto.
1364 * value.c (value_actual_type): Check for TYPE_CODE_STRUCT
1369 * configure, config.in: Rebuild.
1370 * configure.ac: Don't check for ctype.h, time.h.
1371 * expprint.c: Don't use HAVE_CTYPE_H.
1375 * gdbarch.h, gdbarch.c: Rebuild.
1376 * gdbarch.sh (set_target_gdbarch): Rename from
1377 deprecated_target_gdbarch_select_hack.
1378 * arch-utils.c (gdbarch_update_p): Update.
1379 (set_gdbarch_from_file): Update.
1383 * MAINTAINERS (Responsible Maintainers/misc): Add myself
1384 as responsible of contrib/ari directory.
1389 * arm-tdep.c (arm_addr_bits_remove): Do not adjust the low
1391 (arm_m_exception_cache, arm_m_exception_this_id)
1392 (arm_m_exception_prev_register, arm_m_exception_unwind_sniffer)
1393 (arm_m_exception_unwind): New.
1394 (arm_gdbarch_init): Register arm_m_exception_unwind.
1398 * mi/mi-main.c (mi_cmd_data_write_memory): Handle additional
1399 parameter COUNT, for pattern filling of memory regions.
1404 * disasm.h (DISASSEMBLY_FILENAME): New macro.
1405 * disasm.c (do_mixed_source_and_assembly): Pass filename flag on
1406 to print_source_lines ().
1407 * symtab.h (PRINT_SOURCE_LINES_FILENAME): New print source lines
1409 * source.c (print_source_lines_base): Prefix source line with
1410 filename if PRINT_SOURCE_LINES_FILENAME flag is set.
1414 * symtab.h (print_source_lines_flags): New enum.
1415 * source.c (print_source_lines_base): Change noerror to flags.
1416 (print_source_lines): Change noerror to flags.
1420 ARI fixes: Avoid sprintf function use rule.
1421 * charset.c (convert_between_encodings): Use xsnprintf.
1422 * cli-out.c (cli_field_int): Likewise.
1423 * cp-namespace.c (cp_lookup_nested_symbol): Likewise.
1424 * expprint.c (op_name_standard): Likewise.
1425 * frv-tdep.c (set_variant_num_gprs): Likewise.
1426 (set_variant_num_fprs): Likewise.
1427 * m68hc11-tdep.c (m68hc11_initialize_register_info): Likewise.
1428 * nto-tdep.c (nto_find_and_open_solib): Likewise.
1429 (nto_init_solib_absolute_prefix): Likewise.
1430 * source.c (init_source_path): Likewise.
1431 (print_source_lines_base): Likewise.
1432 * valprint.c (print_wchar): Likewise.
1433 * mi/mi-out.c (mi_field_int): Likewise.
1434 windows-nat.c (windows_pid_to_exec_file): Likewise.
1435 (windows_create_inferior): Likewise.
1436 (_initialize_check_for_gdb_ini): Likewise.
1440 * frame.h (deprecated_frame_register_read): Renames
1441 frame_register_read.
1442 * frame.c (deprecated_frame_register_read): Renames
1443 frame_register_read. Update all callers.
1444 * i386-tdep.c: Update all callers of frame_register_read.
1445 * infcmd.c: Likewise.
1447 * mips-tdep.c: Likewise.
1448 * mt-tdep.c: Likewise.
1449 * sh64-tdep.c: Likewise.
1453 * frame.h (frame_register_read): Remove FIXME comment.
1454 * frame.c (frame_register_read): Add suggestion explaining
1455 which function to use in place of this one.
1459 * python/python.c (start_type_printers): Initialize 'result_obj'.
1464 * data-directory/Makefile.in (PYTHON_FILES): Add
1466 * python/lib/gdb/command/type_printers.py: New file.
1467 * python/lib/gdb/command/types.py (TypePrinter): New class.
1468 (_get_some_type_recognizers, get_type_recognizers,
1469 apply_type_recognizers, register_type_printer): New
1471 * python/py-objfile.c (objfile_object) <type_printers>: New
1473 (objfpy_dealloc): Decref new field.
1474 (objfpy_new): Set new field.
1475 (objfpy_get_type_printers, objfpy_set_type_printers): New
1477 (objfile_to_objfile_object): Set new field.
1478 (objfile_getset): Add "type_printers".
1479 * python/py-progspace.c (pspace_object) <type_printers>: New
1481 (pspy_dealloc): Decref new field.
1482 (pspy_new): Set new field.
1483 (pspy_get_type_printers, pspy_set_type_printers): New functions.
1484 (pspace_to_pspace_object): Set new field.
1485 (pspace_getset): Add "type_printers".
1486 * python/python.c (start_type_printers, apply_type_printers,
1487 free_type_printers): New functions.
1488 (_initialize_python): Set gdb.type_printers.
1489 * python/python.h (start_type_printers, apply_type_printers,
1490 free_type_printers): Declare.
1491 * typeprint.c (type_print_raw_options, default_ptype_flags):
1492 Update for new fields.
1493 (do_free_global_table, create_global_typedef_table,
1494 find_global_typedef): New functions.
1495 (find_typedef_in_hash): Use find_global_typedef.
1496 (whatis_exp): Use create_global_typedef_table. Change cleanup
1498 * typeprint.h (struct type_print_options) <global_typedefs,
1499 global_printers>: New fields.
1503 * c-typeprint.c (find_typedef_for_canonicalize,
1504 print_name_maybe_canonical): New functions.
1505 (c_print_type): Look up type name.
1506 (cp_type_print_derivation_info): Add flags argument. Use
1507 print_name_maybe_canonical.
1508 (cp_type_print_method_args): Add wrapping.
1509 (c_type_print_varspec_prefix): Use print_name_maybe_canonical.
1510 (c_type_print_template_args): New function.
1511 (c_type_print_base): Change wrapping. Use
1512 print_name_maybe_canonical.
1513 <TYPE_CODE_STRUCT>: Possibly create a typedef hash, and do
1515 * gdbtypes.c (types_equal): No longer static.
1516 * gdbtypes.h (types_equal): Declare.
1517 * typeprint.c (type_print_raw_options, default_ptype_flags):
1519 (struct typedef_hash_table): New.
1520 (hash_typedef_field, eq_typedef_field,
1521 recursively_update_typedef_hash, add_template_parameters,
1522 create_typedef_hash, free_typedef_hash, do_free_typedef_hash,
1523 make_cleanup_free_typedef_hash, copy_typedef_hash_element,
1524 copy_typedef_hash, find_typedef_in_hash): New functions.
1525 * typeprint.h (struct type_print_options) <local_typedefs>:
1527 (recursively_update_typedef_hash, add_template_parameters,
1528 create_typedef_hash, free_typedef_hash,
1529 make_cleanup_free_typedef_hash, copy_typedef_hash,
1530 find_typedef_in_hash): Declare.
1534 * cp-support.c (inspect_type,
1535 replace_typedefs_qualified_name, replace_typedefs): Add
1536 finder, data arguments. Call as needed.
1537 (cp_canonicalize_string_full): New function.
1538 (cp_canonicalize_string_no_typedefs): Rewrite.
1539 * cp-support.h (canonicalization_ftype): New typedef.
1540 (cp_canonicalize_string_full): Declare.
1545 * c-typeprint.c (c_type_print_base): Handle print_method and
1546 print_typedefs flags.
1547 * gdbcmd.h (setprinttypelist, showprinttypelist): Declare.
1548 * python/py-type.c (typy_str): Use LA_PRINT_TYPE and raw
1550 * typeprint.c (type_print_raw_options, default_ptype_flags):
1551 Update for new field.s
1552 (whatis_exp): Parse flags. Use LA_PRINT_TYPE.
1553 (setprinttypelist, showprinttypelist, print_methods,
1554 print_typedefs): New globals.
1555 (set_print_type, show_print_type, set_print_type_methods,
1556 show_print_type_methods, set_print_type_typedefs,
1557 show_print_type_typedefs): New functions.
1558 (_initialize_typeprint): Update documentation. Add "print
1559 type methods" and "print type typedefs" parameters.
1560 * typeprint.h (struct type_print_options) <print_methods,
1561 print_typedefs>: New fields.
1565 * c-typeprint.c (cp_type_print_method_args): Add flags
1566 argument. Call c_print_type, not type_print.
1567 (c_type_print_base): Call c_print_type, not type_print.
1572 * ada-lang.c (user_select_syms, ada_print_subexp): Pass flags
1573 to type-printing functions.
1574 * ada-lang.h (ada_print_type): Add argument.
1575 * ada-typeprint.c (print_array_type, print_variant_clauses,
1576 print_variant_part, print_selected_record_field_types,
1577 print_record_field_types, print_unchecked_union_type,
1578 print_func_type, ada_print_type): Add flags argument.
1579 (ada_print_typedef): Update.
1580 * c-exp.y (OPERATOR conversion_type_id): Update.
1581 * c-lang.h (c_print_type, c_type_print_base): Update.
1582 * c-typeprint.c (c_print_type, c_type_print_varspec_prefix,
1583 c_type_print_modifier, c_type_print_args,
1584 c_type_print_varspec_suffix, c_type_print_base): Add flags
1586 * cp-valprint.c (cp_print_class_member): Update.
1587 * dwarf2read.c (dwarf2_compute_name): Update.
1588 * f-lang.h (f_print_type): Add argument.
1589 * f-typeprint.c (f_print_type): Add flags argument.
1590 * gnu-v3-abi.c (gnuv3_print_method_ptr): Update.
1591 * go-lang.h (go_print_type): Add argument.
1592 * go-typeprint.c (go_print_type): Add flags argument.
1593 * jv-lang.h (java_print_type): Add argument.
1594 * jv-typeprint.c (java_type_print_base, java_print_type): Add
1596 * language.c (unk_lang_print_type): Add flags argument.
1597 * language.h (struct language_defn) <la_print_type>: Add flags
1599 (LA_PRINT_TYPE): Likewise.
1600 * m2-lang.h (m2_print_type): Add argument.
1601 * m2-typeprint.c (m2_print_type, m2_range, m2_typedef,
1602 m2_array, m2_pointer, m2_ref, m2_procedure, m2_long_set,
1603 m2_unbounded_array, m2_record_fields): Add flags argument.
1604 * p-lang.h (pascal_print_type, pascal_type_print_base,
1605 pascal_type_print_varspec_prefix): Add argument.
1606 * p-typeprint.c (pascal_print_type,
1607 pascal_type_print_varspec_prefix, pascal_print_func_args,
1608 pascal_type_print_varspec_suffix, pascal_type_print_base): Add
1610 * symmisc.c (print_symbol): Update.
1611 * typeprint.c (type_print_raw_options, default_ptype_flags):
1613 (type_print): Update.
1614 * typeprint.h (struct type_print_options): New.
1615 (type_print_raw_options): Declare.
1616 (c_type_print_varspec_suffix, c_type_print_args): Add argument.
1620 * breakpoint.c (clear_command): Add cleanup for
1621 sals.sals if an argument is given.
1623 * linespec.c (parse_linespec): Do cleanups after
1624 parsing a convenience variable.
1629 * c-valprint.c (c_val_print): For character arrays
1630 with "print null" option on, print ellipses if
1631 the output is truncated and the next character is not \000.
1632 * valprint.c (MAX_WCHARS): Define.
1633 (WCHAR_BUFLEN): Likewise.
1634 (WCHAR_BUFLEN_MAX): Likewise.
1635 (struct converted_character): New structure.
1636 (count_next_character): New function.
1637 (print_converted_chars_to_obstack): New function.
1638 (generic_printstr): Rewrite using count_next_character
1639 and print_converted_chars_to_obstack.
1643 * tui/tui.c (tui_rl_command_key): Switch to TUI_ONE_COMMAND_MODE
1644 while executing the gdb command.
1645 (tui_rl_startup_hook): Do not switch back to TUI_SINGLE_KEY_MODE if we
1646 are called from prompt_for_continue.
1647 * tui/tui-io.c (tui_redisplay_readline): Likewise.
1653 * tui/tui.c (tui_rl_command_key): Do not call execute_command
1654 but insert the command to execute in readline's buffer.
1658 * gdbarch.sh (target_gdbarch): Remove macro.
1659 (get_target_gdbarch): Rename to target_gdbarch.
1660 * gdbarch.c, gdbarch.h: Rebuild.
1661 * ada-tasks.c, aix-thread.c, amd64-linux-nat.c, arch-utils.c,
1662 arm-tdep.c, auxv.c, breakpoint.c, bsd-uthread.c, corefile.c,
1663 darwin-nat-info.c, dcache.c, dsrec.c, exec.c, fbsd-nat.c,
1664 filesystem.c, gcore.c, gnu-nat.c, i386-darwin-nat.c, i386-nat.c,
1665 ia64-vms-tdep.c, inf-ptrace.c, infcmd.c, jit.c, linux-nat.c,
1666 linux-tdep.c, linux-thread-db.c, m32r-rom.c, memattr.c,
1667 mep-tdep.c, microblaze-tdep.c, mips-linux-nat.c,
1668 mips-linux-tdep.c, mips-tdep.c, monitor.c, moxie-tdep.c,
1669 nto-procfs.c, nto-tdep.c, ppc-linux-nat.c, proc-service.c,
1670 procfs.c, progspace.c, ravenscar-thread.c, record.c,
1671 remote-m32r-sdi.c, remote-mips.c, remote-sim.c, remote.c,
1672 rl78-tdep.c, rs6000-nat.c, rx-tdep.c, s390-nat.c, sol-thread.c,
1673 solib-darwin.c, solib-dsbt.c, solib-frv.c, solib-ia64-hpux.c,
1674 solib-irix.c, solib-pa64.c, solib-som.c, solib-spu.c,
1675 solib-sunos.c, solib-svr4.c, solib.c, spu-linux-nat.c,
1676 spu-multiarch.c, spu-tdep.c, symfile-mem.c, symfile.c, symtab.c,
1677 target-descriptions.c, target.c, target.h, tracepoint.c,
1678 windows-nat.c, windows-tdep.c, xcoffsolib.c, cli/cli-dump.c,
1679 common/agent.c, mi/mi-interp.c, python/py-finishbreakpoint.c,
1680 python/py-inferior.c, python/python.c: Update.
1684 * source.c (print_source_lines_base): Add fullname field giving
1685 full path to file in mi output.
1686 * NEWS: Mention the new fullname field.
1690 * NEWS: Mention the fix to the ambiguity of 'fo' command.
1696 * infrun.c: Include target-descriptions.h.
1697 (follow_exec): Fetch new target description.
1701 * i386-tdep.c (i386_analyze_frame_setup): Handle opcode
1706 * breakpoint.c: Declare set_tracepoint_count.
1707 (install_breakpoint): Call set_tracepoint_count if B is a
1709 (trace_command): Don't call set_tracepoint_count. Re-indent.
1710 (strace_command, ftrace_command):
1711 (create_tracepoint_from_upload): Likewise.
1715 * gdbarch.sh (target_gdbarch) <gdbarch.h>: Reimplement as macro.
1716 (get_target_gdbarch) <gdbarch.h>: New function.
1717 (startup_gdbarch) <gdbarch.h>: Declare.
1718 <gdbarch.c> (target_gdbarch): Delete.
1719 <gdbarch.c> (deprecated_target_gdbarch_select_hack): Set the
1720 current inferior's gdbarch.
1721 <gdbarch.c> (get_target_gdbarch): New function.
1722 * inferior.c: Include target-descriptions.h.
1723 (free_inferior): Free target description info.
1724 (add_inferior_with_spaces): Set the inferior's initial
1726 (clone_inferior_command): Copy the original inferior's target
1727 description if it was user specified.
1728 (initialize_inferiors): Add comment.
1729 * inferior.h (struct target_desc_info): Forward declare.
1730 (struct inferior) <gdbarch>: New field.
1731 * linux-nat.c: Include target-descriptions.h.
1732 (linux_child_follow_fork): Copy the parent's architecture and
1733 target description to the child.
1734 * target-descriptions.c: Include inferior.h.
1735 (struct target_desc_info): New structure, holding the equivalents
1737 (target_desc_fetched, current_target_desc)
1738 (target_description_filename): ... these removed globals.
1739 (get_tdesc_info, target_desc_info_from_user_p)
1740 (copy_inferior_target_desc_info, target_desc_info_free): New.
1741 (target_desc_fetched, current_target_desc)
1742 (target_description_filename): Reimplemented as convenience
1744 (tdesc_filename_cmd_string): New global.
1745 (set_tdesc_filename_cmd): Copy the string manipulated by the "set
1746 tdescs filename ..." commands to the per-inferior equivalent.
1747 (show_tdesc_filename_cmd): Get the value to show from the
1748 per-inferior description filename.
1749 (_initilize_target_descriptions): Change the "set/show tdesc
1750 filename" commands' variable.
1751 * target-descriptions.h (struct target_desc, struct target_desc_info)
1752 (struct inferior): Forward declare.
1753 (target_find_description, target_clear_description)
1754 (target_current_description): Adjust comments.
1755 (copy_inferior_target_desc_info, target_desc_info_free)
1756 (target_desc_info_from_user_p). Declare.
1760 * tui/tui-hooks.c (tui_about_to_proceed): New function.
1761 (tui_target_wait_hook): Remove.
1762 (tui_install_hooks): Install the about_to_proceed observer.
1763 (tui_remove_hooks): And remove it here.
1767 * linux-tdep.c (linux_make_siginfo_note): New function.
1768 (linux_make_corefile_notes): Use it.
1769 * corelow.c (get_core_siginfo): New function.
1770 (core_xfer_partial) <TARGET_OBJECT_SIGNAL_INFO>: New case.
1775 * gdb_bfd.c (gdb_bfd_ref): Set BFD_DECOMPRESS.
1776 (zlib_decompress_section): Remove.
1777 (gdb_bfd_map_section): Only check for compressed section
1778 in mmap case. Use bfd_get_full_section_contents.
1779 * osabi.c (check_note): Add 'sectsize' argument. Read
1781 (generic_elf_osabi_sniff_abi_tag_sections): Don't read
1782 section data. Update for check_note change.
1783 * xcoffread.c (xcoff_initial_scan): Use
1784 bfd_get_full_section_contents.
1785 * py-auto-load.c (auto_load_section_scripts): Use
1786 bfd_get_full_section_contents.
1787 * contrib/cc-with-tweaks.sh: Add -Z option.
1791 * python/py-bpevent.c: Include defs.h.
1792 * python/py-continueevent.c: Include defs.h.
1793 * python/py-event.c: Include defs.h.
1794 * python/py-event.h: Don't include defs.h.
1795 * python/py-events.h: Don't include defs.h.
1796 * python/py-evts.c: Include defs.h.
1797 * python/py-exitedevent.c: Include defs.h.
1798 * python/py-newobjfileevent.c: Include defs.h.
1799 * python/py-signalevent.c: Include defs.h.
1800 * python/py-stopevent.c: Include defs.h.
1801 * python/py-threadevent.c: Include defs.h.
1805 * update-web-ari.sh (print_heading): Add number of files
1807 (nb_files): New variable counting the number of sources
1808 files found by gdb_find.sh script.
1809 (debug_awk): New variable to allow extra debug output.
1810 (indexes): Add more information if DEBUG_AWK is set.
1814 * ppc-linux-tdep.c (ppc64_standard_linkage1, ppc64_standard_linkage2,
1815 ppc64_standard_linkage3): Mark ld r11 instructions as optional,
1816 following the change in PLT call stubs on linker.
1820 * contrib/ari/gdb_ari.sh (LANG, LC_ALL): Use 'C' instead of 'c'
1821 as default language.
1822 (AWK): Use = instead of == for sh test to avoid warning.
1823 (Linux rule): Correct [:digit] into [[:digit:]].
1824 (__func__ rule): Adapt to "gdb_assert.h" move to common subdirectory.
1825 (vasprintf rule): Adapt to common subdirectory moves.
1826 (xasprintf rule): Idem.
1827 (xvasprintf rule): Idem.
1828 (var_boolean rule): Accept occurence in == or != test.
1830 * contrib/ari/gdb_find.sh: Also prune gdbtk directory.
1834 * tui/tui-hooks.c (tui_inferior_exit): New function.
1835 (tui_detach_hook): Remove.
1836 (tui_install_hooks): Install the inferior exit observer.
1837 (tui_remove_hooks): Remove it.
1842 * source.c (_initialize_source): Call add_com_alias to abbreviate
1843 'forward-search' as 'fo'.
1847 * arm-tdep.c: Make defs.h be the first include.
1848 * coff-pe-read.c: Ditto.
1850 * go32-nat.c: Ditto.
1851 * i386-nat.c: Ditto.
1852 * ppcnbsd-nat.c: Ditto.
1853 * ada-varobj.h: Don't include defs.h.
1854 * i386-darwin-tdep.h: Ditto.
1855 * i386-nat.h: Ditto.
1859 * MAINTAINERS: New FSF-appointed maintainers replace the Steering
1864 * common/linux-osdata.c (dirent.h): ARI fix: Remove.
1865 File already uses "gdb_dirent.h" header.
1869 * breakpoint.c (get_tracepoint_by_number): Remove 'extern int
1874 * target.h (inferior_has_forked, inferior_has_vforked)
1875 (inferior_has_execd, inferior_has_called_syscall): Remove
1880 * remote.c (remote_insert_hw_breakpoint): ARI fix,
1881 add missing internalization markup.
1887 * breakpoint.c (bpstat_stop_status): Skip disabled locations.
1891 * contrib/ari/create-web-ari-in-src.sh: Avoid problem if script
1896 * gnulib/update-gnulib.sh: New script.
1900 * MAINTAINERS: Update my email address.
1904 * frame.c (put_frame_register): Don't use temporary buffer.
1908 * inferior.c (exit_inferior_1): Clear 'vfork_parent' in the vfork
1909 child. Clear 'pending_detach'.
1910 * infrun.c (handle_vfork_child_exec_or_exit): Clear
1911 'pending_detach' in the vfork parent.
1915 Add support for DWP files. http://gcc.gnu.org/wiki/DebugFissionDWP
1916 * contrib/cc-with-tweaks.sh: Add -p parameter to invoke dwp.
1917 * dwarf2read.c: #include "elf-bfd.h".
1918 (struct dwarf2_per_objfile): New members dwp_checked, dwp_file.
1919 (dwop_section_names): Renamed from dwo_section names. All uses
1920 updated. Add entries for .debug_cu_index, .debug_tu_index.
1921 (struct dwo_file): Rename dwo_name to name, dwo_bfd to dbfd.
1923 (struct dwp_sections): New type.
1924 (struct virtual_dwo_sections): New type.
1925 (struct dwp_hash_table): New type.
1926 (struct dwp_file): New type.
1927 (init_cutu_and_read_dies): Ensure DWO info/types section has been
1928 read in. Handle DWOs coming from DWP files.
1929 (lookup_dwo_file_slot): New function.
1930 (dwarf2_locate_dwo_sections): Move definition closer to use.
1931 (create_dwo_debug_info_hash_table_reader): Renamed from
1932 create_debug_info_hash_table_reader. All callers updated.
1933 (create_dwo_debug_info_hash_table): Renamed from
1934 create_debug_info_hash_table. All callers updated.
1935 (create_dwp_hash_table): New function.
1936 (locate_virtual_dwo_sections, create_dwo_in_dwp): New functions.
1937 (lookup_dwo_in_dwp): New function.
1938 (try_open_dwop_file): Renamed from try_open_dwo_file. New parameter
1939 is_dwp. All callers updated.
1940 (open_dwop_file): Renamed from open_dwo_file. All callers updated.
1941 (open_and_init_dwo_file): Renamed from init_dwo_file.
1942 All callers updated.
1943 (lookup_dwo_file): Delete.
1944 (dwarf2_locate_dwp_sections): New function.
1945 (hash_dwp_loaded_cutus, eq_dwp_loaded_cutus): New functions.
1946 (allocate_dwp_loaded_cutus_table): New function.
1947 (open_and_init_dwp_file): New function.
1948 (lookup_dwo_cutu): New function.
1949 (lookup_dwo_comp_unit, lookup_dwo_type_unit): Call it.
1954 * breakpoint.c (trace_pass_set_count): Call
1955 observer_notify_breakpoint_modified instead of
1956 observer_notify_tracepoint_modified.
1957 * mi/mi-cmd-break.c (mi_cmd_break_passcount): Likewise.
1961 * breakpoint.c (catch_syscall_completer): Pass 'word' as second
1962 argument to complete_on_enum.
1966 * configure: Rebuild.
1967 * configure.ac (build_warnings): Add -Wempty-body.
1968 * m68k-tdep.c (m68k_gdbarch_init): Remove empty 'if'.
1969 * remote.c (handle_notification): Use braces for empty 'else' body.
1970 * s390-tdep.c (s390_analyze_prologue): Use braces for empty
1972 * sh64-tdep.c (sh64_push_dummy_call): Use braces for empty
1974 * solib-som.c (som_relocate_section_addresses): Use braces
1975 for empty 'else' body.
1976 * ui-file.c (stdio_file_write): Use braces for empty 'if' body.
1977 (stdio_file_write_async_safe, stdio_file_fputs): Likewise.
1983 * infrun.c (handle_inferior_event)
1984 <TARGET_WAITKIND_EXITED/TARGET_WAITKIND_SIGNALLED>: Switch to
1985 null_ptid before handling a vfork child exec or exit. Switch to
1986 the event ptid afterwards.
1990 * std-operator.def: Remove OP_LABELED.
1991 * eval.c: Remove the declaration of 'get_label'.
1992 (get_label): Remove.
1993 (evaluate_struct_tuple): Remove code handling OP_LABELED.
1995 Remove local variable 'variantno' and related code.
1996 Replace 'substruct_type' with 'struct_type'. Replace 'subfieldno'
1998 * expprint.c (print_subexp_standard): Likewise.
1999 (dump_subexp_body_standard): Likewise.
2000 * parse.c (operator_length_standard): Likewise.
2004 Incorporate ARI web page generator into GDB sources.
2005 * contrib/ari/create-web-ari-in-src.sh: New file.
2006 * contrib/ari/gdb_ari.sh: New file.
2007 * contrib/ari/gdb_find.sh: New file.
2008 * contrib/ari/update-web-ari.sh: New file.
2012 * gdbarch.c: Rebuild.
2013 * gdbarch.sh: Remove references to gdbarch_swap.
2014 * corelow.c (core_open): Remove obsolete comment.
2019 * c-typeprint.c (c_print_type): Don't print a space for vector
2020 types, this is handled within the suffix.
2021 (c_type_print_varspec_suffix): Add a space to vector suffix.
2025 * amd64-tdep.c (amd64_relocate_instruction): Use
2026 store_unsigned_integer instead of memcpy.
2027 * i386-tdep.c (i386_relocate_instruction): Ditto.
2031 * infrun.c (handle_inferior_event): Merge handling of
2032 TARGET_WAITKIND_EXITED and TARGET_WAITKIND_SIGNALLED into a single
2037 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_SIGNALLED>:
2042 * target.c (target_waitstatus_to_string): Handle
2043 TARGET_WAITKIND_VFORK_DONE.
2047 * infrun.c (handle_inferior_event): Print TARGET_WAITKIND_VFORKED
2048 as "TARGET_WAITKIND_VFORKED", not "TARGET_WAITKIND_FORKED".
2052 * ravenscar-sparc-thread.c (ravenscar_sparc_fetch_registers):
2057 * ravenscar-thread.c (ravenscar_wait): Only update the list
2058 of threads and inferior_ptid if the inferior is still alive.
2062 * ada-lang.c (is_known_support_routine): Use lbasename when
2063 matching the symtab's filename against
2064 known_runtime_file_name_patterns.
2068 * ada-lang.c (ada_same_array_size_p): New function.
2069 (ada_promote_array_of_integrals): New function.
2070 (coerce_for_assign): Add handling of arrays where the elements
2071 are integrals of a smaller size than the size of the target
2076 * doublest.c (convert_doublest_to_floatformat): Fix comparison
2077 against maximum exponent value.
2081 * ada-lang.h (ADA_KNOWN_RUNTIME_FILE_NAME_PATTERNS): Add entry for
2086 * ada-lang.c (ada_template_to_fixed_record_type_1): Do not
2087 strip typedef layer when computing the fixed type's field type,
2088 only when computing its size.
2093 * i386-tdep.c (i386_return_value): Handle complex double and long
2098 * windows-nat.c (windows_create_inferior) [!__CYGWIN__]:
2099 New local variable args_len.
2100 Quote the name of the executable when computing the command line.
2107 * amd64-tdep.h (enum amd64_regnum): Add AMD64_ST1_REGNUM and
2109 * amd64-tdep.c (amd64_classify): Classify complex types.
2110 (amd64_return_value): Handle the COMPLEX_X87 class.
2114 * rs6000-aix-tdep.c (rs6000_aix_auto_wide_charset): New function.
2115 (rs6000_aix_init_osabi): Set auto_wide_charset gdbarch method.
2119 * amd64-windows-tdep.c (amd64_windows_auto_wide_charset): New
2121 (amd64_windows_init_abi): Set auto_wide_charset gdbarch method
2122 to amd64_windows_auto_wide_charset.
2126 * event-top.c (mark_async_signal_handler_wrapper): Remove.
2127 * event-top.h: Remove its declaration.
2128 (async_request_quit): Call mark_async_signal_handler instead of
2129 mark_async_signal_handler_wrapper.
2130 (async_do_nothing, async_disconnect): Likewise.
2131 (async_stop_sig): Likewise.
2132 * remote.c (handle_remote_sigint): Likewise.
2133 (handle_remote_sigint_twice): Likewise.
2137 * event-top.c (sigint_token, sighup_token): Replace 'void *'
2138 with 'static struct async_signal_handler *'.
2139 (sighup_token, sigquit_token, sigstp_token): Likewise.
2143 * gdbarch.sh (function_list): Use 'pstring' when printing
2144 a variable which could return NULL.
2145 * gdbarch.c: Regenerate.
2150 * rs6000-aix-tdep.c (rs6000_aix_osabi_sniffer): Replace
2151 inneffective if condition by gdb assertion. Add function
2152 description comment.
2156 * parser-defs.h (struct exp_descriptor): Document constraint
2157 on return value for "op_name" callbacks.
2161 * tracepoint.c (print_one_static_tracepoint_marker): Constify.
2162 * symtab.c (iterate_over_some_symtabs): Constify.
2163 * source.h (symtab_to_fullname): Return 'const char *'.
2164 * source.c (symtab_to_fullname): Return 'const char *'.
2165 * python/py-symtab.c (stpy_fullname): Constify.
2166 * cli/cli-cmds.c (edit_command): Constify.
2167 * breakpoint.c (print_breakpoint_location)
2168 (update_static_tracepoint): Constify.
2172 * breakpoint.c (compare_breakpoints): Fix comparison.
2176 * valprint.c (generic_emit_char, generic_printstr): Pass size of
2177 gdb_wchar_t to convert_between_encodings.
2181 * breakpoint.c (invalidate_bp_value_on_memory_change): Add one
2182 more parameter 'inferior'.
2183 * corefile.c (write_memory_with_notification): Caller update.
2185 * mi/mi-cmd-var.c: Include "mi-main.h".
2186 (mi_cmd_var_assign): Set mi_suppress_notification.data_write_memory
2187 to 1 and restore it later.
2188 * mi/mi-cmds.c (mi_cmd mi_cmds): Update for "data-write-memory"
2189 and "data-write-memory-bytes.
2190 * mi/mi-interp.c: Include objfiles.h.
2191 (mi_interpreter_init): Call observer_attach_memory_changed.
2192 (mi_memory_changed): New.
2193 * mi/mi-main.h (struct mi_suppress_notification) <memory>:
2196 * NEWS: Mention new MI notification "memory-changed".
2200 * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Remove comment.
2204 New option -nh: inhibit loading of ~/.gdbinit.
2205 * NEWS: Mention -nh.
2206 * main.c (captured_main): Recognize and process -nh.
2207 (print_gdb_help): Mention -nh.
2208 * gdb.1: Mention -nh. Remove erroneous docs on -nx behavior.
2214 * i386-tdep.h (gdbarch_tdep): Remove sp_regnum_from_eax and
2216 * i386-tdep.c (i386_gdbarch_init): Don't use sp_regnum_from_eax
2217 nor pc_regnum_from_eax.
2218 * amd64-tdep.c (amd64_x32_init_abi): Don't set sp_regnum_from_eax
2219 nor pc_regnum_from_eax.
2223 Fix entry values resolving in inlined frames.
2224 * dwarf2loc.c (dwarf_expr_reg_to_entry_parameter): Move func_addr,
2225 gdbarch and caller_frame initialization later. Skip INLINE_FRAME
2230 * configure.ac: Build with -DMS_WIN64 if building with Python
2231 enabled using GCC on amd64-windows.
2232 * configure: Regenerate.
2237 * python/py-symtab.c (del_objfile_sal): Set 'symtab' field
2243 * python/py-symbol.c (sympy_dealloc): Check for NULL symbol.
2247 * remote-sim.c (gdbsim_create_inferior): Call init_thread_list to
2248 reset thread numbering back to 1.
2252 PR breakpoints/14643.
2253 * linespec.c (struct ls_parser): New member keyword_ok.
2254 (linespec_lexer_lex_string): Add comment.
2255 (linespec_lexer_lex_one): Ignore keywords if it's the wrong place
2257 (parse_linespec): Set keyword_ok.
2261 * dwarf2read.c (process_psymtab_comp_unit_reader): Remove duplicate
2262 "0x" prefix on address in log message.
2264 * dwarf2read.c (read_1_byte): Add const to buf parameter.
2265 (read_1_signed_byte, read_2_bytes, read_2_signed_bytes): Ditto.
2266 (read_4_bytes, read_4_signed_bytes, read_8_bytes): Ditto.
2267 (lookup_dwo_file): Add const to dwo_name parameter.
2268 (lookup_dwo_comp_unit, lookup_dwo_type_unit): Ditto.
2272 Fix crash during stepping on ppc32.
2273 * ppc-linux-tdep.c (powerpc_linux_in_dynsym_resolve_code): Test NULL
2279 * buildsym.c (buildsym_init): Reset using_directives to NULL.
2283 * remote-sim.c (dump_mem): Always dump buffer contents, zero fill
2284 output and use uint32_t not long to ensure 4 byte size.
2288 * rs6000-nat.c (add_vmap): Set "last" to "next" after having
2293 * target.c (simple_search_memory): Include access length in
2300 * solib.c (solib_find): Prevent GDB from loading native libraries when
2301 debugging a cross-target corefile.
2305 Make definition match declaration.
2307 * regcache.c (regcache_register_status): Change return type to
2308 enum register_status.
2312 * mi/mi-main.c (mi_cmd_data_write_memory): Call
2313 write_memory_with_notification instead of write_memory.
2314 (mi_cmd_data_write_memory_bytes): Call write_memory_with_notification
2315 instead of target_write_memory.
2319 * mi/mi-main.c (mi_cmd_data_write_memory_bytes): Emit error
2320 when the length of content is not an even number.
2324 Fix https://bugzilla.redhat.com/show_bug.cgi?id=849357
2325 * cp-valprint.c (cp_print_value_fields): Use get_vptr_fieldno.
2329 * sol-thread.c (sol_thread_fetch_registers)
2330 (sol_thread_store_registers): Delete commented out code.
2334 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
2335 Move these functions to sparc-sol-thread.c.
2336 * sparc-sol-thread.c: New file.
2337 * configure.ac: Add sparc-sol-thread.o to CONFIG_OBS and
2338 sparc-sol-thread.c to CONFIG_SRCS for sparc-solaris native
2340 * configure: Regenerate.
2344 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
2345 Remove commented-out code.
2349 * sol-thread.c (ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs):
2350 Enable this code for sparc hosts only.
2354 * procfs.h (procfs_find_LDT_entry): Add declaration.
2355 * sol-thread.c (ps_lgetLDT): Delete local declaration of
2356 function procfs_find_LDT_entry.
2360 * procfs.c (proc_get_LDT_entry): Make static.
2364 * procfs.c (proc_find_memory_regions): Fix declaration.
2368 * amd64-tdep.c (amd64_return_value): Revert previous change
2369 that used TYPE_LENGTH directly.
2370 * bfin-tdep.c (bfin_extract_return_value): Likewise.
2371 (bfin_store_return_value): Likewise.
2372 * cris-tdep.c (cris_store_return_value): Likewise.
2373 (cris_extract_return_value): Likewise.
2374 * h8300-tdep.c (h8300_extract_return_value): Likewise.
2375 * hppa-tdep.c (hppa64_return_value): Likewise.
2376 * lm32-tdep.c (lm32_store_return_value): Likewise.
2377 * microblaze-tdep.c (microblaze_store_return_value): Likewise.
2378 * spu-tdep.c (spu_value_from_register): Likewise.
2379 * vax-tdep.c (vax_return_value): Likewise.
2383 * gdbtypes.c (lookup_array_range_type): Expand parameters
2384 LOW_BOUND and HIGH_BOUND to LONGEST.
2385 (lookup_string_range_type): Likewise.
2386 * gdbtypes.h (lookup_array_range_type): Likewise.
2387 (lookup_string_range_type): Likewise.
2388 * valops.c (value_cstring): Expand parameter LEN to ssize_t.
2389 Expand HIGHBOUND to ssize_t.
2390 (value_string): Likewise.
2391 * value.h (value_cstring): Expand parameter LEN to ssize_t.
2392 (value_string): Likewise.
2396 PR breakpoints/13898
2397 * breakpoint.h (tracepoint_breakpoint_ops): Forward declaration.
2398 * mi/mi-cmd-break.c (mi_cmd_break_insert): Set breakpoint_ops
2399 per breakpoint type.
2403 * procfs.c: Add gdb_bfd header.
2404 * rs6000-nat.c: Likewise.
2405 * solib-pa64.c: Likewise.
2406 * spu-linux-nat.c: Likewise.
2407 * windows-nat.c: Likewise.
2411 * f-lang.h (BLANK_COMMON_NAME_LOCAL): Remove.
2415 * dwarf2read.c (mark_common_block_symbol_computed): New function.
2416 (read_common_block): Handle child DIEs with
2417 DW_AT_data_member_location.
2418 (new_symbol_full): Add special case for common blocks.
2423 * dwarf2read.c (read_common_block): Rewrite.
2424 (new_symbol_full): Handle DW_TAG_common_block.
2425 * f-lang.c (head_common_list, find_common_for_function):
2427 * f-lang.h (struct common_entry, struct saved_f77_common,
2428 SAVED_F77_COMMON, SAVED_F77_COMMON_PTR, COMMON_ENTRY,
2429 COMMON_ENTRY_PTR, head_common_list, find_common_for_function,
2430 BLANK_COMMON_NAME_LOCAL): Remove.
2431 (struct common_block): New.
2432 * f-valprint.c (list_all_visible_commons): Remove.
2433 (info_common_command_for_block): New function.
2434 (info_common_command): Use it.
2435 * stack.c (iterate_over_block_locals): Special case for
2436 COMMON_BLOCK_DOMAIN.
2437 * symtab.h (enum domain_enum_tag) <COMMON_BLOCK_DOMAIN>: New
2439 (struct general_symbol_info) <value.common_block>: New field.
2440 (SYMBOL_VALUE_COMMON_BLOCK): New define.
2445 * f-lang.c (allocate_saved_bf_node,
2446 allocate_saved_function_node, allocate_saved_f77_common_node,
2447 allocate_common_entry_node, tail_common_list, current_common,
2448 saved_bf_list, saved_bf_list_end, current_head_bf_list,
2449 tmp_bf_ptr, add_common_block, add_common_entry,
2450 find_first_common_named, patch_common_entries,
2451 patch_all_commons_by_name, ADD_BF_SYMNUM, clear_bf_list,
2452 global_remote_debug, get_bf_for_fcn, saved_function_list,
2453 saved_function_list_end, clear_function_list, struct saved_fcn,
2454 struct saved_bf_symnum, SAVED_FUNCTION, SAVED_FUNCTION_PTR,
2455 SAVED_BF, SAVED_BF_PTR): Remove.
2456 * f-lang.h (tail_common_list, current_common,
2457 UNINITIALIZED_SECNUM, COMMON_NEEDS_PATCHING,
2458 BLANK_COMMON_NAME_ORIGINAL, BLANK_COMMON_NAME_MF77,
2459 DEFAULT_UPPER_BOUND, DEFAULT_LOWER_BOUND, real_main_name,
2460 real_main_c_value): Remove.
2461 * f-valprint.c (there_is_a_visible_common_named): Remove.
2465 * breakpoint.c (update_global_location_list): Ignore previous
2466 duplicate status of a breakpoint when starting a new scan for
2467 duplicate breakpoints.
2470 PR breakpoints/14419
2471 * arm-tdep.c (arm_skip_prologue): Extending producer check to
2472 support LLVM compiler.
2476 * amd64-tdep.c (amd64_return_value): Use TYPE_LENGTH directly.
2477 * bfin-tdep.c (bfin_extract_return_value): Likewise.
2478 (bfin_store_return_value): Likewise.
2479 * cris-tdep.c (cris_store_return_value): Likewise.
2480 (cris_extract_return_value): Likewise.
2481 * h8300-tdep.c (h8300_extract_return_value): Likewise.
2482 * hppa-tdep.c (hppa64_return_value): Likewise.
2483 * lm32-tdep.c (lm32_store_return_value): Likewise.
2484 * microblaze-tdep.c (microblaze_store_return_value): Likewise.
2485 * spu-tdep.c (spu_value_from_register): Likewise.
2486 * vax-tdep.c (vax_return_value): Likewise.
2490 * breakpoint.c (invalidate_bp_value_on_memory_change): Expand
2491 parameter LEN to ssize_t.
2495 * ada-valprint.c (ada_val_print_1): Eliminate single-use
2497 * alpha-tdep.c (alpha_extract_return_value): Use TYPE_LENGTH
2499 (alpha_store_return_value): Likewise.
2500 * amd64-tdep.c (amd64_classify_aggregate): Likewise.
2501 (amd64_push_arguments): Likewise.
2502 * ax-gdb.c (gen_trace_static_fields): Likewise.
2503 (gen_traced_pop): Likewise.
2504 * bfin-tdep.c (bfin_push_dummy_call): Likewise.
2505 * breakpoint.c (update_watchpoint): Likewise.
2506 * findcmd.c (parse_find_args): Use local variable for type
2508 * findvar.c (default_read_var_value): Use TYPE_LENGTH directly.
2509 * h8300-tdep.c (h8300h_extract_return_value): Likewise.
2510 (h8300_store_return_value): Likewise.
2511 * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
2512 Use i386_darwin_arg_type_alignment directly.
2513 * infcall.c (call_function_by_hand): Use TYPE_LENGTH directly.
2514 * lm32-tdep.c (lm32_push_dummy_call): Likewise.
2515 * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
2516 (m68hc11_extract_return_value): Likewise.
2517 * mep-tdep.c (mep_push_dummy_call): Likewise.
2518 * printcmd.c (float_type_from_length): Likewise.
2519 * s390-tdep.c (s390_value_from_register): Likewise.
2520 * stack.c (read_frame_arg): Likewise.
2521 * tracepoint.c (encode_actions_1): Likewise.
2522 * valops.c (value_fetch_lazy): Use local variable for type
2523 instead of length. Use TYPE_LENGTH directly.
2524 * value.c (value_contents_equal): Use TYPE_LENGTH directly.
2528 * symtab.c (skip_prologue_sal): Fix typo in comment.
2532 * linespec.c (create_sals_line_offset): Fix typo in comment.
2536 * c-typeprint.c (c_type_print_varspec_suffix): Remove cast and
2537 use plongest to print the array size.
2541 * m2-typeprint.c (m2_enum): Expand LASTVAL to LONGEST.
2542 * p-valprint.c (pascal_type_print_base): Likewise.
2546 * remote.c (remote_get_trace_status): Remove setting default
2547 values of fields of 'ts'.
2551 Fix internal error on canonicalization of clang types.
2552 * cp-name-parser.y (operator): New comment at make_operator call for
2553 new, delete, new[] and delete[].
2554 (exp): Use "sizeof ". Add new comment at make_operator call.
2558 Fix disassemble without parameters in tailcall frame.
2559 * cli/cli-cmds.c (disassemble_current_function): Use
2560 get_frame_address_in_block.
2564 * c-typeprint.c (c_type_print_base) <TYPE_CODE_STRUCT,
2565 TYPE_CODE_UNION>: Unify, removing a goto.
2569 * c-typeprint.c (cp_type_print_derivation_info): Fix comment.
2573 * findvar.c (read_frame_register_value): Mark the result value as
2574 optimized out if any of the input registers have been optimized out.
2578 * python/python.c (finalize_python): Only define if HAVE_PYTHON.
2582 * eval.c (evaluate_subexp_standard): Eliminate single-use
2587 * mi/mi-interp.c: Declare mi_record_changed.
2588 (mi_interpreter_init): Call observer_attach_record_changed.
2589 (mi_record_changed): New.
2590 * record.c (record_open): Call observer_notify_record_changed.
2591 (cmd_record_stop): Call observer_notify_record_changed.
2597 * python/python.c (finalize_python): New function.
2598 (_initialize_python): Make a final cleanup.
2602 * buildsym.h (param_symbols): Delete, unused.
2603 (context_stack): Delete member "params", unused.
2604 * buildsym.c (push_context): Update.
2605 * dwarf2read.c (read_func_scope): Update.
2609 * sh-tdep.c (sh_register_convert_to_virtual)
2610 (sh_register_convert_to_raw): Add a gdbarch parameter. Update
2611 all callers. Just do a memcpy if not the little-endian case.
2613 * h8300-tdep.c (h8300_gdbarch_init): Invoke
2614 set_gdbarch_double_format and set_gdbarch_long_double_format.
2615 * m68hc11-tdep.c (m68hc11_gdbarch_init): Invoke
2616 set_gdbarch_double_format.
2617 * sh-tdep.c (sh_gdbarch_init): Likewise.
2619 * NEWS: Document the removal of SH's 'regs' command.
2620 * sh-tdep.c (_initialize_sh_tdep): Remove the deprecated 'regs'
2625 * infcmd.c (_initialize_infcmd): Register `j' as an alias for
2630 * linespec.c (iterate_over_all_matching_symtabs): Use the correct
2631 language when iterating over symbols.
2635 * mi/mi-interp.c: Declare mi_tsv_created and mi_tsv_deleted.
2636 (mi_interpreter_init): Call observer_attach_tsv_created and
2637 observer_attach_tsv_deleted.
2638 (mi_tsv_created, mi_tsv_deleted): New.
2639 * tracepoint.c (delete_trace_state_variable): Call
2640 observer_notify_tsv_deleted.
2641 (trace_variable_command): Call observer_notify_tsv_created.
2642 (delete_trace_variable_command): Call
2643 observer_notify_tsv_deleted.
2644 (create_tsv_from_upload): Call observer_notify_tsv_created.
2649 * tracepoint.c (tfind_1): Call observer_notify_traceframe_changed
2650 if traceframe changed.
2651 * mi/mi-cmds.c (mi_cmd mi_cmds): Adjust for command
2653 * mi/mi-interp.c: Declare 'mi_traceframe_changed'.
2654 (mi_interpreter_init): Hook mi_traceframe_changed to observer
2655 'traceframe_changed'.
2656 (mi_traceframe_changed): New.
2657 * mi/mi-main.h (struct mi_suppress_notification) <traceframe>:
2659 * NEWS: Mention the new MI notification.
2663 * MAINTAINERS (Write After Approval): Add "Mike Wrighton".
2667 * common/linux-ptrace.c: Change __i386__ to __i386__ || __x86_64__.
2668 (linux_ptrace_test_ret_to_nx): Extend comment for x86_64. Change
2669 __i386__ to __i386__ || __x86_64__. Extend code also for __x86_64__.
2670 Extend code also for PaX support. Convert all gdb_assert to warning
2675 Implement auto-load user conveniences suggested by Doug Evans.
2676 * auto-load.c: Include top.h.
2677 (file_is_auto_load_safe): New variable advice_printed. Print advice.
2678 (_initialize_auto_load): New variable scripts_directory_help. Mention
2679 GDBPY_AUTO_FILE_NAME and GDB_AUTO_FILE_NAME for set auto-load
2680 scripts-directory. Document in online help one can use also files for
2681 set auto-load safe-path.
2682 * python/py-auto-load.c: (GDBPY_AUTO_FILE_NAME): Move it from here ...
2683 * python/python.h (GDBPY_AUTO_FILE_NAME): ... to here.
2687 * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused definition
2692 * m2-valprint.c (m2_print_array_contents): Eliminate variable
2693 ELTLEN and use TYPE_LENGTH directly.
2694 (m2_val_print): Likewise.
2695 * m68k-tdep.c (m68k_svr4_extract_return_value): Eliminate
2696 variable LEN and use TYPE_LENGTH directly.
2697 (m68k_svr4_store_return_value): Likewise.
2698 * mips-tdep.c (mips_o32_push_dummy_call): Eliminate variable
2699 ARGLEN and use TYPE_LENGTH directly.
2700 (mips_o64_push_dummy_call): Likewise.
2701 * s390-tdep (s390_function_arg_pass_by_reference): Eliminate
2702 variable LENGTH and use TYPE_LENGTH directly.
2703 (s390_function_arg_float): Likewise.
2704 (s390_function_arg_integer): Likewise.
2705 (s390_push_dummy_call): Likewise.
2706 (s390_return_value_convention): Likewise.
2707 * spu-tdep.c (spu_push_dummy_call): Eliminate LEN and use
2708 TYPE_LENGTH directly.
2712 * cli/cli-decode.c (add_setshow_zuinteger_unlimited_cmd): New.
2713 Update comment to add_setshow_integer_cmd.
2714 * cli/cli-setshow.c (do_set_command): Handle case
2715 'var_zuinteger_unlimited'.
2716 (do_show_command): Likewise.
2717 * cli/cli-cmds.c (init_cmds): Call add_setshow_zuinteger_unlimited_cmd
2718 for command 'remotetimeout'.
2719 * command.h (enum var_types): New zuinteger_unlimited. Update comment
2721 * source.c (_initialize_source): Call
2722 add_setshow_zuinteger_unlimited_cmd for command 'set listsize'.
2726 * infrun.c (restore_infcall_suspend_state): Eliminate single-use
2732 * frame.c (skip_inlined_frames): Skip also TAILCALL_FRAME frames.
2733 (frame_pop): Drop also TAILCALL_FRAME frames.
2734 * infcmd.c (finish_command): Ignore also TAILCALL_FRAME frames.
2740 * infrun.c (handle_inferior_event): Do not reverse-continue back to the
2741 function start if we are already at function start. Both for
2742 reverse-next and for reverse-step into function without line number
2747 Code cleanup - rename 'inline' depth to 'artificial' depth.
2748 * breakpoint.c (set_momentary_breakpoint): Rename at a caller to
2749 frame_id_artificial_p, extend the comment.
2750 * dwarf2-frame-tailcall.c (tailcall_frame_this_id): Rename at a user.
2751 * frame.c (fprint_frame_id): Rename at a user, change debug output
2752 text to "artificial=".
2753 (skip_inlined_frames): Rename to ...
2754 (skip_artificial_frames): ... here. Extend the comment.
2755 (get_stack_frame_id, frame_unwind_caller_id): Rename at a caller.
2756 (frame_id_inlined_p): Rename to ...
2757 (frame_id_artificial_p): ... here. Rename at a user.
2758 (frame_id_eq, frame_id_inner, frame_unwind_caller_pc)
2759 (frame_unwind_caller_pc_if_available, frame_unwind_caller_arch): Rename
2761 * frame.h (struct frame_id): Rename inline_depth to artificial_depth.
2763 (frame_id_inlined_p): Rename to ...
2764 (frame_id_artificial_p): ... here.
2765 * inline-frame.c (inline_frame_this_id): Rename at a user.
2769 * c-typeprint.c (c_type_print_varspec_suffix): Display the size of
2770 vector variables using vector_size syntax rather than array
2775 * valarith.c (value_concat): Replace unsafe ALLOCA with
2780 * gdb.1 (SEE ALSO): Expand pointer to GDB's Texinfo manual.
2784 Point contrib/cc-with-tweaks.sh to the build-local data-directory.
2785 * contrib/cc-with-tweaks.sh (GDB): Add -data-directory
2786 data-directory as appropriate.
2790 * printcmd.c (ui_printf): Eliminate single-use variable
2796 * valops.c (value_assign): Move observer_notify_target_changed
2797 below to replace reinit_frame_cache.
2801 Refactor Python "gdb" module into a proper Python package, by
2802 introducing a new "_gdb" module for code implemented in C, and
2803 using reload/__import__ instead of exec.
2804 * python/lib/gdb/__init__.py: Import * from _gdb.
2805 (GdbOutputFile, sys.stdout, GdbOutputErrorFile, sys.stderr,
2806 prompt_hook, sys.argv): Moved from finish_python_initialization.
2807 (pretty_printers, PYTHONDIR): Moved from _initialize_python.
2808 (packages, auto_load_packages): New list and function replacing
2809 module_dict and auto-loading code, using __file__ instead of
2810 gdb.PYTHONDIR and reload/__import__ instead of exec.
2811 (GdbSetPythonDirectory): Replacing function of the same name
2812 from finish_python_initialization, using reload/__import__ instead
2813 of exec, as well as call auto_load_packages.
2814 * python/py-prettyprint.c (find_pretty_printer_from_gdb): Check
2815 gdb_python_module and not gdb_module.
2816 * python/python-internal.h (gdb_python_module): Declare.
2817 * python/python.c (gdb_python_module): New global.
2818 (before_prompt_hook): Check gdb_python_module and not gdb_module.
2819 (_initialize_python): Rename gdb module to _gdb.
2820 Move gdb.PYTHONDIR and gdb.pretty_printer to lib/gdb/__init__.py.
2821 (finish_python_initialization): Move Python code to
2822 lib/gdb/__init__.py; instead, set up sys.path and import gdb into
2827 * Makefile.in (COMMON_OBS): Add registry.o.
2828 * registry.c: New file.
2829 * registry.h (struct registry_container): Declare.
2830 (registry_data_callback): New typedef.
2831 (struct registry_data, struct registry_data_registration, struct
2832 registry_data_registry): New type.
2833 (register_data_with_cleanup, registry_alloc_data)
2834 (registry_callback_adaptor, registry_clear_data)
2835 (registry_container_free_data, registry_set_data, registry_data):
2837 (DEFINE_REGISTRY): Refactor structures and functions as shims over
2838 the new common structures and functions.
2839 (DECLARE_REGISTRY): Declare struct TAG ## _data. Use the tagged
2844 * remote.c (remote_insert_hw_breakpoint): Throw exception if
2845 there is an error inserting hardware breakpoints and use the
2846 error message from the target.
2848 * breakpoint.c (insert_bp_location, insert_breakpoint_locations):
2849 Catch this exception and print the error message contained within.
2850 Do not print the default hardware error breakpoint message in this
2855 * dwarf2read.c (dwarf2_read_addr_index): Fix handling the case where
2860 * dwarf2read.c (dw2_do_expand_symtabs_matching): Don't examine
2861 .gdb_index symbol attributes if there are none.
2865 * symtab.h (struct minimal_symbol) [has_size]: New field.
2866 (MSYMBOL_SIZE): Adjust to forbid macro from being used as lvalue.
2867 (SET_MSYMBOL_SIZE, MSYMBOL_HAS_SIZE): New macros.
2868 * printcmd.c (build_address_symbolic): Only filter out zero-sized
2869 minimal symbols if the symbol's size is actually known.
2870 * minsyms.c (prim_record_minimal_symbol_full): Adjust setting
2871 of msymbol's size field. Add comment.
2872 * elfread.c (elf_symtab_read, elf_rel_plt_read): Use
2873 SET_MSYMBOL_SIZE to set the minimal symbol size.
2877 * minsyms.c (install_minimal_symbols): Use memset to fill entire
2878 minimal_symbol struct object, rather than setting some of its
2883 * c-typeprint.c (c_type_print_varspec_prefix): Pass through the
2884 passed_a_ptr flag when displaying typedef types.
2888 * ada-lang.c (coerce_unspec_val_to_type): Make sure that
2889 the optimized_out flag is preserved.
2893 * moxie-tdep.c (moxie_analyze_prologue): Update for function
2894 prologue changes in GCC.
2899 * gdbtypes.h (BOOL_PTR_CONVERSION_BADNESS): Rename to ...
2900 (BOOL_CONVERSION_BADNESS): ... this.
2901 * gdbtypes.c (BOOL_PTR_CONVERSION_BADNESS): Likewise.
2902 (rank_one_type): Allow all boolean conversions
2903 permitted by the standard.
2907 * python/py-newobjfileevent.c (create_new_objfile_event_object):
2908 Don't decref py_objfile.
2912 Do not enable -lmcheck by default when Python is enabled with
2914 * configure.ac: (python_has_threads) New variable, by testing
2915 if WITH_THREAD is defined in Python.h.
2916 Move --enable-lmcheck after --with-python.
2917 Do not enable -lmcheck by default if python_has_threads=yes.
2918 Warn if --enable-lmcheck and python_has_threads=yes.
2919 * configure: Regenerate.
2923 * mi/mi-cmds.c (mi_cmds): New macros DEF_MI_CMD_CLI
2924 DEF_MI_CMD_MI DEF_MI_CMD_CLI_1 and DEF_MI_CMD_CLI_1.
2925 Update some commands.
2926 * mi/mi-cmds.h (struct mi_cmd) <suppress_notification>: New field.
2927 * mi/mi-main.c (mi_cmd_execute): Set
2928 '*parse->cmd->suppress_notification' to 1.
2932 * mi/mi-cmds.c (mi_cmds): Add 'static'.
2936 * MAINTAINERS (Write After Approval): Add "Khoo Yit Phang".
2940 * main.c (print_gdb_help): Remove reference to
2941 --use-deprecated-index-sections.
2945 * cli/cli-cmds.c (max_user_call_depth): Add 'unsigned'.
2946 (init_cmds): Call add_setshow_uinteger_cmd for command
2947 'max-user-call-depth'.
2948 * cli/cli-script.c (execute_user_command): Add 'unsigned' to the
2949 declaration of 'max_user_call_depth'.
2950 * frame.c (backtrace_limit): Add 'unsigned'.
2951 (_initialize_frame): Call add_setshow_uinteger_cmd for command
2953 * remote.c (remoteaddresssize): Add 'unsigned'.
2954 (remote_address_masked): Change local var 'address_size' to
2956 (_initialize_remote): Call add_setshow_uinteger_cmd for
2957 'remoteaddresssize'.
2958 * top.c (history_size): Add 'unsigned'.
2959 (show_commands): Change local variables to 'unsigned'.
2960 (set_history_size_command): Don't check history_size is negative.
2961 Adjust the condition to call unstifle_history and set history_size
2968 * infcmd.c (default_print_one_register_info): New, factored out
2969 from default_print_registers_info.
2970 (default_print_registers_info): Use it. Mark value unavailable if
2972 (registers_info): Print user registers with
2973 default_print_one_register_info.
2978 * tui/tui-source.c (tui_source_is_displayed): Check if TUI_SRC_WIN
2979 is not NULL before referencing it.
2983 * breakpoint.c (parse_breakpoint_sals) <(*address) == NULL>: New
2984 variable pc. Call find_pc_line instead of find_pc_overlay, restore
2990 * auto-load.c (auto_load_objfile_script): Rename to ...
2991 (auto_load_objfile_script_1): ... here, change variable realname to
2992 parameter realname, document it, add return value, add variable retval.
2993 (auto_load_objfile_script): New function.
2997 * cli/cli-decode.c (print_doc_line): Keep skipping '.' and ',' not
2998 followed by a whitespace.
3003 * dwarf2read.c (dwarf2_locate_sections): Move variable aflag here.
3004 Move the SEC_HAS_CONTENTS check here - for any NAMES use.
3005 (dwarf2_locate_sections) <eh_frame>: Move the variable and check from
3010 * memattr.c (create_mem_region): Fix memory region overlapping
3015 * h8300-tdep.c (h8300_push_dummy_call): Replace unsafe alloca
3016 with xmalloc/cleanup.
3017 * mt-tdep.c (mt_push_dummy_call): Likewise.
3018 * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
3019 * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
3023 * jv-exp.y (push_expression_name): Add "." at the end of error
3028 Document how to return from "python-interactive" to GDB.
3029 * python/python.c (_initialize_python): Update documentation.
3033 * infrun.c (_initialize_infrun) <handle command help text>:
3034 Mention that multiple signals are supported.
3038 * infcmd.c (_initialize_infcmd) <signal command>: Fix typo in help
3043 * tracepoint.c (disconnect_tracing): Call set_tracepoint_num.
3044 (tfind_1): Don't call registers_changed, set_traceframe_num,
3045 and clear_traceframe_info.
3046 Call set_current_traceframe.
3047 (set_current_traceframe): call set_traceframe_num.
3051 * remote-sim.c (_initialize_remote_sim): Pass NULL argument to
3052 `register_inferior_data_with_cleanup', fixing regression on PowerPC64.
3056 Enable readline in Python in a GDB-specific way and block the
3057 standard Python readline module to prevent conflicts with GDB.
3058 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-gdb-readline.o.
3059 (SUBDIR_PYTHON_SRCS): Add python/py-gdb-readline.c.
3060 (py-gdb-readline.o): Add rule to compile python/py-gdb-readline.c.
3061 * python/py-gdb-readline.c: New file.
3062 * python/python-internal.h (gdbpy_initialize_gdb_readline): New
3064 * python/python.c (_initialize_python): Call
3065 gdbpy_initialize_gdb_readline.
3069 * defs.h: Include build-gnulib/config.h
3073 * arm-tdep.c (thumb_get_next_pc_raw): Mask off low bits for bx pc
3078 Add a new "python-interactive" command that starts a standard
3079 Python interactive prompt with "pi" as alias, and add "py" as
3080 an alias to "python".
3081 * NEWS: Mention the new commands.
3082 * python/python.c (eval_python_command): New function.
3083 (python_interactive_command): For "python-interactive" with
3084 arguments, call eval_python_command. For "python-interactive"
3085 without arguments, call PyRun_InteractiveLoop.
3086 (_initialize_python): Add "python-interactive" command with
3087 "pi" as alias, and add "py" as an alias to "python".
3091 * defs.h (quit_flag): Don't declare.
3092 (clear_quit_flag, check_quit_flag, set_quit_flag): Declare.
3093 (QUIT): Use new functions.
3094 * event-top.c (command_handler): Use clear_quit_flag.
3095 (handle_sigint): Use set_quit_flag.
3096 (async_request_quit): Use check_quit_flag. Don't check
3098 * exceptions.c (throw_exception): Use clear_quit_flag.
3099 * main.c (captured_main): Use clear_quit_flag.
3100 * python/python.c (clear_quit_flag, set_quit_flag)
3101 (check_quit_flag): New functions.
3102 * remote-sim.c (gdb_os_poll_quit): Use check_quit_flag,
3104 * remote.c (remote_wait_as): Use check_quit_flag,
3106 (remote_start_remote): Call QUIT.
3107 * symfile.c (load_progress): Use check_quit_flag.
3108 * top.c (command_loop): Use clear_quit_flag.
3109 (command_line_input): Call QUIT.
3110 * utils.c (quit_flag): Conditionally define.
3111 (clear_quit_flag, check_quit_flag, set_quit_flag): New
3113 (prompt_for_continue): Call QUIT. Use quit, not
3115 * remote-mips.c (mips_expect_timeout): Call QUIT.
3116 * monitor.c (monitor_expect): Call QUIT.
3120 * event-top.c (sigwinch_token, handle_sigwinch): Remove.
3121 (async_init_signals): Update.
3122 * utils.c (init_page_info): Don't use SIGWINCH_HANDLER.
3123 (SIGWINCH_HANDLER_BODY): Remove.
3127 * jit.c (jit_object_close_impl): Don't malloc the objfile
3129 * objfiles.c (allocate_objfile): Don't malloc the objfile
3131 (free_objfile): Don't free the objfile name.
3132 * objfiles.h (struct objfile) <name>: Update comment.
3133 * symfile.c (reread_symbols): Fix reference counting. Don't
3134 malloc objfile name.
3138 * windows-nat.c (windows_make_so): Use gdb_bfd_open.
3139 * symfile.c (bfd_open_maybe_remote): Use gdb_bfd_open.
3140 (symfile_bfd_open): Likewise.
3141 (generic_load): Likewise.
3142 * solib.c (solib_bfd_fopen): Use gdb_bfd_open.
3143 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
3145 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
3147 * rs6000-nat.c (add_vmap): Use gdb_bfd_open.
3148 * remote-mips.c (mips_load_srec): Use gdb_bfd_open.
3149 (pmon_load_fast): Likewise.
3150 * remote-m32r-sdi.c (m32r_load): Use gdb_bfd_open.
3151 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_open.
3152 * machoread.c (macho_symfile_read_all_oso): Use gdb_bfd_open.
3153 (macho_check_dsym): Likewise.
3154 * m32r-rom.c (m32r_load): Use gdb_bfd_open.
3155 (m32r_upload_command): Likewise.
3156 * gdb_bfd.h (gdb_bfd_cache): Declare.
3157 * gdb_bfd.c (struct gdb_bfd_data): New.
3158 (gdb_bfd_cache): New global.
3159 (struct gdb_bfd_cache_search): New.
3160 (hash_bfd): New function.
3162 (gdb_bfd_open): Likewise.
3163 (gdb_bfd_ref): Allocate a gdb_bfd_data and attach to the BFD.
3164 (gdb_bfd_unref): Remove closed BFD from cache. Update for
3166 * exec.c (exec_file_attach): Use gdb_bfd_open.
3167 * dsrec.c (load_srec): Use gdb_bfd_open.
3171 * dwarf2read.c (macro_start_file): Update.
3172 * objfiles.c (get_objfile_bfd_data): Initialize macro_cache.
3173 (free_objfile_per_bfd_storage): Destroy macro_cache.
3174 (allocate_objfile, free_objfile): Update.
3175 * objfiles.h (struct objfile_per_bfd_storage) <macro_cache>:
3177 (struct objfile) <macro_cache>: Remove.
3178 * symfile.c (reread_symbols): Update.
3179 * symmisc.c (print_symbol_bcache_statistics): Update.
3180 (print_objfile_statistics): Update.
3184 * elfread.c (elf_symtab_read): Update.
3185 * objfiles.c (objfiles_bfd_data): New global.
3186 (get_objfile_bfd_data, free_objfile_per_bfd_storage)
3187 (objfile_bfd_data_free, set_objfile_per_bfd): New functions.
3188 (allocate_objfile, free_objfile): Update.
3189 (_initialize_objfiles): Initialize objfiles_bfd_data.
3190 * objfiles.h (struct objfile_per_bfd_storage): New.
3191 (struct objfile) <per_bfd>: New field.
3192 <filename_cache>: Remove.
3193 (set_objfile_per_bfd): Declare.
3194 * symfile.c (reread_symbols): Update. Call
3195 set_objfile_per_bfd.
3196 (allocate_symtab): Update.
3197 * symmisc.c (print_symbol_bcache_statistics): Update.
3198 (print_objfile_statistics): Print the size of the BFD obstack.
3202 * gdb_bfd.h: Include registry.h. Use DECLARE_REGISTRY.
3203 * gdb_bfd.c: Use DEFINE_REGISTRY.
3204 (struct gdb_bfd_data): Add REGISTRY_FIELDS.
3205 (gdb_bfd_ref): Call bfd_alloc_data.
3206 (gdb_bfd_unref): Call bfd_free_data.
3210 * registry.h (struct registry_fields): New.
3211 (REGISTRY_FIELDS): Redefine.
3212 (REGISTRY_ACCESS_FIELD): New macro.
3213 (DEFINE_REGISTRY): Add ACCESS argument. Update defined
3218 * auto-load.c (_initialize_auto_load): Update.
3219 * solib-svr4.c (_initialize_svr4_solib): Update
3220 * solib-dsbt.c (_initialize_dsbt_solib): Update.
3221 * solib-darwin.c (_initialize_darwin_solib): Update.
3222 * registry.h: New file.
3223 * python/py-progspace.c (gdbpy_initialize_pspace): Update.
3224 * python/py-inferior.c (gdbpy_initialize_inferior): Update.
3225 * progspace.h: Include registry.h. Use DECLARE_REGISTRY.
3226 (register_program_space_data_with_cleanup)
3227 (register_program_space_data, program_space_alloc_data)
3228 (clear_program_space_data, set_program_space_data)
3229 (program_space_data): Don't declare.
3230 * progspace.c: Use DEFINE_REGISTRY.
3231 (struct program_space_data, struct
3232 program_space_data_registration, struct
3233 program_space_data_registry, program_space_data_registry)
3234 (register_program_space_data_with_cleanup)
3235 (register_program_space_data, program_space_alloc_data)
3236 (program_space_free_data, clear_program_space_data)
3237 (set_program_space_data, program_space_data): Remove.
3238 * objfiles.h: Include registry.h. Use DECLARE_REGISTRY.
3239 (struct objfile) <data, num_data>: Replace with REGISTRY_FIELDS.
3240 (register_objfile_data_with_cleanup, register_objfile_data)
3241 (clear_objfile_data, set_objfile_data, objfile_data): Don't
3243 * objfiles.c: Use DEFINE_REGISTRY.
3244 (struct objfile_data, struct objfile_data_registration, struct
3245 objfile_data_registry, objfile_data_registry)
3246 (register_objfile_data_with_cleanup, register_objfile_data)
3247 (objfile_alloc_data, objfile_free_data, clear_objfile_data)
3248 (set_objfile_data, objfile_data): Remove.
3249 (_initialize_objfiles): Update.
3250 * jit.c (_initialize_jit): Update.
3251 * inflow.c (_initialize_inflow): Update.
3252 * inferior.h: Include registry.h. Use DECLARE_REGISTRY.
3253 (struct inferior) <data, num_data>: Replace with REGISTRY_FIELDS.
3254 (register_inferior_data_with_cleanup, register_inferior_data)
3255 (clear_inferior_data, set_inferior_data, inferior_data): Don't
3257 * inferior.c: Use DEFINE_REGISTRY.
3258 (struct inferior_data, struct inferior_data_registration, struct
3259 inferior_data_registry, inferior_data_registry)
3260 (register_inferior_data_with_cleanup, register_inferior_data)
3261 (inferior_alloc_data, inferior_free_data clear_inferior_data)
3262 (set_inferior_data, inferior_data): Remove.
3263 * auxv.c (_initialize_auxv): Update.
3264 * ada-lang.c (_initialize_ada_language): Update.
3265 * breakpoint.c (_initialize_breakpoint): Update.
3266 * i386-nat.c (i386_use_watchpoints): Update.
3270 * exec.c (exec_close, exec_file_attach): Update.
3271 (add_to_section_table): Initialize 'key' field.
3272 (add_target_sections, remove_target_sections): Add 'key' argument.
3273 * exec.h (add_target_sections, remove_target_sections): Add
3275 * solib.c (solib_map_sections, update_solib_list, clear_solib)
3276 (reload_shared_libraries_1): Update.
3277 * target.h (struct target_section) <key>: New field.
3281 * cli/cli-cmds.c (filter_sals): Handle nelts == 0 case.
3285 * symfile.c (allocate_symtab): Use host_address_to_string
3286 function instead of cast of pointer to long which is not
3287 compatible with x86_64-w64-mingw32 build.
3291 * mips-tdep.c (is_octeon): New function.
3292 (is_octeon_bbit_op): New function.
3293 (mips32_next_pc): Handle Octeon's bbit instructions.
3294 (mips32_instruction_has_delay_slot): Likewise.
3298 * mips-tdep.c (mips32_next_pc): Fix line spacing of the comment
3299 before the function.
3303 * mips-tdep.c (mips32_next_pc): Consolidate calls to itype_op.
3308 * c-typeprint.c (c_type_print_varspec_prefix): Pass
3309 -1 for SHOW to c_type_print_base for METHODPTR and MEMBERPTR.
3313 * Makefile.in (HFILES_NO_SRCDIR): Fix a typo: golang.h -> go-lang.h.
3314 The typo broke "make TAGS".
3323 * gdbtypes.c (strict_type_checking): New variable.
3324 (show_strict_type_checking): New function.
3325 (rank_one_type): Return NS_POINTER_INTEGER_CONVERSION_BADNESS
3326 if strict type checking is disabled.
3327 (_initialize_gdbtypes): Add "check type" subcommand.
3328 * gdbtypes.h (NS_INTEGER_POINTER_CONVERSION_BADNESS): New struct.
3332 * language.h (type_mode): Remove.
3333 (type_check): Remove.
3334 (struct language_defn): Remove la_type_check.
3335 (STRICT_TYPE): Remove unused macro.
3336 (type_error): Remove.
3337 * language.c (set_type_range_case): Renamed to ...
3338 (set_range_case): ... this. Update all callers.
3339 Remove type_mode/type_check.
3340 (type_mode): Remove.
3341 (type_check): Remove.
3342 (show_type_command): Remove.
3343 (set_type_command): Remove.
3344 (language_info): Remove type checking output.
3345 (type_error): Remove unused function.
3346 (range_error): Update comment.
3347 (unknown_language_defn): Remove la_type_check.
3348 (auto_language_defn): Likewise.
3349 (local_language_defn): Likewise.
3350 (_initialize_language): Remove "check type" subcommand.
3351 * ada-lang.c (ada_language_defn): Remove la_type_check.
3352 * c-lang.c (c_language_defn): Likewise.
3353 (cplus_language_defn): Likewise.
3354 (asm_language_defn): Likewise.
3355 (minimal_language_defn): Likewise.
3356 * d-lang.c (d_language_defn): Likewise.
3357 * f-lang.c (f_language_defn): Likewise.
3358 * go-lang.c (go_language_defn): Likewise.
3359 * jv-lang.c (java_language_defn): Likewise.
3360 * m2-lang.c (m2_language_defn): Likewise.
3361 * objc-lang.c (objc_language_defn): Likewise.
3362 * opencl-lang.c (opencl_language_defn): Likewise.
3363 * p-lang.c (pascal_language_defn): Likewise.
3367 * infcmd.c (_initialize_infcmd): Remove trailing ) in next help text.
3371 * ia64-hpux-nat.c (ia64_hpux_get_register_from_save_state_t):
3373 (ia64_hpux_xfer_memory): Check if inferior_ptid is known before
3374 using the regache. Use ia64_hpux_get_register_from_save_state_t
3375 to access the bsp and bspstore registers if not.
3379 * breakpoint.h (detach_breakpoints): pid parameter is now a ptid.
3380 * breakpoint.c (detach_breakpoints): Change pid parameter into
3381 a ptid. Adjust code accordingly.
3382 * infrun.c (handle_inferior_event): Delete variable child_pid.
3383 Update call to detach_breakpoints to pass the child ptid for
3385 * linux-nat.c (linux_nat_iterate_watchpoint_lwps): Remove
3386 assert that inferior_ptid's lwp is zero.
3387 (linux_handle_extended_wait): Update call to detach_breakpoints.
3388 * inf-ttrace.c (inf_ttrace_follow_fork): Update call to
3393 * inf-ttrace.c (inf_ttrace_follow_fork): When following the
3394 parent, only call detach_breakpoints if tts.tts_event ==
3399 * dwarf2-frame.c (dwarf2_frame_cache): Use
3400 get_frame_address_in_block instead of get_frame_pc as
3401 the bound for executing the frame's FDE.
3405 * gdbtypes.h (enum type_code): Define TYPE_CODE_BITSTRING -1.
3406 * arm-tdep.c (arm_type_align): Remove code handling TYPE_CODE_BITSTRING.
3407 * c-typeprint.c (c_type_print_varspec_prefix): Likewise.
3408 (c_type_print_varspec_suffix): Likewise.
3409 * eval.c (evaluate_subexp_standard): Likewise.
3410 * f-typeprint.c (f_type_print_varspec_prefix): Likewise.
3411 (f_type_print_varspec_suffix): Likewise.
3412 * gdbtypes.c (is_scalar_type): Likewise.
3413 (recursive_dump_type): Likewise.
3414 * infcall.c (value_arg_coerce): Likewise.
3415 * m2-valprint.c (m2_val_print): Likewise.
3416 * p-typeprint.c (pascal_type_print_varspec_prefix): Likewise.
3417 (pascal_type_print_varspec_suffix): Likewise.
3418 (pascal_type_print_base): Likewise.
3419 * p-valprint.c (pascal_val_print): Likewise.
3420 (pascal_val_print): Likewise.
3421 * valops.c (value_slice): Likewise.
3422 * valprint.c (scalar_type_p): Likewise.
3423 * valarith.c (value_bitstring_subscript): Remove.
3424 (value_concat): Remove code handling TYPE_CODE_BITSTRING.
3425 Remove comment on TYPE_CODE_BITSTRING.
3427 * stabsread.c (read_type): Don't set TYPE_CODE (type) to
3428 TYPE_CODE_BITSTRING.
3430 * python/py-type.c (pyty_codes): Move ENTRY (TYPE_CODE_BITSTRING) to
3435 * tracepoint.c (trace_find_none_command): Remove.
3436 (_initialize_tracepoint): Call add_alias_cmd for "tfind none".
3440 * remote.c (handle_notification): Remove parameter 'length'.
3441 (putpkt_binary, getpkt_or_notif_sane_1): Caller update.
3445 * gdbtypes.c (opaque_type_resolution): Make static.
3446 Add missing comment.
3447 (overload_debug): Add missing comment.
3448 (show_opaque_type_resolution): Likewise.
3449 (show_overload_debug): Likewise.
3450 (print_bit_vector): Remove unnecessary forward declaration.
3451 (print_arg_types): Likewise.
3452 (dump_fn_fieldlists): Likewise.
3453 (print_cplus_stuff): Likewise.
3457 * gdb_bfd.c (struct gdb_bfd_data) <archive_bfd>: New field.
3458 (gdb_bfd_ref): Initialize new field.
3459 (gdb_bfd_unref): Unref the archive BFD.
3460 (gdb_bfd_openr_next_archived_file): Acquire a reference to the
3466 * python/py-bpevent.c (create_breakpoint_event_object): Update
3468 * python/py-event.c (evpy_add_attribute): Update comment.
3469 * python/py-exitedevent.c (create_exited_event_object): Fix
3470 reference counting and error handling.
3471 * python/py-newobjfileevent.c (create_new_objfile_event_object):
3472 Fix reference counting.
3473 * python/py-signalevent.c (create_signal_event_object): Fix
3474 reference counting and error handling.
3475 * python/py-stopevent.c (emit_stop_event): Fix reference
3477 * python/py-threadevent.c (get_event_thread): Return a
3479 * python/py-type.c (convert_field): Fix reference counting.
3483 * dwarf2read.c (dwarf_decode_macro_bytes)
3484 <DW_MACRO_GNU_transparent_include>: Use pointer to included data
3489 * infcmd.c (_initialize_infcmd): Update help text for the signal,
3490 stepi, nexti, finish, next, step, jump, and continue commands.
3491 * infrun.c (_initialize_infrun): Update help text for the handle
3496 * gdbtypes.c (struct extra): Delete, unused.
3498 * gdbtypes.c: Whitespace cleanup.
3499 (address_space_name_to_int): Remove "extern" from definition.
3500 (_initialize_gdbtypes): Declare with initialize_file_ftype.
3502 * gdbtypes.c (make_pointer_type): Remove redundant setting of
3503 TYPE_POINTER_TYPE (type).
3507 * solib-svr4.c (svr4_free_library_list): Use free_so.
3511 * .gitignore: Add go-exp.c.
3515 * value.c (show_convenience): Tweak comment.
3516 (_initialize_values): Mention convenience functions in the help text
3517 for "show convenience".
3521 * std-operator.def: Remove TERNOP_SLICE_COUNT.
3522 * breakpoint.c (watchpoint_exp_is_const): Remove handling to
3524 * eval.c (evaluate_subexp_standard): Likewise.
3525 * expprint.c (print_subexp_standard): Likewise.
3526 (dump_subexp_body_standard): Likewise.
3527 * parse.c (operator_length_standard): Likewise.
3531 * std-operator.def: Remove OP_BITSTRING.
3532 * breakpoint.c (watchpoint_exp_is_const): Update.
3533 * eval.c (evaluate_subexp_standard): Remove handling to
3535 * expprint.c (print_subexp_standard): Likewise.
3536 (dump_subexp_body_standard): Likewise.
3537 * parse.c (operator_length_standard): Likewise.
3538 * valops.c (value_bitstring): Remove.
3539 * value.h: Remove the declaration of 'value_bitstring'.
3543 * linespec.c (find_methods): Remove unused variables `i1' and
3545 (decode_line_full): Likewise for `arg_start'.
3549 * gdb_bfd.c (gdb_bfd_unref): Remove unused variable `slot'.
3550 (zlib_decompress_section): Likewise for `section_data'.
3551 (gdb_bfd_map_section): Likewise for `buf' and `retbuf'.
3555 Add $_memeq, $_regex, $_streq, $_strlen convenience functions.
3556 * NEWS: Document them.
3557 * data-directory/Makefile.in (PYTHON_FILES): Add function/__init__.py,
3559 * python/py-type.c (typy_array_1): New function.
3560 (typy_array): Call it.
3561 (typy_vector): New function.
3562 (type_object_methods): Add "vector".
3563 * python/lib/gdb/function/__init__.py: New file.
3564 * python/lib/gdb/function/strfns.py: New file.
3568 * python/py-type.c (convert_field): Use gdb_py_long_from_longest
3569 for TYPE_FIELD_BITPOS.
3570 (typy_get_sizeof): Likewise for TYPE_LENGTH.
3575 * common/vec.h (VEC_merge): Define.
3576 (DEF_VEC_ALLOC_FUNC_I): Add a merge helper.
3577 (DEF_VEC_ALLOC_FUNC_P): Likewise.
3578 (DEF_VEC_ALLOC_FUNC_O): Likewise.
3579 * completer.c: Include gdb_signals.h.
3580 (signal_completer): Define.
3581 * completer.h (signal_completer): Add prototype.
3582 * infcmd.c (_initialize_infcmd): Assign the command
3583 completer for "signal" to handle_completer.
3584 * infrun.c: Include completer.h.
3585 (handle_completer): Define.
3586 (_initialize_infrun): Declare a new local variable c. Store the
3587 result of add_com("handle") to it. Assign the command
3588 completer for "handle" to handle_completer.
3592 * cli/cli-decode.c (set_cmd_prefix): New.
3593 (lookup_cmd_for_prefixlist): New.
3594 (add_prefix_cmd): Call set_cmd_prefix and update field 'prefix'
3595 of each cmd_list_element in *prefixlist.
3596 (add_setshow_cmd_full): set_cmd_prefix.
3597 (add_alias_cmd): Likewise.
3598 * cli/cli-decode.h (struct cmd_list_element) <prefix>: New field.
3599 Declare 'auto_boolean_enums'.
3600 * cli/cli-setshow.c: Include "observer.h".
3601 (notify_command_param_changed_p): New.
3602 (add_setshow_auto_boolean_cmd): Move auto_boolean_enums out.
3604 (do_setshow_command): Split it to ...
3605 (do_set_command, do_show_command): ... them. New.
3606 (do_set_command): Call observer_notify_command_param_changed if
3607 notify_command_param_changed_p returns true.
3608 (cmd_show_list): Caller update.
3609 * auto-load.c (set_auto_load_cmd): Likewise.
3610 * remote.c (show_remote_cmd): Likewise.
3611 * cli/cli-setshow.h: Update declarations.
3612 * top.c (execute_command): Call do_set_command and do_show_command.
3614 * NEWS: Mention new MI notification.
3615 * mi/mi-interp.c: Declare mi_command_param_changed.
3616 (mi_interpreter_init): Attach mi_command_param_changed to
3617 observer command_param_changed.
3618 (mi_command_param_changed): New.
3619 Remove mi_suppress_breakpoint_notifications.
3620 Define global variable mi_suppress_notification.
3621 (mi_breakpoint_created): Update.
3622 (mi_breakpoint_deleted): Likewise.
3623 (mi_breakpoint_modified): Likewise.
3624 * mi/mi-main.c (mi_cmd_execute): Likewise. Check command
3625 'gdb-set' and set mi_suppress_notification.
3626 * mi/mi-main.h: (mi_suppress_notification): New struct.
3631 * fbsd-nat.h (fbsd_find_memory_regions): Use find_memory_region_ftype.
3635 * cli/cli-cmds.c (enablebreaklist): Move it to breakpoint.c.
3636 (skiplist): Move it to skip.c.
3637 (init_cmd_lists): Remove code setting enablebreaklist and
3639 * breakpoint.c (enablebreaklist): Moved from cli/cli-cmds.c.
3640 * cli/cli-cmds.h: Remove declaration of enablebreaklist and
3642 * gdbcmd.h: Likewise.
3643 * skip.c (_initialize_step_skip): Move 'skiplist' from
3648 * cli/cli-dump.c: Add 'static' to some cmd_list_element variables.
3649 * gnu-nat.c, symfile.c: Likewise.
3653 * utils.c (prompt_for_continue_wait_time): New static global.
3654 (make_command_stats_cleanup): Initialize it.
3655 (report_command_stats): Subtract time waiting for user.
3656 (prompt_for_continue): Track time waiting for user.
3657 (defaulted_query): Track time waiting for user.
3661 * eval.c (evaluate_subexp_standard): Fix thinko in handling
3663 * expprint.c (print_subexp_standard, case OP_TYPE): New.
3664 (print_subexp_standard, case UNOP_CAST_TYPE): Don't increment pos.
3665 (print_subexp_standard, case UNOP_DYNAMIC_CAST): Ditto.
3666 (print_subexp_standard, case UNOP_REINTERPRET_CAST): Ditto.
3667 (print_subexp_standard, case UNOP_MEMVAL_TYPE): Ditto.
3668 (dump_subexp_body_standard, case UNOP_DYNAMIC_CAST): Don't increment
3670 (dump_subexp_body_standard, case UNOP_REINTERPRET_CAST): Ditto.
3671 (dump_subexp_body_standard, case UNOP_CAST_TYPE): Ditto.
3672 (dump_subexp_body_standard, case UNOP_MEMVAL_TYPE): Ditto.
3673 (dump_prefix_expression): Handle OP_TYPE.
3677 * breakpoint.c (parse_breakpoint_sals): Remove unused variable
3682 * linux-thread-db.c: #include "gdb_vecs.h".
3683 (try_thread_db_load_from_pdir_1): New arg "subdir". All callers
3685 (try_thread_db_load_from_pdir): New arg "subdir". All callers updated.
3686 (thread_db_load_search): Use a vector to iterate over path elements.
3687 Handle text appearing after "$pdir".
3689 * gdb_string.h: Moved to ...
3690 * common/gdb_string.h: ... here.
3691 * common/vec.h: Remove #ifndef GDBSERVER conditional inclusion of
3692 gdb_string.h and gdb_assert.h.
3696 * tic6x-tdep.c (tic6x_register_to_value): Remove.
3697 (tic6x_value_to_register): Likewise.
3698 (tic6x_gdbarch_init): Don't call set_gdbarch_register_to_value
3699 and set_gdbarch_value_to_register.
3705 * defs.h (find_memory_region_ftype): New comment. New arg modified.
3706 * fbsd-nat.c (fbsd_find_memory_regions): Add the passed modified value.
3707 * gcore.c (gcore_create_callback): New function comment. Add modified
3708 parameter. Only write modified regions. Set SEC_READONLY exactly
3709 according to MODIFIED.
3710 (objfile_find_memory_regions): Ignore separate debug info files. Ass
3711 the passed modified value to FUNC.
3712 * gnu-nat.c (gnu_find_memory_regions): Add the passed modified value.
3713 * linux-tdep.c (linux_find_memory_regions): Try to reads smaps file
3714 first. New variables modified and has_anonymous. Parse the lines of
3715 smaps file. Add the passed MODIFIED value to FUNC.
3716 * procfs.c (find_memory_regions_callback): Add the passed modified
3721 * dwarf2-frame.c (clear_pointer_cleanup): New function.
3722 (dwarf2_frame_cache): Use it.
3723 * frame-unwind.h (frame_sniffer_ftype): Document prologue
3724 cache initialization constraint.
3729 * varobj.c (update_dynamic_varobj_children): Don't call
3735 * cli/cli-cmds.c (list_command): Filter 'sals_end'.
3739 * NEWS: New entry for 'cd' default parameters.
3740 * cli/cli-cmds.c (cd_command): Replace error_no_arg by DIR assignment.
3744 * dwarf2-frame.c (dwarf2_frame_cache): Call do_cleanups before
3749 * inf-child.c (inf_child_fileio_pwrite): If pwrite fails, fall back
3750 to attempting lseek/write.
3751 (inf_child_fileio_pread): Likewise for pread.
3755 * dwarf2loc.c (entry_values_debug): Add 'unsigned'.
3756 (_initialize_dwarf2loc): Call add_setshow_zuinteger_cmd instead of
3757 add_setshow_zinteger_cmd.
3758 * dwarf2loc.h: Update the declaration of 'entry_values_debug'.
3759 * dwarf2read.c (dwarf2_die_debug): Add 'unsigned'.
3760 (_initialize_dwarf2_read): Call add_setshow_zuinteger_cmd
3761 instead of add_setshow_zinteger_cmd.
3762 * darwin-nat.c (dwarwin_debug_flag): Add 'unsigned'.
3763 (_initialize_darwin_inferior): Call add_setshow_zuinteger_cmd
3764 instead of add_setshow_zinteger_cmd.
3765 * frame.c (frame_debug): Add 'unsigned'.
3766 (_intialize_frame): Call add_setshow_zuinteger_cmd instead of
3767 add_setshow_zinteger_cmd.
3768 * frame.h: Update the declaration of 'frame_debug'.
3769 * gdbtypes.c (overload_debug): Add 'unsigned'.
3770 (_initialize_gdbtypes): Call add_setshow_zuinteger_cmd instead of
3771 add_setshow_zinteger_cmd.
3772 * inferior.h: Update declaration of 'debug_infrun'.
3773 * infrun.c (debug_infrun): Add 'unsigned'.
3774 (_initialize_infrun): Call add_setshow_zuinteger_cmd instead of
3775 add_setshow_zinteger_cmd.
3776 * jit.c (jit_debug): Add 'unsigned'.
3777 (_initialize_jit): Call add_setshow_zuinteger_cmd instead of
3778 add_setshow_zinteger_cmd.
3779 * linux-nat.c (debug_linux_nat): Add 'unsigned'.
3780 (_initialize_linux_nat): Call add_setshow_zuinteger_cmd
3781 instead of add_setshow_zinteger_cmd.
3782 * linux-thread-db.c (libthread_db_debug): Add 'unsigned'.
3783 (_initialize_thread_db): Call add_setshow_zuinteger_cmd instead of
3784 add_setshow_zinteger_cmd.
3785 * machoread.c (mach_o_debug_level): Add 'unsigned'.
3786 (_initialize_machoread): Call add_setshow_zuinteger_cmd
3787 instead of add_setshow_zinteger_cmd.
3788 * mi/mi-cmd-var.c: Update the declaration of 'varobjdebug'.
3789 * microblaze-tdep.c (microblaze_debug_flag): Add 'unsigned'.
3790 (_initialize_microblaze_tdep): Call add_setshow_zuinteger_cmd
3791 intead of add_setshow_zinteger_cmd.
3792 * mips-tdep.c (mips_debug): Add 'unsigned'.
3793 (_initialize_mips_tdep): Call add_setshow_zuinteger_cmd
3794 instead of add_setshow_zinteger_cmd.
3795 * monitor.c (monitor_debug): Add 'unsigned'.
3796 (_initialize_remote_monitors): Call add_setshow_zuinteger_cmd instead of
3797 add_setshow_zinteger_cmd.
3798 * observer.c (observer_debug): Add 'unsigned'.
3799 (_initialize_observer): Call add_setshow_zuinteger_cmd instead of
3800 add_setshow_zinteger_cmd.
3801 * parse.c (expressiondebug): Add 'unsigned'.
3802 (_initialize_parse): Call add_setshow_zuinteger_cmd instead of
3803 add_setshow_zinteger_cmd.
3804 * record.c (record_debug): Add 'unsigned'.
3805 (_initialize_record): Call add_setshow_zuinteger_cmd instead of
3806 add_setshow_zinteger_cmd.
3807 * record.h: Update the declaration of 'record_debug'.
3808 * stap-probe.c (stap_expression_debug): Add 'unsigned'.
3809 (_initialize_stap_probe): Call add_setshow_zuinteger_cmd instead of
3810 add_setshow_zinteger_cmd.
3811 * serial.c (global_serial_debug_p): Add 'unsigned'.
3812 (_initialize_serial): Call add_setshow_zuinteger_cmd instead of
3813 add_setshow_zinteger_cmd.
3814 * solib-dsbt.c (solib_dsbt_debug): Add 'unsigned'.
3815 (_initialize_dsbt_solib): Call add_setshow_zuinteger_cmd instead of
3816 add_setshow_zinteger_cmd.
3817 * solib-frv.c (solib_frv_debug): Add 'unsigned'.
3818 (_initialize_frv_solib): Call add_setshow_zuinteger_cmd instead of
3819 add_setshow_zinteger_cmd.
3820 * target.c (targetdebug): Add 'unsigned'.
3821 (initialize_targets): Call add_setshow_zuinteger_cmd instead of
3822 add_setshow_zinteger_cmd.
3823 * valops.c (overload_debug): Add 'unsigned'.
3824 * varobj.c (varobjdebug): Add 'unsigned'.
3825 (_initialize_varobj): Call add_setshow_zuinteger_cmd instead of
3826 add_setshow_zinteger_cmd.
3827 * xtensa-tdep.c (xtensa_debug_level): Add 'unsigned'.
3828 (_initialize_xtensa_tdep): Call add_setshow_zuinteger_cmd
3829 instead of add_setshow_zinteger_cmd.
3831 * arch-utils.h: Remove the declaration of 'gdbarch_debug'.
3832 * gdbarch.sh (gdbarch_debug): Add 'unsigned'.
3833 (extern void _initialize_gdbarch): Call add_setshow_zuinteger_cmd
3834 instead of add_setshow_zinteger_cmd.
3835 * gdbarch.c, gdbarch.h: Re-generated.
3839 * nto-tdep.c: Don't include cli/cli-decode.h and
3841 (_initialize_nto_tdep): Remove.
3842 * nto-tdep.h (struct nto_target_ops) <internal_debugging>:
3844 Remove macro nto_internal_debugging.
3848 * configure.tgt (m32c-*-*) [gdb_target_obs]: Remove prologue-value.o.
3849 (mep-*-*) [gdb_target_obs]: Likewise.
3853 * ppc-linux-tdep.c (ppc_linux_init_abi): Register
3854 linux_get_siginfo_type.
3858 * infcall.c (call_function_by_hand): Move BP_ADDR comment to
3860 (call_function_by_hand) <ON_STACK>: Call write_memory with
3861 gdbarch_breakpoint_from_pc, if possible.
3862 (call_function_by_hand) <AT_ENTRY_POINT>: The BP_ADDR comment is moved
3867 * tracepoint.c: Add 'static' for some variables.
3871 * go32-nat.c: Declare _initialize_go32_nat.
3872 * ser-go32.c: Declare _initialize_ser_dos.
3873 * top.c (do_chdir_cleanup): Add 'static'.
3877 * linespec.c (linespec_lex_number): A number followed
3878 by quotes is a valid number, too.
3882 * remote-sim.c (gdb_os_poll_quit): Don't check immediate_quit.
3886 * arm-linux-nat.c (arm_linux_hw_breakpoint_initialize): Do not
3887 attempt to 4-byte-align HW breakpoint addresses for Thumb.
3891 * varobj.c (varobj_invalidate_iter): All varobj must be marked as
3892 invalid or reevaluated to prevent prevent references to possibly
3893 delete'd type objects being left in the varobj.
3898 * copying.awk: Print buffer-read-only and vi ro markers.
3899 * copying.c: Rebuild.
3900 * gdbarch.sh (copyright): Print buffer-read-only and vi ro markers.
3901 * gdbarch.c, gdbarch.h: Rebuild.
3902 * target-descriptions.c (maint_print_c_tdesc_cmd): Print
3903 buffer-read-only and vi ro markers.
3904 * features/arm-with-iwmmxt.c: Rebuild.
3905 * features/arm-with-m-fpa-layout.c: Rebuild.
3906 * features/arm-with-m-vfp-d16.c: Rebuild.
3907 * features/arm-with-m.c: Rebuild.
3908 * features/arm-with-neon.c: Rebuild.
3909 * features/arm-with-vfpv2.c: Rebuild.
3910 * features/arm-with-vfpv3.c: Rebuild.
3911 * features/i386/amd64-avx-linux.c: Rebuild.
3912 * features/i386/amd64-avx.c: Rebuild.
3913 * features/i386/amd64-linux.c: Rebuild.
3914 * features/i386/amd64.c: Rebuild.
3915 * features/i386/i386-avx-linux.c: Rebuild.
3916 * features/i386/i386-avx.c: Rebuild.
3917 * features/i386/i386-linux.c: Rebuild.
3918 * features/i386/i386-mmx-linux.c: Rebuild.
3919 * features/i386/i386-mmx.c: Rebuild.
3920 * features/i386/i386.c: Rebuild.
3921 * features/i386/x32-avx-linux.c: Rebuild.
3922 * features/i386/x32-avx.c: Rebuild.
3923 * features/i386/x32-linux.c: Rebuild.
3924 * features/i386/x32.c: Rebuild.
3925 * features/mips-dsp-linux.c: Rebuild.
3926 * features/mips-linux.c: Rebuild.
3927 * features/mips64-dsp-linux.c: Rebuild.
3928 * features/mips64-linux.c: Rebuild.
3929 * features/rs6000/powerpc-32.c: Rebuild.
3930 * features/rs6000/powerpc-32l.c: Rebuild.
3931 * features/rs6000/powerpc-403.c: Rebuild.
3932 * features/rs6000/powerpc-403gc.c: Rebuild.
3933 * features/rs6000/powerpc-405.c: Rebuild.
3934 * features/rs6000/powerpc-505.c: Rebuild.
3935 * features/rs6000/powerpc-601.c: Rebuild.
3936 * features/rs6000/powerpc-602.c: Rebuild.
3937 * features/rs6000/powerpc-603.c: Rebuild.
3938 * features/rs6000/powerpc-604.c: Rebuild.
3939 * features/rs6000/powerpc-64.c: Rebuild.
3940 * features/rs6000/powerpc-64l.c: Rebuild.
3941 * features/rs6000/powerpc-7400.c: Rebuild.
3942 * features/rs6000/powerpc-750.c: Rebuild.
3943 * features/rs6000/powerpc-860.c: Rebuild.
3944 * features/rs6000/powerpc-altivec32.c: Rebuild.
3945 * features/rs6000/powerpc-altivec32l.c: Rebuild.
3946 * features/rs6000/powerpc-altivec64.c: Rebuild.
3947 * features/rs6000/powerpc-altivec64l.c: Rebuild.
3948 * features/rs6000/powerpc-cell32l.c: Rebuild.
3949 * features/rs6000/powerpc-cell64l.c: Rebuild.
3950 * features/rs6000/powerpc-e500.c: Rebuild.
3951 * features/rs6000/powerpc-e500l.c: Rebuild.
3952 * features/rs6000/powerpc-isa205-32l.c: Rebuild.
3953 * features/rs6000/powerpc-isa205-64l.c: Rebuild.
3954 * features/rs6000/powerpc-isa205-altivec32l.c: Rebuild.
3955 * features/rs6000/powerpc-isa205-altivec64l.c: Rebuild.
3956 * features/rs6000/powerpc-isa205-vsx32l.c: Rebuild.
3957 * features/rs6000/powerpc-isa205-vsx64l.c: Rebuild.
3958 * features/rs6000/powerpc-vsx32.c: Rebuild.
3959 * features/rs6000/powerpc-vsx32l.c: Rebuild.
3960 * features/rs6000/powerpc-vsx64.c: Rebuild.
3961 * features/rs6000/powerpc-vsx64l.c: Rebuild.
3962 * features/rs6000/rs6000.c: Rebuild.
3963 * features/s390-linux32.c: Rebuild.
3964 * features/s390-linux32v1.c: Rebuild.
3965 * features/s390-linux32v2.c: Rebuild.
3966 * features/s390-linux64.c: Rebuild.
3967 * features/s390-linux64v1.c: Rebuild.
3968 * features/s390-linux64v2.c: Rebuild.
3969 * features/s390x-linux64.c: Rebuild.
3970 * features/s390x-linux64v1.c: Rebuild.
3971 * features/s390x-linux64v2.c: Rebuild.
3972 * features/tic6x-c62x-linux.c: Rebuild.
3973 * features/tic6x-c62x.c: Rebuild.
3974 * features/tic6x-c64x-linux.c: Rebuild.
3975 * features/tic6x-c64x.c: Rebuild.
3976 * features/tic6x-c64xp-linux.c: Rebuild.
3977 * features/tic6x-c64xp.c: Rebuild.
3981 * c-exp.y (classify_name): Avoid assignment in condition.
3985 * amd64-windows-tdep.c: Include "frame.h".
3986 (amd64_windows_skip_trampoline_code): New function.
3987 (amd64_windows_init_abi): Add trampoline registration.
3991 * tracepoint.c (cur_traceframe_number): Remove.
3992 (set_tfile_traceframe): Remove.
3993 (tfile_trace_find, tfile_fetch_registers): Update callers.
3994 (tfile_xfer_partial, tfile_get_trace_state_variable_value): Likewise.
3995 (tfile_open, tfile_trace_find): Likewise.
3999 * thread.c (switch_to_thread): Don't call registers_changed.
4003 * Makefile.in (SFILES): Remove objc-exp.y.
4004 (YYFILES): Remove objc-exp.c.
4005 (YYOBJ): Remove objc-exp.o.
4006 (local-maintainer-clean): Don't mention objc-exp.c.
4007 * c-exp.y: Include objc-lang.h.
4008 (%union) <class>: New field.
4009 (NSSTRING, SELECTOR, CLASSNAME, OBJC_LBRAC): New tokens.
4010 (exp): Clone subscript production for OBJC_LBRAC. Add various
4011 Objective C productions.
4012 (msglist, msgarglist, msgarg): New productions.
4013 (array_mod, func_mod, operator): Clone productions for
4015 (parse_string_or_char): Handle '@' strings.
4016 (lex_one_token): Return OBJC_LBRAC. Recognize @selector.
4017 (classify_name): Check la_name_of_this. Recognize ObjC class
4019 * objc-exp.y: Remove.
4020 * objc-lang.c (objc_language_defn): Use c_parse, c_error.
4021 * objc-lang.h (objc_parse, objc_error): Don't declare.
4025 * python/py-inferior.c (infpy_threads): Call update_thread_list ().
4029 * auto-load.c (auto_load_info_scripts): Remove immediate_quit increment
4034 * copying.c: Rebuild.
4035 * copying.awk: Don't use immediate_quit. Use 'no_set_class', not
4040 * symmisc.c (print_symbol_bcache_statistics): Use QUIT, not
4042 (print_objfile_statistics): Likewise.
4043 (maintenance_print_symbols): Likewise.
4044 (maintenance_print_msymbols): Likewise.
4045 (maintenance_print_objfiles): Likewise.
4046 * psymtab.c (print_partial_symbols): Call QUIT.
4047 (maintenance_print_psymbols): Likewise. Don't modify
4049 * copying.c (show_copying_command): Don't modify immediate_quit.
4050 (show_warranty_command): Likewise.
4051 * cli/cli-cmds.c (show_version): Don't modify immediate_quit.
4055 * linespec.c (linespec_lexer_lex_number): The input
4056 is also a valid number if the next character is a comma
4061 * NEWS: Document new --enable-libmcheck/--disable-libmcheck
4066 * machoread.c: Include gdb_bfd.h.
4070 * dwarf2loc.c (locexpr_describe_location_piece): Use uint64_t for
4075 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Expand parameter
4077 (dwarf2_evaluate_loc_desc): Likewise.
4078 (dwarf2_loc_desc_needs_frame): Likewise.
4079 (locexpr_describe_location_1): Likewise.
4080 * dwarf2loc.h (struct dwarf2_locexpr_baton): Make SIZE as
4082 (struct dwarf2_loclist_baton): Likewise.
4083 * dwarf2read.c (struct dwarf_block): Likewise.
4084 (dump_die_shallow): Use pulongest to print dwarf_block.size.
4085 (decode_locdesc): Expand SIZE and I to size_t.
4089 * contrib/cc-with-tweaks.sh: Put into comment path gdb/contrib/.
4093 * doublest.c (convert_doublest_to_floatformat): If the exponent
4094 is too small, treat the value as zero. If the exponent is too
4095 large, treat the value as infinity.
4099 * configure.ac: Add --enable-lmcheck configure option.
4100 * configure: Regenerate.
4104 * NEWS: Mention maint info bfds.
4105 * gdb_bfd.c (all_bfds): New global.
4106 (gdb_bfd_ref, gdb_bfd_unref): Update all_bfds.
4107 (print_one_bfd, maintenance_info_bfds, _initialize_gdb_bfd):
4112 * configure.tgt: Add v850*-*-rtems*.
4116 * macrotab.c (macro_bcache_str): Remove cast.
4120 * linespec.c (linespec_lexer_lex_number): Update comments,
4121 change the return and add check to make sure the input is
4122 the decimal numbers.
4123 (linespec_lexer_lex_one): If linespec_lexer_lex_number return
4124 false, call linespec_lexer_lex_string.
4128 * symfile.c (symbol_file_add): Don't open BFD twice.
4132 * breakpoint.c (create_breakpoint): Store condition for pending
4137 * m68k-tdep.c (m68k_reg_struct_return_p): Accept complex types.
4138 (m68k_return_value): Handle complex types like structures.
4139 (m68k_svr4_return_value): Likewise.
4143 * gdb_bfd.c (zlib_decompress_section) <!HAVE_ZLIB_H>: Adjust
4144 parameters to bfd_get_section_name.
4148 * cli/cli-setshow.c: Handle case 'var_uinteger'
4149 and 'var_zuninteger' together. Handle case 'var_integer' and
4150 'var_zinteger' together.
4154 * linespec.c (convert_linespec_to_sal): Don't add
4155 any symbols to the result vector if symbol_to_sal
4160 * linespec.c (decode_objc): Record the function name
4165 * rs6000-nat.c (add_vmap): Rewrite archive loop. Fix reference
4167 * exec.c (exec_close_1): Unconditionally release vmap's BFD.
4168 (map_vmap): Acquire a reference to the BFD.
4172 * p-valprint.c (pascal_object_print_value): Replace potentially
4173 unsafe alloca with xmalloc/xfree.
4174 * valops.c (search_struct_method): Likewise.
4178 * solib-svr4.c (enable_break): Update.
4179 * bfd-target.h (target_bfd_reopen): Update documentation.
4183 * symfile.c (separate_debug_file_exists): Update.
4184 (gdb_bfd_open_maybe_remote): Rename from bfd_open_maybe_remote.
4185 (reread_symbols): Update.
4186 * elfread.c (build_id_verify): Update.
4187 * symfile.h (gdb_bfd_open_maybe_remote): Rename from
4188 bfd_open_maybe_remote.
4192 * gdb_bfd.c (gdb_bfd_ref, gdb_bfd_unref): Fix comment.
4196 * coffread.c (coff_symfile_read): Make a cleanup for 'debugfile'
4198 * elfread.c (elf_symfile_read): Make a cleanup for 'debugfile'
4200 * jit.c (jit_bfd_try_read_symtab): Make a cleanup for 'nbfd'.
4201 * machoread.c (macho_add_oso_symfile): Make a cleanup for
4203 (macho_symfile_read): Make a cleanup for 'dsym_bfd'.
4204 * objfiles.c (allocate_objfile): Acquire a new reference.
4205 * rs6000-nat.c (add_vmap): Don't acquire a BFD reference.
4206 * solib.c (solib_read_symbols): Don't acquire a BFD reference.
4207 * spu-linux-nat.c (spu_symbol_file_add_from_memory): Make
4208 a cleanup for 'nbfd'.
4209 * symfile-mem.c (symbol_file_add_from_memory): Make a cleanup
4211 * symfile.c (symbol_file_add_with_addrs_or_offsets): Don't
4212 make a cleanup for 'abfd'.
4213 (symbol_file_add): Make a BFD cleanup.
4217 * cli/cli-dump.c (bfd_openr_with_cleanup): Use gdb_bfd_openr.
4218 (bfd_openw_with_cleanup): Use gdb_bfd_openw.
4219 * corelow.c (core_open): Use gdb_bfd_fopen.
4220 * dsrec.c (load_srec): Use gdb_bfd_openr.
4221 * exec.c (exec_file_attach): Use gdb_bfd_fopen.
4222 * gcore.c (gcore_memory_sections): Use gdb_bfd_openw.
4223 * gdb_bfd.c (gdb_bfd_fopen, gdb_bfd_openr, gdb_bfd_openw)
4224 (gdb_bfd_openr_iovec, gdb_bfd_openr_next_archived_file)
4225 (gdb_bfd_fdopenr): New functions.
4226 * gdb_bfd.h (gdb_bfd_fopen, gdb_bfd_openr, gdb_bfd_openw)
4227 (gdb_bfd_openr_iovec, gdb_bfd_openr_next_archived_file)
4228 (gdb_bfd_fdopenr): Declare.
4229 * jit.c (bfd_open_from_target_memory): Use gdb_bfd_openr_iovec.
4230 * m32-rom.c (m32r_load, m32r_upload_command): Use gdb_bfd_openr.
4231 * machoread.c (macho_symfile_read_all_oso): Use gdb_bfd_openr,
4232 gdb_bfd_openr_next_archived_file.
4233 (macho_check_dsym): Use gdb_bfd_openr.
4234 (macho_add_oso_symfile): Don't call gdb_bfd_stash_filename.
4235 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_fdopenr.
4236 * remote-m32r-sdi.c (m32r_load): Use gdb_bfd_openr.
4237 * remote-mips.c (mips_load_srec, pmon_load_fast): Use
4239 * remote.c (remote_bfd_open): Use gdb_bfd_openr_iovec.
4240 * rs6000-nat.c (add_vmap): Use gdb_bfd_openr, gdb_bfd_fdopenr,
4241 gdb_bfd_openr_next_archived_file.
4242 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
4244 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
4246 * solib-spu.c (spu_bfd_fopen): Use gdb_bfd_openr_iovec.
4247 * solib.c (solib_bfd_fopen): Use gdb_bfd_fopen.
4248 * spu-linux-nat.c (spu_bfd_open): Use gdb_bfd_openr_iovec.
4249 * symfile.c (bfd_open_maybe_remote): Use gdb_bfd_openr.
4250 (symfile_bfd_open): Use gdb_bfd_fopen.
4251 (generic_load): Use gdb_bfd_openr.
4252 * windows-nat.c (windows_make_so): Use gdb_bfd_openr.
4256 * bfd-target.c (target_bfd_reopen): Update.
4257 * cli/cli-dump.c (bfd_openr_with_cleanup)
4258 (bfd_openw_with_cleanup): Update.
4259 * corelow.c (core_open): Update.
4260 * dsrec.c (load_srec): Update.
4261 * exec.c (exec_file_attach): Update.
4262 * gcore.c (create_gcore_bfd): Update.
4263 * gdb_bfd.c (gdb_bfd_ref): Return void.
4264 (gdb_bfd_open): Update.
4265 * gdb_bfd.h (gdb_bfd_ref): Return void.
4267 * jit.c (jit_bfd_try_read_symtab): Update.
4268 * m32r-rom.c (m32r_load, m32r_upload_command): Update.
4269 * machoread.c (macho_symfile_read_all_oso): Update.
4270 (macho_check_dsym): Update.
4271 * procfs.c (insert_dbx_link_bpt_in_file): Update.
4272 * remote-m32r-sdi.c (m32r_load): Update.
4273 * remote-mips.c (mips_load_srec, pmon_load_fast): Update.
4274 * rs6000-nat.c (add_vmap): Update.
4275 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
4277 * solib-pa64.c (pa64_solib_create_inferior_hook): Update.
4278 * solib-spu.c (spu_bfd_open): Update.
4279 * solib.c (solib_bfd_fopen, solib_read_symbols): Update.
4280 * spu-linux-nat.c (spu_bfd_open): Update.
4281 * symfile.c (bfd_open_maybe_remote, symfile_bfd_open)
4282 (generic_load): Update.
4283 * windows-nat.c (windows_make_so): Update.
4287 * sh-tdep.c (sh_treat_as_flt_p): Remove unused variable LEN.
4291 * tilegx-linux-tdep.c (tilegx_linux_sigframe_init): Fix
4292 SIGTRAMP_FRAME unwinding.
4296 * NEWS: Document new options "set/show use-deprecated-index-sections",
4297 and delete reference to --use-deprecated-index-sections.
4298 * symfile.h (use_deprecated_index_sections): Delete.
4299 * dwarf2read.c (use_deprecated_index_sections): Make static.
4300 (read_index_from_section): Update wording of how to load
4301 deprecated index sections.
4302 (_initialize_dwarf2_read): New options
4303 "set/show use-deprecated-index-sections".
4304 * main.c (captured_main): Delete --use-deprecated-index-sections.
4311 * infrun.c (handle_inferior_event) <new thread>: Don't special
4312 case minus_one_ptid.
4313 <TARGET_WAITKIND_SPURIOUS>: Ditto.
4314 * linux-thread-db.c (thread_get_info_callback): Don't return early
4315 if the thread is zombie.
4316 (thread_from_lwp): Change return type to void. Rewrite stale
4318 (attach_thread): Don't return early if the thread is zombie,
4319 instead set its "dying" flag.
4320 (thread_db_wait): Don't return TARGET_WAITKIND_SPURIOUS anymore.
4321 (find_new_threads_callback): Don't return early if the thread is
4326 * linux-nat.c (linux_nat_wait): Dump the passed in target options.
4327 * target.c (target_wait): Likewise.
4328 (str_comma_list_concat_elem, do_option, target_options_to_string):
4330 * target.h (target_options_to_string): Declare.
4335 * dwarf2read.c (dwarf_decode_macros)
4336 <DW_MACRO_GNU_define_indirect_alt, DW_MACRO_GNU_undef_indirect_alt,
4337 DW_MACRO_GNU_transparent_include_alt>: New cases.
4338 (dwarf_decode_macro_bytes) <DW_MACRO_GNU_define_indirect,
4339 DW_MACRO_GNU_undef_indirect>: Examine 'section_is_dwz'.
4343 * dwarf2read.c (try_open_dwo_file): Don't call
4344 gdb_bfd_stash_filename.
4348 * i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr)
4349 (i386_record_lea_modrm, i386_record_push, i386_record_floats)
4350 (i386_process_record): Tweak description comments.
4354 * i386-tdep.c (i386_record_modrm, i386_record_lea_modrm_addr)
4355 (i386_process_record): Use record_read_memory.
4356 * record.c (record_read_memory): New function.
4357 (record_arch_list_add_mem, record_exec_insn): Use
4359 * record.h (record_read_memory): Declare.
4363 * cli/cli-setshow.c (do_setshow_command): Don't check pointer is
4368 * record.c (record_resume): Ask the target beneath to report all
4373 * dwarf2read.c (dwarf2_ranges_read): Ignore ranges starting at zero if
4374 there's no section at address zero.
4375 (dwarf2_record_block_ranges): Ditto.
4379 * command.h, remote.c: Fix a typo in comment.
4384 * ax-gdb.c (gen_expr) <OP_TYPEOF, OP_DECLTYPE>: New cases.
4385 * breakpoint.c (watchpoint_exp_is_const) <OP_TYPEOF,
4386 OP_DECLTYPE>: New cases.
4387 * c-exp.y (TYPEOF, DECLTYPE): New tokens.
4388 (type_exp): Add new productions.
4389 (ident_tokens): Add __typeof__, typeof, __typeof, __decltype,
4391 * eval.c (evaluate_subexp_standard) <OP_TYPEOF, OP_DECLTYPE>:
4393 * expprint.c (dump_subexp_body_standard) <OP_TYPEOF,
4394 OP_DECLTYPE>: New case.
4395 * parse.c (operator_length_standard) <OP_TYPEOF, OP_DECLTYPE>:
4397 * std-operator.def (OP_TYPEOF, OP_DECLTYPE): New constants.
4398 * varobj.c (varobj_create): Handle OP_TYPEOF, OP_DECLTYPE.
4402 * c-exp.y (enum token_flags): New.
4403 (struct token) <cxx_only>: Remove.
4405 (tokentab3, tokentab2, ident_tokens): Update.
4406 (lex_one_token): Update. Handle FLAG_SHADOW.
4410 * ax-gdb.c (gen_expr): Handle UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE.
4411 * breakpoint.c (watchpoint_exp_is_const): Handle UNOP_CAST_TYPE,
4412 UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST.
4413 * c-exp.y (exp): Emit UNOP_MEMVAL_TYPE, UNOP_CAST_TYPE. Update
4414 for changes to UNOP_REINTERPRET_CAST, UNOP_DYNAMIC_CAST. Use
4415 type_exp production where appropriate.
4416 * eval.c (evaluate_subexp_standard) <UNOP_CAST_TYPE>: New case.
4417 <UNOP_DYNAMIC_CAST, UNOP_REINTERPRET_CAST>: Update.
4418 <UNOP_MEMVAL_TYPE>: New case.
4419 (evaluate_subexp_for_address) <UNOP_MEMVAL_TYPE>: New case.
4420 (evaluate_subexp_for_sizeof) <UNOP_MEMVAL_TYPE>: New case.
4421 * expprint.c (print_subexp_standard) <UNOP_CAST_TYPE>: New case.
4422 <UNOP_MEMVAL_TYPE>: New case.
4423 (dump_subexp_body_standard) <UNOP_DYNAMIC_CAST,
4424 UNOP_REINTERPRET_CAST>: Update.
4425 <UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
4426 * parse.c (operator_length_standard) <UNOP_DYNAMIC_CAST,
4427 UNOP_REINTERPRET_CAST>: Update.
4428 <UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE>: New cases.
4429 * stack.c (return_command): Also check for UNOP_CAST_TYPE.
4430 * std-operator.def (UNOP_CAST_TYPE, UNOP_MEMVAL_TYPE): New
4436 * cli/cli-setshow.c (do_setshow_command): Handle case 'var_filename'
4437 and case 'var_optional_filename' together.
4438 * infcmd.c (_initialize_infcmd): Call add_setshow_string_noescape_cmd
4439 instead of add_setshow_optional_filename_cmd for setshow command
4440 'args'. Set completer for 'set args'.
4444 * common/gdb_vecs.h: Moved here from ./gdb_vecs.h.
4445 * common/gdb_vecs.c: New file, contents from utils.c.
4446 * common/host-defs.h: New file, contents from defs.h.
4447 * utils.h: New file, contents from defs.h.
4448 * defs.h: Move all declarations of objects defined in utils.c
4449 to utils.h (except QUIT() and related).
4450 #include "utils.h", "host-defs.h".
4451 * probe.h (probe_p): Move here from gdb_vecs.h.
4452 * symfile.c: #include "probe.h" instead of "gdb_vecs.h".
4453 * utils.c (free_char_ptr_vec): Moved to common/gdb_vecs.c.
4454 (dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): Ditto.
4455 * Makefile.in (SFILES): Add common/gdb_vecs.c.
4456 (HFILES_NO_SRCDIR): Add common/gdb_vecs.h, common/host-defs.h, utils.h.
4457 (COMMON_OBS): Add gdb_vecs.o.
4458 (gdb_vecs.o): New rule.
4462 * linespec.c (add_sal_to_sals): Add LITERAL_CANONICAL
4463 parameter. If non-zero, use SYMNAME as the canonical name
4466 (convert_linespec_to_sals): Use add_sal_to_sals for
4468 (decode_line_full): No need to "fill in missing canonical names"
4469 anymore. Simply make cleanups for the allocated names.
4473 * linespec.c (struct linespec): Constify expression,
4474 source_filename, function_name, and label_name.
4475 (symbol_not_found_error): Make all parameters const.
4476 (linespec_parser_delete): No need to check for NULL
4477 when using xfree. Cast const char * to char * for xfree.
4481 * breakpoint.c (invalid_thread_id_error): New function.
4482 (find_condition_and_thread): Use invalid_thread_id_error.
4483 (watch_command_1): Likewise.
4487 * cc-with-index.sh, cc-with-dwz.sh: Remove.
4488 * contrib/cc-with-tweaks.sh: New file.
4492 * dwarf2read.c (struct dwz_file) <gdb_index>: New field.
4493 (locate_dwz_sections): Recognize .gdb_index.
4494 (create_cus_from_index_list): New function.
4495 (create_cus_from_index): Use it. Handle .dwz data.
4496 (read_index_from_section): New function, extracted from
4498 (dwarf2_read_index): Use it. Read .gdb_index from dwz file,
4503 * dwarf2read.c (struct dwarf2_per_objfile) <dwz_file>: New field.
4504 (struct dwarf2_per_cu_data) <length>: No longer bitfield.
4505 <is_dwz>: New field.
4506 (struct dwz_file): New.
4507 (struct partial_die_info) <is_dwz, spec_is_dwz>: New fields.
4508 (locate_dwz_sections, dwarf2_get_dwz_file)
4509 (get_abbrev_section_for_cu): New functions.
4510 (error_check_comp_unit_head, read_and_check_comp_unit_head)
4511 (read_and_check_type_unit_head): Add abbrev_section argument.
4512 (create_debug_types_hash_table): Update.
4513 (init_cutu_and_read_dies): Use proper abbrev section.
4514 (init_cutu_and_read_dies_no_follow): Likewise.
4515 (set_partial_user): Do nothing if PST==NULL.
4516 (read_comp_units_from_section): New function.
4517 (create_all_comp_units): Use it.
4518 (scan_partial_symbols, partial_die_parent_scope): Update.
4519 (skip_one_die): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
4520 (process_imported_unit_die, read_partial_die): Handle .dwz files.
4521 (find_partial_die): Add offset_in_dwz argument. Update.
4522 (guess_partial_die_structure_name, fixup_partial_die): Update.
4523 (read_attribute_value): Handle DW_FORM_GNU_ref_alt,
4524 DW_FORM_GNU_strp_alt.
4525 (read_indirect_string_from_dwz): New function.
4526 (dwarf2_const_value_attr): Handle DW_FORM_GNU_strp_alt.
4527 (dump_die_shallow): Handle DW_FORM_GNU_ref_alt, DW_FORM_GNU_strp_alt.
4528 (is_ref_attr): Handle DW_FORM_GNU_ref_alt.
4529 (follow_die_offset): Add offset_in_dwz argument.
4530 (follow_die_ref, dwarf2_fetch_die_location_block): Update.
4531 (skip_form_bytes): Handle DW_FORM_GNU_strp_alt.
4532 (dwarf_decode_macro_bytes): Add section_is_dwz argument.
4533 Handle new macro forms.
4534 (dwarf_decode_macros): Update.
4535 (dwarf2_find_containing_comp_unit): Add offset_in_dwz argument.
4536 (dwarf2_per_objfile_free): Unref dwz_bfd, if it exists
4537 (lookup_die_type): Handle DW_FORM_GNU_ref_alt.
4538 (create_debug_types_hash_table): Use correct abbrev section.
4539 (get_debug_line_section): New function.
4540 (dwarf_decode_line_header, dwarf_decode_lines_1): Use it.
4541 (process_full_comp_unit): Pass 'required' argument to
4542 end_symtab_get_static_block.
4543 * buildsym.h (end_symtab_get_static_block): Update.
4544 * buildsym.c (end_symtab_get_static_block): Add 'required'
4546 (end_symtab, end_expandable_symtab): Update.
4550 * dwarf2read.c: Don't include zlib.h or sys/mman.h.
4552 (struct dwarf2_section_info) <map_addr, map_len>: Remove.
4553 (zlib_decompress_section): Remove.
4554 (dwarf2_read_section): Use gdb_bfd_map_section.
4555 (munmap_section_buffer): Remove.
4556 (free_dwo_file, dwarf2_per_objfile_free): Don't use
4557 munmap_section_buffer.
4558 * gdb_bfd.c: Include zlib.h, sys/mman.h.
4559 (struct gdb_bfd_section_data): New.
4560 (free_one_bfd_section): New function.
4561 (gdb_bfd_close_or_warn): Use free_one_bfd_section.
4562 (get_section_descriptor, zlib_decompress_section)
4563 (gdb_bfd_map_section): New functions.
4564 * gdb_bfd.h (gdb_bfd_map_section): Declare.
4568 * dwarf2read.c (try_open_dwo_file): use gdb_bfd_open.
4572 * gdb_bfd.c (struct gdb_bfd_data): New.
4573 (gdb_bfd_cache): New global.
4574 (struct gdb_bfd_cache_search): New.
4575 (hash_bfd, eq_bfd, gdb_bfd_open): New functions.
4576 (gdb_bfd_ref, gdb_bfd_unref): Use gdb_bfd_data.
4577 * gdb_bfd.h (gdb_bfd_open): Declare.
4581 * utils.c (make_cleanup_bfd_unref): Rename from
4582 make_cleanup_bfd_close.
4583 * defs.h (make_cleanup_bfd_unref): Rename from
4584 make_cleanup_bfd_close.
4585 * cli/cli-dump.c (bfd_openr_with_cleanup): Update.
4586 (bfd_openw_with_cleanup): Update.
4587 * corelow.c (core_open): Update.
4588 * dsrec.c (load_srec): Update.
4589 * m32r-rom.c (m32r_load, m32r_upload_command): Update.
4590 * remote-m32r-sdi.c (m32r_load): Update.
4591 * remote-mips.c (mips_load_srec): Update.
4592 (pmon_load_fast): Update.
4593 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
4595 (darwin_bfd_open): Update.
4596 * solib.c (solib_bfd_fopen): Update.
4597 * symfile-mem.c (symbol_file_add_from_memory): Update.
4598 * symfile.c (symbol_file_add_with_addrs_or_offsets): Update.
4599 (symfile_bfd_open): Update.
4600 (generic_load): Update.
4604 * remote-mips.c (mips_load_srec): Use make_cleanup_bfd_close.
4605 (pmon_load_fast): Likewise.
4606 * m32r-rom.c (m32r_load): Use make_cleanup_bfd_close.
4607 (m32r_upload_command): Likewise.
4608 * dsrec.c (load_srec): Use make_cleanup_bfd_close.
4609 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
4610 Use make_cleanup_bfd_close.
4614 * symfile.c (symfile_bfd_open): Don't copy name. Call
4615 gdb_bfd_stash_filename.
4616 (load_command): Open the new BFD before freeing the old.
4617 (bfd_open_maybe_remote): Call gdb_bfd_stash_filename.
4618 * symfile-mem.c (symbol_file_add_from_memory): Don't copy name.
4619 Call gdb_bfd_stash_filename.
4620 * spu-linux-nat.c (spu_bfd_open): Don't copy name.
4621 * solib-spu.c (spu_bfd_fopen): Don't copy name. Call
4622 gdb_bfd_stash_filename.
4623 * solib-darwin.c (darwin_solib_get_all_image_info_addr_at_init):
4624 Free found_pathname.
4625 * rs6000-nat.c (add_vmap): Don't copy filename. Call
4626 gdb_bfd_stash_filename.
4627 * remote.c (remote_bfd_open): Call gdb_bfd_stash_filename.
4628 * machoread.c (macho_add_oso_symfile): Call
4629 gdb_bfd_stash_filename.
4630 (macho_symfile_read_all_oso): Arrange to free archive_name. Call
4631 gdb_bfd_stash_filename.
4632 (macho_check_dsym): Don't copy filename. Call
4633 gdb_bfd_stash_filename.
4634 * jit.c (bfd_open_from_target_memory): Don't copy the filename.
4635 * gdb_bfd.c (gdb_bfd_stash_filename): New function.
4636 * gdb_bfd.h (gdb_bfd_stash_filename): Declare.
4637 * gcore.c (create_gcore_bfd): Call gdb_bfd_stash_filename.
4638 * exec.c (exec_close): Don't free the BFD's filename.
4639 (exec_file_attach): Don't copy the filename. Call
4640 gdb_bfd_stash_filename.
4641 * corelow.c (core_close): Don't free the BFD's filename.
4642 (core_open): Call gdb_bfd_stash_filename.
4643 * corefile.c (reopen_exec_file): Remove #if 0 code.
4644 * solib.c (solib_bfd_fopen): Call gdb_bfd_stash_filename. Free
4646 * dwarf2read.c (try_open_dwo_file): Call gdb_bfd_stash_filename.
4650 * dwarf2read.c (try_open_dwo_file): Use gdb_bfd_ref and
4652 (free_dwo_file): Use gdb_bfd_unref.
4653 * cli/cli-dump.c: Include gdb_bfd.h.
4654 (bfd_openw_with_cleanup): Use gdb_bfd_ref.
4655 (bfd_openr_with_cleanup): Likewise.
4656 * windows-nat.c (windows_make_so): Use gdb_bfd_ref,
4658 * utils.c: Include gdb_bfd.h.
4659 (do_bfd_close_cleanup): Use gdb_bfd_unref.
4660 * symfile.c: Include gdb_bfd.h.
4661 (separate_debug_file_exists): Use gdb_bfd_unref.
4662 (bfd_open_maybe_remote): Use gdb_bfd_ref.
4663 (symfile_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
4664 (generic_load): Use gdb_bfd_ref.
4665 (reread_symbols): Use gdb_bfd_unref.
4666 * symfile-mem.c: Include gdb_bfd.h.
4667 (symbol_file_add_from_memory): Use make_cleanup_bfd_close.
4668 * spu-linux-nat.c (spu_bfd_open): Use gdb_bfd_ref, gdb_bfd_unref.
4669 * solib.c: Include gdb_bfd.h.
4670 (solib_bfd_fopen): Use gdb_bfd_ref.
4671 (solib_bfd_open): Use gdb_bfd_unref.
4672 (free_so_symbols): Use gdb_bfd_unref.
4673 (reload_shared_libraries_1): Use gdb_bfd_unref.
4674 * solib-spu.c: Include gdb_bfd.h.
4675 (spu_bfd_fopen): Use gdb_bfd_ref, gdb_bfd_unref.
4676 * solib-pa64.c (pa64_solib_create_inferior_hook): Use gdb_bfd_ref,
4678 * solib-frv.c: Include gdb_bfd.h.
4679 (enable_break2): Use gdb_bfd_unref.
4680 * solib-dsbt.c: Include gdb_bfd.h.
4681 (enable_break2): Use gdb_bfd_unref.
4682 * solib-darwin.c: Include gdb_bfd.h.
4683 (darwin_solib_get_all_image_info_addr_at_init): Use gdb_bfd_ref,
4685 (darwin_bfd_open): Use gdb_bfd_unref.
4686 * rs6000-nat.c (add_vmap): Use gdb_bfd_ref, gdb_bfd_unref.
4687 * remote-mips.c: Include gdb_bfd.h.
4688 (mips_load_srec): Use gdb_bfd_ref.
4689 (pmon_load_fast): Use gdb_bfd_ref.
4690 * remote-m32r-sdi.c: Include gdb_bfd.h.
4691 (m32r_load): Use gdb_bfd_ref.
4692 * record.c: Include gdb_bfd.h.
4693 (record_save_cleanups): Use gdb_bfd_unref.
4694 (cmd_record_save): Use gdb_bfd_unref.
4695 * procfs.c (insert_dbx_link_bpt_in_file): Use gdb_bfd_ref,
4697 * objfiles.h (gdb_bfd_close_or_warn): Remove.
4698 (gdb_bfd_ref, gdb_bfd_unref): Move to gdb_bfd.h.
4699 * objfiles.c: Include gdb_bfd.h.
4700 (free_objfile): Use gdb_bfd_unref.
4701 (gdb_bfd_close_or_warn, gdb_bfd_ref, gdb_bfd_unref): Move to
4703 * machoread.c (macho_add_oso_symfile): Use gdb_bfd_unref.
4704 (macho_symfile_read_all_oso): Use gdb_bfd_ref, gdb_bfd_unref.
4705 (macho_check_dsym): Likewise.
4706 * m32r-rom.c: Include gdb_bfd.h.
4707 (m32r_load): Use gdb_bfd_ref.
4708 (m32r_upload_command): Use gdb_bfd_ref.
4709 * jit.c: Include gdb_bfd.h.
4710 (jit_bfd_try_read_symtab): Use gdb_bfd_ref, gdb_bfd_unref.
4711 * gdb_bfd.h: New file.
4712 * gdb_bfd.c: New file.
4713 * gcore.c: Include gdb_bfd.h.
4714 (create_gcore_bfd): Use gdb_bfd_ref.
4715 (do_bfd_delete_cleanup): Use gdb_bfd_unref.
4716 (gcore_command): Use gdb_bfd_unref.
4717 * exec.c: Include gdb_bfd.h.
4718 (exec_close): Use gdb_bfd_unref.
4719 (exec_close_1): Use gdb_bfd_unref.
4720 (exec_file_attach): Use gdb_bfd_ref.
4721 * elfread.c: Include gdb_bfd.h.
4722 (build_id_verify): Use gdb_bfd_unref.
4723 * dsrec.c: Include gdb_bfd.h.
4724 (load_srec): Use gdb_bfd_ref.
4725 * corelow.c: Include gdb_bfd.h.
4726 (core_close): Use gdb_bfd_unref.
4727 (core_open): Use gdb_bfd_ref.
4728 * bfd-target.c: Include gdb_bfd.h.
4729 (target_bfd_xclose): Use gdb_bfd_unref.
4730 (target_bfd_reopen): Use gdb_bfd_ref.
4731 * Makefile.in (SFILES): Add gdb_bfd.c.
4732 (HFILES_NO_SRCDIR): Add gdb_bfd.h.
4733 (COMMON_OBS): Add gdb_bfd.o.
4737 * breakpoint.c (find_condition_and_thread): Initialize
4739 (create_breakpiont): find_condition_and_thread will now
4740 initialize COND_STRING, THREAD, and REST (and TASK).
4741 (addr_string_to_sals): Likewise.
4745 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_NO_HISTORY>:
4746 Pull the single step breakpoints out of the target.
4750 * probe.c (probe_safe_evaluate_at_pc): Rename variable `n_probes'.
4751 * stap-probe.c (compile_probe_arg): Likewise.
4755 * elfread.c (elf_get_probe_argument_count): Remove `objfile' argument.
4756 (elf_compile_to_ax): Likewise.
4757 * infrun.c (insert_exception_resume_from_probe): Likewise.
4758 (check_exception_resume): Remove `objfile' variable.
4759 * probe.c (find_probe_by_pc): Remove `objfile' argument.
4760 (struct probe_and_objfile, probe_and_objfile_s): Delete.
4761 (collect_probes): Adjust return value to `VEC (probe_p) *'.
4762 (compare_entries): Rename to...
4763 (compare_probes): ...this. Adjust function to work with
4764 `struct probe *'. Rename variables `ea' and `eb' to `pa' and `pb'
4766 (gen_ui_out_table_header_info): Adjust `probes' argument to be
4768 (print_ui_out_info): Adjust argument to be `struct probe *'.
4769 (info_probes_for_ops): Adjust internal computations to use
4771 (probe_safe_evaluate_at_pc): Refactor to not pass `objfile' anymore.
4772 * probe.h (struct probe_ops) <get_probe_argument_count, compile_to_ax,
4773 gen_info_probes_table_values>: Remove `objfile' argument.
4774 (struct probe) <objfile>: New field.
4775 (find_probe_by_pc): Remove `objfile' argument.
4776 * stap-probe.c (stap_parse_probe_arguments): Likewise.
4777 (stap_get_probe_argument_count): Likewise.
4778 (stap_get_arg): Likewise.
4779 (stap_evaluate_probe_argument): Likewise.
4780 (stap_compile_to_ax): Likewise.
4781 (compile_probe_arg): Refactor not to pass `objfile' anymore.
4782 (handle_stap_probe): Fill `objfile' field from `struct probe'.
4783 (stap_gen_info_probes_table_header): Remove `objfile' argument.
4784 * symfile.h (struct sym_probe_fns) <sym_evaluate_probe_argument,
4785 sym_compile_to_ax>: Likewise.
4790 * defs.h (GDB_MI_MSG_WIDTH): New.
4791 * ser_base (ser_base_read_error_fd): New function.
4792 (do_ser_base_readchar): Poll error file descriptor as well as
4794 (generic_readchar): Refactor error handling.
4798 * NEWS: Create a new section for the next release branch.
4799 Rename the section of the current branch, now that it has
4804 GDB 7.5 branch created (branch timestamp: 2012-07-18 03:22 UTC)
4805 * version.in: Bump version to 7.5.50.20120718-cvs.
4809 * linespec.c (linespec_parse_line_offset): Make parameter
4815 * f-valprint.c (info_common_command): New variable frame_id.
4816 Reinitialize FI form FRAME_ID after each print_variable_and_value.
4817 * printcmd.c (print_variable_and_value): Extend function comment.
4818 Add comment for invalidated FRAME.
4819 * stack.c (backtrace_command_1): New variable frame_id. Reinitialize
4820 FI form FRAME_ID after each print_frame_local_vars.
4821 (struct print_variable_and_value_data): Change frame to frame_id.
4822 (do_print_variable_and_value): New variable frame, initialize it from
4823 p->frame_id. Add comment for invalidated FRAME.
4824 (print_frame_local_vars, print_frame_arg_vars): New function comment.
4825 Update CB_DATA.FRAME to CB_DATA.FRAME_ID initialization. Add comment
4826 for invalidated FRAME.
4831 * linux-nat.c (linux_nat_detach): Don't unregister from the event
4836 * jv-typeprint.c (c_type_print_varspec_suffix): Don't declare.
4840 * dwarf2read.c (stmt_list_hash): New struct.
4841 (type_unit_group): Embed "per_cu" member, remove pointer.
4842 New union member "t", move member "tus" into it, all uses updated.
4843 New member "hash", replaces member "line_offset, all uses updated.
4844 (quick_file_names): Replace member "offset" with "hash", all uses
4846 (hash_stmt_list_entry, eq_stmt_list_entry): New functions.
4847 (hash_file_name_entry, eq_file_name_entry): Call them.
4848 (hash_type_unit_group, eq_type_unit_group): Ditto.
4849 (dw2_get_cu, dw2_get_primary_cu): Replace assert with a better one.
4850 (dw2_get_file_names_reader): Fix file name table calculation for TUs.
4851 (dw2_get_file_names): Update.
4852 (create_type_unit_group): Replace "per_cu" arg with "cu".
4853 All callers updated. Fix "quick" (.gdb_index) handling.
4854 (get_type_unit_group): Replace "per_cu" arg with "cu".
4855 All callers updated.
4856 (build_type_unit_groups): Don't reset tu_stats.
4858 * symtab.c (filename_seen_cache): Delete members "tab_alloc_size",
4859 "tab_cur_size". Change member "tab" to be a htab_t.
4860 (create_filename_seen_cache): Update.
4861 (clear_filename_seen_cache, delete_filename_seen_cache): Update.
4862 (filename_seen): Update.
4866 * symtab.c (filename_seen): Update comment.
4871 * buildsym.c (end_symtab_1): Split it to ...
4872 (end_symtab_get_static_block): ... this ...
4873 (end_symtab_from_static_block): ... and this function.
4874 (end_symtab, end_expandable_symtab): Call them.
4875 * buildsym.h (end_symtab_get_static_block)
4876 (end_symtab_from_static_block): New declarations.
4877 * dwarf2read.c (process_full_comp_unit): New variable static_block.
4878 Set its valid CU ranges.
4882 * dwarf2loc.c (disassemble_dwarf_expression): Handle
4883 DW_OP_GNU_parameter_ref.
4887 * dwarf2read.c (read_call_site_scope): Do not gdb_assert for invalid
4888 read-in CALL_SITE_PARAMETER_PARAM_OFFSET.
4892 * symtab.c (output_source_filename): Delete unnecessary forward decl.
4893 (filename_seen_cache): New struct.
4894 (INITIAL_FILENAME_SEEN_CACHE_SIZE): New macro.
4895 (create_filename_seen_cache): New function.
4896 (clear_filename_seen_cache, delete_filename_seen_cache): New functions.
4897 (filename_seen): Delete arg "first". New arg "cache". All callers
4899 (output_source_filename_data): New struct.
4900 (output_source_filename): Delete arg "first". New arg "data".
4901 All callers updated.
4902 (sources_info): Delete local "first". New locals "data", "cleanups".
4903 Rewrite to use filename_seen_cache.
4904 (add_partial_filename_data): Delete member "first". New member
4905 "filename_seen_cache". All uses updated.
4906 (make_source_files_completion_list): Rewrite to use
4907 filename_seen_cache.
4911 * psymtab.c (map_symbol_filenames_psymtab): Skip shared psymtabs.
4916 * dwarf2read.c (dwarf2_per_objfile): New members n_type_unit_groups,
4917 all_type_unit_groups, type_unit_groups, tu_stats.
4918 (dwarf2_per_cu_data): Move "imported_symtabs" into new union "s".
4919 All uses updated. Add type_unit_group to union "s".
4920 (type_unit_group): New struct.
4921 (IS_TYPE_UNIT_GROUP): New macro.
4922 (abbrev_table): Delete unused member "section".
4923 (dw2_do_instantiate_symtab): Early exit if type_unit_group.
4924 (dw2_get_cu): Assert not used with type_unit_group.
4925 (dw2_get_primary_cu): New function.
4926 (dw2_build_type_unit_groups_reader): New function.
4927 (dw2_build_type_unit_groups): New function.
4928 (dw2_get_file_names): Assert not called on type units.
4929 (dw2_map_symtabs_matching_filename): Call dw2_build_type_unit_groups.
4930 Redo loop to iterate over type unit groups instead of type units.
4931 (dw2_expand_symtabs_matching, dw2_map_symbol_filenames): Ditto.
4932 (read_abbrev_offset): New function.
4933 (init_cutu_and_read_dies): New arg "abbrev_table". All callers
4935 (create_partial_symtab): New function.
4936 (process_psymtab_comp_unit_reader): Assert not used with type units.
4937 Call create_partial_symtab.
4938 (process_psymtab_type_unit): Delete.
4939 (hash_type_unit_group, eq_type_unit_group): New functions.
4940 (allocate_type_unit_groups_table): New function.
4941 (NO_STMT_LIST_TYPE_UNIT_PSYMTAB): New macro.
4942 (NO_STMT_LIST_TYPE_UNIT_PSYMTAB_SIZE): New macro.
4943 (create_type_unit_group, get_type_unit_group): New functions.
4944 (tu_abbrev_offset): New struct.
4945 (sort_tu_by_abbrev_offset): New function.
4946 (add_type_unit_group_to_table): New function.
4947 (build_type_unit_groups): New function.
4948 (build_type_psymtabs_reader): New function.
4949 (build_type_psymtab_dependencies): New function.
4950 (build_type_psymtabs): Rewrite.
4951 (scan_partial_symbols): Flag an error if a DW_TAG_imported_unit
4952 is seen in a type unit.
4953 (process_queue): Move symtab expansion debugging printfs here.
4954 Call process_full_type_unit for type units.
4955 (compute_symtab_includes): Assert not called for type units.
4956 (process_cu_includes): Don't call compute_symtab_includes for
4958 (process_full_type_unit): New function.
4959 (process_imported_unit_die): Flag an error if called for type units.
4960 (handle_DW_AT_stmt_list): Delete arg "want_line_info". All callers
4961 updated. Assert not called for type units.
4962 (read_file_scope): Call dwarf2_start_symtab.
4963 (setup_type_unit_groups): New function.
4964 (read_type_unit_scope): Rewrite.
4965 (abbrev_table_read_table): Initialize abbrev_table->offset.
4966 (abbrev_table_free_cleanup): New function.
4967 (dwarf2_start_symtab): New function.
4968 (load_full_type_unit): Assert not called for type unit groups.
4969 * buildsym.c (finish_block_internal): New arg "expandable".
4970 All callers updated.
4971 (start_symtab): Move most contents to ...
4972 (restart_symtab): ... here. New function.
4973 (reset_symtab_globals): New function.
4974 (end_symtab_1): Renamed from end_symtab. New arg "expandable".
4975 Call reset_symtab_globals.
4976 (end_symtab, end_expandable_symtab): New functions.
4977 (set_missing_symtab, augment_type_symtab): New functions.
4978 * buildsym.h (end_expandable_symtab): Declare.
4979 (augment_type_symtab, restart_symtab): Declare.
4980 * psympriv.h (struct partial_symtab): New member "anonymous".
4981 * psymtab.c (partial_map_symtabs_matching_filename): Ignore
4983 (read_psymtabs_with_filename): Ditto.
4984 (map_symbol_filenames_psymtab, psymtab_to_fullname): Ditto.
4985 (expand_symtabs_matching_via_partial): Ditto.
4986 (dump_psymtab): Update.
4987 * dictionary.c (dict_add_pending): New function.
4988 * dictionary.h (dict_add_pending): Declare.
4992 * buildsym.c (start_subfile): Remove unnecessary check for
4995 * psymtab.c (allocate_psymtab): Use host_address_to_string.
4997 * dwarf2read.c (load_full_type_unit): Simplify.
4999 * dwarf2read.c (dwarf2_per_objfile): Change type of all_type_units
5000 to struct signatured_type **. All uses updated.
5002 * dwarf2read.c (dwarf2_attr_no_follow): Delete unused arg "cu".
5003 All callers updated.
5007 * c-exp.y (check_parameter_typelist): New function.
5008 (parameter_typelist): Call it.
5009 * eval.c (make_params): Handle '(void)' case.
5010 * gdbtypes.c (lookup_function_type_with_arguments): Handle
5015 * common/linux-ptrace.c: Include gdb_assert.h.
5016 <__i386__> (linux_ptrace_test_ret_to_nx_instr): New declaration.
5017 <__i386__>: Include sys/reg.h, sys/mman.h, signal.h, sys/wait.h and
5019 (linux_ptrace_test_ret_to_nx, linux_ptrace_init_warnings): New
5021 * common/linux-ptrace.h (linux_ptrace_init_warnings): New declarations.
5022 * linux-nat.c (linux_child_post_attach)
5023 (linux_child_post_startup_inferior): Call linux_ptrace_init_warnings.
5027 * linux-thread-db.c (thread_db_find_new_threads_silently): Do not apply
5028 nptl <2.7 bug workaround for core files.
5032 * linux-nat.c (resume_lwp, linux_nat_resume): Remove LP->SIGINFO
5034 (save_siginfo): Remove.
5035 (stop_wait_callback, linux_nat_filter_event): Remove the save_siginfo
5037 (resume_stopped_resumed_lwps): Remove LP->SIGINFO clearing.
5038 (linux_nat_get_siginfo): Use PTRACE_GETSIGINFO.
5039 * linux-nat.h (struct lwp_info): Remove field siginfo.
5043 Code cleanup for the next patch.
5044 * arm-linux-nat.c (arm_linux_stopped_data_address): Change variable
5045 siginfo_p to siginfo, update its users incl. the linux_nat_get_siginfo
5047 * ia64-linux-nat.c (ia64_linux_stopped_data_address): Likewise.
5048 (ia64_linux_stopped_data_address):
5049 * linux-nat.c (linux_nat_get_siginfo): Add parameter siginfo, change
5051 * linux-nat.h (linux_nat_get_siginfo): Likewise.
5052 * ppc-linux-nat.c (ppc_linux_stopped_data_address): Change variable
5053 siginfo_p to siginfo, update its users incl. the linux_nat_get_siginfo
5059 * findcmd.c (parse_find_args): New variable pattern_buf_size_need.
5060 Increase buffer sizes to 2x we need, not just 2x of the previous size.
5064 * c-exp.y (DOTDOTDOT): New token.
5065 (func_mod, exp): Use parameter_typelist.
5066 (parameter_typelist): New production.
5067 (tokentab3): Add "..." token.
5068 * eval.c (make_params): Handle varargs.
5069 * gdbtypes.c (lookup_function_type_with_arguments): Handle
5075 * c-exp.y (%union) <tvec>: Change type.
5076 (func_mod): Now uses <tvec> type.
5077 (exp): Update for tvec change.
5078 (direct_abs_decl): Push the typelist.
5079 (func_mod): Return a typelist.
5080 (nonempty_typelist): Update for tvec change.
5081 * gdbtypes.c (lookup_function_type_with_arguments): New function.
5082 * gdbtypes.h (lookup_function_type_with_arguments): Declare.
5083 * parse.c (pop_type_list): New function.
5084 (push_typelist): New function.
5085 (follow_types): Handle tp_function_with_arguments.
5086 * parser-defs.h (type_ptr): New typedef. Define a VEC.
5087 (enum type_pieces) <tp_function_with_arguments>: New constant.
5088 (union type_stack_elt) <typelist_val>: New field.
5089 (push_typelist): Declare.
5093 * c-exp.y (%union) <type_stack>: New field.
5094 (abs_decl, direct_abs_decl): Use <type_stack> type. Update.
5095 (ptr_operator_ts): New production.
5097 * parse.c (type_stack_reserve): New function.
5098 (check_type_stack_depth): Use it.
5099 (pop_type_stack, append_type_stack, push_type_stack)
5100 (get_type_stack, type_stack_cleanup): New functions.
5101 (follow_types): Handle tp_type_stack.
5102 (_initialize_parse): Simplify initialization.
5103 * parser-defs.h (enum type_pieces) <tp_type_stack>: New
5105 (union type_stack_elt) <stack_val>: New field.
5106 (get_type_stack, append_type_stack, push_type_stack)
5107 (type_stack_cleanup): Declare.
5111 * parser-defs.h (type_stack, type_stack_size, type_stack_depth):
5113 (struct type_stack): New.
5114 * parse.c (type_stack, type_stack_size, type_stack_depth):
5116 (type_stack): New global.
5117 (parse_exp_in_context, check_type_stack_depth)
5118 (insert_into_type_stack, insert_type, push_type, push_type_int)
5119 (insert_type_address_space, pop_type, pop_type_int)
5120 (_initialize_parse): Update.
5124 * c-exp.y (func_mod, direct_abs_decl, abs_decl, ptr_operator):
5129 * c-lang.c (c_printstr): Remove ununsed variable WIDTH.
5134 * cp-valprint.c (cp_print_value): Replace potentially unsafe
5135 alloca with xmalloc/xfree.
5139 * MAINTAINERS (Write After Approval): Add myself to the list.
5143 * dwarf2read.c (dw2_expand_symtabs_matching): Fix typo.
5147 * ax-gdb.c (cli/cli-utils.h): New include.
5148 (linespec.h): Ditto.
5149 (agent_eval_command_one): New function.
5150 (agent_command_1): Ditto.
5151 (agent_command): Call function agent_command_1.
5152 (agent_eval_command): Ditto.
5153 (_initialize_ax_gdb): Change help for "maint agent"
5154 and "maint agent-eval".
5158 * breakpoint.c (check_for_argument): Move to file cli/cli-utils.c.
5159 * cli/cli-utils.c (check_for_argument): New function.
5160 * cli/cli-utils.h (check_for_argument): Ditto.
5164 * NEWS: Mention x32 ABI support.
5168 * amd64-tdep.c (amd64_x32_init_abi): Set sp_regnum_from_eax to
5169 AMD64_RSP_REGNUM and pc_regnum_from_eax to AMD64_RIP_REGNUM.
5171 * i386-tdep.c (i386_gdbarch_init): Initialize sp_regnum_from_eax
5172 and pc_regnum_from_eax to -1. Update SP regnum from
5173 sp_regnum_from_eax and PC regnum from pc_regnum_from_eax if
5176 * i386-tdep.h (gdbarch_tdep): Add sp_regnum_from_eax and
5181 Fix 'warning: parameter has incomplete type' with gcc-3.4.6.
5182 * dwarf2expr.h: Include gdbtypes.h.
5183 (enum call_site_parameter_kind, union call_site_parameter_u): Remove
5184 these forward declarations.
5185 (cu_offset, sect_offset): Move these ...
5186 * gdbtypes.h: Remove include dwarf2expr.h.
5187 (cu_offset, sect_offset): ... here.
5191 * amd64-linux-tdep.c (linux_sigtramp_code): Renamed to ...
5192 (amd64_linux_sigtramp_code): This.
5193 (amd64_x32_linux_sigtramp_code): New.
5194 (LINUX_SIGTRAMP_LEN): Updated.
5195 (amd64_linux_sigtramp_start): Check x32 sigtramp.
5199 * linux-thread-db.c (thread_db_new_objfile): Fix comment typos.
5203 * config.in: Regenerate.
5204 * configure: Regenerate.
5205 * configure.ac: Remove check for gnu/libc-version.h.
5206 * linux-thread-db.c <HAVE_GNU_LIBC_VERSION_H>: Remove include of
5208 (enable_thread_event_reporting) <HAVE_GNU_LIBC_VERSION_H>: Remove
5209 variables libc_version, libc_major and libc_minor. Replace sscanf by
5210 inferior_has_bug. Extend the comment.
5214 * linux-thread-db.c (inferior_has_bug): New function.
5215 (thread_db_find_new_threads_silently): Return boolean as checked by
5216 inferior_has_bug, describe it in the comments.
5217 (try_thread_db_load_1): Move call to thread_db_find_new_threads_silently
5218 earlier. Abort the initialization if it returned non-zero.
5219 (thread_db_new_objfile): Exclude debug files.
5220 (thread_db_find_new_threads_2): Preinitialize ERR. Check errors also
5225 * dwarf2read.c (maybe_queue_comp_unit): Move definition next to others
5226 related to queue management.
5228 * dwarf2read.c (create_debug_types_hash_table): Use "debug dwarf2-read"
5229 instead of "debug dwarf2-die" in debugging printfs.
5230 (create_debug_info_hash_table_reader): Ditto.
5231 (create_debug_info_hash_table): Ditto.
5232 (init_dwo_file): Ditto.
5233 (init_cutu_and_read_dies): Add debugging printf.
5234 (init_cutu_and_read_dies_no_follow): Ditto.
5235 (process_psymtab_comp_unit_reader): Ditto.
5239 Add target-side support for dynamic printf.
5240 * NEWS: Mention the additional style.
5241 * breakpoint.h (struct bp_target_info): New fields tcommands, persist.
5242 (struct bp_location): New field cmd_bytecode.
5243 * breakpoint.c: Include format.h.
5244 (disconnected_dprintf): New global.
5245 (parse_cmd_to_aexpr): New function.
5246 (build_target_command_list): New function.
5247 (insert_bp_location): Call it.
5248 (remove_breakpoints_pid): Skip dprintf breakpoints.
5249 (print_one_breakpoint_location): Ditto.
5250 (dprintf_style_agent): New global.
5251 (dprintf_style_enums): Add dprintf_style_agent.
5252 (update_dprintf_command_list): Add agent case.
5253 (agent_printf_command): New function.
5254 (_initialize_breakpoint): Add new commands.
5255 * common/ax.def (printf): New bytecode.
5256 * ax.h (ax_string): Declare.
5257 * ax-gdb.h (gen_printf): Declare.
5258 * ax-gdb.c: Include cli-utils.h, format.h.
5259 (gen_printf): New function.
5260 (maint_agent_print_command): New function.
5261 (_initialize_ax_gdb): Add maint agent-printf command.
5262 * ax-general.c (ax_string): New function.
5263 (ax_print): Add printf disassembly.
5264 * Makefile.in (SFILES): Add format.c
5265 (COMMON_OBS): Add format.o.
5266 * common/format.h: New file.
5267 * common/format.c: New file.
5268 * printcmd.c: Include format.h.
5269 (ui_printf): Call parse_format_string.
5270 * remote.c (remote_state): New field breakpoint_commands.
5271 (PACKET_BreakpointCommands): New enum.
5272 (remote_breakpoint_commands_feature): New function.
5273 (remote_protocol_features): Add new BreakpointCommands entry.
5274 (remote_can_run_breakpoint_commands): New function.
5275 (remote_add_target_side_commands): New function.
5276 (remote_insert_breakpoint): Call it.
5277 (remote_insert_hw_breakpoint): Ditto.
5278 (_initialize_remote): Add new packet configuration for
5279 target-side breakpoint commands.
5280 * target.h (struct target_ops): New field
5281 to_can_run_breakpoint_commands.
5282 (target_can_run_breakpoint_commands): New macro.
5283 * target.c (update_current_target): Handle
5284 to_can_run_breakpoint_commands.
5288 Execute -ix and -iex only after system and user gdbinit files.
5289 * main.c (captured_main): Move CMDARG_INIT_FILE and CMDARG_INIT_COMMAND
5290 processing down after gdbinit files.
5294 Add fnmatch-gnu module.
5295 * gnulib/Makefile.in (aclocal_m4_deps): Add new files and remove one.
5296 * gnulib/configure.ac (AC_INIT): Use now import/memmem.c.
5297 * gnulib/aclocal.m4: Regenerate.
5298 * gnulib/config.in: Regenerate.
5299 * gnulib/configure: Regenerate.
5300 * gnulib/import/dummy.c: Remove.
5301 * gnulib/import/Makefile.am: Regenerate.
5302 * gnulib/import/Makefile.in: Likewise.
5303 * gnulib/import/m4/gnulib-cache.m4: Likewise.
5304 * gnulib/import/m4/gnulib-comp.m4: Likewise.
5305 * gnulib/import/alloca.c: New file.
5306 * gnulib/import/alloca.in.h: Likewise.
5307 * gnulib/import/config.charset: Likewise.
5308 * gnulib/import/fnmatch.c: Likewise.
5309 * gnulib/import/fnmatch.in.h: Likewise.
5310 * gnulib/import/fnmatch_loop.c: Likewise.
5311 * gnulib/import/localcharset.c: Likewise.
5312 * gnulib/import/localcharset.h: Likewise.
5313 * gnulib/import/m4/alloca.m4: Likewise.
5314 * gnulib/import/m4/codeset.m4: Likewise.
5315 * gnulib/import/m4/configmake.m4: Likewise.
5316 * gnulib/import/m4/fcntl-o.m4: Likewise.
5317 * gnulib/import/m4/fnmatch.m4: Likewise.
5318 * gnulib/import/m4/glibc21.m4: Likewise.
5319 * gnulib/import/m4/localcharset.m4: Likewise.
5320 * gnulib/import/m4/locale-fr.m4: Likewise.
5321 * gnulib/import/m4/locale-ja.m4: Likewise.
5322 * gnulib/import/m4/locale-zh.m4: Likewise.
5323 * gnulib/import/m4/mbrtowc.m4: Likewise.
5324 * gnulib/import/m4/mbsinit.m4: Likewise.
5325 * gnulib/import/m4/mbsrtowcs.m4: Likewise.
5326 * gnulib/import/m4/mbstate_t.m4: Likewise.
5327 * gnulib/import/m4/stdbool.m4: Likewise.
5328 * gnulib/import/m4/wchar_h.m4: Likewise.
5329 * gnulib/import/m4/wctype_h.m4: Likewise.
5330 * gnulib/import/m4/wint_t.m4: Likewise.
5331 * gnulib/import/mbrtowc.c: Likewise.
5332 * gnulib/import/mbsinit.c: Likewise.
5333 * gnulib/import/mbsrtowcs-impl.h: Likewise.
5334 * gnulib/import/mbsrtowcs-state.c: Likewise.
5335 * gnulib/import/mbsrtowcs.c: Likewise.
5336 * gnulib/import/ref-add.sin: Likewise.
5337 * gnulib/import/ref-del.sin: Likewise.
5338 * gnulib/import/stdbool.in.h: Likewise.
5339 * gnulib/import/streq.h: Likewise.
5340 * gnulib/import/strnlen1.c: Likewise.
5341 * gnulib/import/strnlen1.h: Likewise.
5342 * gnulib/import/verify.h: Likewise.
5343 * gnulib/import/wchar.in.h: Likewise.
5344 * gnulib/import/wctype.in.h: Likewise.
5348 Support shell wildcards for 'set auto-load safe-path'.
5349 * auto-load.c: Include fnmatch.h.
5350 (filename_is_in_dir): Rename to ...
5351 (filename_is_in_pattern_1, filename_is_in_pattern): ... here and split
5352 it. Update function comment. Rename dir_len to pattern_len. New
5353 variables filename_len, pattern and filename. Add more DEBUG_AUTO_LOAD
5354 messages. Use gdb_filename_fnmatch.
5355 (filename_is_in_auto_load_safe_path_vec): Rename variable dir to
5357 (_initialize_auto_load): Extend the "set auto-load safe-path" help text.
5358 * defs.h (gdb_filename_fnmatch): New declaration.
5359 * utils.c: Include fnmatch.h.
5360 (gdb_filename_fnmatch): New function.
5364 * breakpoint.c (BREAK_ARGS_HELP): Include help message for the new
5365 `-probe' and `-probe-stap' options.
5369 * breakpoint.c: Removed always_inserted_auto, always_inserted_on,
5370 always_inserted_off, and always_inserted_enums.
5371 Change always_inserted_mode's type to 'enum auto_boolean'.
5372 (show_always_inserted_mode, breakpoint_always_inserted_mode): Update
5374 (_initialize_breakpoint): Call add_setshow_auto_boolean_cmd instead
5375 of add_setshow_enum_cmd.
5376 * infrun.c: Remove can_use_displaced_stepping_auto,
5377 can_use_displaced_stepping_on, can_use_displaced_stepping_off, and
5378 can_use_displaced_stepping_enum.
5379 Change can_use_displaced_stepping's type to 'enum auto_boolean'.
5380 (show_can_use_displaced_stepping, use_displaced_stepping): Update
5382 (_initialize_infrun): Call add_setshow_auto_boolean_cmd instead of
5383 add_setshow_enum_cmd.
5387 * dwarf2read.c (signatured_type): Make "per_cu" member first.
5388 (init_cutu_and_read_dies): Handle rereading a DWO CU while it's
5389 currently being read. Propagate DW_AT_comp_dir to DWO DIE.
5393 * linespec.c: #include "stack.h".
5394 (decode_line_with_current_source): Moved here from symtab.c and
5395 renamed from decode_line_spec. All callers updated.
5396 (decode_line_with_last_displayed): Moved here from breakpoint.c and
5397 renamed from decode_line_spec_1. All callers updated.
5398 * linespec.h (decode_line_with_current_source): Move declaration here
5399 from symtab.h and renamed from decode_line_spec.
5400 (decode_line_with_last_displayed): Move declaration here from symtab.h
5401 and renamed from decode_line_spec_1.
5402 * macrocmd.c: #include "linespec.h".
5403 * symtab.c: Remove #include "linespec.h".
5407 * dwarf2read.c (get_cu_length): New function.
5408 (offset_in_cu_p, error_check_comp_unit_head): Call it.
5409 (create_debug_types_hash_table): Ditto.
5410 (init_cutu_and_read_dies): Ditto.
5411 (init_cutu_and_read_dies_no_follow): Ditto.
5413 * dwarf2read.c (dwarf2_find_base_address): Move definition.
5415 * dwarf2read.c (ABBREV_HASH_SIZE): Remove enclosing #ifndef/#endif.
5416 (struct abbrev_table): Define.
5417 (dwarf2_cu): Replace members dwarf2_abbrevs, abbrev_obstack with
5419 (init_cutu_and_read_dies): Update.
5420 (abbrev_table_alloc_abbrev): New function. Replaces
5421 dwarf_alloc_abbrev. All callers updated.
5422 (abbrev_table_add_abbrev): New function.
5423 (abbrev_table_lookup_abbrev): New function. Replaces
5424 dwarf2_lookup_abbrev. All callers updated.
5425 (abbrev_table_read_table): New function. Contents moved here from
5426 dwarf2_read_abbrevs.
5427 (dwarf2_read_abbrevs): Call it.
5428 (abbrev_table_free): New function.
5429 (dwarf2_free_abbrev_table): Call it.
5433 * osdata.c (info_osdata_command): Filter out "Title" columns
5435 * common/linux-osdata.c (struct osdata_type): Add title field.
5436 (osdata_table): Add titles to each entry.
5437 (linux_command_xfer_osdata): Add a column for title data.
5441 Make logging work for MI.
5443 * interps.h (interp_set_logging_ftype): New typedef.
5444 (struct interp_procs): New field set_logging_proc.
5445 (current_interp_set_logging): Declare.
5446 * interps.c (current_interp_set_logging): New function.
5447 * cli/cli-logging.c: Include interps.h.
5448 (set_logging_redirect): Call current_interp_set_logging.
5449 (pop_output_files): Ditto.
5450 (handle_redirections): Ditto, plus skip ui-out redirect if MI.
5451 * mi/mi-console.h (mi_console_set_raw): Declare.
5452 * mi/mi-console.c (mi_console_set_raw): New function.
5453 * mi/mi-interp.c (saved_raw_stdout): New global.
5454 (mi_set_logging): New function.
5455 (_initialize_mi_interp): Add it to interp procs.
5459 * symtab.c (lookup_symbol_aux_objfile): Use
5460 ALL_OBJFILE_PRIMARY_SYMTABS.
5462 * gdbtypes.c (lookup_typename): Rename local variable "tmp" to "type".
5466 * common/buffer.c: Include inttypes.h and stdint.h.
5467 (buffer_xml_printf): Use PRId64, PRIu64, PRIx64 and PRIo64.
5472 * gdbthread.h (ALL_THREADS): New macro.
5473 (thread_list): Declare.
5474 * infrun.c (handle_inferior_event) <spurious signal>: Don't keep
5475 going, but instead fall through to the stepping handling.
5476 * linux-nat.c (resume_lwp): New parameter 'signo'. Resume with
5477 the passed in signal. Adjust debug output.
5478 (resume_callback): Rename to ...
5479 (linux_nat_resume_callback): ... this. Pass the thread's last
5480 stop signal, if in "pass" state.
5481 (linux_nat_resume): Adjust to rename.
5482 (stop_wait_callback): New assertion. Don't respawn signals;
5483 instead let the LWP remain with SIGNALLED set.
5484 (linux_nat_wait_1): Remove flushing of pending SIGSTOPs.
5485 * remote.c (append_pending_thread_resumptions): New.
5486 (remote_vcont_resume): Call it.
5487 * target.h (target_resume): Extend comment.
5491 * auxv.c (fprint_target_auxv): Handle extended cache data tags.
5495 * dwarf2read.c (dwarf2_cu): Add ranges_base.
5496 Delete have_addr_base, unused. All uses updated.
5497 (init_cutu_and_read_dies): Process DW_AT_GNU_ranges_base.
5498 (dwarf2_get_pc_bounds): Add ranges_base.
5499 (dwarf2_record_block_ranges): Ditto.
5504 * varobj.c (varobj_create): Update.
5505 (varobj_set_value): Update.
5506 * tracepoint.c (validate_actionline): Update.
5507 (encode_actions_1): Update.
5508 * parse.c (parse_exp_1): Add 'pc' argument.
5509 (parse_exp_in_context): Add 'pc' argument. Change how
5510 expression_context_pc is set.
5511 (parse_expression): Update.
5512 (parse_field_expression): Update.
5513 * expression.h (parse_exp_1): Update.
5514 * eval.c (parse_to_comma_and_eval): Update.
5515 * breakpoint.c (set_breakpoint_condition): Update.
5516 (update_watchpoint): Update.
5517 (init_breakpoint_sal): Update
5518 (find_condition_and_thread): Update.
5519 (watch_command_1): Update.
5520 (update_breakpoint_locations): Update.
5521 * ada-lang.c (ada_read_renaming_var_value): Update.
5522 (create_excep_cond_exprs): Update.
5526 * dwarf2read.c (per_cu_header_read_in): Simplify, and handle
5531 * dwarf2read.c (read_and_check_comp_unit_head): Delete unnecessary
5533 (error_check_comp_unit_head): New arg abbrev_section. All callers
5535 (read_and_check_comp_unit_head): Ditto.
5536 (read_and_check_type_unit_head): Ditto.
5540 New attribute 'last' for gdb.Symtab_and_line.
5541 * NEWS (Python Scripting): Add entry about the new attribute.
5542 * python/py-symtab.c (salpy_get_last): New function which
5543 implements the get method for the 'last' attribute of
5544 gdb.Symtab_and_line.
5545 (sal_object_getset): Add entry for the 'last' attribute.
5549 * dwarf2read.c (dwo_section_names): Add macinfo_dwo, macro_dwo.
5550 (dwo_sections): Add macinfo, macro.
5551 (dwarf2_locate_dwo_sections): Watch for macro sections.
5552 (dwarf_decode_macros): Remove args lh, abfd, section, section_name.
5553 All callers updated. Handle DWO files.
5555 * NEWS: Mention new options "set debug dwarf2-read" and
5556 "set debug symtab-create".
5557 * dwarf2read.c (dwarf2_read_debug): New static global.
5558 (dwarf2_build_psymtabs_hard): Add debugging printfs.
5559 (process_queue): Ditto.
5560 (process_full_comp_unit): Ditto.
5561 (_initialize_dwarf2_read): Add new option "set debug dwarf2-read".
5562 * elfread.c (elf_symfile_read): Add debugging printf.
5563 * minsyms.c (install_minimal_symbols): Ditto.
5564 * psymtab.c (allocate_psymtab): Ditto.
5565 * symfile.c (allocate_symtab): Ditto.
5566 * symtab.c (symtab_create_debug): New global.
5567 (_initialize_symtab): Add new option "set debug symtab-create".
5568 * symtab.h (symtab_create_debug): Declare.
5570 * dwarf2read.c (lookup_dwo_comp_unit): Enhance comment.
5571 (lookup_dwo_type_unit): Ditto.
5576 * amd64-linux-nat.c: Include <sys/user.h>.
5577 (ps_get_thread_area): Use PTRACE_PEEKUSER to get fs_base/gs_base
5578 if HAVE_STRUCT_USER_REGS_STRUCT_FS_BASE or
5579 HAVE_STRUCT_USER_REGS_STRUCT_GS_BASE is defined.
5581 * configure.ac: Check if the fs_base and gs_base members of
5582 `struct user_regs_struct' exist.
5583 * config.in: Regenerated.
5584 * configure: Likewise.
5589 * python/python.c (gdbpy_write): Check for interrupted output.
5593 * arm-tdep.c (arm_in_function_epilogue_p): Recognize POP with a single
5594 register as a stack alignment in ARM mode.
5598 Update gnulib to GIT commit a39f53ccb70a613e647e1019fb4c63645220267e.
5599 * gnulib/config.in: Regenerate.
5600 * gnulib/configure: Likewise.
5601 * gnulib/import/m4/extensions.m4: Update it.
5602 * gnulib/import/m4/gnulib-common.m4: Likewise.
5603 * gnulib/import/m4/memmem.m4: Likewise.
5604 * gnulib/import/m4/mmap-anon.m4: Likewise.
5605 * gnulib/import/m4/multiarch.m4: Likewise.
5606 * gnulib/import/stdint.in.h: Likewise.
5610 * corefile.c (write_memory_with_notification): New.
5611 * gdbcore.h: Declare write_memory_with_notification.
5612 * ada-lang.c (ada_value_assign): Replace 'write_memory' and
5613 'observer_notify_memory_changed' with 'write_memory_with_notification'.
5614 * valops.c (value_assign): Likewise.
5615 * python/py-inferior.c (infpy_write_memory): Call
5616 'write_memory_with_notification'.
5620 * cc-with-index.sh: Use also -ex "set auto-load no".
5625 * NEWS: Document additions to .gdb_index.
5626 * dwarf2read.c: #include "gdb/gdb-index.h".
5627 (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): New macro.
5628 (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): New macro.
5629 (DW2_GDB_INDEX_CU_SET_VALUE): New macro.
5630 (dwarf2_read_index): Recognize version 7.
5631 (dw2_do_expand_symtabs_matching): New args want_specific_block,
5632 block_kind, domain): All callers updated.
5633 (dw2_find_symbol_file): Handle new index CU values.
5634 (dw2_expand_symtabs_matching): Match symbol kind if requested.
5635 (add_index_entry): New args is_static, kind. All callers updated.
5636 (offset_type_compare, uniquify_cu_indices): New functions
5637 (symbol_kind): New function.
5638 (write_psymtabs_to_index): Remove duplicate CU values.
5639 (write_psymtabs_to_index): Write .gdb_index version 7.
5643 * configure.ac (build_warnings): Add -Wdeclaration-after-statement.
5644 * configure: Regenerate.
5648 * python/py-inferior.c: Update comments of infpy_read_memory
5649 and infpy_write_memory.
5654 * parser-defs.h (insert_type, insert_type_address_space): Declare.
5655 (push_type_address_space): Remove.
5656 * parse.c (insert_into_type_stack): New function.
5657 (insert_type): Likewise.
5658 (insert_type_address_space): Rename from push_type_address_space.
5659 Insert tp_space_identifier.
5660 * c-exp.y (ptr_operator): New production.
5661 (abs_decl): Use ptr_operator.
5662 (space_identifier): Call insert_type_address_space.
5663 (ptype): Don't use const_or_volatile_or_space_identifier.
5664 (const_or_volatile_noopt): Call insert_type.
5665 (conversion_type_id, conversion_declarator): New productions.
5666 (operator): Use conversion_type_id.
5670 * symtab.h (minimal_symbol): New member created_by_gdb.
5671 * elfread.c (elf_symtab_read): Set created_by_gdb for @plt minsym
5673 * symtab.c (lookup_symbol_in_objfile_from_linkage_name): New function.
5674 (search_symbols): Call it instead of lookup_symbol.
5675 Skip symbols created by gdb. Only scan minsyms if nfiles == 0.
5677 * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_const_index.
5678 Adjust address for DW_OP_GNU_addr_index.
5679 * dwarf2expr.h (dwarf_expr_context): Update comment.
5680 * dwarf2loc.c (locexpr_describe_location_piece): New arg per_cu,
5681 all callers updated. Handle TLS vars described with
5682 DW_OP_GNU_const_index.
5683 (disassemble_dwarf_expression): Handle DW_OP_GNU_addr_index
5684 and DW_OP_GNU_const_index.
5685 * dwarf2read.c (decode_locdesc): Handle DW_OP_GNU_addr_index.
5687 * block.c (find_block_in_blockvector): Make explicit the fact that we
5688 ignore GLOBAL_BLOCK.
5692 * c-exp.y (operator): Remove trailing space after "delete" and
5698 Switch i386 and derived targets to ON_STACK.
5699 * amd64-dicos-tdep.c (amd64_dicos_push_dummy_code): Remove.
5700 (amd64_dicos_init_abi): Remove its installment.
5701 * dicos-tdep.c (dicos_init_abi): Remove the
5702 set_gdbarch_call_dummy_location call. Update the comment here.
5703 * i386-dicos-tdep.c (i386_dicos_push_dummy_code): Remove.
5704 (i386_dicos_init_abi): Remove its installment.
5705 * i386-tdep.c (i386_push_dummy_code): New function.
5706 (i386_gdbarch_init): Call set_gdbarch_call_dummy_location, install
5707 i386_push_dummy_code.
5711 Remove stale dummy frames.
5712 * breakpoint.c: Include dummy-frame.h.
5713 (longjmp_breakpoint_ops): New variable.
5714 (update_breakpoints_after_exec, breakpoint_init_inferior): Delete also
5715 bp_longjmp_call_dummy.
5716 (bpstat_what, bptype_string, print_one_breakpoint_location)
5717 (init_bp_location): Support bp_longjmp_call_dummy.
5718 (set_longjmp_breakpoint): Use longjmp_breakpoint_ops. Comment why.
5719 (set_longjmp_breakpoint_for_call_dummy)
5720 (check_longjmp_breakpoint_for_call_dummy, longjmp_bkpt_dtor): New
5722 (initialize_breakpoint_ops): Initialize longjmp_breakpoint_ops.
5723 * breakpoint.h (enum bptype): New item bp_longjmp_call_dummy. Delete
5724 FIXME comment and extend the other comment for bp_call_dummy.
5725 (set_longjmp_breakpoint_for_call_dummy)
5726 (check_longjmp_breakpoint_for_call_dummy): New declarations.
5727 * dummy-frame.c: Include gdbthread.h.
5728 (pop_dummy_frame_bpt): New function.
5729 (pop_dummy_frame): Call pop_dummy_frame_bpt.
5730 (dummy_frame_discard): New function.
5731 (cleanup_dummy_frames): Update the comment about longjmps.
5732 * dummy-frame.h (dummy_frame_discard): New declaration.
5733 * gdbthread.h (struct thread_info): Extend initiating_frame comment.
5734 * infcall.c (call_function_by_hand): New variable longjmp_b. Call
5735 set_longjmp_breakpoint_for_call_dummy. Chain its breakpoints with BPT.
5736 * infrun.c (handle_inferior_event) <BPSTAT_WHAT_CLEAR_LONGJMP_RESUME>:
5737 Add case 4 comment. Call check_longjmp_breakpoint_for_call_dummy and
5738 keep_going if IS_LONGJMP and there is no other reason to stop.
5742 * remote-sim.c (sim_command_completer): Initialize
5747 * dwarf2expr.c (execute_stack_op): Support DW_OP_GNU_parameter_ref.
5748 * dwarf2loc.c (call_site_parameter_matches): Support
5749 CALL_SITE_PARAMETER_PARAM_OFFSET.
5750 (needs_dwarf_reg_entry_value): Push stub value.
5751 * dwarf2read.c (read_call_site_scope): New variable origin. Support
5752 CALL_SITE_PARAMETER_PARAM_OFFSET and its DW_AT_abstract_origin.
5753 * gdbtypes.h (enum call_site_parameter_kind): New item
5754 CALL_SITE_PARAMETER_PARAM_OFFSET.
5755 (struct call_site.parameter.u): New field param_offset.
5759 Code cleanup: Generalize call_site.parameter key.
5760 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_entry_value>: Remove
5761 variable dwarf_reg. New variable kind_u. Update parameters to
5762 push_dwarf_reg_entry_value.
5763 (ctx_no_push_dwarf_reg_entry_value): Update parameters.
5764 * dwarf2expr.h (enum call_site_parameter_kind)
5765 (union call_site_parameter_u): Forward declarations.
5766 (struct dwarf_expr_context_funcs): Update parameters and their
5767 description for push_dwarf_reg_entry_value.
5768 (ctx_no_push_dwarf_reg_entry_value): Update parameters.
5769 * dwarf2loc.c (call_site_parameter_matches): New function.
5770 (dwarf_expr_reg_to_entry_parameter): Update parameters and their
5771 description. Use call_site_parameter_matches.
5772 (dwarf_expr_push_dwarf_reg_entry_value, value_of_dwarf_reg_entry):
5773 Update parameters and their description.
5774 (value_of_dwarf_block_entry): Remove variables dwarf_reg and fb_offset.
5775 New variable kind_u. Adjust the caller for updated parameters.
5776 (needs_dwarf_reg_entry_value): Update parameters.
5777 * dwarf2read.c (read_call_site_scope): New variable loc. Use it
5778 instead of attr. Update for the changed fields of struct
5779 call_site_parameter.
5780 * gdbtypes.h: Include dwarf2expr.h.
5781 (enum call_site_parameter_kind): New.
5782 (struct call_site.parameter): New field kind. Wrap dwarf_reg and
5783 fb_offset into new union u.
5787 * amd64-tdep.c (amd64_x32_analyze_stack_align): New function.
5788 (amd64_analyze_prologue): Call amd64_x32_analyze_stack_align
5793 * amd64-linux-nat.c (compat_x32_clock_t): New.
5794 (compat_x32_siginfo_t): Likewise.
5795 (compat_x32_siginfo_from_siginfo): Likewise.
5796 (siginfo_from_compat_x32_siginfo): Likewise.
5797 (amd64_linux_siginfo_fixup): Call compat_x32_siginfo_from_siginfo
5798 and siginfo_from_compat_x32_siginfo for x32.
5802 * tracepoint.c (tfile_xfer_partial): Add a lseek.
5806 * amd64-linux-nat.c (ps_get_thread_area): Check bits_per_word
5807 instead of gdbarch_ptr_bit.
5808 * amd64-nat.c (amd64_native_gregset_reg_offset): Likewise.
5809 (amd64_supply_native_gregset): Likewise.
5810 (amd64_collect_native_gregset): Likewise.
5811 * amd64-tdep.c (amd64_supply_fxsave): Likewise.
5812 (amd64_supply_xsave): Likewise.
5813 (amd64_collect_fxsave): Likewise.
5814 (amd64_collect_xsave): Likewise.
5818 * amd64-linux-nat.c (AMD64_LINUX_X32_DS): New.
5819 (amd64_linux_read_description): Check DS segment register for
5824 * dwarf2read.c (dw2_find_symbol_file): Unconditionally use
5825 init_cutu_and_read_dies.
5829 * MAINTAINERS (Write After Approval): Add myself to the list.
5833 * valops.c (value_find_oload_method_list): Now static.
5834 * value.h (value_find_oload_method_list): Don't declare.
5838 * valops.c (find_overload_match): Use value_ind.
5842 * infrun.c (handle_inferior_event): Correct indentation.
5846 * dwarf2loc.c (debug_loc_kind): Add DEBUG_LOC_START_LENGTH.
5847 (DEBUG_LOC_START_END): Renamed from DEBUG_LOC_NORMAL.
5849 (decode_debug_loc_dwo_addresses): New arg "byte_order". All callers
5850 updated. Handle DEBUG_LOC_START_LENGTH.
5851 (dwarf2_find_location_expression): Handle DEBUG_LOC_START_LENGTH.
5852 (loclist_describe_location): Ditto.
5857 * infrun.c (handle_inferior_event): Re-fetch frame and gdbarch
5858 after hiding inline functions.
5862 * inf-ttrace.c (_initialize_hppa_hpux_nat): Rename into
5863 _initialize_inf_ttrace.
5867 * ia64-hpux-nat.c (_initialize_ia64_hpux_nat): Renames
5868 _initialize_hppa_hpux_nat.
5872 * remote-sim.c (sim_command_completer): Change type of return
5873 value to "VEC (char_ptr) *". Adjust implementation accordingly.
5879 * i386-tdep.c (i386_push_dummy_call): Unconditionally align the
5880 stack on a 16-byte boundary.
5884 * jit.c (finalize_symtab): Set function's return type to 'void' by
5890 * amd64-linux-tdep.c (amd64_linux_init_abi_common): New function.
5891 Move bits common to both the classic LP64 and the new x32 ILP32
5893 (amd64_linux_init_abi): Call amd64_linux_init_abi_common.
5894 (amd64_x32_linux_init_abi): New function.
5895 (_initialize_amd64_linux_tdep): Register osabi for bfd_mach_x64_32
5898 * i386-tdep.h (i386_pseudo_register_name): New prototype.
5899 * i386-tdep.c (i386_pseudo_register_name): Make public.
5900 * amd64-tdep.h (amd64_x32_init_abi): New prototype.
5901 * amd64-tdep.c (amd64_dword_names): Add "eip".
5902 (amd64_x32_pseudo_register_type): New function
5903 (amd64_x32_init_abi): New function.
5908 * inferior.h (struct inferior_suspend_state): Comment out.
5909 (struct inferior): Comment out the field suspend.
5910 * infrun.c (struct infcall_suspend_state): Comment out the field
5912 (save_infcall_suspend_state, restore_infcall_suspend_state): Comment
5917 PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
5918 * c-exp.y (classify_inner_name): Remove caller assumptions in the
5919 function comment. Return ERROR for unresolved cases. Implement
5920 returning proper NAME.
5921 (yylex): Accept also NAME from classify_inner_name.
5922 * cp-namespace.c (cp_lookup_nested_type): Rename to ...
5923 (cp_lookup_nested_symbol): ... here. Return any found symbol, not just
5925 * cp-support.h (cp_lookup_nested_type): Update its declaration.
5929 * breakpoint.c (condition_completer): New function.
5930 (_initialize_breakpoint): Use it.
5931 * value.c (complete_internalvar): New function.
5932 * value.h (complete_internalvar): Declare.
5936 * ada-lang.c (ada_make_symbol_completion_list): Return a VEC.
5937 * breakpoint.c (catch_syscall_completer): Return a VEC.
5938 * cli/cli-cmds.c (complete_command): Update.
5939 * cli/cli-decode.c (complete_on_cmdlist): Return a VEC.
5940 (complete_on_enum): Likewise.
5941 * command.h: Include gdb_vecs.h.
5942 (completer_ftype): Change return type.
5943 (complete_on_cmdlist, complete_on_enum): Likewise.
5944 * completer.c (noop_completer, filename_completer)
5945 (location_completer): Return a VEC.
5946 (add_struct_fields): Remove 'nextp' argument. Change 'output'
5948 (expression_completer, complete_line_internal, complete_line)
5949 (command_completer): Return a VEC.
5950 (gdb_completion_word_break_characters, line_completion_function):
5952 * completer.h: Include gdb_vecs.h.
5953 (complete_line, noop_completer, filename_completer)
5954 (expression_completer, location_completer, command_completer):
5956 * f-lang.c (f_word_break_characters): Return a VEC.
5957 * interps.c (interpreter_completer): Return a VEC.
5958 * language.h (struct language_defn)
5959 <la_make_symbol_completion_list>: Return a VEC.
5960 * python/py-cmd.c (cmdpy_completer): Return a VEC.
5961 * symtab.c (free_completion_list): Take a VEC.
5962 (return_val_size, return_val_index): Remove.
5963 (return_val): Now a VEC.
5964 (completion_list_add_name): Update.
5965 (default_make_symbol_completion_list_break_on)
5966 (default_make_symbol_completion_list, make_symbol_completion_list)
5967 (make_symbol_completion_list_fn, make_file_symbol_completion_list):
5969 (add_filename_to_list): Update.
5970 (struct add_partial_filename_data) <list_used, list_alloced>: Remove.
5972 (maybe_add_partial_symtab_filename): Update.
5973 (make_source_files_completion_list): Return a VEC.
5974 * symtab.h (default_make_symbol_completion_list_break_on)
5975 (default_make_symbol_completion_list, make_symbol_completion_list)
5976 (make_symbol_completion_list_fn, make_file_symbol_completion_list)
5977 (make_source_files_completion_list): Update.
5981 * breakpoint.c (add_catch_command): Use completer_ftype.
5982 * breakpoint.h: Include command.h.
5983 (add_catch_command): Use completer_ftype.
5984 * cli/cli-decode.c (set_cmd_completer): Use completer_ftype.
5985 * cli/cli-decode.h (struct cmd_list_element) <completer>:
5986 Use completer_ftype.
5987 * command.h (completer_ftype): New typedef.
5988 (set_cmd_completer): Use it.
5989 * python/py-cmd.c (struct cmdpy_completer) <completer>: Use
5994 Partial revert of previous change.
5996 * serial.c (scb_base): New global.
5997 (serial_for_fd): New.
5998 (serial_open, serial_fdopen_ops): Link new serial in open serials
6000 (do_serial_close): Unlink serial from the open serials chain.
6004 * infrun.c (infrun_thread_stop_requested_callback): Don't switch
6006 (prepare_for_detach): No longer context switch here in non-stop
6008 (fetch_inferior_event): Ditto.
6009 (handle_inferior_event) <STOP_QUIETLY || NO_STOP_QUIETLY>: Switch
6010 to the event thread before removing breakpoints. Switch to the
6011 event thread before inserting breakpoints and resuming.
6012 (handle_inferior_event) <TARGET_WAITKIND_SPURIOUS>: Switch to the
6013 event thread before resuming.
6014 (handle_inferior_event) <stepping_past_singlestep_breakpoint>:
6015 Switch to the event thread before removing breakpoints.
6019 * infcmd.c (construct_inferior_arguments) [__MINGW32__]: Quote
6020 special characters correctly for the Windows shells. See
6021 http://sourceware.org/ml/gdb/2012-06/msg00047.html for the bug
6023 [!__MINGW32__]: Remove extra double quote character from special
6028 * ui-out.h: Remove #if 0 declarations.
6029 * ui-out.c: Remove #if 0 functions.
6033 * ser-base.c (run_async_handler_and_reschedule): New.
6034 (fd_event, push_event): Use it.
6035 * serial.c (serial_open, serial_fdopen_ops): Set the initial
6036 reference count to 1.
6037 (do_serial_close): Set the bufp field to NULL. Use serial_unref
6039 (serial_is_open, serial_ref, serial_unref): New.
6040 * serial.h (serial_open): Adjust comment.
6041 (serial_is_open): Declare.
6042 (serial_close): Adjust comment.
6043 (serial_ref, serial_unref) Declare.
6044 (struct serial): New field 'refcnt'.
6048 Remove #if 0'd "connect" command, and unnecessary associated
6049 refcounting and serial reuse bits.
6051 * serial.h (struct serial): Remove fields 'next' and 'refcnt'.
6052 * serial.c (last_serial_opened): Delete.
6054 (serial_open): Adjust.
6055 (serial_for_fd): Delete.
6056 (serial_fdopen_ops, do_serial_close): Adjust.
6057 (serial_fdopen_ops): Adjust.
6061 * serial.c (do_serial_close): Remove early return when SCB is
6066 * dwarf2read.c (dw2_get_file_names_reader): Ignore partial units.
6070 Fix regression by the "ambiguous linespec" series.
6071 * breakpoint.c (parse_breakpoint_sals): New variable cursal. Use
6072 get_last_displayed_symtab and get_last_displayed_line and depending
6077 * dwarf2read.c (dw2_get_primary_filename_reader): New function.
6078 (dw2_find_symbol_file): Use it.
6082 * mips-linux-tdep.c (mips_gdb_signal_from_target): New
6083 * mips-linux-tdep.h (mips_signals): New
6087 * infrun.c (handle_inferior_event)
6088 <BPSTAT_WHAT_SET_LONGJMP_RESUME>: Don't delete the step-resume
6090 <BPSTAT_WHAT_CLEAR_LONGJMP_RESUME>: Remove longjmp logic; use
6091 exception logic in all cases. Update comments.
6092 (insert_longjmp_resume_breakpoint): Set the exception resume
6097 * mips-tdep.c (mips_push_dummy_code): Handle microMIPS code.
6101 * valarith.c (binop_types_user_defined_p): Fix a typo.
6106 * arch-utils.c (default_return_in_first_hidden_param_p): New.
6107 * arch-utils.h: Declare.
6108 * gdbarch.sh: Add return_in_first_hidden_param_p.
6109 * gdbarch.c, gdbarch.h: Regenerated.
6110 * infcall.c (call_function_by_hand): Call
6111 gdbarch_return_in_first_hidden_param_p instead of
6112 language_pass_by_reference.
6114 * m68k-tdep.c (m68k_return_in_first_hidden_param_p): New.
6115 (m68k_gdbarch_init): Install m68k_return_in_first_hidden_param_p.
6116 * sh-tdep.c (sh_return_in_first_hidden_param_p): New.
6117 (sh_gdbarch_init): Install sh_return_in_first_hidden_param_p.
6118 * tic6x-tdep.c (tic6x_push_dummy_call): Remove local variable
6119 `cplus_return_struct_by_reference'.
6120 (tic6x_return_value): Handle language cplusplus.
6121 (tic6x_return_in_first_hidden_param_p): New.
6122 (tic6x_gdbarch_init): Install tic6x_return_in_first_hidden_param_p.
6126 * dwarf2read.c (dwarf2_cu): Add comment.
6130 * mips-tdep.c (mips_pseudo_register_type): Remove tdep local
6132 (mips_eabi_push_dummy_call): Likewise.
6133 (mips_n32n64_push_dummy_call): Likewise.
6134 (mips_o32_push_dummy_call): Likewise.
6135 (mips_o64_push_dummy_call): Likewise.
6139 * mips-tdep.c (mips_convert_register_p): Correct coding style.
6143 * mips-tdep.c (mips_pseudo_register_type): Use
6144 mips_float_register_p.
6148 * infrun.c (handle_inferior_event): Remove calls to
6149 reinit_frame_cache that follow a context_switch call.
6153 * infrun.c (handle_inferior_event) <deferred_step_ptid>: Use
6154 context_switch and remove stale comment.
6158 * infrun.c (struct execution_control_state): Remove
6159 `new_thread_event' field.
6160 (handle_inferior_event): Simplify new threads handling; don't
6161 resume the inferior if we find a new thread.
6165 * NEWS: Document the deprecation of SH's 'regs' command.
6166 * inferior.h (all_registers_info): Add function declaration.
6167 * sh-tdep.c (sh_show_regs): Remove variable.
6168 (sh_generic_show_regs, sh3_show_regs, sh2e_show_regs, sh2a_show_regs)
6169 (sh2a_nofpu_show_regs, sh3e_show_regs, sh3_dsp_show_regs)
6170 (sh4_show_regs, sh4_nofpu_show_regs, sh_dsp_show_regs)
6171 (sh_show_regs_command): Remove functions.
6172 (sh_gdbarch_init): Don't set sh_show_regs.
6173 (_initialize_sh_tdep): Make the 'regs' command an deprecated alias to
6174 'info all-registers'.
6175 * sh64-tdep.c (sh64_show_media_regs, sh64_show_compact_regs)
6176 (sh64_show_regs): Remove functions.
6177 * sh64-tdep.h (sh64_show_regs): Remove function declaration.
6181 * configure.ac: Move development=true below AC_INIT.
6182 * configure: Regenerate.
6186 * mi/mi-interp.c (mi_interpreter_init): Set raw_stdout from
6191 * corefile.c (read_memory, read_stack, write_memory): Accept LEN
6192 argument as ssize_t.
6193 * gdbcore.h (read_memory, read_stack, write_memory): Likewise.
6194 * remote.c (remote_write_bytes_aux, remote_write_bytes): Likewise.
6195 * target.c (target_read_stack, target_write_memory)
6196 (target_write_raw_memory): Likewise.
6197 * target.h (target_read_stack, target_write_memory)
6198 (target_write_raw_memory): Likewise.
6202 * symfile-mem.c: Change gdb_static_assert to ssize_t.
6203 (target_read_memory_bfd): Cast gdb_assert LEN to ssize_t.
6204 * target.c (target_read_memory): Change LEN to ssize_t.
6205 * target.h (target_read_memory): Change LEN to ssize_t.
6211 * breakpoint.c (until_break_command): Only fetch the selected
6212 frame after decode_line_1.
6216 * solib-svr4.c (enable_break): Don't fallback to setting the solib
6217 event breakpoint at _start, __start or main if a program
6218 interpreter is not found.
6222 * windows-tdep.h (windows_iterate_over_objfiles_in_search_order):
6224 * windows-tdep.c: #include "objfiles.h".
6225 (windows_iterate_over_objfiles_in_search_order): New function.
6226 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
6227 iterate_over_objfiles_in_search_order gdbarch method to
6228 windows_iterate_over_objfiles_in_search_order.
6229 * i386-cygwin-tdep.c (i386_cygwin_init_abi): Likewise.
6233 * gdbarch.sh: Add generation of
6234 "iterate_over_objfiles_in_search_order_cb_ftype" typedef in
6235 gdbarch.h. Add include of "objfiles.h" in gdbarch.c.
6236 (iterate_over_objfiles_in_search_order): New gdbarch method.
6237 * gdbarch.h, gdbarch.c: Regenerate.
6238 * objfiles.h (default_iterate_over_objfiles_in_search_order):
6240 * objfiles.c (default_iterate_over_objfiles_in_search_order):
6242 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
6243 out of lookup_symbol_aux_symtabs.
6244 (lookup_symbol_aux_symtabs): Replace extracted-out code by
6245 call to lookup_symbol_aux_objfile.
6246 (struct global_sym_lookup_data): New type.
6247 (lookup_symbol_global_iterator_cb): New function.
6248 (lookup_symbol_global): Search for symbol using
6249 gdbarch_iterate_over_objfiles_in_search_order and
6250 lookup_symbol_global_iterator_cb.
6251 * findvar.c (struct minsym_lookup_data): New type.
6252 (minsym_lookup_iterator_cb): New function.
6253 (default_read_var_value) [case LOC_UNRESOLVED]: Resolve the
6254 symbol's address via gdbarch_iterate_over_objfiles_in_search_order
6255 and minsym_lookup_iterator_cb.
6259 Revert the following patch:
6260 * findvar.c (default_read_var_value): For LOC_UNRESOLVED symbols,
6261 try locating the symbol in the symbol's own objfile first, before
6262 extending the search to all objfiles.
6263 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
6264 out of lookup_symbol_aux_symtabs.
6265 (lookup_symbol_aux_symtabs): Add new parameter "exclude_objfile".
6266 Replace extracted-out code by call to lookup_symbol_aux_objfile.
6267 Do not search EXCLUDE_OBJFILE.
6268 (lookup_static_symbol_aux): Update call to lookup_symbol_aux_symtabs.
6269 (lookup_symbol_global): Search for matches in the block's objfile
6270 first, before searching all other objfiles.
6274 * breakpoint.c (find_condition_and_thread): Stop parsing
6275 as soon as the first invalid keyword is found.
6279 * copyright.py (EXCLUDE_LIST): Add 'gdb/CONTRIBUTE' to list.
6283 * config/djgpp/djcheck.sh: Add copyright header.
6287 * copyright.py (update_files, main): Fix path to update-copyright
6292 * copyright.py (MULTIPLE_COPYRIGHT_HEADERS): New constant.
6293 (main): Add MULTIPLE_COPYRIGHT_HEADERS to the list of files
6294 for which a reminder to update by hand is printed.
6298 * buildsym.c (make_blockvector): Add comment.
6302 * arch-utils.c (default_gdb_signal_from_target): Delete.
6303 * arch-utils.h (default_gdb_signal_from_target): Delete.
6304 * corelow.c (core_open) <signal mapping>: Extended comment. Check
6305 gdbarch_gdb_signal_from_target_p.
6306 * gdbarch.sh (gdb_signal_from_target): Make it an M method (with
6308 * gdbarch.h: Regenerate.
6309 * gdbarch.c: Regenerate.
6313 * gdbarch.sh (gdb_signal_from_target): Mention that the
6314 implementation of the method must be host independent.
6315 * gdbarch.h: Regenerate.
6319 * symfile-mem.c: 3 new gdb_static_assert for target_read_memory_bfd
6321 (target_read_memory_bfd): New function.
6322 (symbol_file_add_from_memory): Use it.
6326 * symtab.c (lookup_global_symbol_from_objfile): Only scan blockvector
6328 (basic_lookup_transparent_type): Ditto.
6330 * objfiles.h (ALL_OBJFILE_PRIMARY_SYMTABS): New macro.
6331 (ALL_PRIMARY_SYMTABS): Use it.
6332 (ALL_PSPACE_PRIMARY_SYMTABS): Ditto.
6333 * dwarf2read.c (dw2_find_symbol_file): Ditto.
6334 * linespec.c (iterate_over_all_matching_symtabs): Ditto.
6335 * symtab.c (lookup_symbol_aux_objfile): Ditto.
6336 (basic_lookup_transparent_type): Ditto.
6340 * symtab.c (symbol_demangled_name): New variable `dem_name'. Use
6341 it to optimize resolution of demangled name.
6345 * configure.ac (development): Define new variable.
6346 Call AC_CHECK_LIB for mcheck if $development.
6347 (ERROR_ON_WARNING): Enable it by default only if $development.
6348 * config.in: Regenerate.
6349 * configure: Regenerate.
6353 * target.c (target_read_memory): Make LEN argument as size_t.
6354 * target.h (target_read_memory): Likewise.
6358 * tilegx-linux-tdep.c (tilegx_l): Use ULL for 64-bit values.
6362 * ppc-linux-nat.c (have_ptrace_booke_interface): Disable ptrace
6363 BookE interface for PowerPC server processors if not available
6364 in the Linux Kernel.
6368 * linespec.c (decode_objc): Add cleanup to free
6370 (find_linespec_symbols): Add cleanup to free CLASSES.
6371 * symfile.c (find_separate_debug_file_by_debuglink): Add
6372 cleanup to free DEBUGLINK.
6373 * ui-out.c (clear_header_list): No need to check if
6374 HEADER_NEXT.COLHDR is NULL.
6375 Free HEADER_NEXT.COL_NAME.
6379 * ada-lang.c (standard_lookup): Prevent uninitialized variable
6384 * configure.host (gdb_host_cpu): Handle tilegx*.
6385 (gdb_host): Handle tilegx-*-linux*.
6386 * tilegx-linux-nat.c: New file.
6387 * config/tilegx/linux.mh: New file.
6391 * Makefile.in (ALL_TARGET_OBJS): Add tilegx-tdep.o and
6392 tilegx-linux-tdep.o.
6393 (ALLDEPFILES): Add tilegx-linux-nat.c, tilegx-tdep.c and
6394 tilegx-linux-tdep.c.
6395 * configure.tgt: Handle tilegx-*-linux*.
6396 * tilegx-tdep.h: New file.
6397 * tilegx-tdep.c: New file.
6398 * tilegx-linux-tdep.c: New file.
6399 * regformats/reg-tilegx.dat: New file.
6403 * ppc-linux-nat.c (ppc_linux_can_use_hw_breakpoint): fix
6404 accounting of hw watchpoints on ppc.
6408 * source.c (openp): Expand tilde in path entries.
6412 * buildsym.c (block_compar): Fix comment.
6413 (end_symtab): Fix and clarify some comments.
6415 * stabsread.h (cleanup_undefined_stabs_types): Renamed from
6416 cleanup_undefined_types.
6417 * stabsread.c (cleanup_undefined_stabs_types): Ditto.
6418 All callers updated.
6422 * symfile.c (symfile_bfd_open): Don't close desc if bfd_fopen
6424 * solib.c (solib_bfd_fopen): Don't close fd if bfd_fopen fails.
6425 * exec.c (exec_file_attach): Don't close scratch_chan if bfd_fopen
6427 * dwarf2read.c (try_open_dwo_file): Don't close fd if bfd_fopen
6432 * solib-darwin.c (dyld_all_image_addr, dyld_all_image): Move into...
6433 (struct darwin_info): ... New struct.
6434 (solib_darwin_pspace_data): New variable.
6435 (darwin_pspace_data_cleanup): New function.
6436 (get_darwin_info): Likewise.
6437 (darwin_dyld_version_ok, darwin_load_image_infos)
6438 (darwin_solib_get_all_image_info_addr_at_init)
6439 (darwin_solib_read_all_image_info_addr): Add info argument.
6441 (darwin_current_sos): Use per pspace structure.
6442 (darwin_solib_create_inferior_hook): Likewise.
6443 (darwin_clear_solib): Likewise.
6444 (_initialize_darwin_solib): Initialize solib_darwin_pspace_data.
6448 * infrun.c (wait_for_inferior): Move ecss and ecs locals to the
6449 block that uses them. Clear ecss before handling each event.
6453 * solib-svr4.c (svr4_current_sos): New comment on
6454 svr4_current_sos_via_xfer_libraries fall back.
6458 * psymtab.c (lookup_symbol_aux_psymtabs): New variable stab_best. Use
6459 it as a fallback for TYPE_IS_OPAQUE.
6460 * symfile.h (struct quick_symbol_functions): Mention TYPE_OPAQUE
6461 symbols for lookup_symbol.
6465 PR symtab/13277: Resolving opaque structures in ICC generated binaries.
6466 * dwarf2read.c (struct dwarf2_cu) <producer_is_icc>: New field.
6467 (producer_is_gxx_lt_4_6): Move the checking and caching to...
6468 (check_producer): ... this new function, which also checks for ICC
6469 and caches the result.
6470 (producer_is_icc): New function.
6471 (read_structure_type): Don't set TYPE_STUB_SUPPORTED if the
6478 * arch-utils.c (default_gdb_signal_to_host): Rename to ...
6479 (default_gdb_signal_to_target): ... this. Add comment.
6480 (default_gdb_signal_from_host): Rename to ...
6481 (default_gdb_signal_from_target): ... this. Add comment.
6482 * arch-utils.h (default_gdb_signal_to_host): Rename to ...
6483 (default_gdb_signal_to_target): ... this.
6484 (default_gdb_signal_from_host): Rename to ...
6485 (default_gdb_signal_from_target): ... this.
6486 * corelow.c (core_open): Adjust to naming change. Replace comment.
6487 * gdbarch.sh (gdb_signal_from_host): Rename to ...
6488 (gdb_signal_from_target): ... this. Adjust to
6489 default_gdb_signal_from_host naming change. Extend comment.
6490 (gdb_signal_to_host): Rename to ...
6491 (gdb_signal_to_target): ... this. Adjust to
6492 default_gdb_signal_to_host naming change.
6493 * gdbarch.h, gdbarch.c: Renegerate.
6499 Replace TARGET_SIGNAL_ with GDB_SIGNAL_ throughout.
6505 Replace target_signal with gdb_signal throughout.
6511 * tui/tui-hooks.c (tui_query_hook): Pre-compute the question
6512 string, instead of reusing the va_list argument.
6516 * cp-support.h (cp_finalize_namespace, cp_initialize_namespace):
6521 * symtab.c (search_symbols): Formatting fixes.
6522 (print_symbol_info): Formatting fixes.
6524 * dwarf2-frame.c (execute_cfa_program): Update to handle long long ->
6525 int64_t change to leb128 API.
6526 (read_encoded_value, decode_frame_entry_1): Ditto.
6527 * dwarf2expr.c (safe_read_uleb128, safe_read_sleb128): Ditto.
6528 (dwarf_block_to_dwarf_reg, dwarf_block_to_dwarf_reg_deref): Ditto.
6529 (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): Ditto.
6530 (execute_stack_op): Ditto.
6531 * dwarf2expr.h (gdb_read_uleb128, gdb_read_sleb128): Ditto.
6532 (safe_read_uleb128, safe_read_sleb128): Ditto.
6533 * dwarf2loc.c (decode_debug_loc_dwo_addresses): Ditto.
6534 (dwarf2_compile_expr_to_ax): Ditto.
6535 (locexpr_describe_location_piece): Ditto.
6536 (disassemble_dwarf_expression): Ditto.
6537 (locexpr_describe_location_1): Ditto.
6542 * Makefile.in (SUBDIR_MI_OBS): Add mi-cmd-info.o.
6543 (SUBDIR_MI_SRCS): Add mi-cmd-info.c.
6544 (mi-cmd-info.o): New rule.
6545 * osdata.h (info_osdata_command): New declaration.
6546 * osdata.c (info_osdata_command): Change to non-static.
6547 * mi/mi-cmds.h (mi_cmd_info_os): New declaration.
6548 * mi/mi-cmds.c (mi_cmds): Add -info-os MI command.
6549 * mi/mi-cmd-info.c: New file.
6553 * symtab.c (search_symbols): Pass NULL for file_matcher to
6554 expand_symtabs_matching if there are no files to match.
6556 * gdbtypes.c (lookup_typename): Simplify.
6560 * arch-utils.h (default_target_signal_to_host): Delete.
6561 * arch-utils.c (default_target_signal_to_host): Delete.
6562 * gdbarch.sh (target_signal_to_host): Remove.
6563 * gdbarch.h, gdbarch.c: Regenerate.
6567 * dwarf2-frame.c (struct dwarf2_cie): Make initial_instructions, end
6569 (struct dwarf2_fde): Make instructions, end "const gdb_byte *".
6570 (execute_cfa_program): Update to match API of leb128 functions.
6571 (read_1_byte, read_4_bytes, read_8_bytes): Make buf parameter
6573 (read_unsigned_leb128, read_signed_leb128): Delete.
6574 (read_initial_length): Change type of buf argument to
6576 (read_encoded_value): Update to match API of leb128 functions.
6577 (decode_frame_entry): Change result to "const gdb_byte *", and
6578 similarly for "start" parameter.
6579 (decode_frame_entry_1): Ditto. Use new leb128 reader functions.
6580 (dwarf2_build_frame_info): Change local frame_ptr to
6582 * dwarf2expr.c (safe_read_uleb128, safe_read_sleb128): Replaces
6583 read_uleb128, read_sleb128. All callers updated.
6584 (safe_skip_leb128): New function.
6585 (dwarf_block_to_dwarf_reg): Update to match API of leb128 functions.
6586 Call gdb_read_uleb128, gdb_skip_leb128 instead of read_uleb128.
6587 (dwarf_block_to_dwarf_reg_deref): Update to match API of leb128
6588 functions. Call gdb_read_uleb128, gdb_read_sleb128 instead of
6589 read_uleb128, read_sleb128.
6590 (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset): Ditto.
6591 (execute_stack_op): Update to match API of leb128 functions.
6592 * dwarf2expr.h: #include "leb128.h".
6593 (read_uleb128, read_sleb128): Delete.
6594 (gdb_read_uleb128, gdb_read_sleb128, gdb_skip_leb128): New functions.
6595 (safe_read_uleb128, safe_read_sleb128, safe_skip_leb128): Declare.
6596 * dwarf2loc.c (debug_loc_kind): New enum.
6597 (decode_debug_loc_addresses): New function.
6598 (decode_debug_loc_dwo_addresses): New function.
6599 (dwarf2_find_location_expression): Rewrite.
6600 (dwarf2_compile_expr_to_ax): Update to match API of leb128 functions.
6601 (locexpr_describe_location_piece): Ditto.
6602 (disassemble_dwarf_expression): Ditto.
6603 (locexpr_describe_location_1): Ditto.
6604 (loclist_describe_location): Rewrite.
6605 * dwarf2loc.h (dwarf2_loclist_baton): New member "from_dwo".
6606 * dwarf2read.c (die_reader_specs): New member "buffer_end".
6607 (dwarf2_section_buffer_overflow_complaint): Renamed from
6608 dwarf2_macros_too_long_complaint. All callers updated.
6609 (skip_leb128): Delete.
6610 (init_cu_die_reader): Initialize reader->buffer_end.
6611 (skip_one_die): Replace call to skip_leb128 with safe_skip_leb128.
6612 (skip_form_bytes): New arg buffer_end. All callers updated.
6613 Replace call to skip_leb128 with gdb_skip_leb128.
6614 (skip_unknown_opcode): New arg mac_end. All callers updated.
6615 (fill_in_loclist_baton): Initialize baton->from_dwo.
6619 * mips-linux-nat.c (mips_linux_read_description): Use a more
6620 verbose error message.
6624 * NEWS: Add MIPS/Linux DSP support.
6625 * mips-linux-tdep.c: Document post-2.6.12 o32 sigcontext layout.
6626 (SIGCONTEXT_DSPCTL): New macro.
6627 (SIGCONTEXT_HI1, SIGCONTEXT_LO1): Likewise.
6628 (SIGCONTEXT_HI2, SIGCONTEXT_LO2): Likewise.
6629 (SIGCONTEXT_HI3, SIGCONTEXT_LO3): Likewise.
6630 (N64_SIGCONTEXT_HI1, N64_SIGCONTEXT_HI2): Likewise.
6631 (N64_SIGCONTEXT_HI3): Likewise.
6632 (N64_SIGCONTEXT_LO1, N64_SIGCONTEXT_LO2): Likewise.
6633 (N64_SIGCONTEXT_LO3): Likewise.
6634 (N64_SIGCONTEXT_DSPCTL): Likewise.
6635 (N64_SIGCONTEXT_FPCSR): Clarify definition.
6636 (mips_linux_o32_sigframe_init): Handle DSP registers.
6637 (mips_linux_n32n64_sigframe_init): Likewise.
6641 * common/buffer.c (buffer_grow): ARI fix: Remove unneeded
6646 * target.h (store_waitstatus): Move declaration ...
6647 * inf-child.h (store_waitstatus): ... here.
6648 * target.c: Move inclusion of gdb_wait.h, and ...
6649 (store_waitstatus): ... this ...
6650 * inf-child.c: ... here.
6651 * linux-nat.c: Include inf-child.h.
6652 * rs6000-nat.c: Include inf-child.h.
6653 * spu-linux-nat.c: Include inf-child.h.
6657 * tracepoint.c (start_tracing): Add missing i18n markup.
6658 (stop_tracing, set_trace_user): Ditto.
6659 (set_trace_notes, set_trace_stop_notes): Ditto.
6664 * gnu-v3-abi.c (gnuv3_baseclass_offset): Return early for Java
6666 * value.h (value_cast_pointers): Update.
6667 * valops.c (value_cast_pointers): Add 'subclass_check' argument.
6668 (value_cast): Update.
6669 (update_search_result): New function.
6670 (do_search_struct_field): New, from search_struct_field. Check
6671 for ambiguous results.
6672 (search_struct_field): Rewrite.
6673 * infcall.c (value_arg_coerce): Update.
6674 * eval.c (evaluate_subexp_standard) <STRUCTOP_MEMBER>: Use
6675 value_cast_pointers.
6676 * ada-lang.c (ada_convert_actual): Update.
6680 * macroexp.c (macro_stringify): Terminate the string.
6684 * NEWS (--with-auto-load-dir): Prepend $debugdir to the default path.
6686 * auto-load.c (auto_load_expand_dir_vars): New function.
6687 (auto_load_safe_path_vec_update): Use it, remove the
6688 substitute_path_component call thanks to it.
6689 (auto_load_objfile_script): Remove the debug_file_directory processing.
6690 Use auto_load_expand_dir_vars, remove the substitute_path_component
6692 * configure: Regenerate.
6693 * configure.ac (--with-auto-load-dir): Prepend $debugdir to the default
6694 path. Escape $ also for $debugdir.
6695 (--with_auto_load_safe_path): Escape $ also for $debugdir.
6696 * utils.c (substitute_path_component): Accept also DIRNAME_SEPARATOR.
6700 * dwarf2read.c (recursively_find_pc_sect_symtab): Initialize "s"
6701 before use. Check for symtab->includes == NULL before scanning it.
6705 * mips-tdep.c (mips_reg3_to_reg): Optimize storage.
6709 * NEWS: Add microMIPS support and "set mips compression",
6710 "show mips compression" commands.
6711 * mips-tdep.h (mips_isa): New enum.
6712 (gdbarch_tdep): Add mips_isa.
6713 (mips_pc_is_mips16): Update prototype.
6714 (mips_pc_is_mips, mips_pc_is_micromips): New prototypes.
6715 * mips-tdep.c (mips_compression_mips16): New variable.
6716 (mips_compression_micromips): Likewise.
6717 (mips_compression_strings): Likewise.
6718 (mips_compression_string): Likewise.
6719 (is_mips16_isa, is_micromips_isa): New functions.
6720 (is_mips16_addr): Rename to...
6721 (is_compact_addr): ... this.
6722 (unmake_mips16_addr): Likewise to...
6723 (unmake_compact_addr): ... this.
6724 (make_mips16_addr): Likewise to...
6725 (make_compact_addr): ... this.
6726 (is_mips_addr, is_mips16_addr, is_micromips_addr): New
6728 (mips_elf_make_msymbol_special): Handle microMIPS code.
6729 (msymbol_is_special): Rename to...
6730 (msymbol_is_mips16): ... this.
6731 (mips_make_symbol_special, mips_pc_is_mips16): Update
6733 (msymbol_is_mips, msymbol_is_micromips): New functions.
6734 (mips16_to_32_reg): Rename to...
6735 (mips_reg3_to_reg): ... this.
6736 (mips_pc_is_mips, mips_pc_is_micromips): New functions.
6737 (mips_pc_isa): Likewise.
6738 (mips_read_pc, mips_unwind_pc, mips_write_pc): Handle microMIPS
6740 (mips_fetch_instruction): Pass return status instead of printing
6741 an error message if requested. Handle microMIPS code. Bail out
6743 (micromips_op): New macro.
6744 (b0s4_imm, b0s5_imm, b0s5_reg, b0s7_imm, b0s10_imm): Likewise.
6745 (b1s9_imm, b2s3_cc, b4s2_regl, b5s5_op, b5s5_reg): Likewise.
6746 (b6s4_op, b7s3_reg): Likewise.
6747 (b0s6_op, b0s11_op, b0s12_imm, b0s16_imm, b0s26_imm): Likewise.
6748 (b6s10_ext, b11s5_reg, b12s4_op): Likewise.
6749 (mips_insn_size): New function.
6750 (mips32_next_pc): Update mips_fetch_instruction call.
6751 (micromips_relative_offset7): New function.
6752 (micromips_relative_offset10): Likewise.
6753 (micromips_relative_offset16): Likewise.
6754 (micromips_pc_insn_size): Likewise.
6755 (micromips_bc1_pc): Likewise.
6756 (micromips_next_pc): Likewise.
6757 (unpack_mips16): Update mips_fetch_instruction call.
6758 (extended_mips16_next_pc): Update according to change to
6760 (mips_next_pc): Update mips_pc_is_mips16 call. Handle microMIPS
6762 (mips16_scan_prologue): Update mips_fetch_instruction call.
6763 Update according to change to mips16_to_32_reg.
6764 (mips_insn16_frame_sniffer): Update mips_pc_is_mips16 call.
6765 (mips_insn16_frame_base_sniffer): Likewise.
6766 (micromips_decode_imm9): New function.
6767 (micromips_scan_prologue): Likewise.
6768 (mips_micro_frame_cache): Likewise.
6769 (mips_micro_frame_this_id): Likewise.
6770 (mips_micro_frame_prev_register): Likewise.
6771 (mips_micro_frame_sniffer): Likewise.
6772 (mips_micro_frame_unwind): New variable.
6773 (mips_micro_frame_base_address): New function.
6774 (mips_micro_frame_base): New variable.
6775 (mips_micro_frame_base_sniffer): New function.
6776 (mips32_scan_prologue): Update mips_fetch_instruction call.
6777 (mips_insn32_frame_sniffer): Check for the standard MIPS ISA
6778 rather than for MIPS16.
6779 (mips_insn32_frame_base_sniffer): Likewise.
6780 (mips_addr_bits_remove): Handle microMIPS code.
6781 (deal_with_atomic_sequence): Rename to...
6782 (mips_deal_with_atomic_sequence): ... this. Update the type
6783 of the variable used to hold an instruction. Remove the ISA bit
6784 check. Update mips_fetch_instruction call.
6785 (micromips_deal_with_atomic_sequence): New function.
6786 (deal_with_atomic_sequence): Likewise.
6787 (mips_about_to_return): Handle microMIPS code. Update
6788 mips_fetch_instruction call.
6789 (heuristic_proc_start): Check for the standard MIPS ISA rather
6790 than for MIPS16. Update mips_pc_is_mips16 and
6791 mips_fetch_instruction calls. Handle microMIPS code.
6792 (mips_push_dummy_code): Handle microMIPS code.
6793 (mips_eabi_push_dummy_call): Likewise.
6794 (mips_o32_return_value): Update mips_pc_is_mips16 call.
6795 (mips_o64_push_dummy_call): Handle microMIPS code.
6796 (mips_o64_return_value): Update mips_pc_is_mips16 call.
6797 (is_delayed): Remove function.
6798 (mips_single_step_through_delay): Replace the call to is_delayed
6799 with mips32_instruction_has_delay_slot. Correct MIPS16 handling.
6800 Handle microMIPS code.
6801 (mips_skip_prologue): Update mips_pc_is_mips16 call. Handle
6803 (mips32_in_function_epilogue_p): Update mips_fetch_instruction
6805 (micromips_in_function_epilogue_p): New function.
6806 (mips16_in_function_epilogue_p): Update mips_fetch_instruction
6808 (mips_in_function_epilogue_p): Update mips_pc_is_mips16 call.
6810 (gdb_print_insn_mips): Likewise.
6811 (mips_breakpoint_from_pc): Likewise.
6812 (mips_remote_breakpoint_from_pc): New function.
6813 (mips32_instruction_has_delay_slot): Simplify making use of the
6814 updated mips_fetch_instruction interface.
6815 (micromips_instruction_has_delay_slot): New function.
6816 (mips16_instruction_has_delay_slot): Simplify making use of the
6817 updated mips_fetch_instruction interface.
6818 (mips_adjust_breakpoint_address): Check for the standard MIPS
6819 ISA rather than for MIPS16 ISA. Update for unmake_compact_addr
6820 calls. Handle microMIPS code.
6821 (mips_get_mips16_fn_stub_pc): Update mips_fetch_instruction call.
6822 (mips_skip_trampoline_code): Handle microMIPS code.
6823 (global_mips_compression): New function.
6824 (mips_gdbarch_init): Handle the compressed ISA setting from ELF
6825 file flags. Register the microMIPS remote breakpoint handler
6826 and heuristic frame unwinder.
6827 (show_mips_compression): New function.
6828 (_initialize_mips_tdep): Add the "set mips compression" and
6829 "show mips compression" commands.
6836 * amd64-darwin-tdep.c:
6837 * arm-symbian-tdep.c:
6841 * bfin-linux-tdep.c:
6848 * dwarf2-frame-tailcall.c:
6877 * microblaze-tdep.c:
6878 * mips-linux-tdep.c:
6886 * python/py-finishbreakpoint.c:
6887 * python/py-inferior.c:
6888 * python/py-infthread.c:
6892 * remote-m32r-sdi.c:
6896 * rs6000-aix-tdep.c:
6922 * amd64-darwin-tdep.c:
6923 * arm-symbian-tdep.c:
6924 * arm-tdep.c: Delete unused variables.
6928 Rename $ddir to $datadir.
6929 * NEWS (--with-auto-load-dir): Rename $ddir to $datadir.
6930 * auto-load.c (auto_load_safe_path_vec_update)
6931 (auto_load_gdb_datadir_changed, auto_load_objfile_script): Likewise.
6932 * configure: Regenerate.
6933 * configure.ac (--with-auto-load-dir, --with-auto-load-safe-path):
6934 Likewise. Remove the 'use $ddir' help string.
6938 * auto-load.c (show_auto_load_safe_path): Accept any combination of
6939 DIRNAME_SEPARATOR and IS_DIR_SEPARATOR for wild-match.
6944 * valprint.h (struct value_print_options) <symbol_print>: New
6946 * valprint.c (user_print_options): Add default for symbol_print.
6947 (show_symbol_print): New function.
6948 (generic_val_print): Respect symbol_print.
6949 (_initialize_valprint): Add "print symbol" setting.
6950 * f-valprint.c (f_val_print): Respect symbol_print.
6951 * c-valprint.c (c_val_print): Respect symbol_print.
6953 * printcmd.c (print_address_symbolic): Return int. Ignore some
6955 (print_address_demangle): Return int.
6956 * defs.h: (print_address_symbolic): Return int.
6957 * value.h (print_address_demangle): Return int.
6961 * valprint.c (val_print_string): Don't print leading space.
6962 * p-valprint.c (pascal_val_print) <TYPE_CODE_PTR>: Optionally
6963 print space before string or vtbl.
6964 * m2-valprint.c (print_unpacked_pointer): Optionally print space
6966 * jv-valprint.c (java_value_print): Print space before string.
6967 * go-valprint.c (print_go_string): Print space before string.
6968 * f-valprint.c (f_val_print) <TYPE_CODE_PTR>: Optionally print
6969 space before string.
6970 * c-valprint.c (c_val_print) <TYPE_CODE_PTR>: Optionally print
6971 space before string or vtbl.
6972 * auxv.c (fprint_target_auxv): Print space after address.
6976 * printcmd.c (print_address_demangle): Remove special case for 0.
6980 * printcmd.c (print_address_demangle): Add 'opts' argument.
6981 * p-valprint.c (pascal_val_print): Update.
6982 * jv-valprint.c (java_val_print): Update.
6984 * valprint.c (generic_val_print): Update.
6985 (print_function_pointer_address): Add 'options' argument. Remove
6986 'addressprint' argument. Update.
6987 * m2-valprint.c (print_unpacked_pointer): Update.
6988 * gnu-v3-abi.c (print_one_vtable): Update.
6989 (gnuv3_print_method_ptr): Update.
6990 * f-valprint.c (f_val_print): Update.
6991 * cp-valprint.c (cp_print_value_fields): Update.
6992 * valprint.h (print_function_pointer_address): Update.
6993 * c-valprint.c (c_val_print): Update.
6997 * psymtab.c (find_pc_sect_symtab_from_partial): Return the symtab
6998 directly corresponding to the found psymtab.
6999 * dwarf2read.c (recursively_find_pc_sect_symtab): New function.
7000 (dw2_find_pc_sect_symtab): Use it.
7001 * block.h (blockvector_contains_pc): Declare.
7002 * block.c (find_block_in_blockvector): New function.
7003 (blockvector_for_pc_sect): Use it.
7004 (blockvector_contains_pc): New function.
7008 * mips-tdep.h (mips_write_pc): New prototype.
7009 * mips-tdep.c (mips_write_pc): Make external, add description.
7010 * mips-linux-tdep.c (mips_linux_write_pc): Use mips_write_pc,
7015 * mips-tdep.c (mips_read_pc): Use gdbarch_pc_regnum instead of
7017 (mips_unwind_pc, mips_write_pc): Likewise.
7018 (mips_gdbarch_init): Remove a comment on gdbarch_pc_regnum and
7023 * procfs.c (procfs_find_new_threads, procfs_pid_to_str,
7024 proc_warn, proc_error, proc_get_status, proc_flags,
7025 proc_why, proc_what, proc_nsysarg, proc_sysargs,
7026 proc_set_run_on_last_close, proc_unset_run_on_last_close,
7027 proc_unset_inherit_on_fork, proc_set_async, proc_unset_async,
7028 proc_stop_process, proc_wait_for_stop, proc_run_process,
7029 proc_set_traced_signals, proc_set_traced_faults,
7030 proc_set_traced_sysentry, proc_set_traced_sysexit,
7031 proc_set_held_signals, proc_get_held_signals,
7032 proc_get_traced_signals, proc_get_traced_faults,
7033 proc_get_traced_sysentry, proc_get_traced_sysexit,
7034 proc_clear_current_fault, proc_set_current_signal,
7035 proc_clear_current_signal, proc_get_gregs, proc_get_fpregs,
7036 proc_set_gregs, proc_set_fpregs, proc_kill, proc_parent_pid,
7037 proc_get_nthreads, proc_get_nthreads, proc_get_nthreads,
7038 proc_get_current_thread, proc_get_current_thread,
7039 proc_get_current_thread, proc_update_threads,
7040 proc_update_threads, proc_update_threads, proc_update_threads,
7041 proc_iterate_over_threads, procfs_find_new_threads,
7042 procfs_pid_to_str): Make static. Remove advance declaration.
7043 (proc_cursig): Make static. Conditionalized defintion on
7044 PROCFS_DONT_PIOCSSIG_CURSIG being defined.
7045 (proc_syscall, proc_set_kill_on_last_close,
7046 proc_unset_kill_on_last_close, proc_set_inherit_on_fork,
7047 proc_get_pending_signals, proc_get_signal_actions,
7048 proc_trace_signal, proc_ignore_signal): Delete.
7052 * coffread.c (cs_section_address): Passing proper argument for
7053 `bfd_get_section_vma'.
7054 * dwarf2read.c (dwarf2_locate_sections): Likewise, for
7055 `bfd_get_section_flags'.
7056 * remote.c (remote_trace_set_readonly_regions): Likewise, for
7057 `bfd_get_section_vma'.
7062 * macrotab.h: (macro_define_special): Declare.
7063 (enum macro_special_kind): New.
7064 (struct macro_definition) <argc, replacement>: Update comments.
7065 * macrotab.c (new_macro_definition): Unconditionally set 'argc'.
7066 (macro_define_object_internal): New function.
7067 (macro_define_object): Use it.
7068 (macro_define_special): New function.
7069 (fixup_definition): New function.
7070 (macro_lookup_definition, foreach_macro_in_scope)
7071 (foreach_macro): Use fixup_definition.
7072 * macroexp.h (macro_stringify): Declare.
7073 * macroexp.c (free_buffer_return_text): New function.
7074 (stringify): Constify "arg".
7075 (macro_stringify): New function.
7076 * dwarf2read.c (macro_start_file): Call macro_define_special.
7081 * breakpoint.h (bp_location): Add related_address member.
7082 * inferior.h (get_return_value): Take a pointer to struct value
7083 instead of struct type for the function requested.
7084 * value.h (using_struct_return): Likewise.
7085 * gdbarch.sh (return_value): Take a pointer to struct value
7086 instead of struct type for the function requested.
7087 * breakpoint.c (set_breakpoint_location_function): Initialize
7088 related_address for bp_gnu_ifunc_resolver breakpoints.
7089 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Pass the
7090 requested function's address to gdbarch_return_value.
7091 * eval.c (evaluate_subexp_standard): Pass the requested
7092 function's address to using_struct_return.
7093 * infcall.c (call_function_by_hand): Pass the requested
7094 function's address to using_struct_return and
7095 gdbarch_return_value.
7096 * infcmd.c (get_return_value): Take a pointer to struct value
7097 instead of struct type for the function requested.
7098 (print_return_value): Update accordingly.
7099 (finish_command_continuation): Likewise.
7100 * stack.c (return_command): Pass the requested function's
7101 address to using_struct_return and gdbarch_return_value.
7102 * value.c (using_struct_return): Take a pointer to struct value
7103 instead of struct type for the function requested. Pass the
7104 requested function's address to gdbarch_return_value.
7105 * python/py-finishbreakpoint.c (finish_breakpoint_object):
7106 New function_value member, replacing function_type.
7107 (bpfinishpy_dealloc): Update accordingly.
7108 (bpfinishpy_pre_stop_hook): Likewise.
7109 (bpfinishpy_init): Likewise. Record the requested function's
7111 * mips-tdep.c (mips_fval_reg): New enum.
7112 (mips_o32_push_dummy_call): For MIPS16 FP doubles do not swap
7113 words put in GP registers.
7114 (mips_o64_push_dummy_call): Update a comment.
7115 (mips_o32_return_value): Take a pointer to struct value instead
7116 of struct type for the function requested and use it to check if
7117 using the MIPS16 calling convention. Return the designated
7118 general purpose registers for floating-point values returned in
7120 (mips_o64_return_value): Likewise.
7121 * ppc-tdep.h (ppc_sysv_abi_return_value): Update prototype.
7122 (ppc_sysv_abi_broken_return_value): Likewise.
7123 (ppc64_sysv_abi_return_value): Likewise.
7124 * alpha-tdep.c (alpha_return_value): Take a pointer to struct
7125 value instead of struct type for the function requested.
7126 * amd64-tdep.c (amd64_return_value): Likewise.
7127 * amd64-windows-tdep.c (amd64_windows_return_value): Likewise.
7128 * arm-tdep.c (arm_return_value): Likewise.
7129 * avr-tdep.c (avr_return_value): Likewise.
7130 * bfin-tdep.c (bfin_return_value): Likewise.
7131 * cris-tdep.c (cris_return_value): Likewise.
7132 * frv-tdep.c (frv_return_value): Likewise.
7133 * h8300-tdep.c (h8300_return_value): Likewise.
7134 (h8300h_return_value): Likewise.
7135 * hppa-tdep.c (hppa32_return_value): Likewise.
7136 (hppa64_return_value): Likewise.
7137 * i386-tdep.c (i386_return_value): Likewise.
7138 * ia64-tdep.c (ia64_return_value): Likewise.
7139 * iq2000-tdep.c (iq2000_return_value): Likewise.
7140 * lm32-tdep.c (lm32_return_value): Likewise.
7141 * m32c-tdep.c (m32c_return_value): Likewise.
7142 * m32r-tdep.c (m32r_return_value): Likewise.
7143 * m68hc11-tdep.c (m68hc11_return_value): Likewise.
7144 * m68k-tdep.c (m68k_return_value): Likewise.
7145 (m68k_svr4_return_value): Likewise.
7146 * m88k-tdep.c (m88k_return_value): Likewise.
7147 * mep-tdep.c (mep_return_value): Likewise.
7148 * microblaze-tdep.c (microblaze_return_value): Likewise.
7149 * mn10300-tdep.c (mn10300_return_value): Likewise.
7150 * moxie-tdep.c (moxie_return_value): Likewise.
7151 * mt-tdep.c (mt_return_value): Likewise.
7152 * ppc-linux-tdep.c (ppc_linux_return_value): Likewise.
7153 * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Likewise.
7154 (ppc_sysv_abi_broken_return_value): Likewise.
7155 (ppc64_sysv_abi_return_value): Likewise.
7156 * ppcnbsd-tdep.c (ppcnbsd_return_value): Likewise.
7157 * rl78-tdep.c (rl78_return_value): Likewise.
7158 * rs6000-aix-tdep.c (rs6000_return_value): Likewise.
7159 * rx-tdep.c (rx_return_value): Likewise.
7160 * s390-tdep.c (s390_return_value): Likewise.
7161 * score-tdep.c (score_return_value): Likewise.
7162 * sh-tdep.c (sh_return_value_nofpu): Likewise.
7163 (sh_return_value_fpu): Likewise.
7164 * sh64-tdep.c (sh64_return_value): Likewise.
7165 * sparc-tdep.c (sparc32_return_value): Likewise.
7166 * sparc64-tdep.c (sparc64_return_value): Likewise.
7167 * spu-tdep.c (spu_return_value): Likewise.
7168 * tic6x-tdep.c (tic6x_return_value): Likewise.
7169 * v850-tdep.c (v850_return_value): Likewise.
7170 * vax-tdep.c (vax_return_value): Likewise.
7171 * xstormy16-tdep.c (xstormy16_return_value): Likewise.
7172 * xtensa-tdep.c (xtensa_return_value): Likewise.
7173 * gdbarch.c: Regenerate.
7174 * gdbarch.h: Regenerate.
7178 * python/python.c (gdbpy_find_pc_line): Use gdb_py_ulongest.
7182 * breakpoint.c (init_breakpoint_sal): Add quotes around part
7183 of command in two error message.
7187 * breakpoint.c (init_breakpoint_sal): Remove trailing spaces.
7191 * breakpoint.c (find_condition_and_thread): Minor reformatting.
7195 * NEWS (show auto-load scripts-directory): Add forgotten command.
7199 * spu-tdep.c (spu_catch_start): Update create_breakpoint caller
7204 * amd64-tdep.c: Include features/i386/x32.c and
7205 features/i386/x32-avx.c.
7206 (_initialize_amd64_tdep): Call initialize_tdesc_x32 and
7207 initialize_tdesc_x32_avx.
7212 * breakpoint.h (enum bptype): New type bp_dprintf.
7213 (struct breakpoint): New field extra_string.
7214 (struct breakpoint_ops): Add arg to create_breakpoints_sal.
7215 (create_breakpoint): Add extra_string arg.
7216 * breakpoint.c (dprintf_breakpoint_ops): New.
7217 (is_breakpoint): Add bp_dprintf.
7218 (bpstat_what): Add dprintf case.
7219 (bptype_string): Ditto.
7220 (print_one_breakpoint_location): Ditto.
7221 (init_bp_location): Ditto.
7222 (bkpt_print_mention): Ditto.
7223 (dprintf_style_enums): New array.
7224 (dprintf_style): New global.
7225 (dprintf_function): New global.
7226 (dprintf_channel): New global.
7227 (update_dprintf_command_list): New function.
7228 (update_dprintf_commands): New function.
7229 (init_breakpoint_sal): Add extra_string argument, handle it.
7230 (create_breakpoint_sal): Add extra_string argument.
7231 (create_breakpoints_sal): Add extra_string argument, update callers.
7232 (find_condition_and_thread): Add extra argument.
7233 (create_breakpoint): Add extra_string argument, record it.
7234 (dprintf_command): New function.
7235 (break_command_1): Add arg to create_breakpoint call.
7236 (handle_gnu_v3_exceptions): Ditto.
7237 (trace_command): Ditto.
7238 (ftrace_command): Ditto.
7239 (strace_command): Ditto.
7240 (bkpt_print_mention): Add dprintf case.
7241 (create_breakpoint_sal_default): Add extra_string argument.
7242 (_initialize_breakpoint): Add new commands.
7243 * mi/mi-cmd-break.c (mi_cmd_break_insert): Add arg to call.
7244 * python/py-breakpoint.c (bppy_init): Ditto.
7245 * python/py-finishbreakpoint.c (bpfinishpy_init): Ditto.
7249 * mips-tdep.c (mips_push_dummy_code): Correct description typo.
7253 * python/python.c (gdbpy_find_pc_line): Use ULONGEST instead of
7258 Add a new function gdb.find_pc_line to the Python API.
7259 * NEWS (Python Scripting): Add entry about the new function.
7260 * python/python.c (gdbpy_find_pc_line): New function which
7261 implements gdb.find_pc_line.
7262 (GdbMethods): Add entry for the new function.
7266 * amd64-linux-tdep.c (_initialize_amd64_linux_tdep): Call
7267 initialize_tdesc_x32_linux and initialize_tdesc_x32_avx_linux.
7271 * inferior.c: Include completer.h
7272 (initialize_inferiors): Set completer of add-inferior to
7277 * amd64-linux-tdep.c (amd64_linux_core_read_description): Check
7278 gdbarch_ptr_bit for x32 core dump.
7282 * amd64-linux-tdep.c: Include features/i386/x32-linux.c
7283 and features/i386/x32-avx-linux.c.
7288 * NEWS: Describe new info os commands.
7289 * common/linux-osdata.c (PID_T, TIME_T): Define.
7290 (MAX_PID_T_STRLEN): New.
7291 (linux_common_core_of_thread): Add comment. Change to use PID_T and
7293 (command_from_pid): Add comment. Change to use PID_T.
7294 (commandline_from_pid): Change to use PID_T.
7295 (user_from_pid): Add comment.
7296 (get_process_owner): Add comment. Change to use PID_T and
7298 (get_number_of_cpu_cores): Add comment.
7299 (get_cores_used_by_process): Add comment. Change to use PID_T and
7301 (linux_xfer_osdata_processes): Change to use PID_T and
7303 (compare_processes): New function.
7304 (linux_xfer_osdata_processgroups): New function.
7305 (linux_xfer_osdata_threads): Change to use PID_T.
7306 (linux_xfer_osdata_fds): New function.
7307 (format_socket_state, print_sockets): New functions.
7308 (union socket_addr): New union.
7309 (linux_xfer_osdata_isockets): New function.
7310 (time_from_time_t, group_from_gid): New functions.
7311 (linux_xfer_osdata_shm): New function.
7312 (linux_xfer_osdata_sem): New function.
7313 (linux_xfer_osdata_msg): New function.
7314 (linux_xfer_osdata_modules): New function.
7315 (osdata_table): Add new entries.
7316 * common/buffer.c (buffer_xml_printf): Add support for long and
7317 long long format specifiers.
7321 * amd64-linux-tdep.h (tdesc_x32_linux): New.
7322 (tdesc_x32_avx_linux): Likewise.
7326 Implement multi-component --with-auto-load-dir.
7327 * NEWS (set auto-load scripts-directory, --with-auto-load-dir): New
7329 (--with-auto-load-safe-path): Update the default value description.
7330 * auto-load.c (auto_load_dir, set_auto_load_dir, show_auto_load_dir):
7332 (auto_load_objfile_script): Add DEBUG_AUTO_LOAD output. Remove
7333 GDB_DATADIR NULL check. Replace GDB_DATADIR/auto-load by
7334 AUTO_LOAD_DIR. Support $ddir and multiple components in it.
7335 (_initialize_auto_load): Initialize also auto_load_dir. Install new
7336 "set auto-load scripts-directory".
7337 * config.in: Regenerate.
7338 * configure: Regenerate.
7339 * configure.ac (--with-auto-load-dir): New configure option.
7340 (--auto-load-safe-path): Change the default to --with-auto-load-dir.
7344 Provide $ddir substitution for --with-auto-load-safe-path.
7345 * NEWS (--with-auto-load-safe-path, --without-auto-load-safe-path): New
7347 * auto-load.c: Include observer.h.
7348 (auto_load_safe_path_vec_update): Call substitute_path_component for
7349 each component. New variable ddir_subst.
7350 (auto_load_gdb_datadir_changed): New function.
7351 (set_auto_load_safe_path): Rename DEFAULT_AUTO_LOAD_SAFE_PATH to
7352 AUTO_LOAD_SAFE_PATH. New comment.
7353 (_initialize_auto_load): Rename DEFAULT_AUTO_LOAD_SAFE_PATH to
7354 AUTO_LOAD_SAFE_PATH. Install auto_load_gdb_datadir_changed.
7355 * config.in: Regenerate.
7356 * configure: Regenerate.
7357 * configure.ac (--auto-load-safe-path): Rename
7358 DEFAULT_AUTO_LOAD_SAFE_PATH to AUTO_LOAD_SAFE_PATH. Default to
7359 GDB_DATADIR/auto-load.
7360 * defs.h (substitute_path_component): New declaration.
7361 * top.c: Include observer.h.
7362 (set_gdb_datadir): New function.
7363 (init_main): Install it for "set data-directory".
7364 * utils.c (substitute_path_component): New function.
7368 Make auto-load handle multiple components of DEBUG_FILE_DIRECTORY.
7369 * auto-load.c (auto_load_objfile_script): Remove check for NULL
7370 DEBUG_FILE_DIRECTORY. Handle multiple components of
7371 DEBUG_FILE_DIRECTORY.
7375 * dwarf2read.c (recursively_write_psymbols): New function.
7376 (write_psymtabs_to_index): Use it.
7378 * dwarf2read.c (struct dwarf2_queue_item) <pretend_language>: New
7380 (load_cu, dw2_do_instantiate_symtab, process_psymtab_comp_unit)
7381 (load_partial_comp_unit): Update.
7382 (queue_comp_unit): Add argument 'pretend_language'.
7383 (process_queue): Update.
7384 (psymtab_to_symtab_1): Skip dependencies that have a user.
7385 (load_partial_comp_unit_reader): Give meaning to the 'data'
7387 (load_full_comp_unit): Add 'pretend_language' argument.
7388 (process_full_comp_unit): Add 'pretend_language' argument. Set
7390 (process_imported_unit_die, read_file_scope, read_type_unit_scope):
7392 (maybe_queue_comp_unit): Add 'pretend_language' argument.
7393 (follow_die_offset, follow_die_sig, read_signatured_type_reader):
7395 (prepare_one_comp_unit): Add 'pretend_language' argument.
7397 * dwarf2read.c: (dwarf2_per_cu_ptr): New typedef.
7398 (struct dwarf2_per_objfile) <just_read_cus>: New field.
7399 (struct dwarf2_per_cu_data) <imported_symtabs>: New field.
7400 (dw2_do_instantiate_symtab): Check whether symtab was read in
7402 (dw2_instantiate_symtab): Add assertion. Call
7403 process_cu_includes.
7404 (process_psymtab_comp_unit): Compute 'dependencies' for psymtab.
7405 (partial_symtab_p): New typedef.
7406 (set_partial_user): New function.
7407 (dwarf2_build_psymtabs_hard): Use set_partial_user.
7408 (scan_partial_symbols): Add imported CU to imported_symtabs.
7409 (dwarf2_psymtab_to_symtab): Call process_cu_includes.
7410 (psymtab_to_symtab_1): Do nothing if psymtab is readin.
7411 (get_symtab, recursively_compute_inclusions)
7412 (compute_symtab_includes, process_cu_includes)
7413 (process_imported_unit_die): New functions.
7414 (process_die) <DW_TAG_imported_unit>: New case.
7415 (dwarf2_per_objfile_free): Free 'imported_symtabs'.
7417 * dwarf2read.c (struct dwarf2_per_cu_data) <psymtab>: Update
7419 (struct partial_die_info) <locdesc>: Remove.
7421 (process_psymtab_comp_unit): Add 'read_partial' argument.
7423 (process_type_comp_unit, dwarf2_build_psymtabs_hard): Update.
7424 (scan_partial_symbols): Handle DW_TAG_imported_unit.
7425 (add_partial_symbol): Update.
7426 (process_die): Handle DW_TAG_partial_unit.
7427 (read_file_scope): Update comment.
7428 (load_partial_dies): Handle DW_TAG_imported_unit.
7429 (read_partial_die): Handle DW_TAG_partial_unit, DW_AT_import.
7430 (determine_prefix, dwarf2_name): Handle DW_TAG_partial_unit.
7434 * cc-with-dwz.sh: New file.
7438 * symtab.h (struct symtab) <includes, user>: New fields.
7439 * block.h (struct block_iterator) <d, idx, which>: New fields.
7440 * block.c (initialize_block_iterator, find_iterator_symtab)
7441 (block_iterator_step, block_iter_name_step)
7442 (block_iter_match_step): New functions.
7443 (block_iterator_first, block_iterator_next)
7444 (block_iter_name_first, block_iter_name_next)
7445 (block_iter_match_first, block_iter_match_next): Rewrite.
7446 (get_block_symtab): New function.
7450 * jv-lang.c (get_java_class_symtab): Use allocate_global_block,
7452 * jit.c (finalize_symtab): Use allocate_global_block,
7454 * buildsym.c (finish_block_internal): New function, from old
7456 (finish_block): Rewrite.
7457 (end_symtab): Use finish_block_internal, set_block_symtab.
7458 * block.h (struct global_block): New.
7459 (allocate_global_block, set_block_symtab): Declare.
7460 * block.c (allocate_global_block, set_block_symtab): New
7465 * psymtab.c (partial_map_expand_apply): Add assertion.
7466 (partial_map_symtabs_matching_filename): Skip included psymtabs.
7467 (psymtab_to_symtab): Find unshared psymtab.
7468 (dump_psymtab): Print including psymtabs.
7469 (recursively_search_psymtabs): New function.
7470 (expand_symtabs_matching_via_partial): Use it.
7471 * psympriv.h (struct partial_symtab) <user, searched_flag>: New
7473 (enum psymtab_search_status): New.
7477 * tracepoint.c (scope_info): Update.
7478 * symtab.c (lookup_block_symbol, iterate_over_symbols)
7479 (find_pc_sect_symtab, search_symbols)
7480 (default_make_symbol_completion_list_break_on)
7481 (make_file_symbol_completion_list): Update.
7482 * symmisc.c (dump_symtab_1): Update.
7483 * stack.c (print_frame_args, iterate_over_block_locals)
7484 (print_frame_labels, iterate_over_block_arg_vars): Update.
7485 * python/py-block.c (block_object) <dict>: Remove.
7487 <iter>: Change type.
7488 (blpy_iter): Update.
7489 (blpy_block_syms_iternext): Update.
7490 * psymtab.c (map_block): Use block iterators.
7491 * objfiles.c (objfile_relocate1): Use ALL_DICT_SYMBOLS.
7492 * mi/mi-cmd-stack.c (list_args_or_locals): Update.
7493 * mdebugread.c (parse_symbol, mylookup_symbol): Update.
7494 * infrun.c (check_exception_resume): Update.
7495 * cp-support.c (make_symbol_overload_list_block): Update.
7496 * coffread.c (patch_opaque_types): Update.
7497 * buildsym.c (finish_block, end_symtab): Use ALL_DICT_SYMBOLS.
7498 * block.h (struct block_iterator): New.
7499 (block_iterator_first, block_iterator_next, block_iter_name_first)
7500 (block_iter_name_next, block_iter_match_first)
7501 (block_iter_match_next): Declare.
7502 (ALL_BLOCK_SYMBOLS): Redefine.
7503 * block.c (block_iterator_first, block_iterator_next)
7504 (block_iter_name_first, block_iter_name_next)
7505 (block_iter_match_first, block_iter_match_next): New functions.
7506 * ada-lang.c (ada_add_block_symbols)
7507 (ada_make_symbol_completion_list): Use block iterator.
7511 * psymtab.c (PSYMTAB_TO_SYMTAB): Remove.
7512 (find_pc_sect_symtab_from_partial, lookup_symbol_aux_psymtabs)
7513 (lookup_partial_symbol, find_last_source_symtab_from_partial)
7514 (read_psymtabs_with_filename, map_matching_symbols_psymtab)
7515 (expand_symtabs_matching_via_partial, maintenance_check_symtabs):
7520 * config/djgpp/fnchange.lst: Add entries for print-file-var-lib1.c,
7521 print-file-var-lib2.c, print-file-var-main.c and
7522 print-file-var.exp (located in gdb/testsuite/gdb.base).
7526 * findvar.c (default_read_var_value): For LOC_UNRESOLVED symbols,
7527 try locating the symbol in the symbol's own objfile first, before
7528 extending the search to all objfiles.
7529 * symtab.c (lookup_symbol_aux_objfile): New function, extracted
7530 out of lookup_symbol_aux_symtabs.
7531 (lookup_symbol_aux_symtabs): Add new parameter "exclude_objfile".
7532 Replace extracted-out code by call to lookup_symbol_aux_objfile.
7533 Do not search EXCLUDE_OBJFILE.
7534 (lookup_static_symbol_aux): Update call to lookup_symbol_aux_symtabs.
7535 (lookup_symbol_global): Search for matches in the block's objfile
7536 first, before searching all other objfiles.
7540 * printcmd.c (set_command): Add pre/post inc/dec.
7544 * gdb.1: Document -ex option.
7548 * infcall.c (call_function_by_hand): Remove AT_SYMBOL handling.
7549 * inferior.h (AT_SYMBOL): Delete.
7553 * mips-tdep.c (mips_push_dummy_code): New function.
7554 (mips_gdbarch_init): Set the gdbarch call_dummy_location to
7555 ON_STACK and install mips_push_dummy_code as our gdbarch
7556 push_dummy_code routine.
7560 * target.c (set_maintenance_target_async_permitted): Rename to ...
7561 (set_target_async_command): ... this.
7562 (show_maintenance_target_async_permitted): Rename to ...
7563 (show_target_async_command): ... this.
7564 (initialize_targets): Adjust.
7568 * go-exp.y (classify_name): Add missing assignment of fields of
7573 Display the ">" prompt in interactive mode while reading canned
7574 commands, even when the current interpreter is MI.
7576 * interps.c (interp_set_temp): New function.
7578 * interps.h (interp_set_temp): Add prototype.
7580 * cli/cli-script.c (restore_interp): New cleanup function.
7581 (read_command_lines): Temporarily override the current interpreter
7582 with CLI and arrange for restoring the original one.
7586 * microblaze-rom.c (_initialize_picobug_rom): Add prototype.
7590 * probe.c (parse_probes): Move conditional to check for
7591 debuginfo files from here...
7592 * stap-probe.c (stap_get_probes): ... to here.
7597 * amd64-tdep.c (amd64_analyze_prologue): Additionally check for
7598 `movl %esp, %ebp' for the X32 ABI.
7602 * dwarf2read.c (dwarf_tag_name): Return const char *. Use
7604 (dwarf_attr_name): Return const char *. Use get_DW_AT_name.
7605 (dwarf_form_name): Return const char *. Use get_DW_FORM_name.
7606 (dwarf_stack_op_name): Remove.
7607 (dwarf_cfi_name): Return const char *. Use get_DW_ATE_name.
7608 (decode_locdesc): Use get_DW_OP_name.
7609 * dwarf2loc.c (unimplemented): Use get_DW_OP_name.
7610 (dwarf2_compile_expr_to_ax): Likewise.
7611 (disassemble_dwarf_expression): Likewise.
7612 * dwarf2expr.h: (dwarf_stack_op_name): Remove.
7616 * sh-linux-tdep.c: Include trad-frame.h and tramp-frame.h.
7617 (sh_linux_sigtramp_cache): New function.
7618 (sh_linux_sigreturn_init): New function.
7619 (sh_linux_rt_sigreturn_init): New function.
7620 (SH_MOVW,SH_TRAP,SH_OR_R0_R0): New symbols for instruction
7622 (SH_NR_SIGRETURN,SH_NR_RT_SIGRETURN): New symbols for sigreturn
7624 (sh_linux_sigreturn_tramp_frame): New tramp_frame definition.
7625 (sh_linux_rt_sigreturn_tramp_frame): Likewise.
7626 (sh_linux_init_abi): Add init calls to register new tramp_frame
7627 definitions under 32-bit SH, update comments.
7633 * amd64-linux-tdep.c: Include glibc-tdep.h.
7634 (amd64_linux_init_abi): Install glibc_skip_solib_resolver as
7635 gdbarch_skip_solib_resolver callback.
7639 * auto-load.c (set_auto_load_safe_path): Reset AUTO_LOAD_SAFE_PATH
7640 back to DEFAULT_AUTO_LOAD_SAFE_PATH if it is being set to "".
7641 (show_auto_load_safe_path): Check any-directory by comparison with "/".
7642 (add_auto_load_safe_path): Change the error message.
7643 (_initialize_auto_load): Change the "safe-path" help text.
7644 * configure: Regenerate
7645 * configure.ac (--without-auto-load-safe-path): Set
7646 WITH_AUTO_LOAD_SAFE_PATH to /.
7650 * stap-probe.h: Do not include unecessary `probe.h'.
7654 * elfread.c (elf_symtab_read): Use bfd_abs_section_ptr and
7655 bfd_und_section_ptr.
7656 * machoread.c (macho_symtab_add_minsym): Use bfd_abs_section_ptr
7657 and bfd_com_section_ptr.
7661 * MAINTAINERS (Past Maintainers): Add Chris Faylor.
7665 * windows-nat.h (segment_register_p_ftype): New typedef.
7666 (windows_set_segment_register_p): Add declaration.
7667 * windows-nat.c (segment_register_p): New static global.
7668 (windows_set_segment_register_p): New function.
7669 (do_windows_fetch_inferior_registers): Add special handling
7670 for segment registers.
7671 * amd64-windows-nat.c: #include "amd64-tdep.h".
7672 (amd64_windows_segment_register_p): New function.
7673 (_initialize_amd64_windows_nat): Call windows_set_segment_register_p.
7674 * i386-windows-nat.c: #include "i386-tdep.h".
7675 (i386_windows_segment_register_p): New function.
7676 (_initialize_i386_windows_nat): Call windows_set_segment_register_p.
7680 * printcmd.c (set_command): Emit a warning if the expression is not
7685 * nto-procfs.c (procfs_find_new_threads, procfs_pid_to_str):
7690 * stap-probe.c (stap_is_operator): Change declaration.
7691 (stap_get_opcode): Change return value.
7692 (stap_parse_argument_1): Update calls to `stap_get_opcode' and
7693 `stap_parse_argument_1'.
7697 * infrun.c (displaced_step_fixup): Add "displaced:" prefix to
7702 Add two new methods global_block and static_block to gdb.Symtab
7704 * NEWS (Python scripting): Add entry about the new methods.
7705 * python/py-symtab.c (stpy_global_block): New function which
7706 implements the gdb.Symtab.global_block() method.
7707 (stpy_static_block): New function which implements the
7708 gdb.Symtab.static_block() method.
7709 (symtab_object_methods): Add entries for the two new methods.
7713 * dwarf2read.c (dw2_find_symbol_file): Don't crash if there are no
7718 * i386-tdep.c (i386_fetch_pointer_argument): Remove extra
7720 (i386_process_record): Ditto.
7724 * infcall.c (unwind_on_signal_p): Make static.
7728 * sol-thread.c (solaris_pid_to_str): Make static.
7729 (_initialize_sol_thread): Add prototype.
7733 * sol-thread.c (procfs_pid_to_str): Delete extern declaration.
7737 * MAINTAINERS: Remove myself.
7741 Fix --without-auto-load-safe-path for MS-Windows host platform.
7742 * auto-load.c (filename_is_in_dir): Return 1 for DIR_LEN 0.
7746 * gdb_curses.h: Undefine KEY_EVENT before including curses
7747 headers. Move "#undef MOUSE_MOVED" before any curses header
7752 * features/i386/i386-mmx-linux.c: Regenerate.
7753 * features/rs6000/powerpc-32.c: Likewise.
7754 * features/rs6000/powerpc-32l.c: Likewise.
7755 * features/rs6000/powerpc-403.c: Likewise.
7756 * features/rs6000/powerpc-403gc.c: Likewise.
7757 * features/rs6000/powerpc-405.c: Likewise.
7758 * features/rs6000/powerpc-505.c: Likewise.
7759 * features/rs6000/powerpc-601.c: Likewise.
7760 * features/rs6000/powerpc-602.c: Likewise.
7761 * features/rs6000/powerpc-603.c: Likewise.
7762 * features/rs6000/powerpc-604.c: Likewise.
7763 * features/rs6000/powerpc-64.c: Likewise.
7764 * features/rs6000/powerpc-64l.c: Likewise.
7765 * features/rs6000/powerpc-750.c: Likewise.
7766 * features/rs6000/powerpc-860.c: Likewise.
7767 * features/rs6000/powerpc-e500.c: Likewise.
7768 * features/rs6000/powerpc-e500l.c: Likewise.
7769 * features/rs6000/powerpc-isa205-32l.c: Likewise.
7770 * features/rs6000/powerpc-isa205-64l.c: Likewise.
7771 * features/rs6000/rs6000.c: Likewise.
7775 * i386-tdep.c (i386_stap_parse_special_token) <s>: Remove unused
7777 * stap-probe.c (stap_parse_single_operand) <reg_suffix,
7778 reg_ind_suffix, reg_suffix_len, reg_ind_suffix_len>: Likewise.
7779 (stap_parse_argument) <e>: Likewise.
7780 (handle_stap_probe) <byte_order>: Likewise.
7784 * dwarf2read.c (init_cutu_and_read_dies): Renamed from
7785 init_and_read_dies_worker. All callers updated.
7786 (init_cu_and_read_dies, init_tu_and_read_dies): Delete. All calls
7787 replaced with init_cutu_and_read_dies.
7788 (load_partial_comp_unit): Pass 1 for use_existing_cu.
7789 (find_partial_die): Remove FIXME. Don't free current CU.
7793 * contrib: New directory.
7794 * contrib/test_pubnames_and_indexes.py: New file.
7798 * dwarf2read.c (dwarf_decode_macros): New arg section_name.
7799 All callers updated.
7800 (init_cu_die_reader): Verify the section is non-empty.
7801 (dwarf_decode_line_header): Don't dereference section->asection
7802 until we know the section is present.
7806 * tracepoint.c (start_tracing, stop_tracing): Checking for NULL
7811 * gdb-code-style.el: New hook gdb-markup-hook
7812 and gdb-comment-hook.
7816 Initial support for Fission. http://gcc.gnu.org/wiki/DebugFission
7817 * symfile.c (default_symfile_relocate): Use sectp->owner instead of
7819 * symfile.h (dwarf2_debug_sections): New member addr.
7820 * dwarf2expr.c (execute_stack_op): New case DW_OP_GNU_addr_index.
7821 (ctx_no_get_addr_index): New function.
7822 * dwarf2expr.h (dwarf_expr_context_funcs): New member get_addr_index.
7823 (ctx_no_get_addr_index): Declare.
7824 * dwarf2-frame.c (dwarf2_frame_ctx_funcs): Update.
7825 * dwarf2loc.c (dwarf_expr_get_addr_index): New function.
7826 (dwarf_expr_ctx_funcs): Update.
7827 (needs_get_addr_index): New function.
7828 (needs_frame_ctx_funcs): Update.
7829 * dwarf2loc.h (dwarf2_read_addr_index): Declare.
7830 * dwarf2read.c: #include "gdbcore.h".
7831 (dwarf2_per_objfile): New members addr, dwo_files.
7832 (dwarf2_elf_names): Add entry for addr.
7833 (struct dwo_section_names): New type.
7834 (dwo_section_names): New static global.
7835 (dwarf2_cu): New members dwo_unit, addr_base, have_addr_base.
7836 (dwarf2_per_cu_data): New member is_debug_types, all boolean uses of
7837 old debug_types_section member updated to use this.
7838 Rename member debug_types_section to info_or_types_section,
7840 (signatured_type): Rename member type_offset to type_offset_in_tu,
7841 all uses updated. New member type_offset_in_section.
7842 (struct dwo_sections): New type.
7843 (struct dwo_unit): New type.
7844 (struct dwo_file): New type.
7845 (die_reader_specs): New member dwo_file.
7846 (dwarf2_locate_sections): Watch for .debug_addr.
7847 (zlib_decompress_section): Use sectp->owner instead of objfile->obfd.
7848 (dwarf2_read_section): Get bfd of section from bfd's asection,
7850 (create_cus_from_index): Initialize the_cu->info_or_types_section.
7851 (create_signatured_type_table_from_index): Initialize
7852 sig_type->info_or_types_section.
7853 (dw2_get_file_names): Statement lists for type units with DWO files
7854 live in the DWO file.
7855 (create_debug_types_hash_table): New function.
7856 (create_all_type_units): Rewrite.
7857 (init_cu_die_reader): New arg dwo_file, all callers updated.
7858 (init_and_read_dies_worker): Get section from
7859 this_cu->info_or_types_section. Set sig_type->type_offset_in_section.
7860 Watch for DW_AT_GNU_dwo_name and if present lookup the file and
7861 continue reading the CU/TU from there.
7862 (init_cutu_and_read_dies_no_follow): New arg dwo_file, all callers
7863 updated. Get section from this_cu->info_or_types_section.
7864 (create_all_comp_units): Initialize this_cu->info_or_types_section.
7865 (skip_one_die): New cases DW_FORM_GNU_addr_index,
7866 DW_FORM_GNU_str_index.
7867 (hash_dwo_file, eq_dwo_file): New functions.
7868 (allocate_dwo_file_hash_table): New function.
7869 (hash_dwo_unit, eq_dwo_unit): New functions.
7870 (allocate_dwo_unit_table): New function.
7871 (dwarf2_locate_dwo_sections): New function.
7872 (struct create_dwo_info_table_data): New type.
7873 (create_debug_info_hash_table_reader): New function.
7874 (create_debug_info_hash_table): New function.
7875 (try_open_dwo_file, open_dwo_file, init_dwo_file): New function.
7876 (lookup_dwo_file): New function.
7877 (lookup_dwo_comp_unit, lookup_dwo_type_unit): New functions.
7878 (free_dwo_file, free_dwo_file_cleanup): New functions.
7879 (free_dwo_file_from_slot, free_dwo_files): New functions.
7880 (dwarf2_get_pc_bounds): Handle DW_FORM_GNU_addr_index.
7881 (dwarf2_record_block_ranges): Ditto.
7882 (read_partial_die): Ditto.
7883 (process_enumeration_scope): Update to use type_offset_in_section.
7884 (read_full_die_1): New function.
7885 (read_full_die): Rewrite.
7886 (read_attribute_value): New cases DW_FORM_GNU_addr_index,
7887 DW_FORM_GNU_str_index.
7888 (read_addr_index_1, read_addr_index): New functions.
7889 (read_addr_index_from_leb128): New function.
7890 (struct dwarf2_read_addr_index_data): New type.
7891 (dwarf2_read_addr_index_reader): New function.
7892 (dwarf2_read_addr_index): New function.
7893 (read_str_index): New function.
7894 (leb128_size): New function.
7895 (dwarf_decode_line_header): Delete arg abfd, all callers updated.
7896 If processing a type unit from a DWO file, get the line section
7898 (var_decode_location): Watch for DW_OP_GNU_addr_index.
7899 (dwarf2_const_value_attr): New cases DW_FORM_GNU_addr_index,
7900 DW_FORM_GNU_str_index.
7901 (lookup_die_type): Check whether section offset of type's die is
7902 known before looking it up. Remove assert. Condition can
7903 legimately happen for inter-cu type references.
7904 (dwarf_attr_name): Handle Fission attributes.
7905 (dwarf_form_name): Handle Fission forms.
7906 (dump_die_shallow): New cases DW_FORM_GNU_addr_index,
7907 DW_FORM_GNU_str_index.
7908 (follow_die_sig): Update to use type_offset_in_section.
7909 (decode_locdesc): New case DW_OP_GNU_addr_index.
7910 (skip_form_bytes): New cases DW_FORM_GNU_addr_index,
7911 DW_FORM_GNU_str_index.
7912 (cu_debug_loc_section): New function.
7913 (fill_in_loclist_baton, dwarf2_symbol_mark_computed): Call it.
7914 (dwarf2_per_objfile_free): Unmap .debug_addr section.
7915 Free DWO files if present.
7916 * xcoffread.c (dwarf2_xcoff_names): Add .debug_addr.
7918 Refactor DIE reading.
7919 * dwarf2read.c (dwarf2_per_objfile): Replace members
7920 debug_info_type_hash and debug_types_type_hash with die_type_hash.
7921 (die_reader_specs): New member "die_section". Temporarily make
7922 member "buffer" non-const, pending constifying all info_ptr uses.
7923 (die_reader_func_ftype): New typedef.
7924 (dw2_get_file_names_reader): New function.
7925 (dw2_get_file_names): Rewrite.
7926 (read_and_check_type_unit_head): Rename arg type_offset to
7928 (create_all_type_units): Improve debugging message.
7929 Improve dummy type unit check.
7930 (init_cu_die_reader): New arg "section". All callers updated.
7931 (init_and_read_dies_worker): New function.
7932 (init_cu_and_read_dies, init_tu_and_read_dies): New functions.
7933 (init_cutu_and_read_dies_no_follow): New function.
7934 (init_cutu_and_read_dies_simple): New function.
7935 (process_psymtab_comp_unit_reader): New function.
7936 (process_psymtab_comp_unit): Delete args section,
7937 is_debug_types_section. Rewrite. All callers updated.
7938 (process_psymtab_type_unit): Renamed from process_type_comp_unit.
7939 All callers updated. Rewrite.
7940 (load_partial_comp_unit_reader): New function.
7941 (load_partial_comp_unit): Rewrite.
7942 (skip_children): New arg reader. Delete args buffer, cu.
7943 All callers updated.
7944 (skip_one_die): New arg reader. Delete args buffer, cu.
7945 All callers updated.
7946 (locate_pdi_sibling): New arg reader. Delete args buffer, abfd, cu.
7947 All callers updated.
7948 (load_full_comp_unit_reader): New function.
7949 (load_full_comp_unit): Rewrite.
7950 (read_comp_unit): Delete.
7951 (read_die_and_children_1): Delete, contents moved ...
7952 (read_die_and_children): ... here.
7953 (dwarf2_read_abbrevs): New arg abbrev_section. All callers updated.
7954 (load_partial_dies): New arg reader. Delete args abfd, buffer, cu.
7955 All callers updated.
7956 (read_partial_die): New arg reader. Delete args abfd, buffer, cu.
7957 All callers updated.
7958 (find_partial_die): Rewrite load_all_dies support.
7959 (read_attribute_value): New arg reader. Delete args abfd, cu.
7960 All callers updated.
7961 (read_attribute): New arg reader. Delete args abfd, cu.
7962 All callers updated.
7963 (load_full_type_unit): Add assert.
7964 (read_signatured_type_reader): New function.
7965 (read_signatured_type): Rewrite.
7966 (free_stack_comp_unit): Remove call to age_cached_comp_units.
7967 (free_one_cached_comp_unit): Change target_cu arg to target_per_cu.
7968 All callers updated. Set per_cu->cu = NULL after freeing it.
7969 (dwarf2_per_cu_offset_and_type): Renamed from dwarf2_offset_and_type.
7970 (per_cu_offset_and_type_hash): Renamed from offset_and_type_hash.
7971 (per_cu_offset_and_type_eq): Renamed from offset_and_type_eq.
7972 (set_die_type): Update.
7973 (get_die_type_at_offset): Update.
7974 (read_file_scope): Call prepare_one_comp_unit.
7975 (read_type_unit_scope): Ditto.
7976 (prepare_one_comp_unit): Set producer if present.
7980 * probe.c (compile_rx_or_error): Silence ARI warning about missing
7981 gettext function on `error'.
7985 * dwarf2read.c (dwarf2_read_index): Don't use index if symbol table
7991 * breakpoint.c (struct breakpoint_objfile_data)
7992 <longjmp_searched>,<longjmp_probes>,<exception_searched>,
7993 <exception_probes>: New fields.
7994 (free_breakpoint_probes): New function.
7995 (create_longjmp_master_breakpoint): Prefer SystemTap probe over
7996 `_Unwind_DebugHook'.
7997 (create_exception_master_breakpoint): Likewise.
7998 (_initialize_breakpoint): Registering cleanup for SystemTap probes.
7999 * infrun.c: Including necessary header files for handling SystemTap
8001 (handle_inferior_event): Handling longjmp breakpoint and exceptions
8002 via SystemTap probes.
8003 (check_exception_resume): Remove `func' argument. Handle exception
8004 unwinding breakpoint set via a SystemTap probe.
8005 (insert_exception_resume_from_probe): New function.
8011 * Makefile.in (SFILES): Add `probe' and `stap-probe'.
8012 (COMMON_OBS): Likewise.
8013 (HFILES_NO_SRCDIR): Add `probe'.
8014 * NEWS: Mention support for static and SystemTap probes.
8015 * amd64-tdep.c (amd64_init_abi): Initializing proper fields used by
8016 SystemTap probes' arguments parser.
8017 * arm-linux-tdep.c: Including headers needed to perform the parsing
8018 of SystemTap probes' arguments.
8019 (arm_stap_is_single_operand): New function.
8020 (arm_stap_parse_special_token): Likewise.
8021 (arm_linux_init_abi): Initializing proper fields used by SystemTap
8022 probes' arguments parser.
8023 * ax-gdb.c (require_rvalue): Removing static declaration.
8024 (gen_expr): Likewise.
8025 * ax-gdb.h (gen_expr): Declaring function.
8026 (require_rvalue): Likewise.
8027 * breakpoint.c: Include `gdb_regex.h' and `probe.h'.
8028 (bkpt_probe_breakpoint_ops): New variable.
8029 (momentary_breakpoint_from_master): Set the `probe' value.
8030 (add_location_to_breakpoint): Likewise.
8031 (break_command_1): Using proper breakpoint_ops according to the
8032 argument passed by the user in the command line.
8033 (bkpt_probe_insert_location): New function.
8034 (bkpt_probe_remove_location): Likewise.
8035 (bkpt_probe_create_sals_from_address): Likewise.
8036 (bkpt_probe_decode_linespec): Likewise.
8037 (tracepoint_probe_create_sals_from_address): Likewise.
8038 (tracepoint_probe_decode_linespec): Likewise.
8039 (tracepoint_probe_breakpoint_ops): New variable.
8040 (trace_command): Using proper breakpoint_ops according to the
8041 argument passed by the user in the command line.
8042 (initialize_breakpoint_ops): Initializing breakpoint_ops for
8043 static probes on breakpoints and tracepoints.
8044 * breakpoint.h (struct bp_location) <probe>: New field.
8045 * cli-utils.c (skip_spaces_const): New function.
8046 (extract_arg): Likewise.
8047 * cli-utils.h (skip_spaces_const): Likewise.
8048 (extract_arg): Likewise.
8049 * coffread.c (coff_sym_fns): Add `sym_probe_fns' value.
8050 * configure.ac: Append `stap-probe.o' to be generated when ELF
8052 * configure: Regenerate.
8053 * dbxread.c (aout_sym_fns): Add `sym_probe_fns' value.
8054 * elfread.c: Include `probe.h' and `arch-utils.h'.
8055 (probe_key): New variable.
8056 (elf_get_probes): New function.
8057 (elf_get_probe_argument_count): Likewise.
8058 (elf_evaluate_probe_argument): Likewise.
8059 (elf_compile_to_ax): Likewise.
8060 (elf_symfile_relocate_probe): Likewise.
8061 (stap_probe_key_free): Likewise.
8062 (elf_probe_fns): New variable.
8063 (elf_sym_fns): Add `sym_probe_fns' value.
8064 (elf_sym_fns_lazy_psyms): Likewise.
8065 (elf_sym_fns_gdb_index): Likewise.
8066 (_initialize_elfread): Initialize objfile cache for static
8068 * gdb_vecs.h (struct probe): New forward declaration.
8069 (probe_p): New VEC declaration.
8070 * gdbarch.c: Regenerate.
8071 * gdbarch.h: Regenerate.
8072 * gdbarch.sh (stap_integer_prefix): New variable.
8073 (stap_integer_suffix): Likewise.
8074 (stap_register_prefix): Likewise.
8075 (stap_register_suffix): Likewise.
8076 (stap_register_indirection_prefix): Likewise.
8077 (stap_register_indirection_suffix): Likewise.
8078 (stap_gdb_register_prefix): Likewise.
8079 (stap_gdb_register_suffix): Likewise.
8080 (stap_is_single_operand): New function.
8081 (stap_parse_special_token): Likewise.
8082 (struct stap_parse_info): Forward declaration.
8083 * i386-tdep.c: Including headers needed to perform the parsing
8084 of SystemTap probes' arguments.
8085 (i386_stap_is_single_operand): New function.
8086 (i386_stap_parse_special_token): Likewise.
8087 (i386_elf_init_abi): Initializing proper fields used by SystemTap
8088 probes' arguments parser.
8089 * i386-tdep.h (i386_stap_is_single_operand): New function.
8090 (i386_stap_parse_special_token): Likewise.
8091 * machoread.c (macho_sym_fns): Add `sym_probe_fns' value.
8092 * mipsread.c (ecoff_sym_fns): Likewise.
8093 * objfiles.c (objfile_relocate1): Support relocation for static
8095 * parse.c (prefixify_expression): Remove static declaration.
8096 (initialize_expout): Likewise.
8097 (reallocate_expout): Likewise.
8098 * parser-defs.h (initialize_expout): Declare function.
8099 (reallocate_expout): Likewise.
8100 (prefixify_expression): Likewise.
8101 * ppc-linux-tdep.c: Including headers needed to perform the parsing
8102 of SystemTap probes' arguments.
8103 (ppc_stap_is_single_operand): New function.
8104 (ppc_stap_parse_special_token): Likewise.
8105 (ppc_linux_init_abi): Initializing proper fields used by SystemTap
8106 probes' arguments parser.
8107 * probe.c: New file, for generic statically defined probe support.
8108 * probe.h: Likewise.
8109 * s390-tdep.c: Including headers needed to perform the parsing of
8110 SystemTap probes' arguments.
8111 (s390_stap_is_single_operand): New function.
8112 (s390_gdbarch_init): Initializing proper fields used by SystemTap
8113 probes' arguments parser.
8114 * somread.c (som_sym_fns): Add `sym_probe_fns' value.
8115 * stap-probe.c: New file, for SystemTap probe support.
8116 * stap-probe.h: Likewise.
8117 * symfile.h: Include `gdb_vecs.h'.
8118 (struct sym_probe_fns): New struct.
8119 (struct sym_fns) <sym_probe_fns>: New field.
8120 * symtab.c (init_sal): Initialize `probe' field.
8121 * symtab.h (struct probe): Forward declaration.
8122 (struct symtab_and_line) <probe>: New field.
8123 * tracepoint.c (start_tracing): Adjust semaphore on breakpoints
8125 (stop_tracing): Likewise.
8126 * xcoffread.c (xcoff_sym_fns): Add `sym_probe_fns' value.
8131 * ax-gdb.c (gen_expr): Clean up code to handle internal variables
8132 and to compile agent expressions.
8133 * infrun.c (siginfo_make_value): New argument `ignore'.
8134 (siginfo_funcs): New struct.
8135 (_initialize_infrun): New argument when calling
8136 `create_internalvar_type_lazy'.
8137 * thread.c (thread_id_make_value): New argument `ignore'.
8138 (thread_funcs): New struct.
8139 (_initialize_thread): New argument when calling
8140 `create_internalvar_type_lazy'.
8141 * tracepoint.c (sdata_make_value): New argument `ignore'.
8142 (sdata_funcs): New struct.
8143 (_initialize_tracepoint): New argument when calling
8144 `create_internalvar_type_lazy'.
8145 * value.c (make_value): New struct.
8146 (create_internalvar_type_lazy): New argument `data'.
8147 (compile_internalvar_to_ax): New function.
8148 (value_of_internalvar): Properly handling `make_value' case.
8149 (clear_internalvar): Likewise.
8150 (show_convenience): Adding `TRY_CATCH' block.
8151 * value.h (internalvar_make_value): Delete, replace by...
8152 (struct internalvar_funcs): ... this.
8153 (create_internalvar_type_lazy) <fun>: Delete argument.
8154 (create_internalvar_type_lazy) <funcs>, <data>: New arguments.
8155 (compile_internalvar_to_ax): New function.
8156 * windows-tdep.c (tlb_make_value): New argument `ignore'.
8157 (tlb_funcs): New struct.
8158 (_initialize_windows_tdep): New argument when calling
8159 `create_internalvar_type_lazy'.
8163 * dwarf2read.c (dwarf2_get_pc_bounds): Check DW_AT_high_pc form to
8164 see whether it is an address or a constant offset from DW_AT_low_pc.
8165 (dwarf2_record_block_ranges): Likewise.
8166 (read_partial_die): Likewise.
8170 * MAINTAINERS (Write After Approval): Add myself to the list.
8174 * proc-utils.h (proc_prettyprint_signalset): New prototype.
8175 (proc_prettyprint_signal): Likewise.
8176 (proc_prettyprint_faultset): Likewise.
8177 (proc_prettyprint_fault): Likewise.
8178 (proc_prettyprint_actionset): Likewise.
8179 (proc_prettyprint_flags): Move to new proc-flags.c section.
8180 (proc_prettyfprint_flags): New prototype.
8181 * procfs.c (proc_nsysarg, proc_sysargs): Add prototypes.
8182 (proc_syscall, proc_cursig): Likewise.
8183 (proc_set_kill_on_last_close): Likewise.
8184 (proc_unset_kill_on_last_close): Likewise.
8185 (proc_set_watchpoint): Make static.
8186 (proc_delete_dead_threads): Likewise.
8187 (procfs_set_watchpoint): Likewise.
8188 (_initialize_procfs): Add prototype.
8189 * proc-events.c: Include proc-utils.h.
8190 (init_syscall_table): Make static.
8191 * proc-api.c (_initialize_proc_api): Add prototype.
8192 * proc-flags.c: Include proc-utils.h.
8196 * configure.ac: Add AC_ARG_PROGRAM.
8197 * configure: Regenerate.
8201 Fix DW_AT_lower_bound defaults for DWARF-4+.
8202 * dwarf2read.c (read_subrange_type): Remove initialization of low and
8203 high. New variable low_default_is_valid. Implement DWARF-4+
8204 DW_AT_lower_bound defaults. Print complaint for DW_AT_lower_bound with
8205 no default by the DWARF standard.
8210 * infrun.c (handle_inferior_event): Move the check for return
8211 trampolines ahead of the check for function trampolines.
8212 * mips-tdep.h (MIPS_S2_REGNUM, MIPS_GP_REGNUM): New macros.
8213 * mips-tdep.c (mips_str_mips16_call_stub): New variable.
8214 (mips_str_mips16_ret_stub): Likewise.
8215 (mips_str_call_fp_stub): Likewise.
8216 (mips_str_call_stub): Likewise.
8217 (mips_str_fn_stub): Likewise.
8218 (mips_str_pic): Likewise.
8219 (mips_in_frame_stub): New function.
8220 (mips_unwind_pc): Return the return address rather than the PC
8221 if the PC of an intermediate frame is inside a call thunk.
8222 (mips_is_stub_suffix): New function.
8223 (mips_is_stub_mode): Likewise.
8224 (mips_get_mips16_fn_stub_pc): Likewise.
8225 (mips_skip_mips16_trampoline_code): Update to handle all the
8226 currently generated stub types. Don't recurse into __fn_stub
8227 thunks. Remove heuristics to handle stubs beyond etext/_etext.
8228 Use cooked register accesses.
8229 (mips_in_return_stub): Reintroduce function.
8230 (mips_skip_trampoline_code): Traverse trampolines recursively.
8231 (mips_gdbarch_init): Handle MIPS16 return trampolines.
8239 * arm-tdep.h (VFP_REGISTER_SIZE): Define.
8240 * features/arm-with-m-vfp-d16.xml: New file. Describes
8241 Cortex-M with VFPv4-sp-d16 FPU register layout.
8242 * features/Makefile (WHICH): Add arm-with-m-vfp-d16.
8243 * features/arm-with-m-vfp-d16.c: New. Generated from above.
8244 * arm-tdep.c: Include arm-with-m-vfp-d16.c.
8245 (arm-register_g_packet_guesses): Add vfp-d16 guess.
8246 (_initialise_arm_tdep): Initialize arm-with-m-vfp-d16 tdesc.
8250 * cli/cli-decode.c (print_doc_line): Use stream instead of
8255 * features/arm-with-iwmmxt.c: Regenerate.
8256 * features/arm-with-m-fpa-layout.c: Likewise.
8257 * features/arm-with-m.c: Likewise.
8258 * features/arm-with-neon.c: Likewise.
8259 * features/arm-with-vfpv2.c: Likewise.
8260 * features/arm-with-vfpv3.c: Likewise.
8261 * features/mips-dsp-linux.c: Likewise.
8262 * features/mips-linux.c: Likewise.
8263 * features/mips64-dsp-linux.c: Likewise.
8264 * features/mips64-linux.c: Likewise.
8265 * features/s390-linux32.c: Likewise.
8266 * features/s390-linux32v1.c: Likewise.
8267 * features/s390-linux32v2.c: Likewise.
8268 * features/s390-linux64.c: Likewise.
8269 * features/s390-linux64v1.c: Likewise.
8270 * features/s390-linux64v2.c: Likewise.
8271 * features/s390x-linux64.c: Likewise.
8272 * features/s390x-linux64v1.c: Likewise.
8273 * features/s390x-linux64v2.c: Likewise.
8274 * features/tic6x-c62x-linux.c: Likewise.
8275 * features/tic6x-c62x.c: Likewise.
8276 * features/tic6x-c64x-linux.c: Likewise.
8277 * features/tic6x-c64x.c: Likewise.
8278 * features/tic6x-c64xp-linux.c: Likewise.
8279 * features/tic6x-c64xp.c: Likewise.
8280 * target-descriptions.c: Only generate `field_type' and `type'
8281 variables when needed.
8285 * cli/cli-cmds.c (cd_command): Use memmove instead of strcpy.
8289 Initial pass at Go language support.
8291 * Makefile.in (SFILES): Add go-exp.y, go-lang.c, go-typeprint.c,
8293 (COMMON_OBS): Add go-lang.o, go-val.print.o, go-typeprint.o.
8294 (YYFILES): Add go-exp.c.
8295 (YYOBJ): Add go-exp.o.
8296 (local-maintainer-clean): Delete go-exp.c.
8297 * defs.h (enum language): Add language_go.
8298 * dwarf2read.c: #include "go-lang.h".
8299 (fixup_go_packaging): New function.
8300 (process_full_comp_unit): Call it when processing Go CUs.
8301 (dwarf2_physname): Add Go support.
8302 (read_file_scope): Handle missing language spec for GNU Go.
8303 (set_cu_language): Handle DW_LANG_Go.
8304 * go-exp.y: New file.
8305 * go-lang.h: New file.
8306 * go-lang.c: New file.
8307 * go-typeprint.c: New file.
8308 * go-valprint.c: New file.
8309 * symtab.c: #include "go-lang.h".
8310 (symbol_set_language): Handle language_go.
8311 (symbol_find_demangled_name, symbol_set_names): Ditto.
8312 (symbol_natural_name, demangle_for_lookup, find_main_name): Ditto.
8316 avoid a few strncpy-induced buffer overruns
8317 * procfs.c (procfs_make_note_section): Be sure to NUL-terminate
8318 fname and psargs before trying to concatenate.
8319 * tui/tui-stack.c (tui_get_function_from_frame): NUL-terminate
8320 "name" before applying strchr.
8324 * CONTRIBUTE: Use unified diff instead of context diff when
8329 * mips-tdep.c (mips_about_to_return): Remove dead MIPS16 support
8330 code. Handle JR.HB correctly.
8335 (is_mips16_addr, unmake_mips16_addr, make_mips16_addr): Group
8336 with the other MIPS16 helpers.
8340 * observer.sh: Conditionally declare `args', thus cleaning up
8341 unused instances of this variable.
8345 Revert this patch to allow breakpoint always-inserted
8348 * breakpoint.c: Include record.h.
8349 (breakpoints_always_inserted_mode): Return false when the record
8352 * breakpoint.c (iterate_over_bp_locations): New.
8353 * breakpoint.h: Declare.
8354 New typedef walk_bp_location_callback.
8355 * record.c (record_open): Call record_init_record_breakpoints.
8356 (record_sync_record_breakpoints): New.
8357 (record_init_record_breakpoints): New.
8358 * NEWS: Mention supporting breakpoint always-inserted mode in
8363 * mi/mi-main.c (mi_cmd_execute): Choose a live thread not just
8368 * breakpoint.c (ep_is_catchpoint): Renamed to ...
8369 (is_catchpoint): ... it.
8370 (print_one_breakpoint_location): Caller update.
8371 * breakpoint.h: Update declaration.
8375 * configure.tgt (sparc-*-linux*): Set build_gdbserver to yes.
8379 * buildsym.c (add_free_pendings): Remove.
8380 * buildsym.h (add_free_pendings): Remove.
8384 * dwarf2read.c (partial_die_full_name): Record DW_FORM_ref_addr in
8385 attr.u.unsnd instead of attr.u.addr.
8386 (read_attribute_value) Ditto for cases DW_FORM_ref_addr,
8387 DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4, DW_FORM_reg8,
8389 (dump_die_shallow): Update cases DW_FORM_ref_addr,
8390 DW_FORM_ref1, DW_FORM_ref2, DW_FORM_ref4. Add cases DW_FORM_ref8,
8392 (dwarf2_get_ref_die_offset): Use DW_UNSND for reference attributes.
8396 * mips-tdep.c (mips_n32n64_return_value): Fix coding style.
8397 (mips_o32_return_value): Likewise.
8398 (mips_o64_return_value): Likewise.
8402 * ada-lang.c (ada_evaluate_subexp): Add cases for
8403 TYPE_CODE_INTERNAL_FUNCTION and for TYPE_GNU_IFUNC, following
8404 their treatment in eval.c.
8408 * sparc-tdep.c (X_DISP10): Define.
8409 (sparc_analyze_control_transfer): Handle compare-and-branch.
8413 * features/Makefile (WHICH): Add arm-with-m and arm-with-m-fpa-layout.
8414 * arm-tdep.c (arm_register_g_packet_guesses): Fix comment.
8419 * mips-tdep.c (mips_float_register_p): New function.
8420 (mips_convert_register_float_case_p): Use mips_float_register_p.
8421 (mips_register_type): Likewise.
8422 (mips_print_register): Likewise.
8423 (print_gp_register_row): Likewise.
8424 (mips_print_registers_info): Likewise.
8428 * mips-tdep.c (mips_elf_make_msymbol_special): Fix identification
8433 * MAINTAINERS (Write After Approval): Add myself to the list.
8437 * MAINTAINERS: Update my e-mail address.
8441 * acx_configure_dir.m4 (ACX_CONFIGURE_DIR): Handle absolute
8443 * configure: Regenerate.
8447 * cp-support.h: Include `gdb_vecs.h'. Delete `const_char_ptr' VEC
8449 * gdb_vecs.h: Declare `const_char_ptr' VEC.
8453 Fix compilation compatibility with python-2.4
8454 * python/py-type.c (convert_field): Cast ADDRSTRING for
8455 PyObject_SetAttrString as non-const. New comment.
8459 * top.c (quit_target): Use all_cleanups.
8460 * main.c (captured_command_loop): Use all_cleanups.
8461 * exceptions.c (throw_exception): Use all_cleanups.
8465 * Makefile.in (GNULIB_BUILDDIR): New.
8466 (LIBGNU, INCGNU, GNULIB_H): Adjust.
8467 (SUBDIRS): Add $(GNULIB_BUILDDIR).
8468 (CLEANDIRS). Remove gnulib/import.
8469 (REQUIRED_SUBDIRS): Replace gnulib/import with $(GNULIB_BUILDDIR).
8471 (distclean): Remove the $(GNULIB_BUILDDIR) directory.
8472 (gnulib/import/Makefile): Replace gnulib/import with
8473 $(GNULIB_BUILDDIR). Set CONFIG_FILES to just Makefile.
8474 (ACLOCAL_AMFLAGS): Remove '-I gnulib/import/m4'.
8475 (aclocal_m4_deps): Remove the gnulib dependencies. Add
8476 acx_configure_dir.m4.
8477 * acinclude.m4: Include acx_configure_dir.m4.
8478 * acx_configure_dir.m4: New file.
8479 * aclocal.m4: Regenerate.
8480 * configure.ac: Remove gl_EARLY, gl_INIT and AM_INIT_AUTOMAKE
8481 calls. Configure gnulib using ACX_CONFIGURE_DIR.
8482 (GNULIB): New variable.
8483 (GNULIB_STDINT_H): Adjust.
8484 (AC_OUTPUT): Don't output gnulib/Makefile.
8485 * gdb/defs.h: Include build-gnulib/config.h.
8486 * aclocal.m4: Regenerate.
8487 * config.in: Regenerate.
8488 * configure: Regenerate.
8490 * gnulib/Makefile.in: New file.
8491 * gnulib/configure.ac: New file.
8492 * gnulib/aclocal.m4: New file.
8493 * gnulib/config.in: New file.
8494 * gnulib/configure: New file.
8495 * gnulib/: Re-run gnulib-tool to adjust.
8499 * cleanups.h (struct cleanup): Move to cleanups.c.
8500 (make_cleanup_dtor_ftype): New typedef.
8501 (make_cleanup_dtor): Use it.
8502 (ALL_CLEANUPS): Replace with ...
8503 (all_cleanups): ... this. Declare. All uses updated.
8504 * cleanups.c: #include "gdb_assert.h".
8505 (sentinel_cleanup): New static global.
8506 (SENTINEL_CLEANUP): Define.
8507 (cleanup_chain, final_cleanup_chain): Initialize to SENTINEL_CLEANUP.
8508 (make_my_cleanup2): Assert result is non-NULL.
8509 (all_cleanups): New function.
8510 (save_my_cleanups): Initialize new chain to SENTINEL_CLEANUP instead
8515 * Makefile.in (HFILES_NO_SRCDIR): Remove gnulib/wchar.in.h.
8516 Adjust paths to gnulib imported files.
8520 * gnulib/: Move whole directory ...
8521 * gnulib/import/: ... here, and re-rerun gnulib-tool to adjust.
8522 * Makefile.in (LIBGNU, INCGNU, GNULIB_H, CLEANDIRS)
8523 (REQUIRED_SUBDIRS, all-lib, gnulib/Makefile, ACLOCAL_AMFLAGS)
8524 (aclocal_m4_deps): Adjust.
8525 * aclocal.m4: Regenerate.
8526 * configure: Regenerate.
8527 * configure.ac: Adjust AC_OUTPUT output.
8531 * Makefile.in (SFILES): Add common/vec.c and remove vec.c.
8533 * vec.c: Move it ...
8534 * common/vec.c: ... here.
8535 * vec.h: Move it ...
8536 * common/vec.h: ... here.
8540 * gdb-code-style.el: New.
8544 Update gnulib from latest git.
8545 (639ea5ae15e39fe48d43e04864b2997301e4b969)
8547 * gnulib/Makefile.am: Update.
8548 * gnulib/dummy.c: Update.
8549 * gnulib/extra/arg-nonnull.h: Update.
8550 * gnulib/extra/c++defs.h: Update.
8551 * gnulib/extra/update-copyright: Update.
8552 * gnulib/extra/warn-on-use.h: Update.
8553 * gnulib/inttypes.in.h: Update.
8554 * gnulib/m4/00gnulib.m4: Update.
8555 * gnulib/m4/extensions.m4: Update.
8556 * gnulib/m4/gnulib-cache.m4: Update.
8557 * gnulib/m4/gnulib-common.m4: Update.
8558 * gnulib/m4/gnulib-comp.m4: Update.
8559 * gnulib/m4/gnulib-tool.m4: Update.
8560 * gnulib/m4/include_next.m4: Update.
8561 * gnulib/m4/inttypes-pri.m4: Update.
8562 * gnulib/m4/inttypes.m4: Update.
8563 * gnulib/m4/longlong.m4: Update.
8564 * gnulib/m4/memchr.m4: Update.
8565 * gnulib/m4/memmem.m4: Update.
8566 * gnulib/m4/mmap-anon.m4: Update.
8567 * gnulib/m4/multiarch.m4: Update.
8568 * gnulib/m4/onceonly.m4: Update.
8569 * gnulib/m4/stddef_h.m4: Update.
8570 * gnulib/m4/stdint.m4: Update.
8571 * gnulib/m4/string_h.m4: Update.
8572 * gnulib/m4/warn-on-use.m4: Update.
8573 * gnulib/m4/wchar_h.m4: Update.
8574 * gnulib/m4/wchar_t.m4: Update.
8575 * gnulib/m4/wint_t.m4: Update.
8576 * gnulib/memchr.c: Update.
8577 * gnulib/memmem.c: Update.
8578 * gnulib/stddef.in.h: Update.
8579 * gnulib/stdint.in.h: Update.
8580 * gnulib/str-two-way.h: Update.
8581 * gnulib/string.in.h: Update.
8582 * gnulib/wchar.in.h: Update.
8584 * gnulib/extra/arg-nonnull.h: Delete.
8585 * gnulib/extra/c++defs.h: Delete.
8586 * gnulib/extra/warn-on-use.h: Delete.
8587 * gnulib/m4/wchar_h.m4: Delete.
8588 * gnulib/m4/wint_t.m4: Delete.
8589 * gnulib/wchar.in.h: Delete.
8591 * gnulib/extra/snippets/arg-nonnull.h: New.
8592 * gnulib/extra/snippets/c++defs.h: New.
8593 * gnulib/extra/snippets/warn-on-use.h: New.
8595 * aclocal.m4: Regenerate.
8596 * config.in: Regenerate.
8597 * configure: Regenerate.
8598 * gnulib/Makefile.in: Regenerate.
8602 Reimport the update-copyright module from gnulib
8603 (250b80067c1e1d8faa0c42fb572f721975b929c5).
8605 * configure: Regenerate.
8606 * gnulib/Makefile.am: Update.
8607 * gnulib/Makefile.in: Regenerate.
8608 * gnulib/extra/update-copyright: Update.
8609 * gnulib/m4/gnulib-cache.m4: Update.
8610 * gnulib/m4/gnulib-comp.m4: Update.
8614 * configure.ac (aix): Put -lpthread into libs.
8615 * configure: Regenerate.
8619 * linespec.c (convert_linespec_to_sals): Don't use
8621 (compare_msymbols): Arguments are minsym_and_objfile, not
8622 minimal_symbol*. Don't use SYMBOL_OBJ_SECTION.
8626 Revert gnulib/ part of:
8628 Copyright year update in most files (performed by copyright.sh).
8632 Fix 64-bit constants on 32-bit hosts.
8633 * dwarf2read.c (read_unsigned_leb128): Change declaration return type
8634 from unsigned long to ULONGEST.
8635 (read_signed_leb128): Change declaration return type from long to
8637 (dwarf2_const_value_attr): Change declaration parameter value from long
8639 (dwarf2_compute_name): Change variable value from long to LONGEST.
8640 (read_unsigned_leb128): Change return type, variable result and some
8641 casts from unsigned long to ULONGEST.
8642 (read_signed_leb128): Change return type, variable result and some
8643 casts from long to LONGEST.
8644 (dwarf2_const_value_data, dwarf2_const_value_attr): Change parameter
8645 value from long to LONGEST.
8646 (dwarf2_const_value): Change variable value from long to LONGEST.
8647 * symmisc.c (print_symbol): Change SYMBOL_VALUE format strings to use
8648 plongest and hex_string.
8649 * symtab.h (struct general_symbol_info): Change ivalue from long to
8650 LONGEST, remove the comment.
8651 * tracepoint.c (validate_actionline, collect_symbol, scope_info):
8652 Change SYMBOL_VALUE format strings to use plongest and hex_string.
8657 * ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL.
8658 * ada-lang.c (ada_discrete_type_high_bound)
8659 (ada_discrete_type_low_bound): Fix function comment. Use
8660 TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
8661 (ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL.
8662 (pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
8663 * ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST.
8664 Use TYPE_FIELD_ENUMVAL.
8665 * ada-valprint.c (print_optional_low_bound, ada_print_scalar)
8666 (ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
8667 * c-typeprint.c (c_type_print_base): Move variable lastval to inner
8668 block, change it to LONGEST. Use TYPE_FIELD_ENUMVAL for
8670 * coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL.
8671 * dwarf2read.c (process_enumeration_scope): Likewise.
8672 * gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of
8674 (class StructMainTypePrettyPrinter): Support also
8675 FIELD_LOC_KIND_ENUMVAL.
8676 * gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for
8678 (recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
8679 (copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL.
8680 * gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL.
8681 (struct main_type.flds_bnds.fields.loc): Adjust bitpos comment. New
8683 (struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to
8684 accommodate enumval.
8685 (struct call_site): Adjust loc_kind to accommodate enumval.
8686 (FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL)
8687 (TYPE_FIELD_ENUMVAL): New macros.
8688 * m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL.
8689 * mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for
8691 * p-typeprint.c (pascal_type_print_base): Likewise.
8692 * python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use
8694 * python/lib/gdb/types.py (make_enum_dict): Likewise.
8695 * python/py-type.c (convert_field): New variable addrstring. Use
8696 TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
8697 (check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL.
8698 * stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL.
8699 * typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for
8701 * valprint.c (generic_val_print): Likewise.
8705 * dwarf2read.c (lookup_signatured_type): Return NULL instead of 0.
8707 * dwarf2read.c: Whitespace fixes.
8708 (lookup_signatured_type): Tweak comment.
8709 (get_die_type_at_offset): Fix comment.
8713 * xcoffread.c (xcoff_secnum_to_sections): New function.
8714 (secnum_to_section, secnum_to_bfd_section): Reimplement
8715 using xcoff_secnum_to_sections. Rename "secnum" parameter
8717 (RECORD_MINIMAL_SYMBOL): Delete.
8718 (record_minimal_symbol): New function.
8719 (scan_xcoff_symtab): Replace uses of RECORD_MINIMAL_SYMBOL
8720 by call to record_minimal_symbol and set misc_func_recorded
8721 to 1. Set last_csect_sec to the XCOFF section index instead
8722 of GDB's section_offset index. Update calls to
8723 prim_record_minimal_symbol_and_info to pass the BFD section
8728 * xcoffread.c (read_xcoff_symtab): Delete variables
8729 last_csect_val and last_csect_sec and associated code.
8733 * cleanups.c (make_my_cleanup,make_my_cleanup2): Make static.
8734 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
8735 * cleanups.h (make_my_cleanup,make_my_cleanup2): Delete
8736 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Delete.
8738 * cleanups.h: New file.
8739 * cleanups.c: New file.
8740 * Makefile.in (SFILES): Add cleanups.c.
8741 (HFILES_NO_SRCDIR): Add cleanups.h.
8742 (COMMON_OBS): Add cleanups.o.
8743 * defs.h (struct cleanup): Moved to cleanups.h.
8744 (do_cleanups,do_final_cleanups): Ditto.
8745 (discard_cleanups,discard_final_cleanups): Ditto
8746 (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
8747 (save_cleanups,save_final_cleanups): Ditto.
8748 (restore_cleanups,restore_final_cleanups): Ditto.
8749 (null_cleanup): Ditto.
8750 (make_my_cleanup,make_my_cleanup2): Ditto.
8751 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
8752 * utils.c (cleanup_chain,final_cleanup_chain): Moved to cleanups.c.
8753 (do_cleanups,do_final_cleanups): Ditto.
8754 (discard_cleanups,discard_final_cleanups): Ditto
8755 (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
8756 (save_cleanups,save_final_cleanups): Ditto.
8757 (restore_cleanups,restore_final_cleanups): Ditto.
8758 (null_cleanup): Ditto.
8759 (make_my_cleanup,make_my_cleanup2): Ditto.
8760 (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
8762 * utils.c (make_cleanup_freeargv): Use make_cleanup instead of
8764 (make_cleanup_dyn_string_delete): Ditto.
8765 (make_cleanup_ui_file_delete): Ditto.
8766 (make_cleanup_ui_out_redirect_pop): Ditto.
8767 (make_cleanup_free_section_addr_info): Ditto.
8768 (make_cleanup_restore_integer): Ditto.
8769 (make_cleanup_unpush_target): Ditto.
8770 (make_cleanup_value_free_to_mark): Ditto.
8771 (make_cleanup_value_free): Ditto.
8772 (make_cleanup_free_so): Ditto.
8776 New option "set debug auto-load".
8777 * NEWS: New commands "set debug auto-load" and "show debug auto-load".
8778 * auto-load.c (debug_auto_load, show_debug_auto_load: New.
8779 (auto_load_safe_path_vec_update)
8780 (filename_is_in_auto_load_safe_path_vec): Call fprintf_unfiltered
8782 (file_is_auto_load_safe): New parameters debug_fmt and ....
8783 Call fprintf_unfiltered if DEBUG_AUTO_LOAD.
8784 (source_gdb_script_for_objfile): Extend the file_is_auto_load_safe
8785 caller by explanatory string.
8786 (_initialize_auto_load): Register "set debug auto-load".
8787 * auto-load.h (file_is_auto_load_safe): New parameters debug_fmt
8789 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
8790 (try_thread_db_load_from_dir): Extend the file_is_auto_load_safe caller
8791 by explanatory string.
8792 * main.c (captured_main): Likewise.
8793 * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile)
8794 (source_section_scripts): Likewise.
8798 New option "set auto-load safe-path".
8799 * NEWS: New commands "set auto-load safe-path"
8800 and "show auto-load safe-path".
8801 * auto-load.c: Include gdb_vecs.h, readline/tilde.h and completer.h.
8802 (auto_load_safe_path, auto_load_safe_path_vec)
8803 (auto_load_safe_path_vec_update, set_auto_load_safe_path)
8804 (show_auto_load_safe_path, add_auto_load_safe_path, filename_is_in_dir)
8805 (filename_is_in_auto_load_safe_path_vec, file_is_auto_load_safe): New.
8806 (source_gdb_script_for_objfile): New variable is_safe. Call
8807 file_is_auto_load_safe. Return if it is not.
8808 (struct loaded_script): New field loaded.
8809 (maybe_add_script): Add parameter loaded. Initialize SLOT with it.
8810 (print_script): Use LOADED indicator instead of FULL_PATH. Change
8811 output "Missing" to "No".
8812 (_initialize_auto_load): New variable cmd. Initialize
8813 auto_load_safe_path. Register "set auto-load safe-path",
8814 "show auto-load safe-path" and "add-auto-load-safe-path".
8815 * auto-load.h (maybe_add_script): Add parameter loaded.
8816 (file_is_auto_load_safe): New declaration.
8817 * config.in: Regenerate.
8818 * configure: Regenerate.
8819 * configure.ac: New parameters --with-auto-load-safe-path
8820 and --without-auto-load-safe-path.
8821 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
8822 (try_thread_db_load_from_dir): Check file_is_auto_load_safe first.
8823 * main.c (captured_main): Check file_is_auto_load_safe for
8825 * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile): New
8826 variable is_safe. Call file_is_auto_load_safe. Return if it is not.
8827 (source_section_scripts): Call file_is_auto_load_safe. Return if it is
8832 auto-load: Implementation.
8833 * NEWS: New descriptions for "info auto-load",
8834 "info auto-load gdb-scripts", "info auto-load python-scripts",
8835 "info auto-load local-gdbinit" and "info auto-load libthread-db".
8836 Deprecate "info auto-load-scripts", "set auto-load-scripts on|off"
8837 and "show auto-load-scripts". New description for "set auto-load",
8838 "show auto-load", "set auto-load gdb-scripts",
8839 "show auto-load gdb-scripts", "set auto-load python-scripts",
8840 "show auto-load python-scripts", "set auto-load local-gdbinit",
8841 "show auto-load local-gdbinit", "set auto-load libthread-db" and
8842 "show auto-load libthread-db".
8843 * auto-load.c: Remove include python/python-internal.h. Add includes
8844 exceptions.h, cli/cli-script.h, gdbcmd.h, cli/cli-decode.h and
8846 (GDB_AUTO_FILE_NAME, source_gdb_script_for_objfile)
8847 (auto_load_gdb_scripts, show_auto_load_gdb_scripts): New.
8848 (gdbpy_global_auto_load): Rename to ...
8849 (global_auto_load): ... here.
8850 (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
8851 (auto_load_local_gdbinit_loaded, show_auto_load_local_gdbinit)
8852 (script_language_gdb, source_gdb_script_for_objfile): New.
8853 (struct loaded_script): New field language.
8854 (hash_loaded_script_entry, eq_loaded_script_entry): Calculate also
8856 (maybe_add_script): Add parameter language. Drop redundant
8857 entry.full_path initialization. Initialize entry.language and
8859 (auto_load_objfile_script): Change parameter suffix to language.
8860 Remove the call of maybe_add_script.
8861 Call language->source_script_for_objfile.
8862 (load_auto_scripts_for_objfile, struct collect_matching_scripts_data):
8864 (collect_matching_scripts): Adjust it for
8865 struct collect_matching_scripts_data.
8866 (auto_load_info_scripts_pattern_nl): New variable.
8867 (info_auto_load_scripts): Rename to ...
8868 (auto_load_info_scripts): ... here, add parameter language. Adjust it
8869 for struct collect_matching_scripts_data.
8870 (info_auto_load_gdb_scripts, info_auto_load_local_gdbinit)
8871 (set_auto_load_cmd, auto_load_set_cmdlist_get, show_auto_load_cmd)
8872 (auto_load_show_cmdlist_get, info_auto_load_cmd)
8873 (auto_load_info_cmdlist_get): New.
8874 (_initialize_auto_load): Move add_info of "auto-load-scripts" to
8875 python/py-auto-load.c. New installment for "set auto-load gdb-scripts",
8876 "info auto-load gdb-scripts", "set auto-load local-gdbinit" and
8877 "info auto-load local-gdbinit".
8878 * auto-load.h (struct script_language): New.
8879 (gdbpy_global_auto_load): Rename to ...
8880 (global_auto_load): ... here.
8881 (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
8882 (auto_load_local_gdbinit_loaded): New declarations.
8883 (maybe_add_script): New parameter language.
8884 (auto_load_objfile_script): Change parameter suffix to language.
8885 (load_auto_scripts_for_objfile, auto_load_info_scripts_pattern_nl)
8886 (auto_load_info_scripts, auto_load_set_cmdlist_get)
8887 (auto_load_show_cmdlist_get, auto_load_info_cmdlist_get): New
8889 * linux-thread-db.c: Include auto-load.h and ctype.h.
8890 (auto_load_thread_db, show_auto_load_thread_db): New.
8891 (struct thread_db_info): New field filename.
8892 (delete_thread_db_info): Call xfree for FILENAME.
8893 (try_thread_db_load): Initialize FILENAME.
8894 (try_thread_db_load_from_pdir, try_thread_db_load_from_dir): Return
8895 if !AUTO_LOAD_THREAD_DB.
8896 (info_auto_load_libthread_db_compare, info_auto_load_libthread_db): New.
8897 (_initialize_thread_db): Install auto_load_thread_db
8898 as "set auto-load libthread-db" and install info_auto_load_libthread_db
8899 as "info auto-load libthread-db".
8900 * main.c (captured_main): Rename gdbpy_global_auto_load to
8901 global_auto_load. Initialize AUTO_LOAD_LOCAL_GDBINIT_PATHNAME and
8902 AUTO_LOAD_LOCAL_GDBINIT_LOADED.
8903 (print_gdb_help): Extend the help for 'local init file'.
8904 * python/py-auto-load.c: Remove a comment about gdb scripts extension.
8905 (GDBPY_AUTO_SECTION_NAME): Extend the comment it is Python specific.
8906 (auto_load_scripts): Rename to ...
8907 (auto_load_python_scripts): ... here, update the comment.
8908 (gdbpy_load_auto_script_for_objfile): New declaration.
8909 (show_auto_load_python_scripts, script_language_python)
8910 (gdbpy_load_auto_script_for_objfile): New.
8911 (source_section_scripts): Refactor the code.
8912 (load_auto_scripts_for_objfile): Rename to ...
8913 (gdbpy_load_auto_scripts_for_objfile): ... here, update the
8914 auto_load_objfile_script caller, drop GDBPY_GLOBAL_AUTO_LOAD checking.
8915 (info_auto_load_python_scripts): New.
8916 (gdbpy_initialize_auto_load): New variables cmd and cmd_name.
8917 Rename "set auto-load-scripts" to "set auto-load python-scripts".
8918 Register "set auto-load-scripts" as its deprecated alias. Register
8919 "info auto-load python-scripts". Register "info auto-load-scripts" as
8920 its deprecated alias.
8921 (load_auto_scripts_for_objfile): Rename to ...
8922 (gdbpy_load_auto_scripts_for_objfile): ... here.
8923 * python/python.h (load_auto_scripts_for_objfile): Rename to ...
8924 (gdbpy_load_auto_scripts_for_objfile): ... here.
8928 auto-load: Move files.
8929 * Makefile.in (SFILES): Add auto-load.c.
8930 (HFILES_NO_SRCDIR): Add auto-load.h.
8931 (COMMON_OBS): Add auto-load.o.
8932 (distclean): Change .gdbinit for gdb-gdb.gdb.
8933 * auto-load.c: New file, with parts from python/py-auto-load.c.
8934 * auto-load.h: New file, with parts from python/python.h.
8935 * configure: Regenerate.
8936 * configure.ac (AC_OUTPUT): Change .gdbinit for gdb-gdb.gdb.
8937 * gdb-gdb.gdb.in: New file, renamed from gdbinit.in.
8938 * gdbinit.in: Remove file, rename it to gdb-gdb.gdb.in.
8939 * main.c: Include auto-load.h.
8940 * python/py-auto-load.c: Move include filenames.h, gdb_regex.h,
8941 command.h, observer.h and progspace.h to auto-load.c. Add include
8943 (gdbpy_global_auto_load, struct auto_load_pspace_info)
8944 (struct loaded_script, auto_load_pspace_data)
8945 (auto_load_pspace_data_cleanup, get_auto_load_pspace_data)
8946 (hash_loaded_script_entry, eq_loaded_script_entry)
8947 (init_loaded_scripts_info, get_auto_load_pspace_data_for_loading)
8948 (maybe_add_script): Move to auto-load.c.
8949 (source_section_scripts): Change maybe_add_script parameters passing,
8950 use script_not_found_warning_print.
8951 (clear_section_scripts, auto_load_objfile_script)
8952 (auto_load_new_objfile, loaded_script_ptr)
8953 (DEF_VEC_P (loaded_script_ptr), collect_matching_scripts, print_script)
8954 (sort_scripts_by_name, info_auto_load_scripts): Move to auto-load.c.
8955 (gdbpy_initialize_auto_load): Move auto_load_pspace_data,
8956 auto_load_new_objfile and info_auto_load_scripts initizations to
8958 * python/python.h (gdbpy_global_auto_load): Move to auto-load.h.
8963 * charset.c (find_charset_names): Remove variables ix and elt.
8964 Use free_char_ptr_vec.
8965 * elfread.c (build_id_to_debug_filename): New variables debugdir_vec,
8966 back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
8967 debugdir_end. New variable debugdir_len.
8968 * gdb_vecs.h (free_char_ptr_vec, make_cleanup_free_char_ptr_vec)
8969 (dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): New
8971 * progspace.c (clear_program_space_solib_cache): Remove variables ix
8972 and elt. Use free_char_ptr_vec.
8973 * source.c (add_path): Remove variables argv, arg and argv_index.
8974 New variables dir_vec, back_to, ix and name.
8975 Use dirnames_to_char_ptr_vec_append. Use freeargv instead of
8976 make_cleanup_freeargv. Remove variable separator. Simplify the code
8977 no longer expecting DIRNAME_SEPARATOR.
8978 (openp): Remove variable p, p1 and len. New variables dir_vec,
8979 back_to, ix and dir. Use dirnames_to_char_ptr_vec. Simplify the code
8980 no longer expecting DIRNAME_SEPARATOR.
8981 * symfile.c (find_separate_debug_file): New variables debugdir_vec,
8982 back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
8984 * utils.c (free_char_ptr_vec, do_free_char_ptr_vec)
8985 (make_cleanup_free_char_ptr_vec, dirnames_to_char_ptr_vec_append)
8986 (dirnames_to_char_ptr_vec): New functions.
8991 * source.c (add_path): Remove always true conditional 'p == 0' and
8992 unindent its code block.
8996 * gdbtypes.h (FIELD_BITPOS): Rename to ...
8997 (FIELD_BITPOS_LVAL): ... this.
8998 (FIELD_BITPOS): New.
8999 (SET_FIELD_BITPOS): Adjust to use FIELD_BITPOS_LVAL.
9000 * dwarf2read.c (dwarf2_add_field): Use SET_FIELD_BITPOS.
9001 * gdbtypes.c (append_composite_type_field_aligned): Adjust to use
9003 * gnu-v3-abi.c (build_gdb_vtable_type): Adjust to use
9005 * stabsread.c (read_cpp_abbrev, read_one_struct_field)
9006 (read_baseclasses): Adjust to use SET_FIELD_BITPOS.
9007 * target-descriptions.c (tdesc_gdb_type): Adjust to use
9012 Do not rely on FIELD_LOC_KIND_BITPOS being zero.
9013 * ada-lang.c (ada_template_to_fixed_record_type_1): Replace
9014 TYPE_FIELD_BITPOS used as lvalue by SET_FIELD_BITPOS.
9015 * gdbtypes.c (append_flags_type_flag): Likewise, twice.
9016 * jv-lang.c (java_link_class_type): Likewise, once.
9017 * stabsread.c (read_enum_type): Likewise.
9021 * common/agent.c (agent_run_command): Add one more parameter `len'.
9023 * common/agent.h: Update declaration.
9024 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
9026 (linux_child_static_tracepoint_markers_by_strid): Ditto.
9031 * value.c (value_actual_type): New function.
9032 * value.h (value_actual_type): New declaration.
9033 * varobj.c (update_type_if_necessary): New function.
9034 (varobj_create): Call value_actual_type instead of
9036 (install_dynamic_child): distinct changed and type changed MI variable
9038 (update_dynamic_varobj_children): Updated for install_dynamic_child
9039 change. All callers updated.
9040 (varobj_update): Support for MI variable object type change if
9041 the value changed and RTTI is used to determine the type.
9042 (create_child_with_value): Call value_actual_type instead of
9044 (adjust_value_for_child_access): Extended with a new parameter which
9045 specify whether the given value should be casted to enclosing type.
9046 All callers updated.
9050 Import gnulib module inttypes from git
9051 (250b80067c1e1d8faa0c42fb572f721975b929c5)
9052 * Makefile.in (HFILES_NO_SRCDIR): Add gnulib/inttypes.in.h.
9053 (aclocal_m4_deps): Add gnulib/m4/inttypes.m4 and
9054 gnulib/m4/inttypes-pri.m4
9055 * aclocal.m4, config.in, configure: Regenerated.
9056 * gnulib/Makefile.am: Update.
9057 * gnulib/Makefile.in: Update.
9058 * gnulib/m4/gnulib-cache.m4: Update.
9059 * gnulib/m4/gnulib-comp.m4: Update.
9060 * gnulib/inttypes.in.h: New.
9061 * gnulib/m4/inttypes-pri.m4: New.
9062 * gnulib/m4/inttypes.m4: New.
9066 * infrun.c (resume): Update PC address to the real PC after
9067 preparing to do displaced stepping.
9071 * dwarf2read.c (lookup_signatured_type): Remove arg "objfile", unused.
9072 All callers updated.
9076 * i386bsd-nat.c (_initialize_i386bsd_nat): Add missing prototype.
9080 * dwarf2read.c (create_all_type_units): Renamed from
9081 create_debug_types_hash_table. All callers updated.
9083 * dwarf2read.c (create_signatured_type_table_from_index): Rename
9084 local type_sig to sig_type, type_offset to type_offset_in_tu.
9085 (hash_signatured_type): Renamed from hash_type_signature,
9086 all callers updated.
9087 (eq_signatured_type): Renamed from eq_type_signature,
9088 all callers updated.
9089 (create_debug_types_hash_table): Rename local type_sig to sig_type.
9090 (process_enumeration_scope): Ditto.
9091 (lookup_signatured_type_at_offset): Ditto.
9092 (load_full_type_unit, read_signatured_type): Ditto.
9096 * remote.c (async_remote_interrupt): Correct function name in
9098 (async_remote_interrupt_twice): Ditto.
9102 * source.c (find_and_open_source): Consistently pass resulting
9103 full path through xfullpath.
9107 Provide more specific displaced-stepping memory error message.
9108 * infrun.c (displaced_step_prepare): New variable status. Call
9109 target_read_memory instead of read_memory, provide more specific
9115 * darwin-nat.c (darwin_execvp): Revert previous patch.
9120 * darwin-nat.c (darwin_resume_thread): Call darwin_set_sstep only
9125 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Fix
9130 New command 'explore' which helps explore values and types in
9132 * NEWS: Add an entry about the new 'explore' command.
9133 * data-directory/Makefile.in: Add gdb/command/explore.py
9134 * python/lib/gdb/command/explore.py: Implemention of the 'explore'
9135 command using the GDB Python API.
9139 * mips-tdep.c (mips_skip_pic_trampoline_code): Correct sign
9140 extension in jump target calculation.
9144 * mips-tdep.c (mips32_next_pc): Handle JALX.
9148 * Makefile.in (gnulib/Makefile): Remove duplicated dependency.
9152 * Makefile.in (aclocal_m4_deps): Add gnulib/m4/gnulib-cache.m4
9153 and gnulib/m4/gnulib-tool.m4.
9157 * dwarf2read.c (dwarf2_per_cu_data). Clarify comment.
9158 (load_partial_dies): Clarify comment.
9159 (find_partial_die): Support rereading type units.
9160 Clarify CU handling, if we know offset is in CU, don't search for the
9161 containing CU. Add comment regarding memory waste.
9165 * features/Makefile (WHICH): Add i386/x32, i386/x32-linux,
9166 i386/x32-avx and i386/x32-avx-linux.
9167 (i386/x32-expedite): New.
9168 (i386/x32-linux-expedite): Likewise.
9169 (i386/x32-avx-expedite): Likewise.
9170 (i386/x32-avx-linux-expedite): Likewise.
9171 ($(outdir)/i386/x32.dat): Likewise.
9172 ($(outdir)/i386/x32-linux.dat): Likewise.
9173 ($(outdir)/i386/x32-avx.dat): Likewise.
9174 ($(outdir)/i386/x32-avx-linux.dat): Likewise.
9176 * features/i386/x32-avx-linux.xml: New file.
9177 * features/i386/x32-avx.xml: Likewise.
9178 * features/i386/x32-core.xml: Likewise.
9179 * features/i386/x32-linux.xml: Likewise.
9180 * features/i386/x32.xml: Likewise.
9182 * features/i386/x32-avx-linux.c: New. Generated.
9183 * features/i386/x32-avx.c: Likewise.
9184 * features/i386/x32-linux.c: Likewise.
9185 * features/i386/x32.c: Likewise.
9186 * regformats/i386/x32-avx-linux.dat: Likewise.
9187 * regformats/i386/x32-avx.dat: Likewise.
9188 * regformats/i386/x32-linux.dat: Likewise.
9189 * regformats/i386/x32.dat: Likewise.
9193 * darwin-nat.c (darwin_kill_inferior): Always use the no ptrace
9194 code to kill the inferior.
9198 * ada-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9200 * c-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9202 * cp-name-parser.y (yyss, yysslim, yyssp, yystacksize, yyvs)
9203 (yyvsp): New defines.
9204 * f-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9206 * jv-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9208 * m2-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9210 * objc-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9212 * p-exp.y (yyss, yysslim, yyssp, yystacksize, yyvs, yyvsp): New
9217 * sparc64-tdep.c (sparc64_store_arguments)
9218 (sparc64_store_arguments): Fix coding style.
9222 * sparc64-tdep.c (sparc64_store_arguments): Fix handling of
9223 complex floats, adjust some related comments and tighten a related
9225 (sparc64_extract_return_value): Handle complex floats.
9229 * dwarf2read.c (load_partial_dies): Change condition to assert.
9233 * amd64-tdep.c (amd64_analyze_prologue): Recognize both variations of
9238 * v850-tdep.c (E_NUM_OF_V850_REGS, E_NUM_OF_V850E_REGS): Fix
9240 (v850_frame_cache): Use gdbarch_num_regs() instead of E_NUM_REGS.
9241 (v850_gdbarch_init): Set `num_regs' as appropriate for the
9246 * linespec.c (decode_compound): Remove.
9247 (enum offset_relative_sign): New enum.
9248 (struct line_offset): New struct.
9249 (struct linespec): New struct.
9250 (struct linespec_state): Move file_symtabs,
9251 user_filename, and user_function into struct linespec.
9252 Make result an anonymous struct holding vectors of
9253 symbolp and minsym_and_objfile_d.
9254 Add language member.
9255 (enum ls_token_type): New enum.
9256 (linespec_keywords): New array.
9257 (struct ls_token): New struct.
9258 (struct ls_parser): New struct.
9259 (linespec_lexer_lex_number): New function.
9260 (linespec_lexer_lex_keyword): New function.
9261 (is_ada_operator): New function.
9262 (skip_quote_char): New function.
9263 (copy_token_string): New function.
9264 (is_closing_quote_enclosed): New function.
9265 (find_parameter_list_end): New function.
9266 (linespec_lexer_lex_string): New function.
9267 (linespec_lexer_lex_one): New function.
9268 (linespec_lexer_consume_token): New function.
9269 (linespec_lexer_peek_token): New function.
9270 (cplusplus_error): Remove unused function.
9271 (find_methods): Update comment.
9272 (find_toplevel_char): Return const.
9273 (is_objc_method_format): Remove unused function.
9274 (find_toplevel_string): New function.
9275 (is_linespec_boundary): Remove.
9276 (symbol_not_found_error): New function.
9277 (find_method_overload_end): Remove function.
9278 (unexpected_linespec_error): New function.
9279 (keep_name_info): Remove.
9280 (linespec_parse_line_offset): New function.
9281 (linespec_parse_basic): New function.
9282 (canonicalize_linespec): New function.
9283 (decode_line_internal): Remove.
9284 (create_sals_line_offset): New function adapted from
9286 (convert_linespec_to_sals): New function.
9287 (parse_linespec): New function.
9288 (linespec_parser_new): New function.
9289 (linespec_state_destructor): Change parameter type to
9290 struct linespec_state *.
9291 Add language parameter.
9292 Remove freeing of moved members.
9293 (linespec_parser_delete): New function.
9294 (decode_line_full): Use parse_linespec and linespec_parser_new.
9295 (decode_line_1): Likewise.
9296 (decode_indirect): Rename to ...
9297 (linespec_expression_to_pc): ... this and rewrite
9298 to simply find CORE_ADDR, storing this result for later
9300 (locate_first_half): Remove.
9301 (deocde_objc): Add parameter LS.
9302 Initialize new struct collect_info members.
9303 Handle minimal symbols, too.
9304 (decode_compound): Delete.
9305 (lookup_prefix_sym): Rewrite.
9306 (compare_msymbols): New function.
9307 (find_method): Rewrite.
9308 Do not call cplusplus_error.
9309 (symtabs_from_filename): Rewrite.
9310 (collect_function_symbols): Delete.
9311 (find_function_symbols): Rewrite without ARGPTR-style
9313 (decode_all_digits): Delete. (Rewritten as create_sals_line_offset.)
9314 (decode_dollar): Adapted and renamed to ...
9315 (linespec_parse_variable): ... this.
9316 (find_linespec_symbols): New function.
9317 (decode_label): Adapted and renamed to ...
9318 (find_label_symbols): ... this.
9319 (decode_digits_list_mode): Add and use LS argument.
9320 (decode_digits_ordinary): Likewise.
9321 (collect_symbols): Do not collect SALs, just symbols and msymbols.
9322 If in list mode, allow any symbol class. Otherwise, only
9323 permit LOC_BLOCK symbols.
9324 (minsym_found): Update comments.
9325 (search_minsyms_for_name): Do not convert the matching symbol
9326 into a SAL. Simply push the symbol and objfile into the
9328 (decode_variable): Delete. Contents adapted into
9329 find_linespec_symbols.
9331 * cp-support.c (SKIP_SPACE): Remove.
9332 (operator_tokens): Remove unused global.
9333 (cp_validate_operator): Remove.
9334 * cp-support.h (cp_validate_operator): Remove declaration.
9338 * cp-valprint.c (cp_print_value_fields): Check valprint_check_validity
9339 for TYPE_VPTR_FIELDNO.
9340 * valprint.c (valprint_check_validity): Make it global, move the
9341 function comment ...
9342 * value.h (valprint_check_validity): ... to this new declaration.
9346 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Use
9347 the STATE32 api for i386 state.
9348 (i386_darwin_store_inferior_registers): Likewise.
9352 * i386-darwin-tdep.c (i386_darwin_thread_state_reg_offset): Fix
9354 * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Fix
9360 * darwin-nat.c (darwin_execvp): Set binary preference.
9364 * NEWS (set breakpoint condition-evaluation): Use imperative mood.
9368 * python/python.c (gdbpy_decode_line): Move cleanup creation out
9369 of TRY_CATCH. Fix error handling.
9370 * python/py-value.c (convert_value_from_python): Move 'old'
9371 declaration to innermost scope.
9376 -Wshadow warning fix.
9377 * ada-lang.c (ada_make_symbol_completion_list): Rename parameters
9378 "wild_match" and "encoded" into "wild_match_p" and "encoded_p".
9379 Adjust code accordingly.
9383 * ada-lang.c (symbol_completion_add): Rename parameter
9384 "encoded" into "encoded_p". Ajust code and documentation
9390 -Wshadow warning fix.
9391 * ada-lang.c (symbol_completion_add): Rename parameter
9392 "wild_match" into wild_match_p. Update code and documentation
9397 * ada-lang.c (symbol_completion_match): Rename parameter
9398 "encoded" into "encoded_p". Ajust code and documentation
9404 -Wshadow warning fix.
9405 * ada-lang.c (symbol_completion_match): Rename parameter
9406 "wild_match" into "wild_match_p". Adjust code and function
9407 documentation accordingly.
9412 -Wshadow warning fix.
9413 * ada-lang.c (ada_lookup_encoded_symbol): Rename parameter
9414 "symbol_info" into "info". Adjust code accordingly.
9415 (ada_lookup_symbol): Likewise.
9419 * ada-lang.c (ada_lookup_symbol_list): Minor reformatting
9420 of this function's documentation.
9425 -Wshadow warning fix.
9426 * ada-lang.c (ada_lookup_symbol_list): Rename "wild_match"
9427 variable into "wild_match_p". Adjust code accordingly.
9432 -Wshadow warning fix.
9433 * ada-lang.c (ada_add_local_symbols): Rename "wild_match"
9434 parameter into "wild_match_p". Adjust code accordingly.
9435 Document this parameter in the function description.
9440 -Wshadow warning fix.
9441 * ada-lang.c (add_symbols_from_enclosing_procs): Rename
9442 "wild_match" parameter to "wild_match_p" (-Wshadow).
9446 * ada-lang.c (ada_lookup_simple_minsym): Remove trailing spaces
9447 in function documentation.
9452 -Wshadow warning fix.
9453 * ada-lang.c (ada_lookup_simple_minsym): Rename wild_match local
9454 variable into wild_match_p. Adjust code accordingly.
9459 * ada-valprint.c (ada_val_print_1): Move the code handling
9460 TYPE_CODE_ENUM inside its own lexical block. Declare
9461 variables len and val there, instead of in the function's
9462 top level block. Avoid declaring deref_val again in a way
9463 that shadows another variable of the same name declared
9464 in one of the up-level blocks. Just re-use the up-level
9469 * ada-lang.c (ada_lookup_encoded_symbol): Now returns void.
9470 Replace block_found argument by symbol_info. Adjust
9471 implementation accordingly. Add function documentation.
9472 (ada_lookup_symbol): Adjust to new ada_lookup_encoded_symbol.
9474 * ada-lang.h (ada_lookup_encoded_symbol): Update declaration.
9475 * ada-exp.y (write_object_renaming): Adjust to new
9476 ada_lookup_encoded_symbol API.
9480 * ada-lang.h (struct ada_symbol_info): Reformat. Improve
9485 * v850-tdep.c: Add the enum values for mpu and fpu registers.
9486 (v850_register_name): Add the mpu and fpu register names.
9487 (v850e_register_name): Add the mpu and fpu register names.
9488 (v850e2_register_name): New function.
9489 (v850_gdbarch_init): Add case for bfd_mach_v850e2 and
9494 * NEWS: Add entry for Ada varobj support.
9498 * varobj.c (default_value_is_changeable_p): New function,
9499 extracted from varobj_value_is_changeable_p. Add declaration.
9500 (ada_value_is_changeable_p): New function, extracted from
9501 varobj_value_is_changeable_p. Add declaration.
9502 (struct language_specific): New field "value_is_changeable_p".
9503 (languages): Add entries for new field.
9504 (varobj_create): Set language before calling install_new_value.
9505 (varobj_value_is_changeable_p): Reimplement to call the varobj's
9506 "value_is_changeable_p" language callback.
9510 * ada-varobj.h, ada-varobj.c: New files.
9511 * Makefile.in (SFILES): Add ada-varobj.c.
9512 (HFILES_NO_SRCDIR): Add ada-varobj.h.
9513 (COMMON_OBS): Add ada-varobj.o.
9517 * varobj.c (ada_value_has_mutated): Add declaration. New function.
9518 (struct language_specific): New field "value_has_mutated".
9519 (languages): Set field "value_has_mutated" in each entry of array.
9520 (varobj_value_has_mutated): New function.
9521 (varobj_udpdate): Add handling of type mutation.
9522 (value_of_root): Add handling of type mutation.
9523 (ada_value_has_mutated): New function.
9527 * ia64-linux-nat.c (supply_fpregset, ia64_linux_fetch_register):
9528 Always supply $fr0 as 0.0 and $fr1 as 1.0.
9532 * python/py-inferior.c (infpy_read_memory): Remove cleanups and
9533 explicitly free 'buffer' on exit paths. Decref 'membuf_object'
9538 * .dir-locals.el: New file.
9542 * ia64-linux-nat.c (u_offsets): Map IA64_EC_REGNUM to PT_AR_EC.
9546 * ia64-linux-nat.c (ia64_linux_fetch_register): Add special
9551 Eliminate struct ui_stream.
9553 * ui-out.h (struct ui_stream): Delete.
9554 (ui_out_field_stream): Adjust prototype.
9555 (ui_out_stream_new, ui_out_stream_delete)
9556 (make_cleanup_ui_out_stream_delete): Delete declarations.
9557 * ui-out.c (ui_out_field_stream): Change prototype to take a
9558 ui_file instead of a ui_stream. Adjust.
9559 (ui_out_stream_new, ui_out_stream_delete, do_stream_delete)
9560 (make_cleanup_ui_out_stream_delete): Delete.
9561 * breakpoint.c (print_breakpoint_location)
9562 (print_one_detail_ranged_breakpoint, print_it_watchpoint): Use
9563 ui_file/mem_fileopen instead of ui_stream/ui_out_stream_new.
9564 * disasm.c (dump_insns): Ditto.
9565 (do_mixed_source_and_assembly, do_assembly_only): Adjust
9567 (gdb_disassembly): Use ui_file/mem_fileopen instead of
9568 ui_stream/ui_out_stream_new.
9569 * infcmd.c (print_return_value): Ditto.
9570 * osdata.c (info_osdata_command): Don't allocate a local
9572 * stack.c (print_frame_arg, print_frame_args, print_frame): Use
9573 ui_file/mem_fileopen instead of ui_stream/ui_out_stream_new.
9574 * tracepoint.c (print_one_static_tracepoint_marker): Don't
9575 allocate a local ui_stream.
9576 * mi/mi-cmd-stack.c (list_arg_or_local): Use ui_file/mem_fileopen
9577 instead of ui_stream/ui_out_stream_new.
9578 (list_args_or_locals): Don't allocate a local ui_stream.
9579 * mi/mi-main.c (get_register, mi_cmd_data_evaluate_expression)
9580 (mi_cmd_data_read_memory): Use ui_file/mem_fileopen instead of
9581 ui_stream/ui_out_stream_new.
9582 * cli/cli-setshow.c (do_setshow_command): Ditto.
9586 * arm-linux-tdep.c (arm_linux_init_abi): Call
9587 set_gdbarch_process_record. Initialize `arm_swi_record' field.
9588 * arm-tdep.c (arm_process_record): New function.
9589 (deallocate_reg_mem): New function.
9590 (decode_insn): New function.
9591 (thumb_record_branch): New function.
9592 (thumb_record_ldm_stm_swi(): New function.
9593 (thumb_record_misc): New function.
9594 (thumb_record_ld_st_stack): New function.
9595 (thumb_record_ld_st_imm_offset): New function.
9596 (thumb_record_ld_st_reg_offset(): New function.
9597 (thumb_record_add_sub_cmp_mov): New function.
9598 (thumb_record_shift_add_sub): New function.
9599 (arm_record_coproc_data_proc): New function.
9600 (arm_record_coproc): New function.
9601 (arm_record_b_bl): New function.
9602 (arm_record_ld_st_multiple): New function.
9603 (arm_record_ld_st_reg_offset): New function.
9604 (arm_record_ld_st_imm_offset): New function.
9605 (arm_record_data_proc_imm): New function.
9606 (arm_record_data_proc_misc_ld_str): New function.
9607 (arm_record_extension_space): New function.
9608 (arm_record_strx): New function.
9609 (sbo_sbz): New function.
9610 (struct insn_decode_record): New structure for arm insn record.
9611 (REG_ALLOC): New macro for reg allocations.
9612 (MEM_ALLOC): New macro for memory allocations.
9613 * arm-tdep.h (struct gdbarch_tdep): New field 'arm_swi_record'.
9617 * m68klinux-nat.c (fetch_register): Fix strict-aliasing violation.
9618 (store_register): Likewise.
9622 * MAINTAINERS (Write After Approval): Add myself to the list.
9626 * NEWS (set breakpoint condition-evaluation): Change "gdb" to "host".
9627 Describe also the option "auto".
9631 * sparc-linux-nat.c (_initialize_sparc_linux_nat): Fix prototype.
9632 * sparc-nat.c (sparc_xfer_wcookie): Make static.
9636 * jit.c (jit_read_code_entry): Compute alignment and offset of
9637 int64_t member before computing entry_size.
9641 Python scripting: Add new method Value.referenced_value to
9642 gdb.Value which can dereference pointer as well as reference
9644 * NEWS: Add entry under 'Python scripting' about the new method
9645 Value.referenced_value on gdb.Value objects.
9646 * python/py-value.c (valpy_referenced_value): New function
9647 defining a new method on gdb.Value objects which can dereference
9648 pointer and reference values.
9652 * MAINTAINERS (Write After Approval): Add myself to the list.
9656 * symtab.c (skip_prologue_sal): Change test to check for "main()"
9657 in addition to "main".
9661 * expression.h (op_name): Add declaration.
9662 * expprint.c (op_name): Remove declaration. Make non-static.
9663 * ax-gdb.c (gen_expr): Use op_name instead of op_string.
9667 * amd64-linux-nat.c (amd64_linux_siginfo_fixup): Use siginfo_t instead
9669 * arm-linux-nat.c (arm_linux_stopped_data_address): Likewise.
9670 * ia64-linux-nat.c (ia64_linux_stopped_data_address): Likewise.
9671 * linux-nat.c (linux_nat_siginfo_fixup, siginfo_fixup)
9672 (linux_xfer_siginfo, linux_nat_set_siginfo_fixup)
9673 (linux_nat_get_siginfo): Likewise.
9674 * linux-nat.h (struct lwp_info, linux_nat_set_siginfo_fixup)
9675 (linux_nat_get_siginfo): Likewise.
9676 * linux-tdep.c (linux_get_siginfo_type): Likewise.
9677 * ppc-linux-nat.c (ppc_linux_stopped_data_address): Likewise.
9678 * procfs.c (gdb_siginfo_t): Likewise.
9682 * .gitignore: Ignore more files.
9686 * remote.c (remote_start_remote): Clear `rs->starting_up' on early
9691 * amd64-tdep.c (amd64_displaced_step_copy_insn): Complete missing "}" in
9696 Code cleanupp: Use cu_offset and sect_offset compile time type checking.
9697 * dwarf2expr.c (add_piece, dwarf_get_base_type, execute_stack_op)
9698 (ctx_no_dwarf_call, ctx_no_get_base_type): Use cu_offset and
9700 * dwarf2expr.h (cu_offset, sect_offset): New types.
9701 (struct dwarf_expr_context_funcs) <dwarf_call>
9702 (struct dwarf_expr_context_funcs) <get_base_type>: Use cu_offset and
9704 (struct dwarf_expr_context) <len>: Improve the comment.
9705 (struct dwarf_expr_piece, ctx_no_dwarf_call, ctx_no_get_base_type): Use
9706 cu_offset and sect_offset.
9707 * dwarf2loc.c (per_cu_dwarf_call, dwarf_expr_dwarf_call)
9708 (dwarf_expr_get_base_type, needs_frame_dwarf_call)
9709 (dwarf2_compile_expr_to_ax, disassemble_dwarf_expression): Likewise.
9710 * dwarf2loc.h: Include dwarf2expr.h.
9711 (dwarf2_fetch_die_location_block, dwarf2_get_die_type): Use cu_offset
9713 * dwarf2read.c (struct dwarf2_per_objfile) <debug_types_type_hash>:
9714 Improve the comment.
9715 (struct comp_unit_head, struct dwarf2_cu, struct dwarf2_per_cu_data)
9716 (struct signatured_type, struct line_header, struct partial_die_info)
9717 (struct die_info, find_partial_die, dwarf2_get_ref_die_offset)
9718 (lookup_signatured_type_at_offset, dwarf2_find_containing_comp_unit)
9719 (get_die_type_at_offset, create_cus_from_index)
9720 (create_signatured_type_table_from_index, dw2_get_file_names)
9721 (offset_in_cu_p, read_comp_unit_head, error_check_comp_unit_head)
9722 (read_and_check_comp_unit_head, read_and_check_type_unit_head)
9723 (create_debug_types_hash_table, process_psymtab_comp_unit)
9724 (load_partial_comp_unit, create_all_comp_units)
9725 (partial_die_parent_scope, partial_die_full_name, skip_one_die)
9726 (load_full_comp_unit, dwarf2_physname, read_import_statement)
9727 (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9728 (dwarf2_add_member_fn, process_enumeration_scope, read_module_type)
9729 (read_typedef, die_hash, die_eq, read_full_die, dwarf2_read_abbrevs)
9730 (load_partial_dies, read_partial_die, find_partial_die_in_comp_unit)
9731 (find_partial_die, read_attribute_value, lookup_die_type)
9732 (dump_die_shallow, store_in_ref_table): Use cu_offset and sect_offset.
9733 (is_ref_attr): New function comment.
9734 (dwarf2_get_ref_die_offset): New function comment, new variable retval.
9735 Use cu_offset and sect_offset.
9736 (follow_die_offset, follow_die_ref, dwarf2_fetch_die_location_block)
9737 (dwarf2_get_die_type, follow_die_sig, lookup_signatured_type_at_offset)
9738 (load_full_type_unit, read_signatured_type, per_cu_header_read_in)
9739 (dwarf2_find_containing_comp_unit, struct dwarf2_offset_and_type)
9740 (offset_and_type_hash, offset_and_type_eq, set_die_type)
9741 (get_die_type_at_offset, partial_die_hash, partial_die_eq)
9742 (write_one_signatured_type, write_psymtabs_to_index): Use cu_offset and
9748 * python/py-auto-load.c (source_section_scripts): New variable back_to.
9749 Turn fclose and xfree calls into make_cleanup_fclose and make_cleanup
9751 (auto_load_objfile_script): Turn fclose into make_cleanup_fclose.
9755 * NEWS: Describe new options --init-command=FILE, -ix and
9756 --init-eval-command=COMMAND, -iex.
9757 * main.c (struct cmdarg): New enum items CMDARG_INIT_FILE and
9758 CMDARG_INIT_COMMAND.
9759 (captured_main): New enum items OPT_IX and OPT_IEX. Add
9760 "init-command", "init-eval-command", "ix" and "iex" to the variable
9761 long_options. Handle OPT_IX and OPT_IEX. Process them from CMDARG_VEC.
9762 New comment for CMDARG_FILE and CMDARG_COMMAND processing.
9763 (print_gdb_help): Describe --init-command=FILE, -ix and
9764 --init-eval-command=COMMAND, -iex.
9769 * main.c (struct cmdarg): Move it here from main. Add more comments.
9770 (cmdarg_s, VEC (cmdarg_s)): New.
9771 (main): Move struct cmdarg from here. New variables cmdarg_vec and
9772 cmdarg_p. Remove variables cmdsize and ncmd and their initialization.
9773 Install cleanup for cmdarg_vec. Update filling for options 'x' and
9774 'X'. Replace cmdarg processing by cmdarg_vec processing. Remove xfree
9779 * gnu-v3-abi.c (gnuv3_print_vtable): Initialize 'result_vec'.
9784 * dwarf2read.c (process_full_comp_unit): Set LOCATIONS_VALID only for
9789 * tui-tui.win.c (tui_resize_all): Use erase and clearok instead
9794 * source.c (add_path): Use memmove instead of strcpy because the
9799 * value.h (set_value_parent): Add declaration.
9800 * value.c (set_value_parent): New function.
9801 (value_address): If VALUE->PARENT is not NULL, then use it as
9802 the base address instead of VALUE->LOCATION.address.
9803 * ada-lang.c (ada_value_primitive_packed_val): Keep V's address
9804 the same as OBJ's address. Adjust V's offset accordingly.
9809 PR breakpoints/10738
9810 * dwarf2read.c (use_deprecated_index_sections): New global.
9811 (struct partial_die_info): New member may_be_inlined.
9812 (read_partial_die): Set may_be_inlined where appropriate.
9813 (add_partial_subprogram): Add partial symbols for partial
9814 DIEs that may be inlined.
9815 (new_symbol_full): Add inlined subroutines to the current
9817 (write_psymtabs_to_index): Bump version number.
9818 (dwarf2_read_index): Read only version 6 indices unless
9819 use_deprecated_index_sections is set.
9820 * linespec.c (symbol_and_data_callback): New structure.
9821 (iterate_inline_only): New function.
9822 (iterate_over_all_matching_symtabs): New argument
9823 "include_inline". If nonzero, also call the callback for
9824 symbols representing inlined subroutines.
9825 (lookup_prefix_sym): Pass extra argument to the above.
9826 (find_function_symbols): Likewise.
9827 (add_matching_symbols_to_info): Likewise.
9828 * NEWS: Mention that GDB can now set breakpoints on inlined
9833 * p-typeprint.c (pascal_type_print_method_args):
9834 Fix display of parameter of methods.
9838 * amd64-windows-nat.c (_initialize_amd64_windows_nat):
9839 Add missing prototype.
9844 Fix false compilation warning.
9845 * gnu-v3-abi.c (print_one_vtable): Initialize ADDR.
9850 * arm-tdep.c: Include "remote.h" and "features/arm-with-m-fpa-layout.c".
9851 (arm_register_g_packet_guesses): New function.
9852 (arm_gdbarch_init): Don't force a target description with
9853 registers when the executable is detected as M-profile. Instead
9854 set gdbarch->tdep->is_m. Register `g' packet guesses.
9855 (_initialize_arm_tdep): Initialize the new target description.
9856 * features/arm-with-m-fpa-layout.xml: New description.
9857 * features/arm-with-m-fpa-layout.c: New, generated.
9861 * breakpoint.c (breakpoint_xfer_memory): Add assertion.
9862 Update function description.
9863 (insert_bp_location): Do not wipe bl->target_info out.
9864 * mem-break.c: #include "gdb_string.h".
9865 (default_memory_insert_breakpoint): Do not call target_read_memory
9866 with a pointer to the breakpoint's shadow_contents buffer. Use
9867 a local buffer instead.
9868 * m32r-tdep.c (m32r_memory_insert_breakpoint): Ditto.
9872 * NEWS: Mention "info vtbl", not "info vtable".
9873 * cp-support.c (info_vtbl_command): Fix comment.
9874 (_initialize_cp_support): Fix text.
9878 * cp-valprint.c (cp_print_value_fields): Use
9879 print_function_pointer_address for vtable slot.
9883 * gnu-v3-abi.c (struct value_and_voffset): New.
9884 (hash_value_and_voffset, eq_value_and_voffset)
9885 (compare_value_and_voffset, compute_vtable_size)
9886 (print_one_vtable, gnuv3_print_vtable): New functions.
9887 (init_gnuv3_ops): Initialize 'print_vtable' field.
9888 * cp-support.c (info_vtbl_command): New function.
9889 (_initialize_cp_support): Add "info vtbl".
9890 * cp-abi.h (cplus_print_vtable): Declare.
9891 (struct cp_abi_ops) <print_vtable>: New field.
9892 * cp-abi.c (cplus_print_vtable): New function.
9897 * d-lang.c (d_language_defn) <la_iterate_over_symbols>: Set to
9898 iterate_over_symbols.
9902 * dwarf2read.c (dwarf_stack_op_name): Add DW_OP_GNU_encoded_addr,
9903 DW_OP_GNU_parameter_ref.
9907 Fix double prompt of 'interpreter-exec mi'.
9908 * mi/mi-interp.c (mi_execute_command_input_handler): New prototype.
9909 (mi_interpreter_resume): use it.
9910 (mi_execute_command_input_handler): New function.
9911 * mi/mi-main.c (mi_execute_command): Move prompt printing to
9912 mi_execute_command_input_handler.
9916 * darwin-nat-info.c (_initialize_darwin_info_commands): Add
9918 (darwin_debug_port_info): Make static.
9919 * darwin-nat.c (_initialize_darwin_inferior): Add prototype.
9920 * machoread.c (_initialize_machoread): Add prototype.
9921 * i386-darwin-nat.c (i386_darwin_dr_set, i386_darwin_dr_get)
9922 (i386_darwin_set_control, i386_darwin_get_control)
9923 i386_darwin_dr_set_addr, i386_darwin_get_addr)
9924 i386_darwin_get_status, i386_darwin_get_control):
9925 Comment out with HW_WATCHPOINT_NOT_YET_ENABLED macro.
9929 * ax-gdb.c (gen_usual_unary): Remove special handling of
9930 enum and bool types.
9934 * ax-gdb.c (gen_fetch): Add handling for TYPE_CODE_RANGE types.
9938 * aix-thread.c (supply_fprs): Make more consistent with fill_fprs.
9942 * aix-thread.c (fill_sprs): Store the floating point registers
9943 at the correct offsets into vals.
9947 * NEWS: Mention symbol-reloading has been deleted.
9948 * symfile.c (symbol_reloading): Delete.
9949 (show_symbol_reloading): Delete.
9950 (_initialize_symfile): Delete set/show symbol-reloading.
9952 * dwarf2read.c (load_partial_comp_unit): Defer adding cu to
9953 read_in_chain until we have successfully read it in.
9954 (load_full_comp_unit): Ditto.
9955 (read_signatured_type): Add comment.
9959 * stabsread.c (fix_common_block): Change type of valu argument
9964 * rs6000-tdep.c (skip_prologue): Support the oril r29, r1, 0x0
9969 * common/linux-procfs.c (linux_proc_get_int): New, from
9970 linux_proc_get_tgid, change its LWPID type to pid_t, add parameter
9972 (linux_proc_get_tgid): Only call linux_proc_get_int.
9973 (linux_proc_get_tracerpid): New.
9974 (linux_proc_pid_has_state): New, from linux_proc_pid_is_zombie.
9975 (linux_proc_pid_is_stopped, linux_proc_pid_is_zombie): Only call
9976 linux_proc_pid_has_state.
9977 * common/linux-procfs.h (linux_proc_get_tracerpid): New declaration.
9978 * common/linux-ptrace.c: Include linux-procfs.h and buffer.h.
9979 (linux_ptrace_attach_warnings): New.
9980 * common/linux-ptrace.h (struct buffer, linux_ptrace_attach_warnings):
9982 * linux-nat.c: Include exceptions.h, linux-ptrace.h and buffer.h.
9983 (linux_nat_attach): New variables ex, buffer, message and message_s.
9984 Wrap to_attach by TRY_CATCH and call linux_ptrace_attach_warnings.
9988 * Makefile.in (linux-ptrace.o): New.
9989 * common/linux-procfs.c (linux_proc_pid_is_zombie): New,
9991 * common/linux-procfs.h (linux_proc_pid_is_zombie): New declaration.
9992 * common/linux-ptrace.c: New file.
9993 * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-ptrace.o.
9994 * config/arm/linux.mh: Likewise.
9995 * config/i386/linux.mh: Likewise.
9996 * config/i386/linux64.mh: Likewise.
9997 * config/ia64/linux.mh: Likewise.
9998 * config/m32r/linux.mh: Likewise.
9999 * config/m68k/linux.mh: Likewise.
10000 * config/mips/linux.mh: Likewise.
10001 * config/pa/linux.mh: Likewise.
10002 * config/powerpc/linux.mh: Likewise.
10003 * config/powerpc/ppc64-linux.mh: Likewise.
10004 * config/powerpc/spu-linux.mh: Likewise.
10005 * config/s390/s390.mh: Likewise.
10006 * config/sparc/linux.mh: Likewise.
10007 * config/sparc/linux64.mh: Likewise.
10008 * config/xtensa/linux.mh: Likewise.
10009 * linux-nat.c (linux_lwp_is_zombie): Remove, move it to
10010 common/linux-procfs.c.
10011 (wait_lwp): Rename linux_lwp_is_zombie to linux_proc_pid_is_zombie.
10016 * breakpoint.c (init_breakpoint_sal): New flags parameter. Handle
10017 CREATE_BREAKPOINT_FLAGS_INSERTED.
10018 (create_breakpoint_sal, create_breakpoints_sal)
10019 (base_breakpoint_create_breakpoints_sal)
10020 (tracepoint_create_breakpoints_sal)
10021 (strace_marker_create_breakpoints_sal): New flags parameter. Pass
10023 (break_command_1, handle_gnu_v3_exceptions, trace_command)
10024 (ftrace_command, strace_command): Adjust.
10025 (create_tracepoint_from_upload): Pass
10026 CREATE_BREAKPOINT_FLAGS_INSERTED.
10027 * breakpoint.h (enum breakpoint_create_flags): New.
10028 (create_breakpoint): New flags parameter.
10029 * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust.
10030 * python/py-breakpoint.c (bppy_init): Adjust.
10031 * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust.
10032 * spu-tdep.c (spu_catch_start): Adjust.
10038 * remote.c (struct remote_state): New field `starting_up'.
10039 (remote_start_remote): Set and clear it.
10040 (remote_can_download_tracepoint): If starting up, return false.
10044 * inferior.h (struct inferior): Remove fields any_syscall_count,
10045 syscalls_counts and total_syscalls_count. Move them to new
10046 struct catch_syscall_inferior_data in breakpoint.c.
10047 * breakpoint.c: Call DEF_VEC_I(int).
10048 (struct catch_syscall_inferior_data): New.
10049 (get_catch_syscall_inferior_data): New.
10050 (catch_syscall_inferior_data_cleanup): New.
10051 (insert_catch_syscall): Update to access data in
10052 struct catch_syscall_inferior_data.
10053 (insert_catch_syscall): Likewise.
10054 (remove_catch_syscall): Likewise.
10055 (remove_catch_syscall): Likewise.
10056 (is_syscall_catchpoint_enabled): Likewise.
10057 (add_catch_command): Likewise.
10058 (_initialize_breakpoint): Register cleanup.
10059 * breakpoint.h: Removed DEF_VEC_I(int).
10060 * dwarf2loc.c: Call DEF_VEC_I(int).
10061 * mi/mi-main.c: Likewise.
10065 * inf-ptrace.c (inf_ptrace_post_attach): Make static.
10069 * aix-thread.c (_initialize_aix_thread): Add prototype.
10070 * rs6000-nat.c (_initialize_rs6000_nat): Ditto.
10071 * xcoffsolib.c (_initialize_xcoffsolib): Ditto.
10075 * amd64bsd-nat.c: Move #include of "amd64bsd-nat.h" after
10076 include of "amd64-nat.h".
10080 * buildsym.c (record_pending_block): Now static.
10081 * buildsym.h: (record_pending_block): Remove.
10085 * amd64bsd-nat.c: Include amd64bsd-nat.h.
10089 * dwarf2read.c (struct dwarf2_cu) <checked_producer,
10090 producer_is_gxx_lt_4_6>: New fields.
10091 (producer_is_gxx_lt_4_6): Use and update producer cache fields.
10095 * dwarf2read.c (dwarf2_attr): Avoid tail-recursive call.
10099 * ravenscar-sparc-thread.c (_initialize_ravenscar_sparc): Add
10104 * ravenscar-thread.c (_initialize_ravenscar): Add prototype.
10108 Fix -Wmissing-prototypes build.
10109 * arm-linux-nat.c (get_thread_id): Make it static.
10110 * xtensa-linux-nat.c (get_thread_id): Likewise.
10114 * server.c (process_point_options): If a conditional expression
10115 is found, only print a message if remote_debug is nonzero.
10119 * ax-gdb.c (gen_fetch): Fail gracefully and use error instead
10120 of internal error for unknown/unsupported types.
10124 Fix CU relative vs. absolute DIE offsets.
10125 * dwarf2loc.h (dwarf2_fetch_die_location_block): Rename parameter
10126 offset to offset_in_cu.
10127 * dwarf2read.c (process_enumeration_scope): Add CU offset to
10129 (dwarf2_fetch_die_location_block): Rename parameter offset to
10130 offset_in_cu. New variable offset, add CU offset to OFFSET_IN_CU.
10134 * libunwind-frame.c: Rename to ...
10135 * ia64-libunwind-tdep.c: ... here.
10136 * libunwind-frame.h: Rename to ...
10137 * ia64-libunwind-tdep.h: ... here.
10138 * Makefile.in (HFILES_NO_SRCDIR): Rename libunwind-frame.h to
10139 ia64-libunwind-tdep.h.
10140 (ALLDEPFILES): Rename libunwind-frame.c to ia64-libunwind-tdep.c.
10141 * README (--with-libunwind): Rename to ...
10142 (--with-libunwind-ia64): ... here, note it is ia64 specific now.
10143 * config.in: Regenerate.
10144 * configure: Regenerate.
10145 * configure.ac: New option --with-libunwind-ia64, make the
10146 AS_HELP_STRING ia64 specific. Deprecate option --with-libunwind.
10147 Remove AC_DEFINE for HAVE_LIBUNWIND.
10148 * ia64-libunwind-tdep.c: Make the file top comment ia64 specific.
10149 Rename libunwind-frame.h #include to ia64-libunwind-tdep.h.
10150 Rename libunwind-frame in the general comment.
10151 * ia64-libunwind-tdep.h: Make the file top comment ia64 specific.
10152 Rename symbol LIBUNWIND_FRAME_H to IA64_TDEP_LIBUNWIND_FRAME_H.
10153 Move forward declarations inside #ifndef. Rename libunwind-frame in
10154 the general comment.
10155 * ia64-tdep.c: Rename libunwind-frame.h #include to
10156 ia64-libunwind-tdep.h.
10157 (ia64_gdb2uw_regnum, ia64_uw2gdb_regnum, ia64_is_fpreg)
10158 (ia64_libunwind_descr): Rename libunwind-frame to
10159 ia64-libunwind-tdep in these function comments.
10160 * ia64-tdep.h: Rename libunwind-frame.h #include to
10161 ia64-libunwind-tdep.h.
10162 * ia64-vms-tdep.c (ia64_vms_libunwind_descr): Rename libunwind-frame to
10163 ia64-libunwind-tdep in that data comment.
10167 * libunwind-frame.h (struct frame_unwind): New declaration.
10171 * breakpoint.c (_initialize_breakpoint): Fix error in help of
10172 "set breakpoint condition-evaluation" command.
10176 * sparc-stub.c: Move to stubs/
10177 * sh-stub.c: Likewise.
10178 * m68k-stub.c: Likewise.
10179 * m32r-stub.c: Likewise.
10180 * i386-stub.c: Likewise.
10184 * m68klinux-tdep.c (m68k_linux_init_abi): Register
10185 linux_get_siginfo_type.
10187 * m68klinux-nat.c: Include "gdb_proc_service.h".
10188 (PTRACE_GET_THREAD_AREA): Define.
10189 (ps_get_thread_area): New function.
10193 * remote.c (remote_get_noisy_reply): Replace `sprintf' with
10195 (remote_query_attached): Likewise.
10196 (remote_static_tracepoint_marker_at): Likewise.
10197 (remote_set_permissions): Likewise.
10198 (remote_detach_1, extended_remote_attach_1): Likewise.
10199 (send_g_packet, remote_vkill): Likewise.
10200 (extended_remote_disable_randomization): Likewise.
10201 (remote_add_target_side_condition): Likewise.
10202 (remote_insert_breakpoint): Likewise.
10203 (remote_remove_breakpoint): Likewise.
10204 (remote_insert_watchpoint): Likewise.
10205 (remote_remove_watchpoint): Likewise.
10206 (remote_insert_hw_breakpoint): Likewise.
10207 (remote_insert_hw_breakpoint): Likewise.
10208 (remote_remove_hw_breakpoint): Likewise.
10209 (remote_download_command_source): Likewise.
10210 (remote_download_tracepoint): Likewise.
10211 (remote_download_trace_state_variable): Likewise.
10212 (remote_disable_tracepoint): Likewise.
10213 (remote_trace_set_readonly_regions): Likewise.
10214 (remote_get_tracepoint_status): Likewise.
10215 (remote_trace_find): Likewise.
10216 (remote_get_trace_state_variable_value): Likewise.
10217 (remote_set_disconnected_tracing): Likewise.
10218 (remote_set_circular_trace_buffer): Likewise.
10219 (remote_get_min_fast_tracepoint_insn_len): Likewise.
10220 (remote_use_agent): Likewise.
10221 (remote_add_target_side_condition): Add one parameter BUF_SIZE.
10226 * NEWS: Mention QProgramSignals.
10227 * inferior.h (update_signals_program_target): Declare.
10228 * infrun.c: (update_signals_program_target): New.
10229 (handle_command): Update the target of the new program signals
10231 * remote.c (PACKET_QProgramSignals): New enum.
10232 (last_program_signals_packet): New global.
10233 (remote_program_signals): New.
10234 (remote_start_remote): Update the target with the program signals
10236 (remote_protocol_features): Add entry for QPassSignals.
10237 (remote_open_1): Free anc clear last_program_signals_packet.
10238 (init_remote_ops): Install remote_program_signals.
10239 * target.c (update_current_target): Adjust.
10240 (target_program_signals): New.
10241 * target.h (struct target_ops) <to_program_signals>: New field.
10242 (target_program_signals): Declare.
10246 * NEWS: Add subtitle for new z0/z1 conditional breakpoint
10251 * m68klinux-nat.c (getregs_supplies): Make static.
10252 (getfpregs_supplies): Likewise.
10253 (have_ptrace_getregs): Likewise.
10257 * dwarf2read.c (dwarf2_get_die_type): Pass absolute offset
10258 in call to get_die_type_at_offset.
10262 * mi/mi-cmd-break.c: Enforce coding standards, fix comments.
10263 * mi/mi-cmd-disas.c: Ditto.
10264 * mi/mi-cmd-env.c: Ditto.
10265 * mi/mi-cmd-file.c: Ditto.
10266 * mi/mi-cmd-stack.c: Ditto.
10267 * mi/mi-cmd-target.c: Ditto.
10268 * mi/mi-cmd-var.c: Ditto.
10269 * mi/mi-cmds.c: Ditto.
10270 * mi/mi-cmds.h: Ditto.
10271 * mi/mi-console.c: Ditto.
10272 * mi/mi-getopt.c: Ditto.
10273 * mi/mi-getopt.h: Ditto.
10274 * mi/mi-interp.c: Ditto.
10275 * mi/mi-main.c: Ditto.
10276 * mi/mi-out.c: Ditto.
10277 * mi/mi-parse.c: Ditto.
10278 * mi/mi-parse.h: Ditto.
10279 * mi/mi-symbol-cmds.c: Ditto.
10281 * mi/mi-getopt.h: Move mi_opt struct up.
10282 * mi/mi-main.c (captured_mi_execute_command): Remove redundant
10284 * mi/mi-out.c (_initialize_mi_out): Remove empty initialize.
10288 * proc-service.c (ps_pglobal_lookup): Set the current program
10293 * gregset.h [HAVE_SYS_PROCFS_H]: Include <sys/procfs.h>.
10297 * MAINTAINERS: List Maciej W. Rozycki as the mips maintainer.
10302 * common/linux-osdata.c (linux_common_core_of_thread): New function
10304 * linux-nat.c (linux_nat_wait_1): Replace linux_nat_core_of_thread_1
10305 call by linux_common_core_of_thread.
10306 (linux_nat_core_of_thread_1): Remove.
10307 * linux-nat.h (linux_nat_core_of_thread_1): Remove declaration.
10308 * linux-thread-db.c: Include linux-osdata.h.
10309 (update_thread_core): Replace linux_nat_core_of_thread_1 call by
10310 linux_common_core_of_thread.
10314 * value.c (value_primitive_field): Don't fetch contents for
10319 * jv-valprint.c (java_value_print): Correctly compute 'obj_addr'.
10323 * s390-nat.c: Include "gregset.h".
10327 * libunwind-frame.c (LIBUNWIND_SO): Change .7 to .8.
10328 [!LIBUNWIND_SO] (LIBUNWIND_SO_7): New #define.
10329 (libunwind_load): New variable so_error, use it for dlerror. Try to
10330 load also LIBUNWIND_SO_7.
10334 * i387-tdep.c (i387_supply_xsave): Assert the xsave section buffer
10335 is not NULL, and remove resulting dead code.
10339 * sh-tdep.c (sh_skip_prologue): Provide an upper limit on the function
10340 prologue to sh_analyze_prologue.
10341 (sh_analyze_prologue): Make better use of such an upper limit, and
10342 generally be more cautious about accessing memory.
10346 * ia64-vms-tdep.c (_initialize_ia64_vms_tdep): Rename from
10347 _initialize_ia64_hpux_tdep.
10353 * i387-tdep.c (i387_supply_xsave): If we have an xsave buffer, and
10354 the register state is clear, supply explicit zero, instead of
10355 marking the register unavailable.
10359 * NEWS: Mention OpenVMS ia64 new target.
10363 * ia64-tdep.h: Include libunwind-frame.h and libunwind-ia64.h.
10364 (ia64_unw_accessors, ia64_unw_rse_accessors)
10365 (ia64_libunwind_descr): Declare.
10366 * ia64-vms-tdep.c: New file.
10367 * ia64-tdep.c (ia64_unw_accessors, ia64_unw_rse_accessors)
10368 (ia64_libunwind_descr): Make them public.
10369 * configure.tgt: Add ia64-*-*vms*.
10370 * Makefile.in (ALL_64_TARGET_OBS): Add ia64-vms-tdep.o
10371 (ALLDEPFILES): Add ia64-vms-tdep.c
10375 * target.h (target_object): Add TARGET_OBJECT_OPENVMS_UIB.
10376 * remote.c (PACKET_qXfer_uib): New enum value.
10377 (remote_protocol_features): Add entry for PACKET_qXfer_uib.
10378 (remote_xfer_partial): Handle TARGET_OBJECT_OPENVMS_UIB.
10379 (_initialize_remote): Call add_packet_config_cmd for
10384 * osabi.c (gdb_osabi_names): Add OpenVMS.
10385 (generic_elf_osabi_sniffer): Likewise.
10386 * defs.h (gdb_osabi): Add GDB_OSABI_OPENVMS.
10390 Removed unused code.
10391 * libunwind-frame.c (libunwind_frame_unwind)
10392 (libunwind_frame_base_address): Remove.
10393 * libunwind-frame.h (libunwind_frame_base_address): Remove declaration.
10397 * common/agent.c (gdb_connect_sync_socket): Add _ markup and
10398 remove trailing new line.
10399 (agent_run_command, agent_run_command): Add _ markup.
10400 (agent_capability_check): Likewise.
10404 * breakpoint.c (set_condition_evaluation_mode): Set
10405 CONDITION_EVALUATION_MODE unconditionally.
10409 * common/agent.c (agent_look_up_symbols): Add one parameter 'arg'.
10410 * common/agent.h: Update declaration.
10411 * inf-child.c (inf_child_use_agent): New.
10412 (inf_child_can_use_agent): New.
10413 (inf_child_target): Initialize fields `to_use_agent'
10414 and `to_can_use_agent'.
10415 * agent.c (agent_new_objfile): New.
10416 (_initialize_agent): Add agent_new_objfile to new_objfile
10419 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10421 (linux_target_install_ops): Initialize field
10422 `to_static_tracepoint_markers_by_strid'.
10423 * remote.c (free_current_marker): Move it to ...
10424 * tracepoint.c (free_current_marker): ... here. New.
10425 (cleanup_target_stop): New.
10426 * tracepoint.h: Declare free_current_marker.
10427 * NEWS: Add one entry about `info static-tracepoint-marker'.
10431 * common/agent.c (agent_loaded_p): New.
10432 (agent_look_up_symbols): New global.
10433 * common/agent.h: Declare agent_loaded_p.
10437 * common/agent.c (struct ipa_sym_addresses) <addr_capability>: New.
10438 (agent_capability_check, agent_capability_invalidate): New.
10439 (symbol_list): New array element.
10440 * common/agent.h (enum agent_capa): New.
10441 * target.c (target_pre_inferior): Call agent_capability_invalidate.
10445 * target.h (struct target_ops) <to_use_agent>: New field.
10446 (struct target_ops) <to_can_use_agent>: New field.
10447 (target_use_agent, target_can_use_agent): New macro.
10448 * target.c (update_current_target): Update.
10449 * remote.c: New enum `PACKET_QAgent'.
10450 (remote_protocol_features): Add a new element.
10451 (remote_use_agent, remote_can_use_agent): New.
10452 (init_remote_ops): Initialize field `can_use_agent' with
10453 remote_can_use_agent. Intiailize field `use_agent' with
10455 * common/agent.c (use_agent): New global.
10456 * common/agent.h: Declare it.
10457 * tracepoint.c (info_static_tracepoint_markers_command): Add
10459 * Makefile.in (SFILES): Add common/agent.c and agent.c.
10460 (COMMON_OBS): Add common/agent.o and agent.o
10461 (common-agent.o): New rule.
10466 * common/agent.c: New.
10467 * common/agent.h: New.
10468 * configure.ac: Add `sys/socket.h' and `sys/un.h' to
10470 * configure, configh.in: Regenerated.
10474 * sh-tdep.c (sh_frame_cache): Don't fetch the FPSCR register
10475 unless it exists for this architecture.
10479 * language.h (struct language_defn): New "method" la_read_var_value.
10480 * findvar.c: #include "language.h".
10481 (default_read_var_value): Renames read_var_value. Rewrite
10482 function description.
10483 (read_var_value): New function.
10484 * value.h (default_read_var_value): Add prototype.
10485 * ada-lang.c (ada_read_renaming_var_value, ada_read_var_value):
10487 (ada_language_defn): Add entry for la_read_var_value.
10488 * c-lang.c, d-lang.c, f-lang.c, jv-lang.c, language.c,
10489 * m2-lang.c, objc-lang.c, opencl-lang.c, p-lang.c: Update
10490 language_defn structures to add entry for new la_read_var_value
10496 PR breakpoints/13776:
10497 * breakpoint.c (breakpoint_init_inferior): Delete step-resume
10499 (delete_longjmp_breakpoint_at_next_stop): New.
10500 * breakpoint.h (delete_longjmp_breakpoint_at_next_stop): Declare.
10501 * target.c (generic_mourn_inferior): Call mark_breakpoints_out
10502 before deleting the inferior. Add comments.
10503 * thread.c (clear_thread_inferior_resources): Don't delete lonjmp
10504 breakpoints immediately, but only on next stop. Move that code
10505 next to where we mark other breakpoints for deletion.
10509 * mips-linux-nat.c (mips_linux_read_description): Add missing i18n
10511 * mips-tdep.c (mips_linux_reg_names): Improve comment to avoid ARI
10516 * linux-thread-db.c (attach_thread): Avoid in_thread_list call.
10520 Fix -Wmissing-prototypes build.
10521 * ppc-linux-nat.c (ppc_linux_get_hwcap): Make static.
10522 * remote-sim.c (gdbsim_has_all_memory): Likewise.
10523 (gdbsim_has_memory): Likewise.
10527 Fix -Wmissing-prototypes build.
10528 * charset.c (phony_iconv_open): Make static.
10529 (phony_iconv_close, phony_iconv): Likewise.
10530 * i386-linux-nat.c (_initialize_i386_linux_nat): New prototype.
10531 * i386-windows-nat.c (_initialize_i386_windows_nat): New
10533 * mingw-hdep.c (_initialize_mingw_hdep): New prototype.
10534 * ser-mingw.c (create_select_thread): Make static.
10535 * windows-termcap.c (tgetent): New prototype.
10536 (tgetnum, tgetflag, tgetstr, tputs, tgoto): Likewise.
10540 Fix -Wmissing-prototypes build.
10541 * windows-nat.c (dll_symbol_command, ctrl_c_handler): Make them static.
10542 (_initialize_windows_nat, _initialize_check_for_gdb_ini)
10543 (_initialize_loadable): New prototypes.
10547 * dwarf2read.c (load_full_comp_unit): Remove unnecessary reading of
10548 abbrev table, read_comp_unit will do it.
10552 Fix -Wmissing-prototypes build.
10553 * alpha-tdep.c (alpha_deal_with_atomic_sequence): Make it static.
10554 * amd64-darwin-tdep.c (_initialize_amd64_darwin_tdep): New prototype.
10555 * amd64-windows-tdep.c (_initialize_amd64_windows_tdep): Likewise.
10556 * arm-symbian-tdep.c (arm_symbian_skip_trampoline_code): Make it static.
10557 (_initialize_arm_symbian_tdep): New prototype.
10558 * arm-wince-tdep.c (arm_wince_skip_main_prologue): Make it static.
10559 * i386-darwin-tdep.c (_initialize_i386_darwin_tdep): New prototype.
10560 * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn): Make it
10562 * lm32-tdep.c (_initialize_lm32_tdep): New prototype.
10563 * microblaze-linux-tdep.c (_initialize_microblaze_linux_tdep): New
10565 * microblaze-tdep.c (microblaze_debug, microblaze_fetch_instruction)
10566 (microblaze_skip_prologue, microblaze_frame_cache): Make them static.
10567 * mips-linux-tdep.c (mips_linux_regset_from_core_section): Make it
10569 * moxie-tdep.c (moxie_process_record): Likewise.
10570 * remote-mips.c (mips_can_use_watchpoint, mips_insert_watchpoint)
10571 (mips_remove_watchpoint, mips_stopped_by_watchpoint): Make them static.
10572 * rl78-tdep.c (rl78_breakpoint_from_pc): Make it static.
10573 (_initialize_rl78_tdep): New prototype.
10574 * rx-tdep.c (rx_breakpoint_from_pc): Make it static.
10575 (_initialize_rx_tdep): New prototype.
10576 * solib-darwin.c (darwin_in_dynsym_resolve_code): Make it static.
10577 (_initialize_darwin_solib): New prototype.
10578 * solib-spu.c: Include solib-spu.h.
10579 (_initialize_spu_solib): New prototype.
10580 * spu-multiarch.c (_initialize_spu_multiarch): New prototype.
10581 * tic6x-tdep.c (tic6x_analyze_prologue, tic6x_skip_prologue)
10582 (tic6x_breakpoint_from_pc, tic6x_frame_unwind_cache)
10583 (tic6x_software_single_step): Make it static.
10584 (_initialize_tic6x_tdep): New prototype.
10588 Fix -Wmissing-prototypes build.
10589 * cris-tdep.c (cris_can_use_hardware_watchpoint)
10590 (cris_region_ok_for_watchpoint, cris_stopped_data_address): Remove.
10594 Fix -Wmissing-prototypes build.
10595 * frv-tdep.c (frv_check_watch_resources, frv_stopped_data_address)
10596 (frv_have_stopped_data_address): Remove.
10600 Fix -Wmissing-prototypes build.
10601 * Makefile.in (HFILES_NO_SRCDIR): Add sh64-tdep.h.
10602 * sh-tdep.c: Include sh64-tdep.h.
10603 * sh-tdep.h (sh64_gdbarch_init, sh64_show_regs): Remove declarations.
10604 * sh64-tdep.c: Include sh64-tdep.h.
10605 * sh64-tdep.h: New file.
10609 * mips-tdep.c (mips32_scan_prologue): Correct indentation.
10613 * mips-tdep.c (mips_gdbarch_init): Only set pc_regnum and
10614 sp_regnum once the gdbarch_init_osabi hook has been called.
10618 * mips-tdep.c (mips32_bc1_pc): New function.
10619 (mips32_next_pc): Handle BC1ANY2F, BC1ANY2T, BC1ANY4F, BC1ANY4T,
10620 BPOSGE32 and BPOSGE64 instructions.
10621 (deal_with_atomic_sequence): Likewise.
10622 (mips32_instruction_has_delay_slot): Likewise.
10629 * features/mips-dsp.xml: New file.
10630 * features/mips64-dsp.xml: New file.
10631 * features/mips-dsp-linux.xml: New file.
10632 * features/mips64-dsp-linux.xml: New file.
10633 * features/Makefile (WHICH): Add mips-dsp-linux and
10635 (mips-dsp-expedite, mips64-dsp-expedite): New variables.
10636 * features/mips-dsp-linux.c: New file.
10637 * features/mips64-dsp-linux.c: New file.
10638 * regformats/mips-dsp-linux.dat: New file.
10639 * regformats/mips64-dsp-linux.dat: New file.
10640 * mips-linux-nat.c (mips_linux_register_addr): Handle DSP
10642 (mips64_linux_register_addr): Likewise.
10643 (mips64_linux_regsets_fetch_registers): Likewise.
10644 (mips64_linux_regsets_store_registers): Likewise.
10645 (mips64_linux_fetch_registers): Update call to
10646 mips64_linux_regsets_fetch_registers.
10647 (mips64_linux_store_registers): Update call to
10648 mips64_linux_regsets_store_registers.
10649 (mips_linux_read_description): Probe for DSP registers.
10650 (_initialize_mips_linux_nat): Call initialize_tdesc_mips_dsp_linux
10651 and initialize_tdesc_mips64_dsp_linux.
10652 * mips-linux-tdep.c (supply_gregset, mips64_supply_gregset):
10653 Remove padding of no longer used embedded register slots.
10654 * mips-linux-tdep.h (DSP_BASE, DSP_CONTROL): New macros.
10655 (MIPS_RESTART_REGNUM): Redefine enum value.
10656 * mips-tdep.c (mips_generic_reg_names): Remove trailing null
10658 (mips_tx39_reg_names): Likewise.
10659 (mips_linux_reg_names): New array of register names for Linux
10661 (mips_register_name): Check for a null pointer in
10662 mips_processor_reg_names and return an empty string.
10663 (mips_register_type): Exclude embedded registers for the IRIX
10665 (mips_pseudo_register_type): Likewise. Use dynamic numbers to
10666 refer to FP registers, LO, HI, BadVAddr, Cause and PC. Handle
10668 (mips_stab_reg_to_regnum): Handle DSP accumulators.
10669 (mips_dwarf_dwarf2_ecoff_reg_to_regnum): Likewise.
10670 (mips_gdbarch_init): Likewise. Initialize internal register
10671 indices for the Linux ABI. Use dynamic numbers to refer to
10672 registers, as applicable, while parsing the target description.
10673 * mips-tdep.h (struct mips_regnum): Add dspacc/dspctl offsets.
10677 * frame.h (read_frame_register_unsigned): Fix typo in function
10682 * jit-reader.in [!__cplusplus]
10683 (GDB_DECLARE_GPL_COMPATIBLE_READER): Add missing backslash.
10687 * configure.ac (build_warnings): Add -Wmissing-prototypes.
10688 * configure: Regenerate.
10692 * amd64-linux-tdep.c (amd64_linux_record_signal): Make static.
10693 * breakpoint.c (create_exception_master_breakpoint, trace_command)
10694 (ftrace_command, strace_command): Make static.
10695 * d-lang.c (_initialize_d_language): Declare.
10696 * dwarf2expr.c (_initialize_dwarf2expr): Declare.
10697 * dwarf2loc.c (_initialize_dwarf2loc):
10698 * dwarf2read.c (process_psymtab_comp_unit): Make static.
10699 * exec.c (exec_get_section_table): Make static.
10700 * i386-linux-tdep.c (i386_linux_record_signal): Make static.
10701 * infcmd.c (ensure_valid_thread, ensure_not_tfind_mode): Make static.
10702 * inferior.c (remove_inferior_command, add_inferior_command)
10703 (clone_inferior_command): Make static.
10704 * linux-nat.c (linux_nat_thread_address_space)
10705 (linux_nat_core_of_thread): Make static.
10706 * linux-tdep.c (_initialize_linux_tdep): Declare.
10707 * objc-lang.c (_initialize_objc_lang): Declare.
10708 * opencl-lang.c (builtin_opencl_type, opencl_language_arch_info):
10710 (_initialize_opencl_language): Declare.
10711 * record.c (_initialize_record): Declare.
10712 * remote.c (demand_private_info, remote_get_tib_address)
10713 (remote_supports_cond_tracepoints)
10714 (remote_supports_fast_tracepoints, remote_get_tracepoint_status):
10716 * skip.c (_initialize_step_skip): Declare.
10717 * symtab.c (skip_prologue_using_lineinfo): Make static.
10718 * tracepoint.c (delete_trace_state_variable)
10719 (trace_variable_command, delete_trace_variable_command)
10720 (get_uploaded_tsv, find_matching_tracepoint_location)
10721 (find_matching_tsv, create_tsv_from_upload, get_traceframe_info):
10723 * value.c (pack_unsigned_long): Make static.
10724 * varobj.c (varobj_ensure_python_env): Make static.
10725 * windows-tdep.c (_initialize_windows_tdep): Declare.
10726 * xml-syscall.c (make_cleanup_free_syscalls_info): Make static.
10730 * linux-tdep.c (linux_has_shared_address_space): Make static. Add
10732 (linux_init_abi): Install it as has_shared_address_space gdbarch
10737 * observer.c (observer_test_first_notification_function)
10738 (observer_test_second_notification_function)
10739 (observer_test_third_notification_function): Add declarations.
10743 * common/signals.c (default_target_signal_to_host)
10744 (default_target_signal_from_host): Move ...
10745 * arch-utils.c: ... here.
10746 * arch-utils.h (default_target_signal_to_host)
10747 (default_target_signal_from_host): Declare.
10749 * common/signals.c (target_signal_from_command): Move ...
10750 * infrun.c: ... here.
10751 * inferior.h (target_signal_from_command): Declare.
10752 * target.h (target_signal_from_command)
10753 (default_target_signal_from_host, default_target_signal_to_host):
10754 Delete declarations.
10756 * common/signals.c (_initialize_signals): Delete.
10760 * jit-reader.in (plugin_is_GPL_compatible): Add declarations for
10761 both __cplusplus and !__cplusplus.
10765 * psymtab.c (find_and_open_source): Delete declaration.
10766 * source.c (find_and_open_source): Move comment ...
10767 * source.h (find_and_open_source): ... to this new declaration.
10771 * inline-frame.c: Include inline-frame.h.
10775 * tui/tui-data.c (set_gen_win_origin): Delete.
10776 * tui/tui-data.h (tui_set_gen_win_origin): Delete declaration.
10777 * tui/tui-regs.c (tui_last_reg_element_no_in_line): Delete.
10781 * remote.c (encode_actions): Delete declaration.
10782 * tracepoint.c (encode_actions): Make extern.
10783 * tracepoint.h (encode_actions): Declare.
10787 * python/py-breakpoint.c: Include python.h.
10788 * python/py-continueevent.c (create_continue_event_object): Make
10790 * python/py-lazy-string.c (stpy_get_type): Make static.
10791 * python/py-newobjfileevent.c (create_new_objfile_event_object):
10793 * python/py-utils.c (unicode_to_target_python_string): Make
10795 * python/py-value.c: Include python.h.
10799 * inferior.c (delete_threads_of_inferior): Delete.
10803 Import fallback definitions from glibc.
10805 * gdb_proc_service.h [!HAVE_PROC_SERVICE_H] (struct
10806 ps_prochandle): Forward declare.
10807 (ps_err_e): Use glibc's comments.
10808 [!HAVE_PROC_SERVICE_H] (ps_pdread, ps_pdwrite, ps_ptread)
10809 (ps_ptwrite, ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
10810 (ps_lsetfpregs, ps_getpid, ps_get_thread_area, ps_pglobal_lookup)
10811 (ps_pstop, ps_pcontinue, ps_lstop, ps_lcontinue, ps_lgetxregsize)
10812 (ps_lgetxregs, ps_lsetxregs, ps_plog): Declare.
10813 (struct ps_prochandle): Adjust comment.
10817 * ada-lang.c (ada_modulus_from_name): Delete.
10818 * ada-lex.l (lexer_init): Make static.
10824 * frame.c (read_frame_register_unsigned): New.
10825 * frame.h (read_frame_register_unsigned): Declare.
10826 * i387-tdep.c (print_i387_status_word): New parameter `status_p'.
10828 (print_i387_control_word): New parameter `control_p'. Handle it.
10829 (i387_print_float_info): Handle unavailable float registers.
10833 * linespec.c (decode_line_2): Sort the list of methods
10834 alphabetically before presenting the user with a selection
10839 * dwarf2read.c (dwarf2_cu): Remove unused members has_form_ref_addr,
10840 has_namespace_info.
10841 (dwarf2_read_abbrevs): Remove corresponding initialization.
10845 * NEWS: Mention new python command class gdb.COMMAND_USER.
10846 * cli/cli-cmds.c (show_user): Print error when used on a python
10848 (init_cli_cmds): Update documentation strings for "show user" and
10849 "set/show max-user-call-depth" to clarify that it does not apply to
10851 * python/py-cmd.c (cmdpy_init): Treat class_user as a valid class in
10853 (gdbpy_initialize_commands): Add COMMAND_USER as a constant in
10855 * top.c (execute_command): Only execute a user-defined command as a
10856 legacy macro if c->user_commands is set.
10860 * valprint.h (struct generic_val_print_decorations): New.
10861 (generic_val_print): Declare.
10862 * valprint.c (generic_val_print): New function.
10863 * p-valprint.c (p_decorations): New global.
10864 (pascal_val_print) <TYPE_CODE_REF, TYPE_CODE_ENUM,
10865 TYPE_CODE_FLAGS, TYPE_CODE_FUNC, TYPE_CODE_RANGE, TYPE_CODE_INT,
10866 TYPE_CODE_FLT, TYPE_CODE_VOID, TYPE_CODE_ERROR, TYPE_CODE_UNDEF,
10867 TYPE_CODE_BOOL, TYPE_CODE_CHAR>: Call generic_val_print.
10868 * m2-valprint.c (m2_decorations): New global.
10869 (m2_val_print) <TYPE_CODE_REF, TYPE_CODE_ENUM, TYPE_CODE_FUNC,
10870 TYPE_CODE_BOOL, TYPE_CODE_RANGE, TYPE_CODE_INT, TYPE_CODE_CHAR,
10871 TYPE_CODE_FLT, TYPE_CODE_METHOD, TYPE_CODE_VOID, TYPE_CODE_UNDEF,
10872 TYPE_CODE_ERROR>: Call generic_val_print.
10873 * f-valprint.c (f_decorations): New global.
10874 (f_val_print): Use print_function_pointer_address.
10875 <TYPE_CODE_REF, TYPE_CODE_FUNC, TYPE_CODE_CHAR, TYPE_CODE_FLAGS,
10876 TYPE_CODE_FLT, TYPE_CODE_VOID, TYPE_CODE_ENUM, TYPE_CODE_RANGE,
10877 TYPE_CODE_BOOL, TYPE_CODE_COMPLEX, TYPE_CODE_UNDEF>: Call
10879 * c-valprint.c (c_decorations): New global.
10880 (c_val_print) <TYPE_CODE_MEMBERPTR, TYPE_CODE_REF, TYPE_CODE_ENUM,
10881 TYPE_CODE_FLAGS, TYPE_CODE_FUNC, TYPE_CODE_METHOD, TYPE_CODE_BOOL,
10882 TYPE_CODE_RANGE, TYPE_CODE_CHAR, TYPE_CODE_FLT,
10883 TYPE_CODE_DECFLOAT, TYPE_CODE_VOID, TYPE_CODE_ERROR,
10884 TYPE_CODE_UNDEF, TYPE_CODE_COMPLEX>: Call generic_val_print.
10885 * ada-valprint.c (ada_val_print_1) <TYPE_CODE_FLAGS>: Remove
10890 * valprint.c (val_print): Update.
10891 * p-valprint (pascal_val_print): Return void.
10892 * p-lang.h (pascal_val_print): Return void.
10893 * m2-valprint.c (m2_val_print): Return void.
10894 * m2-lang.h (m2_val_print): Return void.
10895 * language.h (struct language_defn) <la_val_print>: Return void.
10896 * language.c (unk_lang_val_print): Return void.
10897 * jv-valprint.c (java_val_print): Return void.
10898 * jv-lang.h (java_val_print): Return void.
10899 * f-valprint.c (f_val_print): Return void.
10900 * f-lang.h (f_val_print): Return void.
10901 * d-valprint.c (d_val_print): Return void.
10902 (dynamic_array_type): Update.
10903 * d-lang.h (d_val_print): Return void.
10904 * c-valprint.c (c_val_print): Return void.
10905 * c-lang.h (c_val_print): Return void.
10906 * ada-valprint.c (ada_vada_val_print, ada_val_print_1): Return
10908 * ada-lang.h (ada_val_print): Return void.
10912 * value.h (val_print): Return void.
10913 * valprint.c (val_print): Return void.
10917 * value.h (common_val_print): Return void.
10918 * valprint.c (common_val_print): Return void.
10922 * value.h (value_print): Return void.
10923 * valprint.c (value_print): Return void.
10924 * p-valprint.c (pascal_value_print): Return void.
10925 * p-lang.h (pascal_value_print): Return void.
10926 * language.h (struct language_defn) <la_value_print>: Return
10928 * language.c (unk_lang_value_print): Return void.
10929 * jv-valprint.c (java_value_print): Return void.
10930 * jv-lang.h (java_value_print): Return void.
10931 * f-valprint.c (c_value_print): Don't declare.
10933 * c-valprint.c (c_value_print): Return void.
10934 * c-lang.h (c_value_print): Return void.
10935 * ada-valprint.c (ada_value_print): Return void.
10936 * ada-lang.h (ada_value_print): Return void.
10940 * value.c (value_primitive_field): Handle virtual base classes.
10944 * gdbtypes.h (struct vbase): Remove.
10948 * c-valprint.c (print_function_pointer_address): Move...
10949 * valprint.c: ... here. Make non-static.
10950 * m2-valprint.c (print_function_pointer_address): Remove.
10951 * valprint.h (print_function_pointer_address): Declare.
10955 * NEWS: Document the fact that one can provide a condition when
10956 creating an Ada exception catchpoint.
10960 * valprint.c (val_print_type_code_flags): Fix placement of
10965 * copyright.py (MULTILINE_COMMENT_PREFIXES): Delete.
10966 (update_files): Do not set MULTILINE_COMMENT_PREFIXES
10967 environment variable before calling update-copyright.
10971 * gnulib/extra/update-copyright: Update to the latest from
10972 gnulib's git repository.
10973 * copyright.py: Set UPDATE_COPYRIGHT_USE_INTERVALS environment
10974 variable to 2 instead of 1.
10978 * varobj.c (c_value_of_variable): Remove dead code.
10982 * ada-lex.p (processId): Do not modify already encoded IDs.
10983 Update function documentation.
10987 * ada-lang.h (ada_find_renaming_symbol): Replace parameter
10988 "name" with "struct symbol *name_sym".
10989 * ada-exp.y (write_var_or_type): Update call to
10990 ada_find_renaming_symbol.
10991 "name" with "struct symbol *name_sym". Adjust Implementation
10992 accordingly. Adjust the function documentation.
10996 * ada-lang.h (ada_find_any_symbol, ada_find_any_type): Delete.
10997 * ada-lang.c (ada_find_any_type): Add advance declaration.
10998 Make static. Replace ada_find_any_symbol by
10999 ada_find_any_type_symbol.
11000 (ada_find_any_type_symbol): Renames ada_find_any_symbol.
11001 Improve function description. Make static.
11002 (ada_find_renaming_symbol, find_old_style_renaming_symbol):
11003 Replace ada_find_any_symbol by ada_find_any_type_symbol.
11007 * ada-lang.c (struct tag_args): Delete.
11008 (ada_get_tsd_type): Function body moved up in source file.
11009 (ada_tag_name_1, ada_tag_name_2): Delete.
11010 (ada_get_tsd_from_tag): New function.
11011 (ada_tag_name_from_tsd): New function.
11012 (ada_tag_name): Use a TRY_CATCH block instead of catch_errors
11013 to determine the tag name.
11017 * ada-lang.h (ada_get_decoded_value, ada_get_decoded_type): Add
11019 * ada-lang.c (ada_get_decoded_value, ada_get_decoded_type): New
11024 * ada-lang.c (ada_is_ignored_field): Rewrite wrong comment.
11028 * ada-lang.c (ada_lookup_symbol_list): Only cache the result of
11033 * ada-lang.c (constrained_packed_array_type): If there is a
11034 parallel XA type, use it to determine the array index type.
11038 * ada-valprint.c (ada_val_print_1): If our value is a reference
11039 to an array descriptor, dereference it before converting it
11044 * ada-lang.c (ada_to_fixed_value): Call unwrap_value before
11045 creating fixed value.
11046 (ada_value_ind, ada_coerce_ref, assign_component)
11047 (ada_evaluate_subexp): Remove call to unwrap_value before
11048 call to ada_to_fixed_value.
11052 * ada-lang.c (to_fixed_array_type): Set result's type name.
11056 * ada-lang.c (catch_ada_exception_command_split): Add new
11057 argument cond_string. Add support for condition at end of
11058 "catch exception" commands.
11059 (ada_decode_exception_location): Add new argument cond_string.
11060 Update call to catch_ada_exception_command_split.
11061 (create_ada_exception_catchpoint): Add new argument cond_string.
11062 Set the breakpoint condition if needed.
11063 (catch_ada_exception_command): Update call to
11064 ada_decode_exception_location.
11065 (ada_decode_assert_location): Add function documentation.
11066 Add support for condition at end of "catch assert" command.
11067 (catch_assert_command): Update calls to ada_decode_assert_location
11068 and create_ada_exception_catchpoint.
11072 Fix disp-step-syscall.exp: fork: single step over fork.
11073 * i386-linux-tdep.c (-i386_linux_get_syscall_number): Rename to ...
11074 (i386_linux_get_syscall_number_from_regcache): ... here, new function
11075 comment, change parameters gdbarch and ptid to regcache. Remove
11076 parameter regcache, initialize gdbarch from regcache here.
11077 (i386_linux_get_syscall_number, i386_linux_displaced_step_copy_insn):
11079 (i386_linux_init_abi): Install i386_linux_displaced_step_copy_insn
11081 * i386-tdep.c (i386_syscall_p): Check also for 'sysenter' and
11082 'syscall'. Make the 'int' check more strict.
11086 Fix reverse mode for syscall on AMD CPUs in 32-bit mode.
11087 * i386-linux-tdep.c (i386_linux_intx80_sysenter_record): Rename to ...
11088 (i386_linux_intx80_sysenter_syscall_record): ... here.
11089 (i386_linux_init_abi): Initialize also I386_SYSCALL_RECORD.
11090 Use the renamed function name.
11094 * arm-linux-tdep.c (arm_linux_copy_svc): Reset stale FRAME.
11095 * breakpoint.c (until_break_command): Likewise.
11096 * elfread.c (elf_gnu_ifunc_resolver_stop): Likewise.
11097 * infcall.c (call_function_by_hand): Likewise.
11098 * infcmd.c (finish_forward): Likewise.
11099 * infrun.c (insert_exception_resume_breakpoint): Likewise.
11103 * ada-tasks.c (ada_tasks_inferior_data_sniffer): Rework code to
11104 avoid variable assignments inside condition.
11108 Fix static analysis issue found by cppcheck.
11109 * microblaze-tdep.c (microblaze_extract_return_value): Fix
11110 uninitialized BUF for size 2.
11116 * mips-tdep.c (mips32_instruction_has_delay_slot): New function.
11117 (mips16_instruction_has_delay_slot): Likewise.
11118 (mips_segment_boundary): Likewise.
11119 (mips_adjust_breakpoint_address): Likewise.
11120 (mips_gdbarch_init): Use mips_adjust_breakpoint_address.
11125 * infrun.c (handle_inferior_event): Don't proceed through
11126 shared library trampolines if stepping at the machine
11131 * mips-linux-tdep.c (mips_linux_init_abi): Set num_pseudo_regs
11136 * sh-tdep.c (sh_make_stub_cache, sh_stub_this_id)
11137 (sh_stub_unwind_sniffer): New functions.
11138 (sh_stub_unwind): New variable.
11139 (sh_gdbarch_init): Wire everything.
11143 * linux-nat.c (pid_is_stopped): Delete, moved to common/.
11144 (linux_nat_post_attach_wait): Adjust to use
11145 linux_proc_pid_is_stopped.
11146 * common/linux-procfs.h (linux_proc_pid_is_stopped): Declare.
11147 * common/linux-procfs.c (linux_proc_pid_is_stopped): New function,
11148 based on pid_is_stopped from both linux-nat.c and
11149 gdbserver/linux-low.c, and renamed.
11153 * remote.c (remote_watchpoint_addr_within_range): New function.
11154 (init_remote_ops): Use it.
11158 * target.h (target_watchpoint_addr_within_range): Document macro.
11162 * stack.c (set_last_displayed_sal): Issue internal_error instead
11163 of warning, and issue it after clearing the last displayed sal.
11168 * breakpoint.c (until_break_command): Install breakpoints after
11169 all frame manipulations.
11173 * remote.c (remote_supports_cond_breakpoints): New forward
11175 (remote_add_target_side_condition): New function.
11176 (remote_insert_breakpoint): Add target-side breakpoint
11177 conditional if supported.
11178 (remote_insert_hw_breakpoint): Likewise.
11179 (init_remote_ops): Set to_supports_evaluation_of_breakpoint_conditions
11182 * target.c (update_current_target): Inherit
11183 to_supports_evaluation_of_breakpoint_conditions.
11184 Default to_supports_evaluation_of_breakpoint_conditions to return_zero.
11186 * target.h (struct target_ops)
11187 <to_supports_evaluation_of_breakpoint_conditions>: New field.
11188 (target_supports_evaluation_of_breakpoint_conditions): New #define.
11190 * breakpoint.c (get_first_locp_gte_addr): New forward declaration.
11191 (condition_evaluation_both, condition_evaluation_auto,
11192 condition_evaluation_host, condition_evaluation_target,
11193 condition_evaluation_enums, condition_evaluation_mode_1,
11194 condition_evaluation_mode): New static globals.
11195 (translate_condition_evaluation_mode): New function.
11196 (breakpoint_condition_evaluation_mode): New function.
11197 (gdb_evaluates_breakpoint_condition_p): New function.
11198 (ALL_BP_LOCATIONS_AT_ADDR): New helper macro.
11199 (mark_breakpoint_modified): New function.
11200 (mark_breakpoint_location_modified): New function.
11201 (set_condition_evaluation_mode): New function.
11202 (show_condition_evaluation_mode): New function.
11203 (bp_location_compare_addrs): New function.
11204 (get_first_location_gte_addr): New helper function.
11205 (set_breakpoint_condition): Free condition bytecode if locations
11206 has become unconditional. Call mark_breakpoint_modified (...).
11207 (condition_command): Call update_global_location_list (1) for
11209 (breakpoint_xfer_memory): Use is_breakpoint (...).
11210 (is_breakpoint): New function.
11211 (parse_cond_to_aexpr): New function.
11212 (build_target_condition_list): New function.
11213 (insert_bp_location): Handle target-side conditional
11214 breakpoints and call build_target_condition_list (...).
11215 (update_inserted_breakpoint_locations): New function.
11216 (insert_breakpoint_locations): Handle target-side conditional
11218 (bpstat_check_breakpoint_conditions): Add comment.
11219 (bp_condition_evaluator): New function.
11220 (bp_location_condition_evaluator): New function.
11221 (print_breakpoint_location): Print information on where the condition
11223 (print_one_breakpoint_location): Likewise.
11224 (init_bp_location): Call mark_breakpoint_location_modified (...) for
11225 breakpoint location.
11226 (force_breakpoint_reinsertion): New functions.
11227 (update_global_location_list): Handle target-side breakpoint
11229 Reinsert locations that are already inserted if conditions have
11231 (bp_location_dtor): Free agent expression bytecode.
11232 (disable_breakpoint): Call mark_breakpoint_modified (...).
11233 Call update_global_location_list (...) with parameter 1 for breakpoints.
11234 (disable_command): Call mark_breakpoint_location_modified (...).
11235 Call update_global_location_list (...) with parameter 1 for breakpoints.
11236 (enable_breakpoint_disp): Call mark_breakpoint_modified (...).
11237 (enable_command): mark_breakpoint_location_modified (...).
11238 (_initialize_breakpoint): Update documentation and add
11239 condition-evaluation breakpoint subcommand.
11241 * breakpoint.h: Include ax.h.
11242 (condition_list): New data structure.
11243 (condition_status): New enum.
11244 (bp_target_info) <cond_list>: New field.
11245 (bp_location) <condition_changed, cond_bytecode>: New fields.
11246 (is_breakpoint): New prototype.
11250 * remote.c (remote_state) <cond_breakpoints>: New field.
11251 (PACKET_ConditionalBreakpoints): New enum.
11252 (remote_cond_breakpoint_feature): New function.
11253 (remote_protocol_features): Add new ConditionalBreakpoints entry.
11254 (remote_supports_cond_breakpoints): New function.
11255 (_initialize_remote): Add new packet configuration for
11256 target-side conditional breakpoints.
11260 * NEWS: Mention target-side conditional breakpoint support,
11261 new condition-evaluation breakpoint subcommand and remote
11266 * breakpoint.c (bp_location_compare): Sort by pspace before sorting by
11271 * sh-tdep.c (sh_skip_prologue): Use skip_prologue_using_sal.
11272 (after_prologue): Remove.
11276 * jv-valprint.c (java_val_print): Remove dead code.
11280 * ada-tasks.c (struct ada_tasks_inferior_data): Add
11281 known_tasks_element and known_tasks_length fields.
11282 (read_known_tasks_array): Change argument type. Use pointer type
11283 and number of elements from DATA. Adjust.
11284 (read_known_tasks_list): Likewise.
11285 (get_known_tasks_addr): Remove.
11286 (ada_set_current_inferior_known_tasks_addr): Renamed to ...
11287 (ada_tasks_inferior_data_sniffer): ... this. Use symtab for element
11288 type and array length. Merge former get_known_tasks_addr code.
11293 * infcmd.c (finish_forward): New variable frame_id, initialize it, use
11294 it after set_momentary_breakpoint.
11299 * breakpoint.c (watchpoint_exp_is_constant): Add UNOP_CAST to switch.
11303 * dwarf2read.c (dwarf2_read_index): Correct misspelling.
11304 (find_slot_in_mapped_hash): Likewise.
11309 * configure.ac (MAKEINFO): Replace AC_CHECK_PROG by AC_ARG_VAR.
11310 (MAKEINFOFLAGS): Replace static string by AC_ARG_VAR.
11311 * configure: Regenerate.
11316 * ia64-tdep.c: Do not include libunwind-ia64.h.
11317 * libunwind-frame.h: Remove #ifdef HAVE_LIBUNWIND_H guard.
11318 Include libunwind-ia64.h instead of libunwind.h.
11319 * configure.ac (--with-libunwind, $enable_libunwind): Don't check
11320 for libunwind.h existence.
11321 * configure, config.in: Regenerate.
11325 * c-valprint.c (c_value_print): Use value_rtti_indirect_type
11326 instead of value_rtti_target_type.
11327 * eval.c (evaluate_subexp_standard): Use value_rtti_indirect_type
11328 instead of value_rtti_target_type.
11329 * typeprint.c (whatis_exp): Use value_rtti_indirect_type instead of
11330 value_rtti_target_type.
11331 * valops.c (value_ind): Extract function readjust_indirect_value_type.
11332 (value_rtti_target_type): Rename to ...
11333 (value_rtti_indirect_type): ... here and make it indirect. Update
11335 * value.c (readjust_indirect_value_type): New function.
11336 (coerce_ref): Support for enclosing type setting for references
11337 with readjust_indirect_value_type.
11338 * value.h (readjust_value_type): New declaration.
11339 (value_rtti_target_type): Rename to ...
11340 (value_rtti_indirect_type): ... here.
11344 * MAINTAINERS (Write After Approval): Add myself to the list.
11348 * objfiles.c (add_to_objfile_sections): Remove outdated comments.
11349 Rename objfile_p_char parameter to objfilep.
11350 (build_objfile_section_table): Result is now void. All callers
11352 * objfiles.h (struct objfile): Tweak comments, whitespace.
11353 (build_objfile_section_table): Update.
11355 * elfread.c (elf_symfile_segments): Fix warning text.
11360 * dwarf2read.c (dw2_expand_symtabs_matching): Only visit a
11361 particular set of file names once.
11362 (dw2_map_symbol_filenames): Likewise.
11367 * main.c (write_files): Remove the declaration.
11368 (external_editor_command): Move the declaration ...
11369 [GDBTK] (external_editor_command): ... here. Fix the comment.
11373 * dwarf2read.c (dw2_map_symtabs_matching_filename): Remove
11378 * darwin-nat.h (enum darwin_msg_state): Add comments.
11382 * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Fix jb_pc_offset
11387 * breakpoint.c (watchpoint_exp_is_const): Add missing empty line
11388 between function description and implementation.
11393 * python/py-event.c (event_object_getset): New global.
11394 (event_object_type): Reference it.
11395 * python/py-type.c (field_object_getset): New global.
11396 (field_object_type): Reference it.
11397 * python/python-internal.h (gdb_py_generic_dict): Declare.
11398 * python/py-utils.c (gdb_py_generic_dict): New function.
11402 * solib-darwin.c (darwin_current_sos): Check magic and filetype
11406 * sh-tdep.c (sh_is_renesas_calling_convention): Fix handling of
11407 TYPE_CALLING_CONVENTION annotation.
11411 * MAINTAINERS: Add rx to target ISA section.
11412 * Makefile.in (ALL_TARGET_OBS): Add rx-tdep.o.
11413 (ALLDEPFILES): Add rx-tdep.c.
11417 * symfile.c (symbol_file_add_main_1): Use inferior's
11419 * solib.c (solib_read_symbols): Use inferior's symfile_flags.
11420 * linux-nat.c (linux_child_follow_fork): Set symfile_flags on
11422 * infrun.c (handle_vfork_child_exec_or_exit): Set symfile_flags on
11424 (follow_exec): Use inferior's symfile_flags.
11425 * inferior.h (struct inferior) <symfile_flags>: New field.
11430 * remote-sim.c (gdbsim_create_inferior): Call error() when
11431 sim_create_inferior() fails.
11435 * machoread.c: Initialize nbr_syms to avoid warnings-as-errors failure.
11440 * thread.c (struct current_thread_cleanup) <was_removable>: New
11442 (restore_current_thread_cleanup_dtor): Restore 'removable' field.
11443 (make_cleanup_restore_current_thread): Initialize new field.
11447 * MAINTAINERS: Add rl78 to target ISA section.
11448 * Makefile.in (ALL_TARGET_OBS): Add rl78-tdep.o.
11449 (ALLDEPFILES): Add rl78-tdep.c.
11450 * NEWS: Mention rl78 as a new target.
11454 * frame.c (find_frame_sal): Initialize sal->pspace field from frame
11456 * stack.c (set_last_displayed_sal): Validate that PSPACE is not NULL.
11461 * infcmd.c (registers_info): Print just the current register's
11466 * python/py-symbol.c (sympy_value): Use _().
11470 * remote.c (remote_detach_1, extended_remote_attach_1): Tweak
11471 output to be like native targets'.
11472 (remote_pid_to_str): Special case the null ptid.
11476 * NEWS: Mention enable count command.
11477 * breakpoint.h (struct breakpoint): New field enable_count.
11478 * breakpoint.c (enable_breakpoint_disp): Add count argument.
11479 (enable_breakpoint): Add arg to call.
11480 (struct disp_data): New struct.
11481 (do_enable_breakpoint_disp): Interp arg as disp_data and unpack.
11482 (do_map_enable_once_breakpoint): Create a struct and pass it.
11483 (do_map_enable_delete_breakpoint): Ditto.
11484 (do_map_enable_count_breakpoint): New function.
11485 (enable_count_command): New function.
11486 (bpstat_stop_status): Decrement enable_count.
11487 (print_one_breakpoint_location): Report enable count.
11488 (_initialize_breakpoint): Add enable count command.
11492 * rl78-tdep.c (reggroups.h): Include.
11493 (RL78_RAW_BANK0_R0_REGNUM, RL78_RAW_BANK0_R1_REGNUM)
11494 (RL78_RAW_BANK0_R2_REGNUM, RL78_RAW_BANK0_R3_REGNUM)
11495 (RL78_RAW_BANK0_R4_REGNUM, RL78_RAW_BANK0_R5_REGNUM)
11496 (RL78_RAW_BANK0_R6_REGNUM, RL78_RAW_BANK0_R7_REGNUM)
11497 (RL78_RAW_BANK1_R0_REGNUM, RL78_RAW_BANK1_R1_REGNUM)
11498 (RL78_RAW_BANK1_R2_REGNUM, RL78_RAW_BANK1_R3_REGNUM)
11499 (RL78_RAW_BANK1_R4_REGNUM, RL78_RAW_BANK1_R5_REGNUM)
11500 (RL78_RAW_BANK1_R6_REGNUM, RL78_RAW_BANK1_R7_REGNUM)
11501 (RL78_RAW_BANK2_R0_REGNUM, RL78_RAW_BANK2_R1_REGNUM)
11502 (RL78_RAW_BANK2_R2_REGNUM, RL78_RAW_BANK2_R3_REGNUM)
11503 (RL78_RAW_BANK2_R4_REGNUM, RL78_RAW_BANK2_R5_REGNUM)
11504 (RL78_RAW_BANK2_R6_REGNUM, RL78_RAW_BANK2_R7_REGNUM)
11505 (RL78_RAW_BANK3_R0_REGNUM, RL78_RAW_BANK3_R1_REGNUM)
11506 (RL78_RAW_BANK3_R2_REGNUM, RL78_RAW_BANK3_R3_REGNUM)
11507 (RL78_RAW_BANK3_R4_REGNUM, RL78_RAW_BANK3_R5_REGNUM)
11508 (RL78_RAW_BANK3_R6_REGNUM, RL78_RAW_BANK3_R7_REGNUM): Add to
11509 beginning of register list.
11510 (RL78_BANK0_R0_REGNUM, RL78_BANK0_R1_REGNUM, RL78_BANK0_R2_REGNUM)
11511 (RL78_BANK0_R3_REGNUM, RL78_BANK0_R4_REGNUM, RL78_BANK0_R5_REGNUM)
11512 (RL78_BANK0_R6_REGNUM, RL78_BANK0_R7_REGNUM, RL78_BANK1_R0_REGNUM)
11513 (RL78_BANK1_R1_REGNUM, RL78_BANK1_R2_REGNUM, RL78_BANK1_R3_REGNUM)
11514 (RL78_BANK1_R4_REGNUM, RL78_BANK1_R5_REGNUM, RL78_BANK1_R6_REGNUM)
11515 (RL78_BANK1_R7_REGNUM, RL78_BANK2_R0_REGNUM, RL78_BANK2_R1_REGNUM)
11516 (RL78_BANK2_R2_REGNUM, RL78_BANK2_R3_REGNUM, RL78_BANK2_R4_REGNUM)
11517 (RL78_BANK2_R5_REGNUM, RL78_BANK2_R6_REGNUM, RL78_BANK2_R7_REGNUM)
11518 (RL78_BANK3_R0_REGNUM, RL78_BANK3_R1_REGNUM, RL78_BANK3_R2_REGNUM)
11519 (RL78_BANK3_R3_REGNUM, RL78_BANK3_R4_REGNUM, RL78_BANK3_R5_REGNUM)
11520 (RL78_BANK3_R6_REGNUM, RL78_BANK3_R7_REGNUM): Move these into
11521 the pseudo registers. Rearrange other pseudo registers too so
11522 that the bank registers appear at the end.
11523 (rl78_register_type): Account for the fact that the byte sized
11524 bank registers are now pseudo-registers.
11525 (rl78_register_name): Rearrange the register name array. Make
11526 initial set of raw banked registers inaccessible.
11527 (rl78_register_reggroup_p, rl78_register_sim_regno): New functions.
11528 (rl78_pseudo_register_read, rl78_pseudo_register_write): Add
11529 case for copying bytes back and forth between raw and pseudo
11530 versions of the banked registers. Update other cases to reflect
11532 (rl78_return_value): Update to account for changed names of
11534 (rl78_gdbarch_init): Register rl78_register_reggroup_p() and
11535 rl78_register_sim_regno().
11539 * rl78-tdep.c (rl78_skip_prologue): Make `const' the type of
11540 the name parameter being passed to find_pc_partial_function().
11544 * MAINTAINERS: Step down from being ia64 target maintainer.
11548 * ppc-linux-nat.c (fetch_register, store_register): Fix GCC aliasing
11549 compilation warning.
11553 Fix crash on loaded shlibs without loaded exec_bfd.
11554 * exec.c (exec_files_info): Do not crash on NULL EXEC_BFD.
11555 (set_section_command): Replace exec_bfd by p->bfd.
11559 * linespec.c (decode_line_internal): Skip symtabs_from_filename
11560 when we have a C++ qualified name.
11564 * inferior.c (inferior_pid_to_str): New.
11565 (print_inferior, inferior_command): Use it.
11569 * configure.ac (HAVE_ELF test): Put the old CFLAGS at the end of
11571 * configure: Regenerate.
11575 * linespec.c (decode_line_internal): Fix comment correctness.
11580 * Makefile.in (HFILES_NO_SRCDIR): Add amd64bsd-nat.h.
11581 * amd64bsd-nat.c: Add support for debug registers (adapted from
11583 [HAVE_PT_GETDBREGS] (amd64bsd_dr_get, amd64bsd_dr_set)
11584 (amd64bsd_dr_set_control, amd64bsd_dr_set_addr)
11585 (amd64bsd_dr_get_addr, amd64bsd_dr_get_status)
11586 (amd64bsd_dr_get_control): New functions.
11587 * amd64bsd-nat.h: New file (adapted from i386bsd-nat.h).
11588 * amd64fbsd-nat.c: Include "amd64bsd-nat.h", "i386-nat.h".
11589 [HAVE_PT_GETDBREGS] (_initialize_amd64fbsd_nat): Add hardware
11590 watchpoints initialization.
11591 * config/i386/fbsd64.mh (NATDEPFILES): Add i386-nat.o.
11595 * gdb-gdb.py (StructMainTypePrettyPrinter) <struct_field_img>: Print
11597 (StructMainTypePrettyPrinter) <bounds_img>: Print flds_bnds.bounds.
11601 * breakpoint.c (bp_location_compare): Fix comment. Reindent the code.
11605 * language.h (symbol_name_cmp_ftype): Renames
11606 symbol_name_match_p_ftype.
11607 (struct language_defn)[la_get_symbol_name_cmp]: Renames
11608 la_get_symbol_name_match_p.
11609 * ada-lang.c (ada_get_symbol_name_cmp): Renames
11610 ada_get_symbol_name_match_p. Update comment.
11611 (ada_language_defn)[la_get_symbol_name_cmp]: Update value.
11612 * linespec.c (struct symbol_matcher_data)[symbol_name_cmp]:
11613 Renames symbol_name_match_p. Update field type.
11614 (iterate_name_matcher, iterate_over_all_matching_symtabs): Adjust.
11615 * c-lang.c, d-lang.c, f-lang.c, jv-lang.c, m2-lang.c, objc-lang.c,
11616 opencl-lang.c, p-lang.c: Replace "la_get_symbol_name_match_p" by
11617 "la_get_symbol_name_cmp" in comments.
11618 * language.c: Likewise.
11622 * amd64-sol2-tdep.c (amd64_sol2_gregset_reg_offset): Correct
11624 * i386-sol2-nat.c (amd64_sol2_gregset64_reg_offs)
11625 (amd64_sol2_gregset32_reg_offs): Likewise.
11629 * solib-darwin.c (darwin_bfd_open): Make sure that the filename
11630 of the returned BFD is allocated by GDB.
11635 * python/python-internal.h (frame_object_type): Declare.
11636 * python/py-symbol.c (sympy_needs_frame): New function.
11637 (sympy_value): New function.
11638 (symbol_object_getset): Add "needs_frame".
11639 (symbol_object_methods): Add "value".
11640 * python/py-frame.c (frame_object_type): No longer static.
11645 * python/py-symbol.c (sympy_line): New function.
11646 (symbol_object_getset): Add "line".
11650 * charset.c (find_charset_names): Check 'in' against NULL.
11654 * gdbtypes.h (struct main_type): Change type of name,tag_name,
11655 and fields.name members from char * to const char *. All uses updated.
11656 (struct cplus_struct_type): Change type of fn_fieldlists.name member
11657 from char * to const char *. All uses updated.
11658 (type_name_no_tag): Update.
11659 (lookup_unsigned_typename, lookup_signed_typename): Update.
11660 * gdbtypes.c (type_name_no_tag): Change result type
11661 from char * to const char *. All callers updated.
11662 (lookup_unsigned_typename, lookup_signed_typename): Change type of
11663 name parameter from char * to const char *.
11664 * symtab.h (struct cplus_specific): Change type of demangled_name
11665 member from char * to const char *. All uses updated.
11666 (struct general_symbol_info): Change type of name and
11667 mangled_lang.demangled_name members from char * to const char *.
11669 (symbol_get_demangled_name, symbol_natural_name): Update.
11670 (symbol_demangled_name, symbol_search_name): Update.
11671 * symtab.c (symbol_get_demangled_name): Change result type
11672 from char * to const char *. All callers updated.
11673 (symbol_natural_name, symbol_demangled_name): Ditto.
11674 (symbol_search_name): Ditto.
11675 (completion_list_add_name): Change type of symname,sym_text,
11676 text,word parameters from char * to const char *.
11677 (completion_list_objc_symbol): Change type of sym_text,
11678 text,word parameters from char * to const char *.
11679 * ada-lang.c (find_struct_field): Change type of name parameter
11680 from char * to const char *.
11681 (encoded_ordered_before): Similarly for N0,N1 parameters.
11682 (old_renaming_is_invisible): Similarly for function_name parameter.
11683 (ada_type_name): Change result type from char * to const char *.
11684 All callers updated.
11685 * ada-lang.h (ada_type_name): Update.
11686 * buildsym.c (hashname): Change type of name parameter
11687 from char * to const char *.
11688 * buildsym.h (hashname): Update.
11689 * dbxread.c (end_psymtab): Change type of include_list parameter
11690 from char ** to const char **.
11691 * dwarf2read.c (determine_prefix): Change result type
11692 from char * to const char *. All callers updated.
11693 * f-lang.c (find_common_for_function): Change type of name, funcname
11694 parameters from char * to const char *.
11695 * f-lang.c (find_common_for_function): Update.
11696 * f-valprint.c (list_all_visible_commons): Change type of funcname
11697 parameters from char * to const char *.
11698 * gdbarch.sh (static_transform_name): Change type of name parameter
11699 and result from char * to const char *.
11700 * gdbarch.c: Regenerate.
11701 * gdbarch.h: Regenerate.
11702 * i386-sol2-tdep.c (i386_sol2_static_transform_name): Change type
11703 of name parameter from char * to const char *.
11704 * jv-lang.c (java_primitive_type_from_name): Ditto.
11705 (java_demangled_signature_length): Similarly for signature parameter.
11706 (java_demangled_signature_copy): Ditto.
11707 (java_demangle_type_signature): Ditto.
11708 * jv-lang.h (java_primitive_type_from_name): Update.
11709 (java_demangle_type_signature): Update.
11710 * objc-lang.c (specialcmp): Change type of a,b parameters
11711 from char * to const char *.
11712 * p-lang.c (is_pascal_string_type): Change type of arrayname parameter
11713 from char * to const char *. All callers updated.
11714 * p-lang.h (is_pascal_string_type): Update.
11715 * solib-frv.c (find_canonical_descriptor_in_load_object): Change type
11716 of name parameter from char * to const char *.
11717 * sparc-sol2-tdep.c (sparc_sol2_static_transform_name): Ditto.
11718 * utils.c (fprintf_symbol_filtered): Ditto.
11719 * defs.h (fprintf_symbol_filtered): Update.
11720 * sparc-tdep.h (sparc_sol2_static_transform_name): Update.
11721 * stabsread.h (end_psymtab): Update.
11722 * stack.c (find_frame_funname): Change type of funname parameter
11723 from char ** to const char **.
11724 * stack.h (find_frame_funname): Update.
11725 * typeprint.c (type_print): Change type of varstring parameter
11726 from char * to const char *.
11727 * value.h (type_print): Update.
11728 * xcoffread.c (xcoff_start_psymtab): Change type of filename parameter
11729 from char * to const char *. All callers updated.
11730 (xcoff_end_psymtab): Change type of include_list parameter
11731 from char ** to const char **. All callers updated.
11732 (swap_sym): Similarly for name parameter. All callers updated.
11733 * coffread.c (patch_type): Add (char*) cast to xfree parameter.
11735 (process_coff_symbol): Use xstrdup.
11736 * stabsread.c (stabs_method_name_from_physname): Renamed from
11737 update_method_name_from_physname. Change result type from void
11738 to char *. All callers updated.
11739 (read_member_functions): In has_destructor case, store name in objfile
11740 obstack instead of malloc space. In !has_stub case, fix mem leak.
11744 * configure: Rebuild.
11745 * configure.ac: Put -L../bfd and -L../libiberty at the front of
11750 * configure.tgt (rl78-*-elf): New target.
11751 * rl78-tdep.c: New file.
11755 * remote.c (remote_rcmd): Use getpkt_sane to detect timeout
11756 and continue the loop. Add QUIT statement.
11761 * solib.h (gdb_bfd_lookup_symbol_from_symtab): Rename from
11762 bfd_lookup_symbol_from_symtab.
11763 * solib-pa64.c (pa64_solib_create_inferior_hook): Use
11764 gdb_bfd_lookup_symbol_from_symtab.
11768 * mi/mi-cmd-stack.c (list_args_or_locals): For argument symbols,
11769 use SYMBOL_LINKAGE_NAME to find the corresponding non-argument
11770 symbol. Add assertion that sym2 is never NULL.
11774 * blockframe.c (find_pc_partial_function_gnu_ifunc): Change type of
11775 "name" parameter to const char ** from char **. All callers updated.
11776 (find_pc_partial_function): Ditto.
11777 (cache_pc_function_name): Change type to const char * from char *.
11778 * symtab.h ((find_pc_partial_function_gnu_ifunc): Update.
11779 (find_pc_partial_function): Update.
11780 * alpha-tdep.h (struct gdbarch_tdep, member pc_in_sigtramp): Change
11781 type of "name" parameter to const char * from char *.
11783 * arch-utils.c (generic_in_solib_return_trampoline): Change
11784 type of "name" parameter to const char * from char *.
11785 * arch-utils.h (generic_in_solib_return_trampoline): Update.
11786 * frv-linux-tdep.c (frv_linux_pc_in_sigtramp): Change
11787 type of "name" parameter to const char * from char *.
11788 * gdbarch.sh (in_solib_return_trampoline): Ditto.
11789 * gdbarch.c: Regenerate.
11790 * gdbarch.h: Regenerate.
11791 * hppa-hpux-tdep.c (hppa_hpux_in_solib_return_trampoline): Update.
11792 * rs6000-tdep.c (rs6000_in_solib_return_trampoline): Update.
11793 * m32r-linux-tdep.c (m32r_linux_pc_in_sigtramp): Change
11794 type of "name" parameter to const char * from char *.
11795 * skip.c (skip_function_pc): Ditto.
11796 * sparc-sol2-tdep.c (sparc_sol2_pc_in_sigtramp): Ditto.
11797 * sparc-tdep.h (sparc_sol2_pc_in_sigtramp): Update.
11798 * sparc64fbsd-tdep.c (sparc64fbsd_pc_in_sigtramp): Ditto.
11799 * sparc64nbsd-tdep.c (sparc64nbsd_pc_in_sigtramp): Ditto.
11800 * sparc64obsd-tdep.c (sparc64obsd_pc_in_sigtramp): Ditto.
11801 * sparcnbsd-tdep.c (sparc32nbsd_pc_in_sigtramp): Ditto.
11802 * sparcobsd-tdep.c (sparc32obsd_pc_in_sigtramp): Ditto.
11803 * nbsd-tdep.c (nbsd_pc_in_sigtramp): Similary for "func_name".
11804 * nbsd-tdep.h (nbsd_pc_in_sigtramp): Update.
11808 * remote.c (remote_get_min_fast_tracepoint_insn_len): Return 0 if
11809 the current inferior has no execution. Make sure the current
11810 remote process matches gdb's current inferior.
11815 * tui/tui-win.c (parse_scrolling_args): Don't write to possibly
11821 * symtab.c (lookup_language_this): Set block_found.
11826 * jit.c (struct jit_inferior_data): Rewrite.
11827 (struct jit_objfile_data): New.
11828 (get_jit_objfile_data): New function.
11829 (add_objfile_entry): Update.
11830 (jit_read_descriptor): Return int. Replace descriptor_addr
11831 argument with inf_data. Update. Don't call error.
11832 (jit_breakpoint_re_set_internal): Reorder logic. Update. Look up
11834 (jit_inferior_init): Don't look up descriptor. Don't call error.
11835 (jit_reset_inferior_data_and_breakpoints)
11836 (jit_inferior_created_observer): Remove.
11837 (jit_inferior_exit_hook): Update.
11838 (jit_executable_changed_observer): Remove.
11839 (jit_event_handler): Update.
11840 (free_objfile_data): Reset inferior data if needed.
11841 (_initialize_jit): Update.
11845 * jit.c (bfd_open_from_target_memory): Move higher in file.
11849 * libunwind-frame.c (libunwind_load): Display message if dlopen
11854 * symtab.h (symbol_found_callback_ftype): New typedef.
11855 (iterate_over_symbols): Use the above.
11856 * symtab.c (iterate_over_symbols): Likewise.
11857 * language.h (language_defn->la_iterate_over_symbols): Likewise.
11858 * ada-lang.c (ada_iterate_over_symbols): Likewise.
11859 * linespec.c (iterate_over_all_matching_symtabs): Likewise.
11860 (iterate_name_matcher): Document return values.
11861 (collect_one_symbol): Likewise.
11862 (collect_function_symbols): Likewise.
11863 (collect_symbols): Likewise.
11867 * ada-lang.c (resolve_subexp): Update.
11868 (ada_lookup_symbol_list): Add 'full_search' argument.
11869 (ada_iterate_over_symbols): Pass 0 as full_search argument to
11870 ada_lookup_symbol_list.
11871 (ada_lookup_encoded_symbol): Update.
11872 (get_var_value): Update.
11873 * ada-exp.y (block_lookup): Update.
11874 (write_var_or_type): Update.
11875 (write_name_assoc): Update.
11876 * ada-lang.h (ada_lookup_symbol_list): Update.
11880 * language.h (struct language_defn) <la_iterate_over_symbols>: Fix
11885 * symtab.h: Remove outdated comment.
11886 (SYMBOL_MATCHES_NATURAL_NAME): Delete.
11890 Fix build error in Darwin port.
11891 * i386-darwin-nat.c: Include i386-nat.h.
11895 PR breakpoints/13568:
11896 * dwarf2read.c (dwarf_decode_macro_bytes): Add 'include_hash'
11897 argument. Check for recursive includes.
11898 (dwarf_decode_macros): Create an include hash.
11902 * configure.tgt (powerpc-*-linux*): Add glibc-tdep.o.
11903 * ppc-linux-tdep.c: Include glibc-tdep.h.
11904 (powerpc32_plt_stub, powerpc32_plt_stub_so): Add PLT stub templates.
11905 (powerpc_linux_in_plt_stub): New function.
11906 (powerpc_linux_in_dynsym_resolve_code): New function.
11907 (ppc_skip_trampoline_code): New function.
11908 (ppc_linux_init_abi): Use PPC specific functions rather than generic.
11909 Use glibc_skip_solib_resolver.
11913 Code cleanup: Make 1440 bytes of data segment read-only.
11914 * arch-utils.c (endian_enum): Make it const char *const [].
11915 * arm-tdep.c (fp_model_strings, arm_abi_strings, arm_mode_strings):
11917 * breakpoint.c (always_inserted_enums): Likewise.
11918 * cli/cli-cmds.c (script_ext_enums): Likewise.
11919 * cli/cli-decode.c (add_setshow_enum_cmd, complete_on_enum): Make the
11920 enumlist parameter const char *const *.
11921 * cli/cli-decode.h (struct cmd_list_element): Make the enums field
11922 const char *const *.
11923 * command.h (complete_on_enum, add_setshow_enum_cmd): Make the enumlist
11924 parameter const char *const *.
11925 * cris-tdep.c (cris_modes): Make it const char *const [].
11926 * filesystem.c (target_file_system_kinds): Likewise.
11927 * i386-tdep.c (valid_flavors, valid_conventions): Likewise.
11928 * infrun.c (follow_fork_mode_kind_names, follow_exec_mode_names)
11929 (can_use_displaced_stepping_enum, scheduler_enums)
11930 (exec_direction_names): Likewise.
11931 * language.c (_initialize_language): Make the type_or_range_names and
11932 case_sensitive_names variables const char *const [].
11933 * mips-tdep.c (mips_abi_strings): Make it const char *const [].
11934 * python/python.c (python_excp_enums): Likewise.
11935 * remote.c (interrupt_sequence_modes): Likewise.
11936 * rs6000-tdep.c (powerpc_vector_strings): Likewise.
11937 * serial.c (logbase_enums): Likewise.
11938 * sh-tdep.c (sh_cc_enum): Likewise.
11939 * stack.c (print_frame_arguments_choices, print_entry_values_choices):
11941 * symtab.c (multiple_symbols_modes): Likewise.
11942 * tui/tui-win.c (tui_border_kind_enums, tui_border_mode_enums):
11944 * utils.c (internal_problem_modes): Likewise.
11948 Fix the 2012-01-26 regression by la_get_symbol_name_match_p.
11949 * linespec.c (iterate_name_matcher): Negate the SYMBOL_NAME_MATCH_P
11954 * configure.ac (with_python): Fix absolute path handling for win32.
11955 * configure: Regenerate.
11959 * symtab.c: Whitespace cleanup, no code changes.
11961 * symtab.c (lookup_symbol_in_language): Improve comment.
11962 (lookup_symbol_aux): Fix comment.
11964 * psymtab.c (add_psymbol_to_list): Result is now "void".
11965 * psympriv.h (add_psymbol_to_list): Update.
11967 * dwarf2read.c (add_partial_symbol): Delete local psym, unused.
11971 Do not open script filenames twice.
11972 * cli/cli-cmds.c (source_script_from_stream): Pass to
11973 source_python_script also STREAM.
11974 * python/py-auto-load.c (source_section_scripts): Pass to
11975 source_python_script_for_objfile also STREAM.
11976 (auto_load_objfile_script): Pass to source_python_script_for_objfile
11978 * python/python-internal.h (source_python_script_for_objfile): New
11979 parameter file, rename parameter file to filename.
11980 * python/python.c (python_run_simple_file): Call PyRun_SimpleFile
11981 instead if !_WIN32. Update the function comment.
11982 (source_python_script, source_python_script_for_objfile)
11983 (source_python_script): New parameter file, rename parameter file to
11984 filename. Pass FILENAME to python_run_simple_file.
11985 * python/python.h (source_python_script): New parameter file, rename
11986 parameter file to filename.
11990 * corelow.c (core_has_fake_pid): Delete.
11991 (core_close): Delete references to `core_has_fake_pid'.
11992 (add_to_thread_list): Adjust to mark the inferior's pid as fake.
11993 (core_open): Delete references to `core_has_fake_pid'.
11994 (core_pid_to_str): Adjust to check inferior->fake_pid_p instead of
11995 the removed global.
11999 * symfile.h (struct quick_symbol_functions) [expand_symtabs_matching]:
12000 Remove language parameter from name_matcher. Adjust the comment.
12001 * symtab.c (search_symbols_name_matches, expand_partial_symbol_name):
12002 Remove language parameter.
12003 * ada-lang.c (ada_expand_partial_symbol_name): Likewise.
12004 * linespec.c (iterate_name_matcher): Likewise.
12005 * dwarf2read.c (dw2_expand_symtabs_matching): Adjust type of
12006 name_matcher. Adjust call accordingly.
12007 * psymtab.c (expand_symtabs_matching_via_partial): Likewise.
12008 (maintenance_check_symtabs): Adjust type of parameter "fun".
12009 * psymtab.h (maintenance_check_symtabs): Likewise.
12013 * language.h (symbol_name_match_p_ftype): New typedef.
12014 (struct language_defn): Replace field la_symbol_name_compare
12015 by la_get_symbol_name_match_p.
12016 * ada-lang.c (ada_get_symbol_name_match_p): New function.
12017 (ada_language_defn): Use it.
12018 * linespec.c (struct symbol_matcher_data): New type.
12019 (iterate_name_matcher): Rewrite.
12020 (iterate_over_all_matching_symtabs): Pass a pointer to
12021 a symbol_matcher_data struct to expand_symtabs_matching
12022 instead of just the lookup name.
12023 * c-lang.c, d-lang.c, jv-lang.c, m2-lang.c, objc-lang.c,
12024 opencl-lang.c, p-lang.c, language.c: Delete field
12025 la_symbol_name_compare, and replace by NULL for new field
12026 la_get_symbol_name_match_p.
12027 * symfile.h (struct quick_symbol_functions): Update comment.
12031 * breakpoint.c (bpstat_stop_status): Check 'breakpoint_at' before
12037 * solib.c (update_solib_list): Update the program space's
12038 added_solibs and deleted_solibs fields.
12039 * progspace.h (struct program_space) <added_solibs,
12040 deleted_solibs>: New fields.
12041 (clear_program_space_solib_cache): Declare.
12042 * progspace.c (release_program_space): Call
12043 clear_program_space_solib_cache.
12044 (clear_program_space_solib_cache): New function.
12045 * infrun.c (handle_inferior_event) <TARGET_WAITKIND_LOADED>: Call
12046 bpstat_stop_status. Use handle_solib_event.
12047 * breakpoint.c: Include gdb_regex.h.
12048 (print_solib_event): New function.
12049 (bpstat_print): Use print_solib_event.
12050 (bpstat_stop_status): Add special case for bp_shlib_event.
12051 (handle_solib_event): New function.
12052 (bpstat_what): Use handle_solib_event.
12053 (struct solib_catchpoint): New.
12054 (dtor_catch_solib, insert_catch_solib, remove_catch_solib)
12055 (breakpoint_hit_catch_solib, check_status_catch_solib)
12056 (print_it_catch_solib, print_one_catch_solib)
12057 (print_mention_catch_solib, print_recreate_catch_solib): New
12059 (catch_solib_breakpoint_ops): New global.
12060 (catch_load_or_unload, catch_load_command_1)
12061 (catch_unload_command_1): New functions.
12062 (internal_bkpt_check_status): Add special case for
12064 (internal_bkpt_print_it): Use print_solib_event.
12065 (initialize_breakpoint_ops): Initialize
12066 catch_solib_breakpoint_ops.
12067 (_initialize_breakpoint): Register "catch load" and "catch
12069 * breakpoint.h (handle_solib_event): Declare.
12070 * NEWS: Add entry for "catch load" and "catch unload".
12074 * ada-lang.c: Include gdb_vecs.h.
12075 * charset.c: Include gdb_vecs.h.
12076 * tracepoint.h: Include gdb_vecs.h.
12077 * gdb_vecs.h: New file.
12081 * breakpoint.c (breakpoint_hit_catch_fork)
12082 (breakpoint_hit_catch_vfork, breakpoint_hit_catch_syscall)
12083 (breakpoint_hit_catch_exec): Make use of the `ws' argument.
12084 * infrun.c (inferior_has_forked, inferior_has_vforked)
12085 (inferior_has_execd, inferior_has_called_syscall): Delete.
12086 (handle_syscall_event): Get syscall_number from the execution
12087 control state's wait status.
12088 (wait_for_inferior): Don't clear syscall_number.
12092 * breakpoint.c (bpstat_check_location, bpstat_stop_status,
12093 pc_at_non_inline_function): Add `ws' parameter, and pass it down.
12094 (breakpoint_hit_catch_fork, breakpoint_hit_catch_vfork)
12095 (breakpoint_hit_catch_syscall, breakpoint_hit_catch_exec): Add
12097 (breakpoint_hit_ranged_breakpoint): Add `ws' parameter. Return
12098 false for events other than TARGET_SIGNAL_TRAP.
12099 (breakpoint_hit_watchpoint, base_breakpoint_breakpoint_hit):
12100 Add `ws' parameter.
12101 (bkpt_breakpoint_hit): Add `ws' parameter. Return false for
12102 events other than TARGET_SIGNAL_TRAP.
12103 (tracepoint_breakpoint_hit): Add `ws' parameter.
12104 * breakpoint.h (struct breakpoint_ops) <breakpoint_hit>: Add `ws'
12106 (bpstat_stop_status): Same.
12107 (pc_at_non_inline_function): Same.
12108 * infrun.c (handle_syscall_event, handle_inferior_event): Adjust
12109 to pass the current event's waitstatus to bpstat_stop_status
12110 and pc_at_non_inline_function.
12115 * cli/cli-cmds.c (source_script_from_stream): Never fclose STREAM.
12116 Update the function comment for it.
12117 (source_script_with_search): Call make_cleanup_fclose for STREAM.
12118 * cli/cli-script.c (script_from_file): Do not call make_cleanup_fclose
12123 * breakpoint.c (bpstat_stop_status): Moving clearing print_it
12124 outside `bs->stop' block.
12125 (bpstat_what): Rework bp_shlib_event handling.
12126 (internal_bkpt_check_status): If the breakpoint is a
12127 bp_shlib_event, then set bs->stop and bs->print if
12128 stop_on_solib_events is set.
12132 Delete #if 0'd out code.
12133 * stack.c (print_frame_label_vars): Remove.
12134 (catch_info): Likewise.
12135 (_initialize_stack): Remove "info catch" command.
12136 * NEWS: Mention the above.
12140 * remote.c (remote_add_inferior): New `fake_pid_p' parameter. Use
12142 (remote_notice_new_inferior): If the remote end doesn't support
12143 the multiprocess extensions, then the PID is fake.
12144 (add_current_inferior_and_thread): New.
12145 (remote_start_remote): Use it.
12146 (extended_remote_attach_1): Adjust.
12147 (extended_remote_create_inferior_1): Use
12148 add_current_inferior_and_thread.
12152 Fix watchpoints to be specific for each inferior.
12153 * breakpoint.c (watchpoint_in_thread_scope): Verify also
12154 current_program_space.
12155 * i386-nat.c (i386_inferior_data_cleanup): New.
12156 (i386_inferior_data_get): Replace variable inf_data_local by an
12157 inferior_data call.
12158 (i386_use_watchpoints): Initialize i386_inferior_data.
12159 * linux-nat.c (linux_nat_iterate_watchpoint_lwps): Use INFERIOR_PTID
12160 specific iterate_over_lwps.
12164 Fix watchpoints across inferior fork.
12165 * amd64-linux-nat.c (update_debug_registers_callback): Update the
12166 comment for linux_nat_iterate_watchpoint_lwps.
12167 (amd64_linux_dr_set_control, amd64_linux_dr_set_addr): Use
12168 linux_nat_iterate_watchpoint_lwps.
12169 (amd64_linux_prepare_to_resume): New comment on Linux kernel.
12170 * i386-linux-nat.c (update_debug_registers_callback): Update the
12171 comment for linux_nat_iterate_watchpoint_lwps.
12172 (i386_linux_dr_set_control, i386_linux_dr_set_addr): Use
12173 linux_nat_iterate_watchpoint_lwps.
12174 (i386_linux_prepare_to_resume): New comment on Linux kernel.
12175 * i386-nat.c: Include inferior.h.
12176 (dr_mirror): Remove.
12177 (i386_inferior_data, struct i386_inferior_data)
12178 (i386_inferior_data_get): New.
12179 (i386_debug_reg_state): Use i386_inferior_data_get.
12180 (i386_cleanup_dregs, i386_update_inferior_debug_regs)
12181 (i386_insert_watchpoint, i386_remove_watchpoint)
12182 (i386_stopped_data_address, i386_insert_hw_breakpoint)
12183 (i386_remove_hw_breakpoint): New variable state, use
12184 i386_debug_reg_state instead of DR_MIRROR.
12185 * linux-nat.c (delete_lwp): New declaration.
12186 (num_lwps): Move here from downwards.
12187 (delete_lwp_cleanup): New.
12188 (linux_child_follow_fork): Create new child_lp, call
12189 linux_nat_new_thread and linux_nat_prepare_to_resume before calling
12191 (num_lwps): Move upwards.
12192 (linux_nat_iterate_watchpoint_lwps): New.
12193 * linux-nat.h (linux_nat_iterate_watchpoint_lwps_ftype): New.
12194 (linux_nat_iterate_watchpoint_lwps_ftype): New declaration.
12202 * top.c (caution): Rename to ...
12203 (confirm): ... this.
12204 (show_caution): Rename to ...
12205 (show_confirm): ... this.
12206 (quit_cover): Adjust.
12207 (init_main): Adjust.
12208 * top.h (caution): Rename to ...
12209 (confirm): ... this.
12210 * utils.c (internal_vproblem, defaulted_query): Adjust.
12214 * top.c (caution): Update comment.
12215 (execute_command): Don't consider the current value of `caution'.
12219 * cli/cli-cmds.c (find_and_open_script): Handle failure of fdopen.
12223 * inf-child.c: Include "gdb_stat.h" instead of <sys/stat.h>.
12224 * linux-tdep.c (linux_info_proc): Avoid ARI coding style warning.
12225 * target.c (target_fileio_pwrite): Remove buffer address from
12227 (target_fileio_pread): Likewise.
12231 * NEWS: Document remote "info proc" and "generate-core-file".
12235 * gdbarch.sh (find_memory_regions): New callback.
12236 * gdbarch.c, gdbarch.h: Regenerate.
12238 * gcore.c (gcore_memory_sections): Try gdbarch find_memory_regions
12239 callback before falling back to target method.
12241 * linux-nat.c (read_mapping, linux_nat_find_memory_regions): Remove.
12242 (linux_target_install_ops): No longer install it.
12244 * linux-tdep.c (linux_find_memory_regions): New function.
12245 (linux_init_abi): Install it.
12249 * gdbarch.sh (make_corefile_notes): New architecture callback.
12250 * gdbarch.c: Regenerate.
12251 * gdbarch.h: Likewise.
12253 * gcore.c (write_gcore_file): Try gdbarch_make_corefile_notes
12254 before target_make_corefile_notes. If NULL is returned, the
12255 target does not support core file generation.
12257 * linux-nat.c: Include "linux-tdep.h".
12258 (find_signalled_thread, find_stop_signal): Remove.
12259 (linux_nat_do_thread_registers): Likewise.
12260 (struct linux_nat_corefile_thread_data): Likewise.
12261 (linux_nat_corefile_thread_callback): Likewise.
12262 (iterate_over_spus): Likewise.
12263 (struct linux_spu_corefile_data): Likewise.
12264 (linux_spu_corefile_callback): Likewise.
12265 (linux_spu_make_corefile_notes): Likewise.
12266 (linux_nat_collect_thread_registers): New function.
12267 (linux_nat_make_corefile_notes): Replace contents by call to
12268 linux_make_corefile_notes passing linux_nat_collect_thread_registers
12269 as native-only callback.
12271 * linux-tdep.h: Include "bfd.h".
12272 (struct regcache): Add forward declaration.
12273 (linux_collect_thread_registers_ftype): New typedef.
12274 (linux_make_corefile_notes): Add prototype.
12275 * linux-tdep.c: Include "gdbthread.h", "gdbcore.h", "regcache.h",
12276 "regset.h", and "elf-bfd.h".
12277 (find_signalled_thread, find_stop_signal): New functions.
12278 (linux_spu_make_corefile_notes): Likewise.
12279 (linux_collect_thread_registers): Likewise.
12280 (struct linux_corefile_thread_data): New data structure.
12281 (linux_corefile_thread_callback): New funcion.
12282 (linux_make_corefile_notes): Likewise.
12283 (linux_make_corefile_notes_1): Likewise.
12284 (linux_init_abi): Install it.
12288 * gdbarch.sh (info_proc): New callback.
12289 * gdbarch.c, gdbarch.h: Regenerate.
12291 * infcmd.c (info_proc_cmd_1): Try gdbarch info_proc callback
12292 before falling back to the target info_proc callback.
12294 * linux-nat.c: Do not include "cli/cli-utils.h".
12295 (linux_nat_info_proc): Remove.
12296 (linux_target_install_ops): No longer install it.
12298 * linux-tdep.c: Include "cli/cli-utils.h" and <ctype.h>.
12299 (read_mapping): New function.
12300 (linux_info_proc): Likewise.
12301 (linux_init_abi): Install it.
12305 * defs.h (enum info_proc_what): Moved here from linux-nat.c
12306 * infcmd.c: (info_proc_cmd_1): New function.
12307 (info_proc_cmd): New function, moved here from equivalent routine
12308 orignally in linux-nat.c.
12309 (info_proc_cmd_mappings): Likewise.
12310 (info_proc_cmd_stat): Likewise.
12311 (info_proc_cmd_status): Likewise.
12312 (info_proc_cmd_cwd): Likewise.
12313 (info_proc_cmd_cmdline): Likewise.
12314 (info_proc_cmd_exe): Likewise.
12315 (info_proc_cmd_all): Likewise.
12316 (_initialize_infcmd): Install "info proc" command and subcommands.
12318 * target.h (struct target_ops): Add to_info_proc.
12319 (target_info_proc): Add prototype.
12320 * target.c (target_info_proc): New function.
12322 * procfs.c (procfs_info_proc): Add prototype.
12323 (info_proc_cmd): Rename into ...
12324 (procfs_info_proc): ... this. Update argument types as appropriate
12325 for a to_info_proc implementation. Handle "what" argument.
12326 (procfs_target): Install procfs_info_proc.
12327 (_initialize_procfs): No longer install "info proc" command.
12329 * linux-nat.c: (enum info_proc_what): Remove.
12330 (linux_nat_info_proc_cmd_1): Rename into ...
12331 (linux_nat_info_proc): ... this. Update argument types as appropriate
12332 for a to_info_proc implementation.
12333 (linux_nat_info_proc_cmd): Remove.
12334 (linux_nat_info_proc_cmd_mappings): Likewise.
12335 (linux_nat_info_proc_cmd_stat): Likewise.
12336 (linux_nat_info_proc_cmd_status): Likewise.
12337 (linux_nat_info_proc_cmd_cwd): Likewise.
12338 (linux_nat_info_proc_cmd_cmdline): Likewise.
12339 (linux_nat_info_proc_cmd_exe): Likewise.
12340 (linux_nat_info_proc_cmd_all): Likewise.
12341 (linux_target_install_ops): Install linux_nat_info_proc.
12342 (_initialize_linux_nat): No longer install "info proc" command
12347 * configure.ac [AC_CHECK_FUNCS]: Check for readlink.
12348 * config.in, configure: Regenerate.
12350 * target.h (struct target_ops): Add to_fileio_readlink.
12351 (target_fileio_readlink): Add prototype.
12352 * target.c (target_fileio_readlink): New function.
12354 * inf-child.c: Conditionally include <sys/param.h>.
12355 (inf_child_fileio_readlink): New function.
12356 (inf_child_target): Install it.
12358 * remote.c (PACKET_vFile_readlink): New enum value.
12359 (remote_hostio_readlink): New function.
12360 (init_remote_ops): Install it.
12361 (_initialize_remote): Handle vFile:readlink packet type.
12366 * configure.ac [AC_CHECK_FUNCS]: Check for pread and pwrite.
12367 * config.in, configure: Regenerate.
12369 * target.h (struct target_ops): Add to_fileio_open, to_fileio_pwrite,
12370 to_fileio_pread, to_fileio_close, to_fileio_unlink.
12371 (target_fileio_open): Add prototype.
12372 (target_fileio_pwrite): Likewise.
12373 (target_fileio_pread): Likewise.
12374 (target_fileio_close): Likewise.
12375 (target_fileio_unlink): Likewise.
12376 (target_fileio_read_alloc): Likewise.
12377 (target_fileio_read_stralloc): Likewise.
12379 * target.c: Include "gdb/fileio.h".
12380 (target_read_stralloc): Accept trailing, but not embedded NUL bytes.
12381 (default_fileio_target): New function.
12382 (target_fileio_open): Likewise.
12383 (target_fileio_pwrite): Likewise.
12384 (target_fileio_pread): Likewise.
12385 (target_fileio_close): Likewise.
12386 (target_fileio_unlink): Likewise.
12387 (target_fileio_close_cleanup): Likewise.
12388 (target_fileio_read_alloc_1): Likewise.
12389 (target_fileio_read_alloc): Likewise.
12390 (target_fileio_read_stralloc): Likewise.
12392 * inf-child.c: Include "gdb/fileio.h", <sys/types.h>, <sys/stat.h>,
12393 <fcntl.h>, and <unistd.h>.
12394 (inf_child_fileio_open_flags_to_host): New function.
12395 (inf_child_errno_to_fileio_error): Likewise.
12396 (inf_child_fileio_open): Likewise.
12397 (inf_child_fileio_pwrite): Likewise.
12398 (inf_child_fileio_pread): Likewise.
12399 (inf_child_fileio_close): Likewise.
12400 (inf_child_fileio_unlink): Likewise.
12401 (inf_child_target): Install to_fileio routines.
12403 * remote.c (init_remote_ops): Install to_fileio routines.
12408 * remote.c (remote_multi_process_p): Only check for multi-process
12409 protocol feature, do not check for extended protocol.
12410 (remote_supports_multi_process): Check for extended protocol here.
12411 (set_general_process): Likewise.
12412 (extended_remote_kill): Likewise.
12413 (remote_pid_to_str): Likewise.
12414 (remote_query_supported): Always query multiprocess mode.
12419 * inferior.h (struct inferior): Add fake_pid_p.
12420 * inferior.c (exit_inferior_1): Clear fake_pid_p.
12421 * remote.c (remote_start_remote): Set fake_pid_p if we have to use
12422 magic_null_ptid since the remote side doesn't provide a real PID.
12426 * NEWS: Combine the two Python sections.
12430 * target.h (target_close): Update comment on the target's unpush state.
12434 * linux-nat.c (linux_nat_close): Call linux_nat_is_async_p and
12435 linux_nat_async directly instead of going through the target
12437 * target.c (unpush_target): Close target after unpushing it, not
12442 * mdebugread.c (sort_blocks): Replace integer constants with ones
12443 derived from FIRST_LOCAL_BLOCK.
12449 * symfile.c (find_separate_debug_file): New function.
12450 (terminate_after_last_dir_separator): Likewise.
12451 (find_separate_debug_file_by_debuglink): Also try realpath.
12452 * configure.ac (AC_CHECK_FUNCS): Add lstat.
12453 * configure: Regenerate.
12454 * config.in: Regenerate.
12458 * Makefile.in (TARGET_SYSTEM_ROOT, TARGET_SYSTEM_ROOT_DEFINE): Delete.
12459 (main.o): Remove rule.
12460 * configure.ac (BINDIR): Define with AC_DEFINE_DIR.
12461 (--with-sysroot): Rewrite.
12462 * configure: Regenerate.
12463 * config.in: Regenerate.
12467 * parse.c (initialize_expout): New function.
12468 (reallocate_expout): Likewise.
12469 (parse_exp_in_context): Use `initialize_expout' and
12470 `reallocate_expout' when appropriate.
12474 * record.c (struct record_breakpoint, record_breakpoint_p)
12475 (record_breakpoints): New.
12476 (record_insert_breakpoint, record_remove_breakpoint): Manage
12477 record breakpoints list. Only remove breakpoints from the
12478 inferior if they had been inserted there in the first place.
12482 * linespec.c (decode_line_internal): Don't call symtabs_from_filename
12483 if we know we don't have a file name to look for.
12487 * dwarf2-frame.c (dwarf2_frame_cfa): Throw NOT_AVAILABLE_ERROR, if
12488 the frame's stop reason is UNWIND_UNAVAILABLE.
12492 Fix compilation error.
12493 * m2-exp.y (yyerror): Use ANSI C prototype.
12497 * f-exp.y (parse_number): Convert prototype from K&R to ANSI C.
12498 (growbuf_by_size): Likewise.
12499 (yyerror): Likewise.
12500 * m2-exp.y (make_qualname): Remove function (was #if 0'ed).
12501 (modblock): Remove variable (was #if 0'ed).
12502 (parse_number): Convert prototype from K&R to ANSI C.
12503 (yyerror): Likewise.
12504 * objc-exp.y (parse_number): Likewise.
12505 (yyerror): Likewise.
12506 (yylex): Remove #if 0'ed code.
12507 * p-exp.y (uptok): Convert prototype from K&R to ANSI C.
12508 (yyerror): Likewise.
12513 * symtab.h (compare_filenames_for_search): Declare.
12514 * symtab.c (compare_filenames_for_search): New function.
12515 (iterate_over_some_symtabs): Use it.
12516 * symfile.h (struct quick_symbol_functions)
12517 <map_symtabs_matching_filename>: Change spec.
12518 * psymtab.c (partial_map_symtabs_matching_filename): Use
12519 compare_filenames_for_search. Update for new spec.
12520 * dwarf2read.c (dw2_map_symtabs_matching_filename): Use
12521 compare_filenames_for_search. Update for new spec.
12522 * breakpoint.c (clear_command): Use compare_filenames_for_search.
12527 * gdbtypes.h (TYPE_FLAG_ENUM): New macro.
12528 (struct main_type) <flag_flag_enum>: New field.
12529 * dwarf2read.c (process_enumeration_scope): Detect "flag" enums.
12530 * NEWS: Add entries.
12531 * c-valprint.c (c_val_print) <TYPE_CODE_ENUM>: Handle "flag"
12533 * python/lib/gdb/printing.py (_EnumInstance): New class.
12534 (FlagEnumerationPrinter): Likewise.
12538 * breakpoint.c (create_sals_from_address_default): New function.
12539 (create_breakpoints_sal_default): Likewise.
12540 (decode_linespec_default): Likewise.
12541 (is_marker_spec): Removed.
12542 (strace_marker_p): New function.
12543 (init_breakpoint_sal): Using `strace_marker_p' instead of
12545 (create_breakpoint): Call method `create_sals_from_address' from
12546 breakpoint_ops, replacing code that created SALs conditionally
12547 on the type of the breakpoint. Call method `create_breakpoints_sal',
12548 replacing code that created breakpoints conditionally on the type
12550 (base_breakpoint_create_sals_from_address): New function.
12551 (base_breakpoint_create_breakpoints_sal): Likewise.
12552 (base_breakpoint_decode_linespec): Likewise.
12553 (base_breakpoint_ops): Add methods
12554 `base_breakpoint_create_sals_from_address',
12555 `base_breakpoint_create_breakpoints_sal' and
12556 `base_breakpoint_decode_linespec'.
12557 (bkpt_create_sals_from_address): New function.
12558 (bkpt_create_breakpoints_sal): Likewise.
12559 (bkpt_decode_linespec): Likewise.
12560 (tracepoint_create_sals_from_address): Likewise.
12561 (tracepoint_create_breakpoints_sal): Likewise.
12562 (tracepoint_decode_linespec): Likewise.
12563 (strace_marker_create_sals_from_address): Likewise.
12564 (strace_marker_create_breakpoints_sal): Likewise.
12565 (strace_marker_decode_linespec): Likewise.
12566 (strace_marker_breakpoint_ops): New variable.
12567 (addr_string_to_sals): Remove `marker_spec'. Call method
12568 `decode_linespec' from breakpoint_ops, replacing code that decoded
12569 an address string into a SAL. Use `strace_marker_p' instead of
12571 (strace_command): Decide whether we are dealing with a static
12572 tracepoint with marker or not. Use the appropriate breakpoint_ops.
12573 (initialize_breakpoint_ops): Initialize new fields of breakpoint_ops.
12574 * breakpoint.h (linespec_result, linespec_sals): New forward
12576 (breakpoint_ops) <create_sals_from_address>,
12577 <create_breakpoints_sal>, <decode_linespec>: New methods.
12581 * NEWS: Update text for "maint set python print-stack".
12582 It is deprecated in gdb 7.4 and deleted in 7.5.
12586 * gdb_curses.h (MOUSE_MOVED) [__MINGW32__]: Undefine before
12587 including curses.h.
12591 * configure: Regenerate.
12592 * config.in: Regenerate.
12597 * varobj.c (ANONYMOUS_STRUCT_NAME): Define.
12598 (ANONYMOUS_UNION_NAME): Define.
12599 (is_path_expr_parent): New function.
12600 (get_path_expr_parent): New function.
12601 (is_anonymous_child): New function.
12602 (create_child_with_value): If the child is anonymous and without
12603 a name, assign an object name to it.
12604 (c_describe_child): Use get_path_expr_parent to determine
12605 the parent expression.
12606 If there field represents an anonymous struct or union and
12607 has no name, set an appropriate display name and expression.
12608 (cplus_describe_child): Likewise.
12612 * i386-tdep.c (i386_frame_cache_1): Also mark the frame base as
12613 available when %ebp is found to be zero (outermost).
12617 * common/gdb_assert.h (gdb_static_assert): Rename static_assert to
12618 an internal gdb_static_assert.
12619 * mi/mi-common.c: Rename static_assert to gdb_static_assert.
12624 * breakpoint.c (_initialize_breakpoint): Fix help for "catch
12625 catch" and "catch throw".
12629 * blockframe.c (block_innermost_frame): Start search from selected
12630 frame, if present, or otherwise the current frame.
12632 * c-exp.y (variable): Update innermost_block for
12633 'block COLONCOLON NAME' clause.
12634 * m2-exp.y (variable): Ditto.
12635 * objc-exp.y (variable): Ditto.
12640 * python/python.c (finish_python_initialization): Set sys.argv.
12644 * dwarf2read.c (dwarf_decode_lines): Remove arg "abfd". New arg
12645 "want_line_info". All callers updated.
12646 (dwarf_decode_lines_1): New function.
12647 (handle_DW_AT_stmt_list): Add function comment.
12648 New arg "want_line_info". All callers updated.
12649 (read_file_scope,read_type_unit_scope): Move comment from
12650 handle_DW_AT_stmt_list to here.
12654 Fix regression after libiberty/ update for GCC PR 6057 and others.
12655 * c-exp.y (operator) <OPERATOR DELETE>
12656 (operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
12657 * cp-name-parser.y (fill_comp, make_operator, make_dtor)
12658 (make_builtin_type, make_name): New variable i, add gdb_assert.
12659 (operator) <OPERATOR NEW>: Update ARGS to 3.
12660 (operator) <OPERATOR DELETE>: Add trailing space.
12661 (operator) <OPERATOR NEW '[' ']'>: Update ARGS to 3.
12662 (operator) <OPERATOR DELETE '[' ']'>: Add trailing space.
12663 * cp-support.c (cp_canonicalize_string): Check NULL from
12664 cp_comp_to_string, call warning and return.
12668 Fix duplicate .o files after omitting libbfd.a.
12669 * Makefile.in (ALL_TARGET_OBS): Remove corelow.o.
12670 (SFILES): Add corelow.c.
12671 (COMMON_OBS): Add corelow.o.
12672 (ALLDEPFILES): Remove corelow.c.
12673 * config/alpha/alpha-linux.mh (NATDEPFILES): Remove corelow.o.
12674 * config/alpha/alpha-osf3.mh: Likewise.
12675 * config/alpha/fbsd.mh: Likewise.
12676 * config/arm/nbsdaout.mh: Likewise.
12677 * config/arm/nbsdelf.mh: Likewise.
12678 * config/i386/i386gnu.mh: Likewise.
12679 * config/ia64/hpux.mh: Likewise.
12680 * config/ia64/linux.mh: Likewise.
12681 * config/m32r/linux.mh: Likewise.
12682 * config/m68k/linux.mh: Likewise.
12683 * config/mips/irix5.mh: Likewise.
12684 * config/mips/irix6.mh: Likewise.
12685 * config/pa/hpux.mh: Likewise.
12686 * config/pa/linux.mh: Likewise.
12687 * config/powerpc/aix.mh: Likewise.
12688 * config/sparc/linux.mh: Likewise.
12689 * config/sparc/linux64.mh: Likewise.
12690 * config/sparc/sol2.mh: Likewise.
12691 * config/vax/vax.mh: Likewise.
12692 * configure.tgt (alpha*-*-freebsd* alpha*-*-kfreebsd*-gnu)
12693 (alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu, alpha*-*-openbsd*)
12694 (am33_2.0*-*-linux*, arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-linux*)
12695 (arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-netbsd*)
12696 (hppa*-*-openbsd*, i[34567]86-*-dicos*, i[34567]86-*-freebsd*)
12697 (i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-netbsd*)
12698 (i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*, i[34567]86-*-nto*)
12699 (i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*)
12700 (i[34567]86-*-solaris*, i[34567]86-*-linux*, i[34567]86-*-cygwin*)
12701 (i[34567]86-*-mingw32*, m68*-*-netbsd*, m68*-*-knetbsd*-gnu)
12702 (m68*-*-openbsd*, m88*-*-openbsd*, microblaze*-linux-*)
12703 (microblaze*-*-linux*, mips*-*-linux*, mips*-*-netbsd*)
12704 (mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
12705 (powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-linux*)
12706 (powerpc64-*-linux*, s390*-*-*, score-*-*, sh*-*-linux*)
12707 (sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
12708 (sparc*-*-freebsd*, sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*)
12709 (sparc-*-knetbsd*-gnu, sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu)
12710 (sparc-*-openbsd*, sparc64-*-openbsd*, tic6x-*-*linux, vax-*-netbsd*)
12711 (vax-*-knetbsd*-gnu, vax-*-openbsd*, x86_64-*-dicos*, x86_64-*-linux*)
12712 (x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu, x86_64-*-netbsd*)
12713 (x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*, xtensa*-*-linux*): Remove
12714 corelow.o from gdb_target_obs.
12715 * corefile.c (core_target): Update the comment on NULL value.
12716 (core_file_command): Replace error by gdb_assert on CORE_TARGET.
12717 * corelow.c (sniff_core_bfd): Call error instead of warning on zero
12718 MATCHES. Drop YUMMY set on NULL.
12719 (core_close): Do not call exit_inferior_silent on zero PID. Do not
12720 reclaim CORE_DATA if it is already NULL.
12724 * gdbtypes.c (safe_parse_type): Initialize type to keep gcc happy.
12725 * varobj.c (varobj_set_value): Initialize val,value to keep gcc happy.
12729 * breakpoint.c (wrapper.h): Don't include.
12733 * Makefile.in (SFILES): Remove wrapper.c.
12734 (HFILES_NO_SRCDIR): Remove wrapper.h.
12735 (COMMON_OBS): Remove wrapper.o.
12736 * cli/cli-interp.c: Don't inlude wrapper.h.
12737 * corelow.c: Likewise.
12738 (core_open): Replace gdb_target_find_new_threads with
12739 TRY_CATCH around target_find_new_threads.
12740 * eval.c (fetch_subexp_value): Likewise for value_fetch_lazy.
12741 * gdbtypes.c (safe_parse_type): Likewise for parse_and_eval_type.
12742 * varobj.c (varobj_create): Likewise for parse_exp_1 and
12743 evaluate_expression.
12744 (varobj_set_value): Likewise for evaluate_expression and
12746 (install_new_variable): Likewise for value_fetch_lazy.
12747 (adjust_value_for_child_access): Likewise for value_ind.
12748 (c_describe_child): Likewise for value_subscript and
12750 (c_value_of_root): Likewise for evaluate_expression.
12751 * wrapper.c: Remove.
12752 * wrapper.h: Remove.
12756 * dwarf2read.c (read_and_check_comp_unit_head): Renamed from
12757 partial_read_comp_unit_head. Replace "buffer", "buffer_size" and
12758 "abfd" args with "section". All callers updated.
12759 Error checking code moved ...
12760 (error_check_comp_unit_head): ... here. New function.
12761 (read_and_check_type_unit_head): Renamed from read_type_unit_head.
12762 Delete arg "abfd". New arg "type_offset". All callers updated.
12763 (create_debug_types_hash_table): Simplify by using
12764 read_and_check_type_unit_head.
12766 * parser-defs.h (namecopy): Delete.
12767 * parse.c (namecopy, namecopy_size): Move into copy_name.
12771 Partially fix duplicate .o files after omitting libbfd.a.
12772 * config/alpha/alpha-osf3.mh (NATDEPFILES): Remove solib.o.
12773 * config/i386/nbsdaout.mh (NATDEPFILES): Remove solib.o.
12774 * config/i386/obsdaout.mh (NATDEPFILES): Remove solib.o.
12775 * config/m68k/nbsdaout.mh (NATDEPFILES): Remove solib.o.
12776 * config/m68k/obsd.mh (NATDEPFILES): Remove solib.o.
12777 * config/powerpc/aix.mh (NATDEPFILES): Remove xcoffread.o.
12778 * config/vax/nbsdaout.mh (NATDEPFILES): Remove solib.o.
12782 * MAINTAINERS: Update my email address.
12786 * dwarf2read.c (dwarf2_per_objfile): Rename n_type_comp_units to
12787 n_type_units. Rename type_comp_units to all_type_units.
12789 (add_signatured_type_cu_to_table): Renamed from
12790 add_signatured_type_cu_to_list. All callers updated.
12792 * gdbtypes.h (struct cplus_struct_type): Delete member
12793 nfn_fields_total. All uses removed.
12797 * dwarf2read.c: Move FIXME from dwarf2_build_psymtabs_hard
12799 (dwarf2_find_comp_unit): Delete.
12800 (process_psymtab_comp_unit): Make result "void".
12801 Delete args buffer, info_ptr, buffer_size, and replace with
12802 "section". All callers updated.
12803 (dwarf2_build_psymtabs_hard): Simplify.
12808 * ada-lang.c (ada_exception_name_addr): Add `volatile' keyword
12809 before `struct gdb_exception'.
12810 * breakpoint.c (update_global_location_list_nothrow)
12811 (update_breakpoint_locations, enable_breakpoint_disp): Likewise.
12812 * cp-abi.c (value_rtti_type): Likewise.
12813 * cp-support.c (cp_validate_operator): Likewise.
12814 * infrun.c (insert_exception_resume_breakpoint)
12815 (check_exception_resume, keep_going): Likewise.
12816 * mi-interp.c (mi_breakpoint_created)
12817 (mi_breakpoint_modified): Likewise.
12818 * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Likewise.
12819 * solib-ia64-hpux.c (ia64_hpux_at_dld_breakpoint_p)
12820 (ia64_hpux_handle_dld_breakpoint_1): Likewise.
12824 * dwarf2read.c (statement_prologue): Delete, unused.
12826 * dwarf2read.c (dwarf2_per_cu_addr_size): Make result type an int.
12827 * dwarf2loc.h (dwarf2_per_cu_addr_size): Update.
12829 * dwarf2read.c (comp_unit_header): Delete, unused.
12833 * configure.tgt [s390*-*-*] (gdb_target_obs): Add corelow.o.
12834 * config/s390/s390.mh (NATDEPFILES): Remove corelow.o.
12838 * infrun.c (normal_stop): Don't skip calling the normal_stop
12839 observers if the thread was doing a multi-step, but stopped for
12840 some reason other than stepping.
12844 * cli/cli-decode.h: Add comments.
12845 (CMD_LIST_AMBIGUOUS): Moved to command.h
12846 (add_cmd, add_alias_cmd, add_prefix_cmd, add_abbrev_prefix_cmd)
12847 (set_cmd_cfunc, set_cmd_sfunc, set_cmd_completer, cmd_cfunc_eq)
12848 (set_cmd_context, get_cmd_context, lookup_cmd, lookup_cmd_1)
12849 (deprecate_cmd, deprecated_cmd_warning, lookup_cmd_composition)
12850 (add_com, add_com_alias, add_info, add_info_alias)
12851 (complete_on_cmdlist, complete_on_enum, help_list): Remove
12853 * command.h: Add and adjust comments.
12854 (CMD_LIST_AMBIGUOUS): Moved here.
12855 (help_cmd, help_cmd_list): Delete declarations.
12859 * dwarf2read.c (dwarf2_read_abbrevs): Delete arg "abfd".
12860 All callers updated.
12861 (load_full_type_unit): Renamed from read_signatured_type_at_offset.
12862 Replace all arguments with "per_cu". All callers updated.
12864 * dwarf2read.c (dwarf2_per_cu_data): Remove outdated comment.
12866 * dwarf2read.c (init_one_comp_unit): Delete arg "objfile".
12867 New arg "per_cu". All callers updated.
12869 Delete #if 0'd out code.
12870 * language.c (binop_result_type): Delete.
12871 (simple_type, ordered_type, same_type, integral_type): Delete.
12872 (numeric_type, character_type, string_type, boolean_type): Delete.
12873 (float_type, structured_type): Delete.
12874 * language.h: Update.
12878 * python/py-value.c (valpy_binop): Initialize 'res_val'.
12882 * corefile.c (close_exec_file): Delete.
12883 (reopen_exec_file): Remove commented out code that seems related
12884 to close_exec_file, which is being deleted here.
12885 * inferior.h (close_exec_file): Delete.
12886 * fork-child.c (fork_inferior): Remove call to fork_inferior.
12890 * ada-lang.c: #include "cli/cli-utils.h".
12891 (get_selections): Use skip_spaces.
12892 (ada_get_next_arg): Use skip_spaces and skip_to_space.
12893 (catch_ada_exception_command_split): Use skip_spaces.
12894 (ada_decode_assert_location): Likewise.
12898 * linespec.c (decode_line_internal): Check for C++ or Java
12899 compound constructs only if the current language is C, C++
12907 Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
12908 * arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
12910 * infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
12911 fall through into AT_ENTRY_POINT.
12912 (call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len. Adjust
12913 DUMMY_ADDR with it.
12914 * ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
12915 PPC_INSN_SIZE skip to 3 times.
12919 * linespec.c (add_minsym): Preserve function descriptors.
12923 * breakpoint.c (all_locations_are_pending): Consider locations
12924 in program spaces executing during startup pending as well.
12928 Copyright year update in most files of the GDB Project.
12932 * copyright.sh: Delete.
12933 * copyright.py: Rewrite.
12937 * gnulib/extra/update-copyright: New file, imported from gnulib.
12941 * README (Copyright and License Notices): New section.
12946 * python/py-value.c (valpy_dereference, valpy_get_address
12947 valpy_get_dynamic_type, valpy_lazy_string, valpy_do_cast)
12948 (valpy_getitem, valpy_call, valpy_binop, valpy_negative)
12949 (valpy_absolute, valpy_richcompare): Free intermediate values.
12953 * ada-lang.c: Reformat the copyright notice.
12957 * Makefile.in (ALL_TARGET_OBS): Remove solib-target.o.
12958 * configure.tgt (arm*-wince-pe, arm*-*-mingw32ce*, arm*-*-symbianelf*)
12959 (i[34567]86-*-dicos*, i[34567]86-*-cygwin*, i[34567]86-*-mingw32*)
12960 (x86_64-*-dicos*, x86_64-*-mingw*): Remove solib-target.o.
12961 Revert this part of:
12963 Build gdb directly from *.o files not using libgdb.a.
12964 * Makefile.in (COMMON_OBS): Remove solib-target.o.
12968 * gdb/common/gdb_thread_db.h, gdb/dbxread.c, gdb/environ.c,
12969 gdb/gcore.h, gdb/rs6000-tdep.h, gdb/s390-nat.c, gdb/tic6x-tdep.c:
12970 Reformat the copyright header.
12974 Revert this part of:
12976 Remove the gdbtui binary.
12977 * gdb.c (main): Remove args.interpreter_p initialization.
12978 * main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
12979 * main.h (struct captured_main_args): Remove interpreter_p.
12983 * config/djgpp/fnchange.lst: Add entry for ChangeLog-2011.
12987 * top.c (print_gdb_version): Update copyright year.
12991 * inf-ptrace.c (inf_ptrace_xfer_partial): Reindent.
12996 Fix regression for gdb.cp/gdb2495.exp with gcc-4.7.
12997 * arch-utils.c (displaced_step_at_entry_point): Incrase BP_LEN skip to
12999 * infcall.c (call_function_by_hand) <AT_SYMBOL>: Move it upwards and
13000 fall through into AT_ENTRY_POINT.
13001 (call_function_by_hand) <AT_ENTRY_POINT>: New variable bp_len. Adjust
13002 DUMMY_ADDR with it.
13003 * ppc-linux-tdep.c (ppc_linux_displaced_step_location): Increase
13004 PPC_INSN_SIZE skip to 3 times.
13008 * amd64-linux-nat.c (update_debug_registers_callback): New comment on
13010 * i386-linux-nat.c (update_debug_registers_callback): Likewise.
13014 Build gdb directly from *.o files not using libgdb.a.
13015 * Makefile.in (SUBDIR_TUI_OBS): Remove duplicate tui.o.
13016 (COMMON_OBS): Remove solib-target.o.
13017 (LIBGDB_OBS, libgdb.a): Move it before the gdb$(EXEEXT) rule.
13018 (gdb$(EXEEXT)): Replace libgdb.a with $(LIBGDB_OBS).
13019 (LIBGDB_OBS, libgdb.a): Move it above.
13020 * configure.tgt (alpha*-*-linux*, alpha*-*-freebsd*)
13021 (alpha*-*-kfreebsd*-gnu, alpha*-*-netbsd*, alpha*-*-knetbsd*-gnu)
13022 (alpha*-*-openbsd*, am33_2.0*-*-linux*, arm*-wince-pe)
13023 (arm*-*-mingw32ce*, arm*-*-linux*, arm*-*-netbsd*, arm*-*-knetbsd*-gnu)
13024 (arm*-*-openbsd*, cris*, frv-*-*, hppa*-*-hpux*, hppa*-*-linux*)
13025 (hppa*-*-netbsd*, hppa*-*-openbsd*, i[34567]86-*-darwin*)
13026 (i[34567]86-*-dicos*, i[34567]86-*-freebsd*, i[34567]86-*-kfreebsd*-gnu)
13027 (i[34567]86-*-netbsd*, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-openbsd*)
13028 (i[34567]86-*-nto*, i[34567]86-*-solaris2.1[0-9]*)
13029 (x86_64-*-solaris2.1[0-9]*, i[34567]86-*-solaris*, i[34567]86-*-linux*)
13030 (i[34567]86-*-gnu*, ia64-*-linux*, m32r*-*-linux*, m68*-*-linux*)
13031 (m68*-*-netbsd*, m68*-*-knetbsd*-gnu, m68*-*-openbsd*)
13032 (microblaze*-linux-*, microblaze*-*-linux*, mips*-sgi-irix5*)
13033 (mips*-sgi-irix6*, mips*-*-linux*, mips*-*-netbsd*)
13034 (mips*-*-knetbsd*-gnu, mips64*-*-openbsd*, powerpc-*-netbsd*)
13035 (powerpc-*-knetbsd*-gnu, powerpc-*-openbsd*, powerpc-*-aix*, rs6000-*-*)
13036 (powerpc-*-linux*, powerpc64-*-linux*, powerpc*-*-*, s390*-*-*)
13037 (sh*-*-linux*, sh*-*-netbsdelf*, sh*-*-knetbsd*-gnu, sh*-*-openbsd*)
13038 (sparc-*-linux*, sparc64-*-linux*, sparc*-*-freebsd*)
13039 (sparc*-*-kfreebsd*-gnu, sparc-*-netbsd*, sparc-*-knetbsd*-gnu)
13040 (sparc64-*-netbsd*, sparc64-*-knetbsd*-gnu, sparc-*-openbsd*)
13041 (sparc64-*-openbsd*, sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*)
13042 (sparc-*-solaris2*, sparcv9-*-solaris2*, sparc64-*-solaris2*)
13043 (vax-*-netbsd*, vax-*-knetbsd*-gnu, x86_64-*-darwin*, x86_64-*-dicos*)
13044 (x86_64-*-linux*, x86_64-*-freebsd*, x86_64-*-kfreebsd*-gnu)
13045 (x86_64-*-netbsd*, x86_64-*-knetbsd*-gnu, x86_64-*-openbsd*)
13046 (xtensa*-*-linux*, xtensa*): Remove solib.o from gdb_target_obs.
13050 Remove the gdbtui binary.
13051 * .gitignore (/gdbtui): Remove.
13052 * Makefile.in (TUI): Remove.
13053 (SUBDIR_TUI_OBS): Remove tui-main.o.
13054 (SUBDIR_TUI_SRCS): Remove tui/tui-main.c.
13055 (all-tui, install-tui, uninstall-tui, $(TUI)$(EXEEXT), clean-tui)
13056 (tui-main.o): Remove.
13057 (all_object_files): Remove tui-main.o.
13058 * NEWS: New note for the gdbtui removal.
13059 * configure: Rebuilt.
13060 * configure.ac: No longer add all-tui, clean-tui, install-tui and
13061 uninstall-tui to CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL and
13062 CONFIG_UNINSTALL respectively.
13063 * gdb.c (main): Remove args.interpreter_p initialization.
13064 * main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
13065 * main.h (struct captured_main_args): Remove interpreter_p.
13066 * tui/tui-main.c: Remove.
13070 * dwarf2read.c (dwarf2_compute_name): Simplify objfile references.
13071 (dwarf2_physname, read_import_statement): Ditto.
13072 (read_call_site_scope, dwarf2_record_block_ranges): Ditto.
13073 (process_structure_scope read_subroutine_type): Ditto.
13074 (read_typedef, load_partial_dies, read_partial_die): Ditto.
13075 (find_partial_die, dwarf_decode_lines, lookup_die_type): Ditto.
13076 (dwarf2_fetch_die_location_block): Ditto.
13077 (dwarf_decode_macros, dwarf2_symbol_mark_computed): Ditto.
13079 * dwarf2read.c (read_signatured_type): Delete `objfile' arg.
13080 All callers updated.
13081 (load_full_comp_unit, queue_comp_unit, process_queue): Ditto.
13082 (dw2_do_instantiate_symtab, dw2_instantiate_symtab): Ditto.
13083 (process_psymtab_comp_unit, load_partial_comp_unit): Ditto.
13085 * dwarf2read.c (load_cu): Move assert to more useful location.
13087 * dwarf2read.c (free_heap_comp_unit): Renamed from free_one_comp_unit.
13088 All callers updated.
13090 * dwarf2read.c (dwarf2_per_objfile): Add comment.
13091 (dwarf2_elf_names): Minor reformat.
13092 (dwarf2_per_cu_data): Tweak comment.
13093 (dwarf2_read_section): Fix comment.
13094 (create_all_comp_units): Fix comment.
13095 (load_full_comp_unit): Fix comment.
13096 (process_full_comp_unit): Fix comment.
13097 (read_signatured_type): Fix comment.
13099 For older changes see ChangeLog-2011.
13105 version-control: never