3 * gcore.c (do_bfd_delete_cleanup): New function.
4 (gcore_command): Use it. Discard the cleanup after success.
5 (gcore_copy_callback): Delete dead code.
9 * symfile.c (addr_info_make_relative): Always use
14 * NEWS: Added entry for namespace fixes.
18 * dwarf2read.c (guess_structure_name): Allocate name on the
23 * c-typeprint.c (c_type_print_base): Reverse order of test.
27 * solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize. Optionally
28 initialize it from ELF BFD. Extend the prelink condition by it.
32 * defs.h (parse_pid_to_attach): New.
33 * utils.c (parse_pid_to_attach): New.
34 * darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
35 * gnu-nat.c (gnu_attach): Likewise.
36 * nto-procfs.c (procfs_attach): Likewise.
37 * procfs.c (procfs_attach): Likewise.
38 * windows-nat.c (windows_attach): Likewise.
39 * inf-ptrace.c (inf_ptrace_attach): Likewise. Remove variable dummy.
40 * inf-ttrace.c (inf_ttrace_attach): Likewise.
41 * remote.c (extended_remote_attach_1): Likewise. New comment on getpid
46 * MAINTAINERS: Add myself for write after approval privileges.
50 * solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
55 * solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
60 * mi/mi-main.c: Added the --reverse flag to the following MI
61 commands: exec-continue, exec-finish, exec-next, exec-step,
62 exec-next-instruction, exec-step-instruction. This is to
63 support reverse execution over the MI interface to gdb.
67 * tracepoint.c (_initialize_tracepoint): Specify that the address
68 range of `tfind outsize' is exclusive, and that the address range
69 of `tfind range' is inclusive, in the commands' help strings.
73 Spurious "dll not found" error messages on x64-windows.
74 * windows-nat.c: Add include of complaints.h.
75 (handle_unload_dll): Change dll-not-found error into a complaint.
79 * breakpoint.c (allocate_bp_location): Use bp_loc_other for
80 bp_tracepoint and bp_fast_tracepoint, not
81 bp_loc_software_breakpoint.
82 (update_global_location_list): Tracepoints are never duplicates of
87 * breakpoint.c (break_command_really): Change return type to int.
88 Return false if no breakpoint was created, true otherwise.
89 (trace_command): Don't set the tracepoint count if no tracepoint
91 (ftrace_command): Ditto.
92 (create_tracepoint_from_upload): Bail out if the tracepoint wasn't
93 created in the breakpoints table.
98 * solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
102 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
103 the offset value isn't of integral type.
107 * breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
112 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
113 non-subscriptable types.
114 * valarith.c (binop_types_user_defined_p): New, abstracted out
116 (binop_user_defined_p): ... this.
117 * value.h (binop_types_user_defined_p): Declare.
121 * tracepoint.c (tfile_open): Remove spurious discard_cleanups.
122 Merge uploaded TSVs before merging uploaded tracepoints.
126 * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
130 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
131 whitespace character after a dot in comment.
132 (mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
134 (list_args_or_locals): For the 'all' (that is
135 -stack-list-variables) case, always output list of tuples.
136 Output 'arg' field if variable is argument.
140 * parser-defs.h (parser_debug): Declare.
141 * parse.c (_initialize_parse): Install "debug parser" set/show
143 (parser_debug): New global.
144 (show_parserdebug): New function.
145 * c-exp.y (c_parse): Set yydebug.
149 * target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
150 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
151 (tdesc_predefined_types): Add i387_ext, i386_eflags and
153 (tdesc_find_type): New.
154 (tdesc_gdb_type): Use tdesc_find_type. Handle TDESC_TYPE_I387_EXT,
155 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
157 * target-descriptions.h (tdesc_find_type): New.
161 * gdb-gdb.py: Comment fix.
165 * machoread.c (macho_symfile_relocate): New function.
166 (macho_sym_fns): Use macho_symfile_relocate instead of
167 default_symfile_relocate.
168 (macho_oso_data): New type.
169 (current_oso): New variable.
170 (macho_add_oso_symfile): Do not compute section_addr_info, but
171 instead set vma of sections.
172 Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
173 Set and clear current_oso.
177 Wrong type description for tagged type parameter.
178 * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
179 EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
180 reference to a tagged type.
184 * objfiles.c (objfile_separate_debug_iterate): Do not iterate on
185 brothers of the parent.
191 * valops.c (search_struct_field): Make 'name' const.
192 (search_struct_method): Likewise.
193 (find_method_list): Make 'method' const.
194 (value_struct_elt): Make 'name' and 'err' const.
195 (value_find_oload_method_list): Make 'method' const.
196 (find_overload_match): Make 'name' const.
197 * eval.c (evaluate_subexp_standard): New locals function,
199 <OP_FUNCALL>: Handle OP_SCOPE specially.
203 * infrun.c (handle_inferior_event): Do not look up regcache
204 for exited processes.
209 * valarith.c (value_ptrdiff): Added a test for a zero type length,
210 warn if found, and assume length = 1.
215 * cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
216 cp_print_static_field) Fix use of obstacks.
220 * linux-nat.c (linux_nat_resume): In non-stop, also only tag
221 resumed LWPs as resumed.
222 (linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
223 we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
224 of throwing an internal error. If an LWP of a process we're not
225 waiting for reports a signal, don't force collecting a SIGSTOP,
226 and if it was breakpoint hit in non-stop mode, cancel it. Don't
227 go through all LWPs cancelling breakpoints in non-stop mode.
228 (resume_stopped_resumed_lwps): New.
229 (linux_nat_wait): Use it.
233 * features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
234 i386/amd64 and i386/amd64-linux.
235 (i386/i386-expedite): New.
236 (i386/i386-linux-expedite): Likewise.
237 (i386/amd64-expedite):Likewise.
238 (i386/amd64-linux-expedite): Likewise.
239 ($(outdir)/i386/i386-linux.dat): Likewise.
240 ($(outdir)/i386/amd64.dat): Likewise.
241 ($(outdir)/i386/amd64-linux.dat): Likewise.
243 * features/i386/32bit-core.xml: New.
244 * features/i386/32bit-linux.xml: Likewise.
245 * features/i386/32bit-sse.xml: Likewise.
246 * features/i386/64bit-core.xml: Likewise.
247 * features/i386/64bit-linux.xml: Likewise.
248 * features/i386/64bit-sse.xml: Likewise.
249 * features/i386/i386-linux.xml: Likewise.
250 * features/i386/i386.xml: Likewise.
251 * features/i386/amd64-linux.xml: Likewise.
252 * features/i386/amd64.xml: Likewise.
253 * features/i386/i386-linux.c: Likewise.
254 * features/i386/i386.c: Likewise.
255 * features/i386/amd64-linux.c: Likewise.
256 * features/i386/amd64.c: Likewise.
261 * cp-support.h: Added char* alias element to using_direct data
263 (cp_add_using): Added char* alias argument.
264 (cp_add_using_directive): Ditto.
265 * cp-namespace.c: Updated with the above changes.
266 (cp_lookup_symbol_imports): Check for aliases.
267 * dwarf2read.c (read_import_statement): Figure out local alias
268 for the import and pass it on to cp_add_using.
269 (read_namespace): Pass alias argument to cp_add_using.
273 * defs.h (gdb_bfd_errmsg): New extern.
274 * exec.c (exec_file_attach): Change bfd_errmsg to
276 * utils.c (AMBIGUOUS_MESS1): New macro.
277 (AMBIGUOUS_MESS2): New macro.
278 (gdb_bfd_errmsg): New function.
282 * solib-svr4.c (enable_break): Add comment.
286 * moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
291 * valops.c (search_struct_field): Account for
292 value_embedded_offset. Fix check for virtual base past the end of
293 the object. Use value_copy when making a slice of the value.
298 * tui/tui-interp.c (tui_init): Call tui_initialize_readline
299 only if gdb_stdout is a tty.
303 * target-descriptions.c: Include "osabi.h".
304 (maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
309 * machoread.c (macho_add_oso): Renamed to macho_register_oso.
310 (macho_symtab_read): Adjust calls to macho_add_oso.
311 (macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
312 (macho_symfile_read): Adjust call to macho_oso_symfile.
313 (macho_new_init): Move this function after declarations.
314 (macho_symfile_init): Ditto.
315 * darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
316 * darwin-nat.c (darwin_lookup_task): Remove unused prototype.
320 Include MI command in remotelog.
322 * mi/mi-main.c (mi_execute_command): Call target_log_command.
326 * remote.c (remote_state): Remove gdbarch.
327 (init_remote_state): Don't set gdbarch.
328 (remote_query_supported): Pass target_gdbarch instead of
329 rs->gdbarch to gdbarch_qsupported.
333 * gdbarch.sh: Add qsupported.
335 * gdbarch.c: Regenerated.
336 * gdbarch.h: Likewise.
338 * remote.c (remote_state): Add gdbarch.
339 (init_remote_state): Set gdbarch.
340 (remote_query_supported): Support gdbarch_qsupported.
344 * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
345 __FreeBSD_kernel_version.
349 * symfile.h (struct sym_fns): Add sym_relocate field.
350 (default_symfile_relocate): New prototype.
351 (symfile_relocate_debug_section): First argument is now an objfile.
352 * symfile.c (default_symfile_relocate): Rename from
353 symfile_relocate_debug_section, first argument is now an objfile.
354 (symfile_relocate_debug_section): New function.
355 * coffread.c (coff_sym_fns): Set sym_relocate field.
356 * somread.c (som_sym_fns): Ditto.
357 * mipsread.c (ecoff_sym_fns): Ditto.
358 * machoread.c (macho_sym_fns): Ditto.
359 * elfread.c (elf_sym_fns): Ditto.
360 * dwarf2read.c (dwarf2_read_section): Ditto.
361 * xcoffread.c (xcoff_sym_fns): Ditto.
362 * dbxread.c (aout_sym_fns): Ditto.
363 (dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
364 (elfstab_build_psymtabs): Ditto.
368 * defs.h (MAX_REGISTER_SIZE): Increase to 32.
372 * valops.c (value_cast_structs): Try downcasting using the RTTI
377 * gnu-v2-abi.c: Don't include gnu-v2-abi.h.
378 (gnuv2_baseclass_offset): Now static.
379 * Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
380 * gnu-v2-abi.h: Remove.
384 * m2-typeprint.c (m2_record_fields): Don't use
386 * gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
387 (struct main_type) <flag_declared_class>: New field.
388 (struct cplus_struct_type) <declared_type>: Remove.
389 <ntemplate_args>: Move earlier.
390 (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
391 (DECLARED_TYPE_TEMPLATE): Remove.
392 (TYPE_DECLARED_TYPE): Remove.
393 * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
394 * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
395 * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
400 PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
401 * valops.c (search_struct_field): Compute nbases after calling
403 (check_field): Call CHECK_TYPEDEF.
404 * cp-valprint.c (cp_print_value): Pass correct address to
405 baseclass_offset. Fix check for virtual base past the end of the
406 object. Don't offset address passed to cp_print_value_fields or
407 apply_val_pretty_printer.
408 (cp_print_value_fields): Fix call to val_print.
409 (cp_print_value_fields_rtti): New function.
410 * c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
411 * p-valprint.c (pascal_object_print_value_fields): Fix call to
413 * python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
415 * language.h (struct language_defn) <la_val_print>: Document.
416 * c-lang.h (cp_print_value_fields_rtti): Declare.
421 * linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
422 (linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
423 (linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
428 * i386-tdep.c (i386_frame_cache): Assume valid anonymous
429 functions use a frame pointer.
433 * solib-svr4.c (scan_dyntag): New variable dyn_addr. Replace gdb_assert
434 by a conditional setting DYN_ADDR. Use DYN_ADDR.
435 * config/djgpp/fnchange.lst: Add translations for
436 symbol-without-target_section.exp and symbol-without-target_section.c.
440 * gdbarch.sh: Set LANG and LC_ALL to C, not c.
441 (remote_breakpoint_for_pc): Correct invalid_p check.
442 * gdbarch.c: Regenerated.
446 * arm-tdep.c (arm_find_mapping_symbol): New function, from
448 (arm_pc_is_thumb): Use arm_find_mapping_symbol.
449 (extend_buffer_earlier): New function.
450 (MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
451 (arm_adjust_breakpoint_address): New function.
452 (arm_gdbarch_init): Register arm_adjust_breakpoint_address.
456 * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
457 (arm_linux_thumb2_le_breakpoint): New constants.
458 (arm_linux_init_abi): Set thumb2_breakpoint and
459 thumb2_breakpoint_size.
460 * arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
461 (thumb_get_next_pc): Add a comment. Rename IT to ITSTATE.
462 Implement support for single stepping through IT blocks if
463 a 32-bit Thumb breakpoint instruction is available.
464 (arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
465 is available, use it when needed.
466 (arm_remote_breakpoint_from_pc): New function.
467 (arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
468 * arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
469 comment. Add thumb2_breakpoint and thumb2_breakpoint_size.
473 * arch-utils.c (default_remote_breakpoint_from_pc): New function.
474 * arch-utils.h (default_remote_breakpoint_from_pc): Declare.
475 * gdbarch.c, gdbarch.h: Regenerated.
476 * gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
477 * remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
478 gdbarch_remote_breakpoint_from_pc.
482 * infrun.c (prepare_to_proceed): Handle other signals which might
484 (handle_inferior_event): Move the check for unusual breakpoint
489 amd64 - function returning record with field straddling 2 registers.
490 * amd64-tdep.c (amd_classify_aggregate): Handle the case of
491 a record of length <= 16 in which a field straddles the two
496 Implement return values on amd64-windows.
497 * amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
498 (amd64_windows_return_value): New function.
499 (amd64_windows_init_abi): Call set_gdbarch_return_value with
500 amd64_windows_return_value.
504 amd64-windows: 32 bytes allocated on stack by caller for integer
506 * i386-tdep.h (struct gdbarch_tdep): Add new field
507 integer_param_regs_saved_in_caller_frame.
508 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
509 tdep->integer_param_regs_saved_in_caller_frame to 1.
510 * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
511 stack if tdep->integer_param_regs_saved_in_caller_frame is set.
515 amd64-windows: memory args passed by pointer during function calls.
516 * i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
517 * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
518 where tdep->memory_args_by_pointer is non-zero.
519 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
520 tdep->memory_args_by_pointer to 1.
524 amd64-windows: Integer parameters in function calls.
525 * i386-tdep.h (enum amd64_reg_class): New, moved here from
527 (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
528 call_dummy_integer_regs, and classify.
529 * amd64-tdep.h (amd64_classify): Add declaration.
530 * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
531 (amd64_reg_class): Delete, moved to i386-tdep.h.
532 (amd64_classify): Make non-static. Move declaration to amd64-tdep.h.
533 Replace call to amd64_classify by call to tdep->classify.
534 (amd64_push_arguments): Get the list of registers to use for
535 passing integer parameters from the gdbarch tdep structure,
536 rather than using a hardcoded one. Replace calls to amd64_classify
537 by calls to tdep->classify.
538 (amd64_push_dummy_call): Get the register number used for
539 the "hidden" argument from tdep->call_dummy_integer_regs.
540 (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
541 and tdep->call_dummy_integer_regs. Set tdep->classify.
542 * amd64-windows-tdep.c: Add include of gdbtypes.h.
543 (amd64_windows_dummy_call_integer_regs): New static global.
544 (amd64_windows_classify): New function.
545 (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
546 tdep->call_dummy_integer_regs and tdep->classify.
550 * regcache.c (regcache_xmalloc): Add aspace argument. Use it
551 for the new regcache. All callers updated.
552 (regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
553 (get_thread_arch_regcache): Do not set aspace here.
554 * regcache.h (regcache_xmalloc): Update declaration.
556 * frame.c, infcall.c, ppc-linux-tdep.c: Calls to
557 regcache_xmalloc updated.
561 Another -Wunused-function error in procfs.c (sparc-solaris)
562 * procfs.c (insert_dbx_link_breakpoint): Delete declaration. Move up.
563 Only define if SYS_syssgi is defined.
564 (remove_dbx_link_breakpoint): Delete declaration. Move up.
565 (dbx_link_addr, insert_dbx_link_bpt_in_file)
566 (insert_dbx_link_bpt_in_region): Move up. Only define if SYS_syssgi
571 * windows-nat.c (windows_initialization_done): New variable.
572 (get_windows_debug_event): Issue error when process dies before
573 completely initializing.
574 (do_initial_windows_stuff): Set flag to indicate when we are done with
575 the initial steps of attaching to the child.
579 * symtab.h (struct symbol <symtab>): New comment on NULL values.
583 * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
585 * breakpoint.c (bpstat_stop_status): Delete useless code.
589 * printcmd.c (display_uses_solib_p): Remove variable section. Access
590 objfile via SYMBOL_SYMTAB.
595 * eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
596 coerce_array on result.
600 * cp-namespace.c (cp_lookup_symbol_namespace): Added
601 search_parent argument.
602 (cp_add_using): Initialize 'searched' field.
603 (reset_directive_searched): New function.
604 * cp-support.h: Add 'searched' field to using_direct struct.
605 (cp_lookup_symbol_imports): Ditto.
606 * cp-namespace.c (cp_lookup_symbol_imports): Ditto.
607 Perform recursive search.
608 Implement non parent search.
609 * valops.c (value_maybe_namespace_elt): Updated.
614 * dwarf2read.c (read_lexical_block_scope): Create blocks for
615 scopes which contain using directives even if they contain no
617 * symtab.c (lookup_symbol_aux): Pass lowest level block to
618 la_lookup_symbol_nonlocal.
619 * cp-namespace.c (cp_lookup_symbol_nonlocal): call
620 cp_lookup_symbol_namespace.
621 (cp_lookup_symbol_namespace): Perform an import lookup at every
623 (cp_lookup_symbol_imports): New function.
624 (cp_lookup_symbol_in_namespace): New function.
629 * c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
634 * configure.ac: Only use host_os part when disabling TUI on osf.
635 Use test to check variables, prefix strings with x.
636 * configure: Regenerate.
638 * solib-osf.c (osf_current_sos): Initialize tail.
642 * windows-nat.c (windows_continue): Use %x to print thread id.
643 (get_windows_debug_event): Ditto.
648 * dwarf2read.c (quirk_gcc_member_function_pointer): Change return
649 type and arguments. Use smash_to_methodptr_type.
650 (read_structure_type): Call quirk_gcc_member_function_pointer
652 * gdbtypes.h (smash_to_methodptr_type): Declare.
653 * gdbtypes.c (smash_to_methodptr_type): New function.
654 (lookup_methodptr_type): Use it.
659 * symtab.h (lookup_minimal_symbol_and_objfile): Declare.
660 * minsyms.c (lookup_minimal_symbol_and_objfile): New function.
661 * glibc-tdep.c (find_minsym_and_objfile): Remove.
662 (glibc_skip_solib_resolver): Use
663 lookup_minimal_symbol_and_objfile.
667 * inflow.c (check_syscall): Guard by #if clause for GO32 and
673 * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
674 BINOP_GEQ. Handle BINOP_NOTEQUAL in the signed case.
675 * dwarf2expr.c (new_dwarf_expr_context): Allocate
676 dwarf_stack_values, not CORE_ADDRs.
677 (execute_stack_op): Change DW_OP_div and comparison operators to
682 Per-inferior args and tty and environment.
684 * infcmd.c (inferior_args): Rename to ...
685 (inferior_args_scratch): ... this.
686 (inferior_io_terminal): Rename to ...
687 (inferior_io_terminal_scratch): ... this.
688 (inferior_argc, inferior_argv): Remove.
689 (set_inferior_io_terminal, get_inferior_io_terminal): Store
690 inside current_inferior().
691 (set_inferior_tty_command, show_inferior_tty_command): New.
692 (get_inferior_args, set_inferior_args): Store inside
694 (notice_args_set): Likewise and rename to...
695 (set_args_command): ... this.
696 (set_inferior_args_vector): Likewise.
697 (notice_args_read): Rename to...
698 (show_args_command): ...new.
699 (tty_command): Remove.
700 (run_command_1): Don't free old args, as they are freed by
701 set_inferior_arg now.
702 (run_no_args_command): Likewise.
703 (inferior_environ): Remove.
704 (run_command_1): Use environment of the current inferior.
705 (environment_info, set_environment_command)
706 (unset_environment_command, path_info, path_command): Likewise.
707 (_initialize_infcmd): Adjust for function and variable renames.
708 Do not init inferior_environ.
709 * inferior.h (set_inferior_arg): Adjust prototype.
710 (struct inferior): New fields args, argc, argv, terminal, environment.
711 (inferior_environ): Remove declaration.
712 * inferior.c (free_inferior): Free new fields.
713 (add_inferior_silent): Initialize 'environment' field.
714 * main.c (captured_main): Set arguments only after the initial
715 inferior has been created. Set set_inferior_io_terminal,
717 * mi/mi-main.c (mi_cmd_env_path): Use environment of the current
719 (_initialize_mi_cmd_env): Adjust for disappearance of global
721 * solib.c (solib_find): Use environment of the current inferior.
725 * varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
727 (instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
731 Get rid of ada-lang.c:function_name_from_pc.
732 * ada-lang.c: Add "stack.h" #include.
733 (function_name_from_pc): Delete.
734 (is_known_support_routine): Replace call to function_name_from_pc
735 by call to find_frame_funname.
736 (ada_unhandled_exception_name_addr_from_raise): Likewise.
741 * dwarf2read.c (read_partial_die): Allocate partial DIE's name on
746 * top.c (stop_sig, float_handler, do_nothing): Remove.
750 * breakpoint.c (watchpoint_check): Check the call
751 gdbarch_in_function_epilogue_p before calling frame_find_by_id.
753 * config/djgpp/fnchange.lst: Add translations for
754 watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
755 watchpoint-cond-gone-stripped.c.
760 * dwarf2read.c (partial_die_parent_scope): Put enumeration type
761 into parent scope, and enumerator into grandparent scope.
765 * NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
769 * configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
770 i[34567]86-*-solaris2.1[0-9]*.
771 * configure.tgt: Likewise.
775 * NEWS: Document the source command enhancement allowing it
776 to load Python scripts. Document the "set/show script-extension"
781 Add -Wunused-function to compile flags.
782 * configure.ac: Add -Wunused-function to build_warnings.
783 * configure: Regenerate.
787 "delete" ada-lex.c:input function, not used.
788 * ada-lex.l: #define YY_NO_INPUT.
792 Delete free_named_symtabs and associated cleanup.
793 * symfile.h (free_named_symtabs): Delete declaration.
794 * symfile.c: Remove some commented out code (clear_symtab_users_once).
795 (cashier_psymtab): Comment function out.
797 (free_named_symtabs): Delete.
798 * coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
799 * dbxread.c (end_psymtab): Likewise.
800 * dwarf2read.c (process_psymtab_comp_unit): Ditto.
801 * exec.c (exec_close_1): Ditto.
802 * xcoffread.c (xcoff_end_psymtab): Likewise.
806 * stack.c (print_block_frame_labels): Comment function out.
810 Delete unused or undefined functions.
811 * breakpoint.c (ep_parse_optional_filename): Delete.
812 * dcache.c (dcache_write_line): Remove declaration.
813 * infrun.c (build_infrun): Remove declaration.
814 * tracepoint.c (tracepoint_save_command): Remove declaration.
815 * linux-nat.c (init_lwp_list): Delete. No longer used.
816 * event-loop.c (check_async_signal_handlers): Delete declaration.
817 * infrun.c (init_execution_control_state): Delete.
818 (proceed): Update comment to avoid mentioning
819 init_execution_control_state.
820 * target.c (kill_or_be_killed, nosupport_runtime): Delete.
821 * ada-lang.c (ada_to_static_fixed_value): Delete.
822 * scm-lang.c (evaluate_subexp_scm): Delete declaration.
823 * cp-namespace.c (cp_copy_usings): Delete.
824 * xml-syscall.c (xml_number_of_syscalls): Delete.
825 * progspace.c (find_program_space_by_num): Delete.
826 * inflow.c (handle_sigio): Delete declaration.
827 * hppa-tdep.c (hppa_alignof): Delete.
828 * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
829 (mipsnbsd_core_osabi_sniffer): Delete.
834 * c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
835 (CONST_CAST): New tokens.
836 (exp): Add new productions.
837 (ident_tokens): Add const_cast, dynamic_cast, static_cast, and
839 (is_cast_operator): New function.
840 (yylex): Handle cast operators specially.
841 * eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
842 UNOP_REINTERPRET_CAST>: New cases.
843 * expprint.c (print_subexp_standard): Likewise.
844 (op_name_standard): Likewise.
845 (dump_subexp_body_standard): Likewise.
846 * parse.c (operator_length_standard): Likewise.
847 * expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
848 UNOP_REINTERPRET_CAST.
849 * gdbtypes.c (class_types_same_p): New function.
850 (is_ancestor): Use it.
851 (is_public_ancestor): New function.
852 (is_unique_ancestor_worker): Likewise.
853 (is_unique_ancestor): Likewise.
854 * gdbtypes.h (class_types_same_p, is_public_ancestor)
855 (is_unique_ancestor): Declare.
856 * valops.c (value_reinterpret_cast): New function.
857 (dynamic_cast_check_1): Likewise.
858 (dynamic_cast_check_2): Likewise.
859 (value_dynamic_cast): Likewise.
860 * value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
864 Fix build failure when building without Python support.
865 * python/python.c: Always include exceptions.h, even when HAVE_PYTHON
870 Use XVS field type instead of doing a parallel lookup.
871 * ada-lang.c (ada_get_base_type): Follow the XVS field type
872 if it is a reference type instead of doing a type lookup using
877 Trust PAD types instead of using PAD___XVS.
878 * ada-lang.c (trust_pad_over_xvs): New static variable.
879 (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
880 parallel XVS type, follow the XVS type instead of the PAD type.
881 (unwrap_value): Make sure that there is no parallel XVE type
882 before returning the value as is.
883 (set_ada_list, show_ada_list): New static variables.
884 (set_ada_command, show_ada_command): New functions.
885 (_initialize_ada_language): Add new "set/show ada" prefix commands.
886 Add new "set/show ada trust-PAD-over-XVS" setting.
891 Allow "source" to load python scripts.
892 * exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
893 * python/python.c (source_python_script): New function.
894 * python/python.h (source_python_script): Add declaration.
895 * cli/cli-cmds.c: #include exceptions.h and python/python.h.
896 (script_ext_off, script_ext_soft, script_ext_strict)
897 (script_ext_enums, script_ext_mode): New static constants.
898 (show_script_ext_mode, find_and_open_script): New functions.
899 (source_script): Enhance to handle Python scripts.
900 (init_cli_cmds): Add set/show script-extension commands.
904 * tracepoint.h (struct trace_status): Use unsigned long long
906 * tracepoint.c (trace_status_command): Fix printf directive.
907 (trace_save_command): Check fwrite returns, fix printf directive.
908 (trace_filename): New global.
909 (tfile_open): Set it, check read returns.
910 (tfile_close): Free trace_filename.
911 (tfile_get_traceframe_address): Check read returns.
912 (tfile_trace_find): Ditto.
913 (tfile_fetch_registers): Ditto.
914 (tfile_xfer_partial): Ditto.
915 (tfile_get_trace_state_variable_value): Ditto.
919 Add trace file support.
920 * tracepoint.h (enum trace_stop_reason): New enum.
921 (struct trace_status): New struct.
922 (parse_trace_status): Declare.
923 (struct uploaded_tp): Move here from remote.c,
924 add fields for actions.
925 (struct uploaded_tsv): New struct.
926 * tracepoint.c (tfile_ops): New target vector.
927 (trace_fd): New global.
928 (tfile_open): New function.
929 (tfile_close): New function.
930 (tfile_files_info): New function.
931 (tfile_get_trace_status): New function.
932 (tfile_get_traceframe_address): New function.
933 (tfile_trace_find): New function.
934 (tfile_fetch_registers): New function.
935 (tfile_xfer_partial): New function.
936 (tfile_get_trace_state_variable_value): New function.
937 (init_tfile_ops): New function.
938 (_initialize_tracepoint): Call it, add tfile target.
939 (trace_status): New global.
940 (current_trace_status): New function.
941 (trace_running_p): Remove, change all users to get from
942 current_trace_status()->running.
943 (get_trace_status): Remove.
944 (trace_status_command): Call target_get_trace_status directly,
945 report more detail including tracing stop reasons.
946 (trace_find_command): Always allow tfind on a file.
947 (trace_find_pc_command): Ditto.
948 (trace_find_tracepoint_command): Ditto.
949 (trace_find_line_command): Ditto.
950 (trace_find_range_command): Ditto.
951 (trace_find_outside_command): Ditto.
952 (trace_frames_offset, cur_offset): Declare as off_t.
953 (trace_regblock_size): Rename from reg_size, update users.
954 (parse_trace_status): New function.
955 (tfile_interp_line): New function.
956 (disconnect_or_stop_tracing): Ensure current trace
957 status before asking what to do.
958 (stop_reason_names): New global.
959 (trace_save_command): New command.
960 (get_uploaded_tp): Move here from remote.c.
961 (find_matching_tracepoint): Ditto.
962 (merge_uploaded_tracepoints): New function.
963 (parse_trace_status): Use stop_reason_names.
964 (_initialize_tracepoint): Define tsave command.
965 * target.h (target_ops): New fields to_save_trace_data,
966 to_upload_tracepoints, to_upload_trace_state_variables,
967 to_get_raw_trace_data, change to_get_trace_status
968 to take a pointer to a status struct.
969 (target_save_trace_data): New macro.
970 (target_upload_tracepoints): New macro.
971 (target_upload_trace_state_variables): New macro.
972 (target_get_raw_trace_data): New macro.
973 * target.c (update_current_target): Add new methods, change
974 signature of to_get_trace_status.
975 * remote.c (hex2bin): Make globally visible.
977 (remote_download_trace_state_variable): Download name also.
978 (remote_get_trace_status): Update parameter, use
980 (remote_save_trace_data): New function.
981 (remote_upload_tracepoints): New function.
982 (remote_upload_trace_state_variables): New function.
983 (remote_get_raw_trace_data): New function.
984 (remote_start_remote): Use them.
985 (_initialize_remote_ops): Add operations.
986 * ax-gdb.c: Include breakpoint.h.
987 * breakpoint.c (create_tracepoint_from_upload): Use
988 break_command_really, return tracepoint, warn about unimplemented
990 * NEWS: Mention trace file addition.
994 Fix compilation warning on gcc-3.4.
995 * exec.c (print_section_info): Move the `displacement' variable
996 initialization to its declaration.
1000 * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
1005 "info tasks" broken by typedefs in ATCB type definitions.
1006 * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
1007 ada_check_typedef before retrieving the length of the type for
1012 Do not use name-based lookup for unconstrained packed arrays.
1013 * ada-lang.c (find_parallel_type_by_descriptive_type):
1014 Limit the fallback to name-based lookups to the case where
1015 the type is a constrained packed array.
1019 Enhance gdb-gdb.py to handle main_type.type_specific.
1020 * gdb-gdb.py: Print the type-specific part of struct main_type.
1024 * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
1025 * configure: Regenerate.
1026 * config.in: Regenerate.
1027 * utils.c: Include sys/resource.h.
1028 (dump_core, can_dump_core): New.
1029 (internal_vproblem): Update the comment. Check can_dump_core while
1030 setting dump_core_p. Replace two abort calls by dump_core calls.
1035 * NEWS: Document the PIE support.
1039 * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
1040 (check_is_pie_binary, _initialize_linux_tdep): Remove.
1044 * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
1045 Replace exec_entry_point call by bfd_get_start_address.
1049 Support Valgrind attachments broken by the PIE support.
1050 * auxv.c: Include gdbcore.h.
1051 (procfs_xfer_auxv): Make static. Reduce its comment. Drop its
1052 parameters ops, object and annex. Remove their assertions.
1053 (ld_so_xfer_auxv, memory_xfer_auxv): New function.
1054 * auxv.h (procfs_xfer_auxv): Remove comment. Rename to ...
1055 (memory_xfer_auxv): ... here.
1056 * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
1058 * procfs.c (procfs_xfer_partial): Likewise.
1059 * solib-svr4.c (svr4_relocate_main_executable): New prototype.
1060 (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
1061 (svr4_solib_create_inferior_hook): Conditionalize the
1062 svr4_relocate_main_executable call.
1066 * solib-svr4.c (scan_dyntag): Remove variable dyn_addr. New variable
1067 target_section. Find SECT in current_target_sections, gdb_assert it.
1068 (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
1070 * symtab.c (lookup_objfile_from_block): Return the binary file instead
1071 of separate debug info file.
1075 Support PIEs with no symfile_objfile.
1076 * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
1077 * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
1081 * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
1083 (svr4_static_exec_displacement): ... a new function.
1084 (svr4_exec_displacement): New function.
1085 (svr4_relocate_main_executable): Call svr4_exec_displacement. Allocate
1086 new_offsets using alloca now. Remove variable old_chain and changed.
1087 Call objfile_relocate unconditionally now.
1091 * gdbtypes.c (arch_flags_type): Fix comment.
1092 * gdbtypes.h (arch_composite_type): Fix comment.
1096 * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
1097 Call xstrdup for abfd->filename. Pass symfile_flags and objfile flags
1098 to symbol_file_add_from_bfd. Add OSO as separate objfile.
1099 (macho_oso_symfile): Add symfile_flags parameter. Pass it to
1100 macho_add_oso_symfile.
1101 (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
1105 Tru64: Dead threads are never deleted.
1106 * dec-thread.c (dec_thread_ptid_is_alive): New function.
1107 (dec_thread_count_gdb_threads): Fix counter increment.
1108 (dec_thread_add_gdb_thread): Fix *listp increment.
1109 (resync_thread_list): Fix bug in deletion of dead threads that
1110 caused all threads to be deleted, instead of just the dead ones.
1116 * python/python-internal.h: Add lazy_string_object_type
1118 (create_lazy_string_object, gdbpy_initialize_lazy_string)
1119 (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
1120 * python/py-value.c (valpy_lazy_string): New function.
1121 (convert_value_from_python): Add lazy string conversion.
1122 * python/py-prettyprint.c (pretty_print_one_value): Check if
1123 return is also a lazy string.
1124 (print_string_repr): Add lazy string printing branch.
1125 (print_children): Likewise.
1126 * python/py-lazy-string.c: New file. Implement lazy strings.
1127 * python/python.c (_initialize_python): Call
1128 gdbpy_initialize_lazy_string.
1129 * varobj.c (value_get_print_value): Add lazy string printing
1130 branch. Account for encoding.
1131 * c-lang.c (c_printstr): Account for new encoding argument. If
1132 encoding is NULL, find encoding suited for type, otherwise use
1134 * language.h (language_defn): Add encoding argument.
1135 (LA_PRINT_STRING): Likewise.
1136 * language.c (unk_lang_printstr): Update to reflect new encoding
1137 argument to language_defn.
1138 * ada-lang.h (ada_printstr): Likewise.
1139 * c-lang.h (c_printstr): Likewise.
1140 * p-lang.h (pascal_printstr);
1141 * f-lang.c (f_printstr): Likewise.
1142 * m2-lang.c (m2_printstr): Likewise.
1143 * objc-lang.c (objc_printstr): Likewise.
1144 * p-lang.c (pascal_printstr): Likewise.
1145 * scm-lang.c (scm_printstr): Likewise.
1146 * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
1148 * ada-valprint.c (ada_printstr): Likewise.
1149 * f-valprint.c (f_val_print): Likewise
1150 * m2-valprint.c (m2_val_print): Likewise.
1151 * p-valprint.c (pascal_val_print): Likewise.
1152 * expprint.c (print_subexp_standard): Likewise.
1153 * valprint.c (val_print_string): Likewise.
1154 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
1155 (SUBDIR_PYTHON_SRCS): Likewise.
1156 (py-lazy-string.o): New rule.
1160 * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
1161 uninitialized" warning from gcc on local `tree'.
1165 Implement core awareness.
1167 * bcache.c (compare_ints): Remove
1168 (print_percentage): Use compare_positive_ints.
1169 * defs.h (compare_positive_ints): Declare.
1170 * linux-nat.h (struct lin_lwp): New field core.
1171 (linux_nat_core_of_thread_1): Declare.
1172 * linux-nat.c (add_lwp): Init the 'core' field.
1173 (linux_nat_wait_1): Record the core.
1174 (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
1175 (linux_nat_add_target): Register the above.
1176 * linux-thread-db.c (update_thread_core): New.
1177 (thread_db_find_new_threads): Update core information for
1179 * remote.c (struct private_thread_info): New.
1180 (free_private_thread_info, demand_private_info): New.
1181 (PACKET_qXfer_threads, use_osdata_threads): New.
1182 (struct thread_item, threads_parsing_context
1183 (start_thread, end_thread, thread_attributes)
1184 (thread_children, threads_children, threads_elements): New.
1185 (remote_threads_info): Try qXfer:threads before anything
1187 (remote_protocol_packets): Register qXfer:threads.
1188 (remote_open_1): Init use_osdata_threads.
1189 (struct stop_reply): New field 'core'.
1190 (remote_parse_stop_reply): Parse core number.
1191 (process_stop_reply): Record core number.
1192 (remote_xfer_partial): Handle qXfer:threads.
1193 (remote_core_of_thread): New.
1194 (init_remote_ops): Register remote_core_of_thread.
1195 (_initialize_remote): Register qXfer:read.
1196 * target.c (target_core_of_thread): New
1197 * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
1198 (struct target_ops): New field to_core_of_threads.
1199 (target_core_of_thread): Declare.
1200 * gdbthread.h (struct thread_info): New field private_dtor.
1201 * thread.c (print_thread_info): Report the core.
1202 * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
1203 * utils.c (compare_positive_ints): New.
1204 * features/threads.dtd: New.
1205 * mi/mi-interp.c (mi_on_normal_stop): Report the core.
1206 * mi/mi-main.c (struct collect_cores_data, collect_cores)
1207 (do_nothing, free_vector_of_osdata_items)
1208 (splay_tree_int_comparator, free_splay_tree): New.
1209 (print_one_inferior_data): Implemented printing of selected
1210 inferiors. Collect and print cores.
1211 (output_cores): New.
1212 (mi_cmd_list_thread_groups): Support --recurse. Permit specifying
1213 thread groups together with --available.
1217 * configure: Regenerate (for _STRUCTURED_PROC).
1221 Delete dead function.
1222 * ada-lang.c (extract_string): Delete. No longer used.
1226 Fix -Wunused warning in dec-thread.c.
1227 * dec-thread.c (dec_thread_count_gdb_threads)
1228 (dec_thread_add_gdb_thread): Prevent -Wunused warning.
1232 * ada-valprint.c (ada_print_floating): Remove trailing space.
1236 Add support for DW_AT_GNAT_descriptive_type.
1237 * gdbtypes.h (enum type_specific_kind): New enum.
1238 (struct main_type) [type_specific_field]: New component.
1239 [type_specific]: Add new component "gnat_stuff".
1240 (struct gnat_aux_type): New type.
1241 (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
1242 (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
1243 (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
1244 (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
1245 (TYPE_SPECIFIC_FIELD): New macros.
1246 (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
1247 type does not hold any cplus-specific data.
1248 (TYPE_RAW_CPLUS_SPECIFIC): New macro.
1249 (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
1250 (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
1251 cplus-specific data.
1252 * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
1253 Set new component TYPE_SPECIFIC_FIELD (type).
1254 (gnat_aux_default): New constant.
1255 (allocate_gnat_aux_type): New function.
1256 (init_type): Add initialization the type-specific stuff for
1257 TYPE_CODE_FLT and TYPE_CODE_FUNC types.
1258 (print_gnat_stuff): New function.
1259 (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
1260 specific data. Adjust code that prints the contents of the
1261 type-specific union using the TYPE_SPECIFIC_FIELD value.
1262 * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
1263 the type cplus stuff for Ada types.
1264 (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
1265 Error out if these routines are called with an Ada type.
1266 (read_structure_type, read_array_type, read_subrange_type):
1267 Add call to set_descriptive_type.
1268 (set_die_type): Initialize the gnat-specific data if necessary.
1269 (need_gnat_info, die_descriptive_type, set_descriptive_type):
1271 * ada-lang.c (decode_constrained_packed_array_type): Use
1272 decode_constrained_packed_array_type instead of doing a standard
1273 lookup to locate a parallel type.
1274 (find_parallel_type_by_descriptive_type): New function.
1275 (ada_find_parallel_type_with_name): New function.
1276 (ada_find_parallel_type): Reimplement using
1277 ada_find_parallel_type_with_name.
1278 * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
1279 to check if type has a cplus stuff.
1280 * linespec.c (total_number_of_methods): Likewise.
1281 * mdebugread.c (new_type): Likewise.
1285 * NEWS: Document the 0b binary number prefix parsing.
1289 * objfiles.c (objfile_relocate1): Change the return type to int.
1290 Describe the new return value. Return non-zero if data changed.
1291 (objfile_relocate): New variable changed. Set it. Call
1292 breakpoint_re_set depending on CHANGED.
1296 Implement binary numbers parsing.
1297 * c-exp.y (parse_number): New case 'b' and 'B'.
1302 * solib.c (info_sharedlibrary_command): Replace
1303 objfile_has_partial_symbols and objfile_has_full_symbols calls by
1304 objfile_has_symbols.
1308 * NEWS: Document the improvements made to the mips-irix port.
1312 Fix the documentation of valprint.c:value_print.
1313 * valprint.c (value_print): Update the function description to
1314 mention that the syntax of the output follows the current_language,
1319 Fix displacement of separate debug info files.
1320 * objfiles.c (objfile_relocate): Rename to ...
1321 (objfile_relocate1): ... here and make it static. Extend the comment.
1322 (objfile_relocate): New function.
1323 * solib-spu.c (spu_relocate_main_executable): Explicitly check if
1324 SYMFILE_OBJFILE is NULL. Remove variables objfile and old_chain.
1325 Remove following of SEPARATE_DEBUG_OBJFILE. new_offsets is now
1326 allocated using alloca.
1327 * symfile.c (copy_section_addr_info): Remove.
1328 (build_section_addr_info_from_objfile): Make it global. New variables
1329 addr_bit and mask, use them.
1330 * symfile.h (build_section_addr_info_from_objfile): New prototype.
1331 (copy_section_addr_info): Remove.
1335 Signal unwinder for mips-irix N32.
1336 * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
1338 (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
1339 (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
1340 (SIGCONTEXT_LO_OFF): New macros.
1341 (mips_irix_n32_tramp_frame_init): New function.
1342 (mips_irix_n32_tramp_frame): New static constant.
1343 (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
1347 Breakpoint in shared library does not work on mips-irix.
1348 * procfs.c: #include "observer.h".
1349 (procfs_inferior_created): New function, moving here the code
1350 which unsets the syssgi syscall-exit notifications.
1351 (procfs_create_inferior): Remove the code which unsets the syssgi
1352 syscall-exit notifications. It is too early to do this here.
1353 (_initialize_procfs): Attach the procfs_inferior_created observer.
1357 Wrong return convention for arrays (mips-irix).
1358 * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
1359 128 bits or smaller are returned the same way as structs
1360 and unions of the the same size.
1364 Cannot set the PC on mips-irix.
1365 * irix5-nat.c (fill_gregset): Check regno against the raw PC
1366 register number, no the cooked one.
1370 Error while loading core file on mips-irix.
1371 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
1372 if debugging from a core file.
1376 GDB hangs when attaching to process on mips-irix.
1377 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
1378 attaching to a process.
1382 Use the correct breakpoint instruction on mips-irix.
1383 * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
1384 containing the correct breakpoint instruction to use on mips-irix.
1385 Use it when the osabi is GDB_OSABI_IRIX.
1389 -Wunused warning in procfs.c (mips-irix only).
1390 * procfs.c (gdb_praddset, gdb_prdelset): New macros. Use them
1391 throughout instead of using praddset and prdelset respectively.
1395 GDB crash while stepping into function.
1396 * infrun.c (handle_inferior_event): Refetch the current frame
1397 after handling what.main_action, in case that pointer became
1402 Fix build failure of solaris-hosted cross debuggers.
1403 * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
1407 Fix build failure on sparc-solaris.
1408 * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
1412 Move some symfile code into subroutines.
1413 * symfile.h (relative_addr_info_to_section_offsets)
1414 (addr_info_make_relative): New prototypes.
1415 * symfile.c (default_symfile_offsets): Move a part to ...
1416 (relative_addr_info_to_section_offsets): ... this new function.
1417 (default_symfile_offsets): Call it.
1418 (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
1420 (addr_info_make_relative): ... this new function.
1424 Add from_tty to solib_create_inferior_hook.
1425 * infcmd.c (post_create_inferior): Move solib_add after
1426 solib_create_inferior_hook. Pass from_tty to
1427 solib_create_inferior_hook. Call solib_add and SOLIB_ADD with
1428 0 from_tty and comment why.
1429 * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
1430 * linux-nat.c (linux_child_follow_fork): Likewise.
1431 * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
1432 * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
1434 * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
1435 * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
1436 * solib-null.c (null_solib_create_inferior_hook): Likewise.
1437 * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
1438 * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
1439 * solib-som.c (som_solib_create_inferior_hook): Likewise.
1440 * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
1441 Pass it to svr4_so_ops.solib_create_inferior_hook.
1442 * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
1444 * solib-svr4.c (enable_break): New parameter from_tty. Pass it to
1446 (svr4_solib_create_inferior_hook): New parameter from_tty. Pass it to
1448 * solib-target.c (solib_target_solib_create_inferior_hook): New
1450 * solib.c (solib_create_inferior_hook): New parameter from_tty. Pass
1451 it to ops->solib_create_inferior_hook.
1452 (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
1453 Move solib_add after solib_create_inferior_hook, call it now with
1454 from_tty as 0. New comment there.
1455 * solib.h (solib_create_inferior_hook): New parameter from_tty.
1456 * solist.h (struct target_so_ops <solib_create_inferior_hook>):
1462 * infrun.c (handle_inferior_event): Use get_thread_regcache
1463 with events ptid, not get_current_regcache.
1467 GDB crash with empty executable name (MinGW).
1468 * source.c (openp): Add assert that parameter string is not NULL.
1469 if parameter string is an empty string, then return with a failure
1474 Get rid of support for VAX Floats.
1475 * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
1476 (ada_vax_float_print_function): Delete.
1477 * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
1478 (ada_vax_float_print_function): Delete.
1479 * ada-typeprint.c (print_vax_floating_point_type): Delete.
1480 (ada_print_type): Remove support for VAX floats.
1481 * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
1485 * stabsread.c (read_args): Handle zero arguments.
1489 Cannot find in-tree libiconv.a after reconfigure.
1490 * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
1491 that we can use, then cache the path to this archive.
1492 * configure: Regenerate.
1496 Make tracepoint operations go through target vector.
1497 * target.h (enum trace_find_type): New enum.
1498 (struct target_ops): New fields to_trace_init,
1499 to_download_tracepoint, to_download_trace_state_variable,
1500 to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
1501 to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
1502 to_set_disconnected_tracing.
1503 (target_trace_init): New macro.
1504 (target_download_tracepoint): New macro.
1505 (target_download_trace_state_variable): New macro.
1506 (target_trace_start): New macro.
1507 (target_trace_set_readonly_regions): New macro.
1508 (target_get_trace_status): New macro.
1509 (target_trace_stop): New macro.
1510 (target_trace_find): New macro.
1511 (target_get_trace_state_variable_value): New macro.
1512 (target_set_disconnected_tracing): New macro.
1513 * target.c (update_current_target): Inherit and set defaults for
1514 tracepoint operations.
1515 * tracepoint.c (default_collect): Make globally visible.
1516 (target_is_remote): Remove, along with all calls.
1517 (tvariables_info): Call target_get_trace_state_variable_value.
1518 (remote_set_transparent_ranges): Remove.
1519 (trace_start_command): Call target_trace_init,
1520 target_download_tracepoint, etc.
1521 (download_tracepoint): Remove.
1522 (trace_stop_command): Simplify.
1523 (stop_tracing): Call target_trace_stop.
1524 (get_trace_status): Call target_get_trace_status.
1525 (trace_status_command): Add case for targets that cannot trace.
1526 (finish_tfind_command): Change to take numerical arguments, call
1528 (trace_find_command): Update call to finish_tfind_command.
1529 (trace_find_pc_command): Ditto.
1530 (trace_find_tracepoint_command): Ditto.
1531 (trace_find_line_command): Ditto.
1532 (trace_find_range_command): Ditto.
1533 (trace_find_outside_command): Ditto.
1534 (set_disconnected_tracing_value): Call
1535 target_set_disconnected_tracing.
1536 * remote.c: Add protocol encoding bits from tracepoint.c.
1537 (trace_error): Move from tracepoint.c.
1538 (remote_get_noisy_reply): Ditto.
1539 (free_actions_list_cleanup_wrapper): Ditto.
1540 (free_actions_list): Ditto.
1541 (remote_trace_init): New function.
1542 (remote_download_tracepoint): New function.
1543 (remote_download_trace_state_variable): New function.
1544 (remote_trace_set_readonly_regions): New function.
1545 (remote_trace_start): New function.
1546 (remote_get_trace_status): New function.
1547 (remote_trace_stop): New function.
1548 (remote_trace_find): New function.
1549 (remote_download_trace_state_variable): New function.
1550 (remote_set_disconnected_tracing): New function.
1551 (init_remote_ops): Add tracepoint operations.
1553 * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
1557 * symfile.c (build_section_addr_info_from_objfile): New function.
1558 (symbol_file_add_separate): Don't use offsets from objfile but
1563 Support disconnected tracing.
1564 * infcmd.c (detach_command): Ask whether to stop tracing.
1565 * cli/cli-cmds.c (quit_command): Ditto.
1566 * breakpoint.h (struct breakpoint): New field number_on_target.
1567 * breakpoint.c (create_tracepoint_from_upload): New function.
1568 (get_tracepoint_by_number_on_target): New function.
1569 * remote.c (struct remote): New field disconnected_tracing.
1570 (remote_disconnected_tracing_feature): New function.
1571 (remote_protocol_features): Add DisconnectedTracing.
1572 (struct uploaded_tp): New struct.
1573 (uploaded_tps): New global.
1574 (get_uploaded_tp): New function.
1575 (find_matching_tracepoint): New function.
1576 (remote_get_tracing_state): New function.
1577 (remote_start_remote): Call it.
1578 * tracepoint.c (disconnected_tracing): New global.
1579 (trace_start_command): Initialize number_on_target.
1580 (stop_tracing): New function, split out from...
1581 (trace_stop_command): Call stop_tracing.
1582 (get_trace_status): New function, split out from...
1583 (trace_status_command): Call get_trace_status, add info on
1584 disconnection behavior.
1585 (disconnect_or_stop_tracing): New function.
1586 (finish_tfind_command): Translate from number on target.
1587 (trace_find_tracepoint_command): Translate to number on target.
1588 (send_disconnected_tracing_value): New function.
1589 (set_disconnected_tracing): New function.
1590 (_initialize_tracepoint): Add disconnected-tracing variable.
1591 * NEWS: Mention disconnected tracing.
1595 * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
1596 parameter to main_objfile. Iterate on all separate debug objfiles.
1597 * symfile.h (symbol_file_add_separate)
1598 (find_separate_debug_file_by_debuglink): Remove parameter names.
1599 * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
1600 (reread_symbols): Use free_objfile_separate_debug.
1601 * objfiles.h (struct objfile): Add separate_debug_objfile_link.
1603 (objfile_separate_debug_iterate, add_separate_debug_objfile)
1604 (free_objfile_separate_debug): New prototypes.
1605 * objfiles.c (objfile_separate_debug_iterate): New function.
1606 (add_separate_debug_objfile, free_objfile_separate_debug): New
1608 (free_objfile): Use free_objfile_separate_debug. Adjust for
1609 multiple separate debug objfile.
1610 (objfile_has_symbols): Adjust comment. Iterate on all separate
1612 * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
1614 (lookup_minimal_symbol_text): Ditto.
1615 (lookup_minimal_symbol_by_pc_name): Ditto.
1616 (lookup_minimal_symbol_solib_trampoline): Ditto.
1617 (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
1622 Add fast tracepoints.
1623 * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
1624 * arch-utils.c (default_fast_tracepoint_valid_at): New function.
1625 * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
1626 * breakpoint.c (tracepoint_type): New function.
1627 (ALL_TRACEPOINTS): Use it.
1628 (should_be_inserted): Ditto.
1629 (bpstat_check_location): Ditto.
1630 (print_one_breakpoint_location): Ditto.
1631 (user_settable_breakpoint): Ditto.
1632 (set_breakpoint_location_function): Ditto.
1633 (disable_breakpoints_in_shlibs): Ditto.
1634 (delete_trace_command): Ditto.
1635 (print_it_typical): Add bp_fast_tracepoint case.
1636 (bpstat_what): Ditto.
1637 (print_one_breakpoint_location): Ditto.
1638 (allocate_bp_location): Ditto.
1640 (breakpoint_re_set_one): Ditto.
1641 (disable_command): Ditto.
1642 (enable_command): Ditto.
1643 (check_fast_tracepoint_sals): New function.
1644 (break_command_really): Call it.
1645 (ftrace_command): New function.
1646 (_initialize_breakpoint): Add ftrace command.
1647 * gdbarch.sh (fast_tracepoint_valid_at): New.
1648 * gdbarch.h, gdbarch.c: Regenerate.
1649 * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
1650 (i386_gdbarch_init): Use it.
1651 * remote.c (struct remote_state): New field fast_tracepoints.
1652 (PACKET_FastTracepoints): New packet config type.
1653 (remote_fast_tracepoint_feature): New function.
1654 (remote_protocol_features): Add FastTracepoints.
1655 (remote_supports_fast_tracepoints): New function.
1656 (_initialize_remote): Add FastTracepoints.
1657 * tracepoint.c (download_tracepoint): Add fast tracepoint option.
1658 * NEWS: Mention fast tracepoints.
1662 * gdb-gdb.py: New file.
1666 * infrun.c (handle_inferior_event): Fix typo in comment.
1670 * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
1674 * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
1676 (s390-linux32-expedite): Define.
1677 (s390-linux64-expedite): Define.
1678 (s390x-linux64-expedite): Define.
1679 * features/s390-acr.xml: New file.
1680 * features/s390-fpr.xml: New file.
1681 * features/s390-core32.xml: New file.
1682 * features/s390-core64.xml: New file.
1683 * features/s390x-core64.xml: New file.
1684 * features/s390-linux32.xml: New file.
1685 * features/s390-linux64.xml: New file.
1686 * features/s390x-linux64.xml: New file.
1687 * features/s390-linux32.c: New generated file.
1688 * features/s390-linux64.c: New generated file.
1689 * features/s390x-linux64.c: New generated file.
1691 * regformats/s390-linux32.dat: New generated file.
1692 * regformats/s390-linux64.dat: New generated file.
1693 * regformats/s390x-linux64.dat: New generated file.
1694 * regformats/reg-s390.dat: Remove.
1695 * regformats/reg-s390x.dat: Remove.
1697 * s390-nat.c: Include "auxv.h" and <elf.h>.
1698 (HWCAP_S390_HIGH_GPRS): Define if undefined.
1699 (s390_target_wordsize): New function.
1700 (s390_auxv_parse): Likewise.
1701 (s390_get_hwcap): Likewise.
1702 (s390_read_description): Likewise.
1703 (_initialize_s390_nat): Install s390_auxv_parse and
1704 s390_read_description.
1706 * s390-tdep.c: Include "features/s390-linux32.c",
1707 "features/s390-linux64.c", and "features/s390x-linux64.c".
1708 (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
1709 (s390_register_call_saved): New function.
1710 (s390_register_name): Remove.
1711 (s390_register_type): Remove.
1712 (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
1713 (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
1714 (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
1715 (s390_pseudo_register_name): New function.
1716 (s390_pseudo_register_type): New function.
1717 (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
1718 Handle full GPR pesudos and varying pseudo register numbers.
1719 (s390_pseudo_register_write): Likewise
1720 (s390x_pseudo_register_read): Remove.
1721 (s390x_pseudo_register_write): Likewise.
1722 (s390_register_group): Remove.
1723 (s390_pseudo_register_group): New function.
1724 (s390_regmap_gregset): Add GPR upper halves.
1725 (s390x_regmap_gregset): Likewise.
1726 (s390_regmap_fpregset): Likewise.
1727 (s390_regmap_upper): New global variable.
1728 (s390_upper_regset): New global variable.
1729 (s390_upper_regset_sections): New global variable.
1730 (s390_regset_from_core_section): Handle GPR upper halves.
1731 (s390_core_read_description): New function.
1732 (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
1733 register information. Handle varying pseudo register numbers.
1734 (s390_backchain_frame_unwind_cache): Likewise.
1735 (s390_frame_prev_register): Unwind full GPRs to show lower halves.
1736 (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
1737 (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
1738 PC and CC pseudos. Unwind upper halves and full GPRs as appropriate.
1739 Handle varying pseudo register numbers.
1740 (s390_unwind_pc): Handle varying pseudo register numbers.
1741 (s390_dwarf2_prev_register): New function.
1742 (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
1743 register information. Handle varying pseudo register numbers.
1744 Install s390_dwarf2_prev_register to unwind full GPRs.
1745 (s390_gdbarch_init): Handle target descriptions. Assign varying
1746 pseudo register numbers. Install s390_adjust_frame_regnum.
1747 (_initialize_s390_tdep): Initialize target descriptions.
1749 * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
1750 (S390_NUM_REGS): Redefine to include upper half registers.
1751 (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
1752 (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
1753 (tdesc_s390_linux32): Add declaration.
1754 (tdesc_s390_linux64): Likewise.
1755 (tdesc_s390x_linux64): Likewise.
1759 * regset.h (struct core_regset_section): Add HUMAN_NAME.
1760 * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
1761 * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
1762 (ppc_linux_vmx_regset_sections): Likewise.
1763 (ppc_linux_fp_regset_sections): Likewise.
1765 * corelow.c (get_core_register_section): Constify arguments.
1766 (get_core_registers): Use gdbarch_core_regset_sections instead
1767 of hard-coded platform-specific register section names.
1771 * dwarf2loc.c (read_pieced_value): If a piece occupies part of
1772 a register, assume the least-significant part is used.
1773 (write_pieced_value): Likewise.
1777 * printcmd.c: Include "arch-utils.h".
1778 (do_one_display): Re-parse expression if current architecture changed.
1783 * gdbtypes.c (check_typedef): New comment on type length.
1784 * value.c (allocate_value_lazy): Remove the unused atype variable. New
1785 comment on type length.
1786 (value_primitive_field): Keep the original TYPE value, new comment.
1790 * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
1791 p_start. Change != comparisons to > and < comparisons.
1795 * cli/cli-script.c (process_next_line): Check P2 overrun.
1799 Update the copyright hearder to add year 2010 for most GDB files.
1803 Fix build failure in inf-ptrace.c.
1804 * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
1808 * top.c (print_gdb_version): Update copyright year.
1812 Fix break *FUN'address thread NUM.
1813 * ada-lex.l (task): Expand rule to also match the thread keyword.
1817 Fix break *FUN'address task NUM.
1818 * ada-lex.l (task): New rule.
1819 * ada-lang.c (valid_task_id): Make sure the Ada task list has
1820 been built before using it.
1822 For older changes see ChangeLog-2009.
1828 version-control: never