+
+ PR guile/17367
+ * acinclude.m4 (GDB_GUILE_PROGRAM_NAMES): Pass guile version as
+ last parameter to pkg-config, not first.
+ * configure.ac: Pass --with-guile provided pkg-config path to
+ GDB_GUILE_PROGRAM_NAMES.
+ * configure: Regenerate.
+
+
+ * MAINTAINERS (Write After Approval): Add "Gabriel Krisman
+ Bertazi".
+
+
+ * mips-irix-tdep.c (mips_irix_elf_osabi_sniff_abi_tag_sections):
+ Exclude `.MIPS.abiflags', `.MIPS.options' and `.MIPS.stubs' from
+ the list of sections determining GDB_OSABI_IRIX.
+
+
+ * MAINTAINERS (Write After Approval): Add "James Hogan".
+
+
+ * trad-frame.h (trad_frame_set_reg_unknown): Remove declaration.
+
+
+ * i386-linux-nat.c, x86-linux-nat.c: Add <sys/uio.h> #include.
+
+
+ PR 17247
+ * guile.c: #include <signal.h>.
+ (_initialize_guile): Block SIGCHLD while initializing Guile.
+
+ Replaces the following, which is reverted.
+
+
+ PR 17185
+ * configure.ac: Add check for header gc/gc.h.
+ Add check for function setenv.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * guile/guile.c (_initialize_guile): Add workaround for libgc 7.4.0.
+
+
+ * guile/scm-cmd.c (gdbscm_parse_command_name): Replace magic number
+ with named constant. Fix style of pointer comparison.
+ * python/py-cmd.c (gdbpy_parse_command_name): Ditto.
+
+
+ PR gdb/17035
+ * cli/cli-cmds.c (show_user): Use cli_user_command_p to
+ decide whether we display the command on "show user".
+ * cli/cli-script.c (show_user_1): Only verify cmdlines after
+ printing command name.
+ * cli/cli-decode.h (cli_user_command_p): Declare new function.
+ * cli/cli-decode.c (cli_user_command_p): Create helper function
+ to verify whether cmd_list_element is a user-defined command.
+
+
+ PR python/17355
+ * python/py-framefilter.c (py_print_single_arg): Handle NULL FA->VAL.
+ Fix goto out of TRY_CATCH.
+
+
+ PR 15276
+ * NEWS: Mention $_caller_is, $_caller_matches, $_any_caller_is,
+ $_any_caller_matches.
+ * data-directory/Makefile.in (PYTHON_FILE_LIST): Add caller_is.py.
+ * python/lib/gdb/function/caller_is.py: New file.
+
+
+ * infcmd.c (program_info): Fix typo.
+
+
+ PR gdb/17235
+ * stap-probe.c (stap_parse_single_operand): Delete unused variable
+ 'number'. New variable 'has_digit'. Rewrite code to deal with
+ subexpressions on SDT probes.
+
+
+ * c-exp.y (parse_number): Skip handling base-switching prefixes if
+ the input is only one character long.
+
+
+ PR fortran/17237
+ * f-valprint.c (f_val_print): Specify the correct print option to
+ use when printing integer values.
+
+
+ * x86-linux-nat.c (x86_linux_dr_get, x86_linux_dr_set):
+ Remove code to cope with LWPs wrapped as PIDs.
+ Add assertions to ensure no wrapped LWPs are passed.
+
+
+ * value.c (value_ranges_copy_adjusted): New function, factored out
+ from ...
+ (value_contents_copy_raw): ... here.
+ (unpack_value_bits_as_long_1): Rename back to ...
+ (unpack_bits_as_long): ... this. Remove 'original_value' and
+ 'result' parameters. Change return type to LONGEST.
+ (unpack_value_bits_as_long): Delete.
+ (unpack_value_field_as_long_1): Delete.
+ (unpack_value_field_as_long, unpack_field_as_long): Reimplement.
+ (unpack_value_bitfield): New function.
+ (value_field_bitfield): Reimplement using unpack_value_bitfield.
+ (value_fetch_lazy): Use unpack_value_bitfield.
+ * value.h (unpack_value_bits_as_long): Delete declaration.
+
+
+ * python/py-frame.c (frapy_read_register): New function.
+
+
+ * mips-linux-nat.c (mips_linux_read_description): Reset errno to 0
+ prior to reading DSP_CONTROL with PTRACE_PEEKUSER ptrace call.
+
+
+ PR python/16699
+ * cli/cli-decode.c (set_cmd_completer_handle_brkchars): New
+ function.
+ (add_cmd): Set "completer_handle_brkchars" to NULL.
+ * cli/cli-decode.h (struct cmd_list_element)
+ <completer_handle_brkchars>: New field.
+ * command.h (completer_ftype_void): New typedef.
+ (set_cmd_completer_handle_brkchars): New prototype.
+ * completer.c (set_gdb_completion_word_break_characters): New
+ function.
+ (complete_line_internal): Call "completer_handle_brkchars"
+ callback from command.
+ * completer.h: Include "command.h".
+ (set_gdb_completion_word_break_characters): New prototype.
+ * python/py-cmd.c (cmdpy_completer_helper): New function.
+ (cmdpy_completer_handle_brkchars): New function.
+ (cmdpy_completer): Adjust to use cmdpy_completer_helper.
+ (cmdpy_init): Set completer_handle_brkchars to
+ cmdpy_completer_handle_brkchars.
+
+
+ * nat/x86-dregs.h (ALL_DEBUG_REGISTERS): Renamed as...
+ (ALL_DEBUG_ADDRESS_REGISTERS): New macro. All uses updated.
+ Loop conditions changed to equivalent form.
+ (struct x86_debug_reg_state): Updated dr_ref_count comment.
+ * x86-linux-nat.c (x86_linux_prepare_to_resume): Use
+ ALL_DEBUG_ADDRESS_REGISTERS.
+
+
+ * dwarf2loc.h (dwarf2_evaluate_property): Minor function
+ description fix.
+
+
+ * typeprint.c (find_global_typedef): Fix comment.
+
+
+ * i386-nat.h: Renamed as...
+ * x86-nat.h: New file. All type, function and variable name
+ prefixes changed from "i386_" to "x86_". All references updated.
+ * i386-nat.c: Renamed as...
+ * x86-nat.c: New file. All type, function and variable name
+ prefixes changed from "i386_" to "x86_". All references updated.
+ * common/i386-xstate.h: Renamed as...
+ * common/x86-xstate.h: New file. All type, function and variable
+ name prefixes changed from "i386_" to "x86_". All references
+ updated.
+ * nat/i386-cpuid.h: Renamed as...
+ * nat/x86-cpuid.h: New file. All type, function and variable name
+ prefixes changed from "i386_" to "x86_". All references updated.
+ * nat/i386-gcc-cpuid.h: Renamed as...
+ * nat/x86-gcc-cpuid.h: New file. All type, function and variable
+ name prefixes changed from "i386_" to "x86_". All references
+ updated.
+ * nat/i386-dregs.h: Renamed as...
+ * nat/x86-dregs.h: New file. All type, function and variable name
+ prefixes changed from "i386_" to "x86_". All references updated.
+ * nat/i386-dregs.c: Renamed as...
+ * nat/x86-dregs.c: New file. All type, function and variable name
+ prefixes changed from "i386_" to "x86_". All references updated.
+
+
+ * varobj.c (_initialize_varobj): Move to the end of file.
+
+
+ * common/common-exceptions.h: New file.
+ * common/common-exceptions.c: Likewise.
+ * Makefile.in (SFILES): Add common/common-exceptions.c.
+ (HFILES_NO_SRCDIR): Add common/common-exceptions.h.
+ (COMMON_OBS): Add common-exceptions.o.
+ (common-exceptions.o): New rule.
+ * exceptions.h (common-exceptions.h): Include.
+ (gdb_setjmp.h): Do not include.
+ (return_reason): Moved to common-exceptions.h.
+ (enum return_reason): Likewise.
+ (RETURN_MASK): Likewise.
+ (typedef return_mask): Likewise.
+ (enum errors): Likewise.
+ (struct gdb_exception): Likewise.
+ (exceptions_state_mc_init): Likewise.
+ (exceptions_state_mc_action_iter): Likewise.
+ (exceptions_state_mc_action_iter_1): Likewise.
+ (TRY_CATCH): Likewise.
+ (throw_exception): Likewise.
+ (throw_verror): Likewise.
+ (throw_vquit): Likewise.
+ (throw_error): Likewise.
+ (throw_quit): Likewise.
+ * exceptions.c (enum catcher_state): Moved to common-exceptions.c.
+ (enum catcher_action): Likewise.
+ (struct catcher): Likewise.
+ (current_catcher): Likewise.
+ (catcher_list_size): Likewise.
+ (exceptions_state_mc_init): Likewise.
+ (catcher_pop): Likewise.
+ (exceptions_state_mc): Likewise.
+ (exceptions_state_mc_action_iter): Likewise.
+ (exceptions_state_mc_action_iter_1): Likewise.
+ (throw_exception): Likewise.
+ (exception_messages): Likewise.
+ (exception_messages_size): Likewise.
+ (throw_it): Likewise.
+ (throw_verror): Likewise.
+ (throw_vquit): Likewise.
+ (throw_error): Likewise.
+ (throw_quit): Likewise.
+ (prepare_to_throw_exception): New function.
+
+
+ * common/gdb_setjmp.h: New file.
+ * Makefile.in (HFILES_NO_SRCDIR): Add common/gdb_setjmp.h.
+ * configure.ac: Move sigsetjmp check...
+ * common/common.m4: ...here.
+ * configure: Regenerate.
+ * cp-support.c (SIGJMP_BUF): Delete.
+ (SIGSETJMP): Likewise.
+ (SIGLONGJMP): Likewise.
+ * exceptions.h (gdb_setjmp.h): Include.
+ (setjmp.h): Do not include.
+ (EXCEPTIONS_SIGJMP_BUF): Delete.
+ (EXCEPTIONS_SIGSETJMP): Likewise.
+ (EXCEPTIONS_SIGLONGJMP): Likewise.
+ Replace all uses of EXCEPTIONS_SIG* macros with SIG* macros
+ from gdb_setjmp.h.
+ * exceptions.c: Likewise.
+
+
+ * cleanups.h: Moved to...
+ * common/cleanups.h: New file.
+ * cleanups.c: Moved to...
+ * common/cleanups.c: New file. Include common-defs.h and
+ cleanups.h. Do not include defs.h.
+ * Makefile.in (SFILES): Replace cleanups.c with common/cleanups.c.
+ (HFILES_NO_SRCDIR): Replace cleanups.h with common/cleanups.h.
+ (cleanups.o): New rule.
+
+
+ * common/errors.h (internal_warning): New declaration.
+ (internal_vwarning): Likewise.
+ * common/errors.c (internal_warning): New function.
+ * utils.h (internal_warning): Don't declare.
+ (internal_vwarning): Likewise.
+ * utils.c (internal_warning): Removed.
+
+
+ * main.c (captured_main): Use warning during startup.
+ Prefix startup warning messages with command name.
+
+
+ * main.c (captured_main): Handle usage errors with error.
+
+
+ * go32-nat.c (go32_create_inferior): Replace a fprintf/
+ exit pair with a call to error. Wrap the message with _().
+
+
+ * main.c (captured_main): Replace a fprintf/exit
+ pair with a call to error. Wrap the message with _().
+
+
+ * tui/tui-io.c (tui_initialize_io): Replace two fprintf/exit
+ pairs with calls to error. Wrap the message with _().
+
+
+ * utils.c (vwarning): Protect calls to target_terminal_ours
+ and wrap_here.
+
+
+ * exceptions.c (print_flush): Protect calls to
+ target_terminal_ours and wrap_here.
+
+
+ * utils.h (filtered_printing_initialized): New declaration.
+ * utils.c (abort_with_message): New function.
+ (internal_vproblem): Use abort_with_message for first level
+ recursive internal problems, and if gdb_stderr is not set up.
+ Protect calls to target_terminal_ours, begin_line and query.
+
+
+ * symtab.c (in_prologue): Move definition to better spot.
+ (skip_prologue_using_sal): Ditto.
+
+
+ * symtab.c (find_function_start_sal): Move definition to better spot.
+
+
+ * arm-tdep.c (thumb_in_function_epilogue_p): Don't set
+ found_stack_adjust in forward scan. Remove condition check
+ on found_stack_adjust which is always true. Indent the code.
+
+
+ * dwarf2read.c (dwarf_decode_lines): Update declaration.
+ (handle_DW_AT_stmt_list): Remove comment about WANT_LINE_INFO.
+ (dwarf_decode_lines): Remove argument
+ want_line_info. Remove condition check on want_line_info.
+ Callers update.
+
+
+ * dwarf2read.c (dwarf_record_line): Fix typo.
+
+
+ * target.h (struct target_ops::to_terminal_save_ours): Remove
+ declaration.
+ (target_terminal_save_ours): Remove macro.
+ * target-delegates.c: Regenerate.
+ * inf-child.c (inf_child_target): Don't set the nonexistent
+ field to_terminal_save_ours.
+ * inferior.h (child_terminal_save_ours): Remove declaration.
+ * terminal.h (gdb_save_tty_state): New declaration.
+ * inflow.c (child_terminal_save_ours): Rename to ...
+ (gdb_save_tty_state): ... this.
+ * tui/tui.c: Include terminal.h.
+ (tui_enable): Use gdb_save_tty_state instead of
+ target_terminal_save_ours.
+ (tui_disable): Likewise.
+
+
+ * linux-nat.c (linux_nat_close): Don't pass NULL for "this".
+ Pass NULL instead of 0 for context pointer.
+
+
+ * dwarf2read.c: Fix grammatical error.
+
+
+ * dwarf2read.c (scan_partial_symbols): Update comments.
+ Rename argument 'need_pc' with 'set_addrmap'.
+ (add_partial_namespace): Rename argument 'need_pc' with
+ 'set_addrmap'.
+ (add_partial_module): Likewise.
+ (add_partial_subprogram): Likewise. Update comments.
+ (dwarf2_name): Fix typo.
+
+
+ PR 17276
+ * dwarf2read.c (dwarf_record_line_p): New function.
+ (dwarf_decode_lines_1): Ignore subsequent line number entries
+ for the same line if any entry had a non-zero discriminator.
+
+
+ * buildsym.h (record_line_ftype): New typedef.
+ (record_line): Use it.
+ * dwarf2read.c (dwarf_record_line, dwarf_finish_line): New functions.
+ (dwarf_decode_lines_1): Call them.
+
+
+ * ctf.c (CTF_FILE_MIN_SIZE): Remove.
+ (ctf_end): Remove code.
+
+
+ * linux-tdep.c (linux_corefile_thread_callback): Ignore THREAD_EXITED.
+ (linux_make_corefile_notes): call update_thread_list, protected against
+ exceptions.
+
+
+ * infcmd.c (attach_command): Remove comment.
+
+
+ * aarch64-linux-nat.c (dr_changed_t): Change the type from
+ unsigned LONGEST to ULONGEST.
+
+
+ * Makefile.in (check-read1): New rule.
+
+
+ * value.c (value_from_contents_and_address): Strip resolved_type's
+ typedef layers before checking its TYPE_DATA_LOCATION.
+
+
+ * value.c (value_contents_bits_eq): Initialize l,h for gcc -Wall.
+
+
+ * amd64-tdep.c (amd64_classify): Add a blank line after the
+ example. Move "*/" to a new line.
+ * arm-tdep.c (arm_vfp_cprc_sub_candidate): Likewise.
+ * arm-wince-tdep.c (arm_pe_skip_trampoline_code): Likewise.
+ * dwarf2read.c (psymtab_include_file_name): Likewise.
+
+
+ PR symtab/14604
+ PR symtab/14605
+ * ada-lang.c (coerce_unspec_val_to_type): Use
+ value_contents_copy_raw.
+ * ada-valprint.c (val_print_packed_array_elements): Adjust.
+ * c-valprint.c (c_val_print): Use value_bits_any_optimized_out.
+ * cp-valprint.c (cp_print_value_fields): Let the common printing
+ code handle optimized out values.
+ (cp_print_value_fields_rtti): Use value_bits_any_optimized_out.
+ * d-valprint.c (dynamic_array_type): Use
+ value_bits_any_optimized_out.
+ * dwarf2loc.c (entry_data_value_funcs): Remove check_validity and
+ check_any_valid fields.
+ (check_pieced_value_bits): Delete and inline ...
+ (check_pieced_synthetic_pointer): ... here.
+ (check_pieced_value_validity): Delete.
+ (check_pieced_value_invalid): Delete.
+ (pieced_value_funcs): Remove check_validity and check_any_valid
+ fields.
+ (read_pieced_value): Use mark_value_bits_optimized_out.
+ (write_pieced_value): Switch to use
+ mark_value_bytes_optimized_out.
+ (dwarf2_evaluate_loc_desc_full): Copy the value contents instead
+ of assuming the whole value is optimized out.
+ * findvar.c (read_frame_register_value): Remove special handling
+ of optimized out registers.
+ (value_from_register): Use mark_value_bytes_optimized_out.
+ * frame-unwind.c (frame_unwind_got_optimized): Use
+ mark_value_bytes_optimized_out.
+ * jv-valprint.c (java_value_print): Adjust.
+ (java_print_value_fields): Let the common printing code handle
+ optimized out values.
+ * mips-tdep.c (mips_print_register): Remove special handling of
+ optimized out registers.
+ * opencl-lang.c (lval_func_check_validity): Delete.
+ (lval_func_check_any_valid): Delete.
+ (opencl_value_funcs): Remove check_validity and check_any_valid
+ fields.
+ * p-valprint.c (pascal_object_print_value_fields): Let the common
+ printing code handle optimized out values.
+ * stack.c (read_frame_arg): Remove special handling of optimized
+ out values. Fetch both VAL and ENTRYVAL before comparing
+ contents. Adjust to value_available_contents_eq rename.
+ * valprint.c (valprint_check_validity)
+ (val_print_scalar_formatted): Use value_bits_any_optimized_out.
+ (val_print_array_elements): Adjust.
+ * value.c (struct value) <optimized_out>: Now a VEC(range_s).
+ (value_bits_any_optimized_out): New function.
+ (value_entirely_covered_by_range_vector): New function, factored
+ out from value_entirely_unavailable.
+ (value_entirely_unavailable): Reimplement.
+ (value_entirely_optimized_out): New function.
+ (insert_into_bit_range_vector): New function, factored out from
+ mark_value_bits_unavailable.
+ (mark_value_bits_unavailable): Reimplement.
+ (struct ranges_and_idx): New struct.
+ (find_first_range_overlap_and_match): New function, factored out
+ from value_available_contents_bits_eq.
+ (value_available_contents_bits_eq): Rename to ...
+ (value_contents_bits_eq): ... this. Check both unavailable
+ contents and optimized out contents.
+ (value_available_contents_eq): Rename to ...
+ (value_contents_eq): ... this.
+ (allocate_value_lazy): Remove reference to the old optimized_out
+ boolean.
+ (allocate_optimized_out_value): Use
+ mark_value_bytes_optimized_out.
+ (require_not_optimized_out): Adjust to check whether the
+ optimized_out vec is empty.
+ (ranges_copy_adjusted): New function, factored out from
+ value_contents_copy_raw.
+ (value_contents_copy_raw): Also copy the optimized out ranges.
+ Assert the destination ranges aren't optimized out.
+ (value_contents_copy): Update comment, remove call to
+ require_not_optimized_out.
+ (value_contents_equal): Adjust to check whether the optimized_out
+ vec is empty.
+ (set_value_optimized_out, value_optimized_out_const): Delete.
+ (mark_value_bytes_optimized_out, mark_value_bits_optimized_out):
+ New functions.
+ (value_entirely_optimized_out, value_bits_valid): Delete.
+ (value_copy): Take a VEC copy of the 'optimized_out' field.
+ (value_primitive_field): Remove special handling of optimized out.
+ (value_fetch_lazy): Assert that lazy values have no unavailable
+ regions. Use value_bits_any_optimized_out. Remove some special
+ handling for optimized out values.
+ * value.h: Add intro comment about <optimized out> and
+ <unavailable>.
+ (struct lval_funcs): Remove check_validity and check_any_valid
+ fields.
+ (set_value_optimized_out, value_optimized_out_const): Remove.
+ (mark_value_bytes_optimized_out, mark_value_bits_optimized_out):
+ New declarations.
+ (value_bits_any_optimized_out): New declaration.
+ (value_bits_valid): Delete declaration.
+ (value_available_contents_eq): Rename to ...
+ (value_contents_eq): ... this, and extend comments.
+
+
+ Fix -fsanitize=address on unreadable inferior strings.
+ * valprint.c (val_print_string): Fix access before BUFFER.
+
+
+ * target.c (target_struct_size): Remove.
+ (target_struct_allocsize): Remove.
+ (DEFAULT_ALLOCSIZE): Remove.
+ (target_ops_p): New typedef.
+ (DEF_VEC_P (target_ops_p)): New vector type.
+ (target_structs): Change type to VEC (target_ops_p).
+ (add_target_with_completer): Replace "push" code by VEC_safe_push.
+ (find_default_run_target): Rewrite for loop following changes to
+ target_structs.
+
+
+ * value.c (value_from_pointer): Remove use of resolve_dynamic_type.
+ Adjust code accordingly. Adjust function description comment.
+
+
+ * arm-tdep.c (arm_vfp_cprc_sub_candidate): Handle _Complex
+ types.
+
+
+ * acinclude.m4 (GDB_AC_CHECK_BFD): Don't add -ldl.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+
+
+ * common/common-debug.h: New file.
+ * common/common-debug.c: Likewise.
+ * debug.c: Likewise.
+ * Makefile.in (SFILES): Add common/common-debug.c.
+ (HFILES_NO_SRCDIR): Add common/common-debug.h.
+ (COMMON_OBS): Add common-debug.o and debug.o.
+ (common-debug.o): New rule.
+ * common/common-defs.h: Include common-debug.h.
+ * common/agent.c (debug_agent_printf): New function.
+ (DEBUG_AGENT): Redefine.
+ * nat/i386-dregs.c (debug_printf): Undefine.
+
+
+ * common/common-defs.h: Include print-utils.h.
+ * utils.h: Do not include print-utils.h.
+
+
+ * common/common-types.h: New file.
+ * Makefile.in (HFILES_NO_SRCDIR): Add common/common-types.h.
+ * common/common-defs.h: Include common-types.h.
+ * defs.h (gdb_byte, CORE_ADDR, CORE_ADDR_MAX, LONGEST)
+ (ULONGEST): Remove.
+
+
+ * common/errors.h: New file.
+ * common/errors.c: Likewise.
+ * Makefile.in (SFILES): Add common/errors.c.
+ (HFILES_NO_SRCDIR): Add common/errors.h.
+ (COMMON_OBS): Add errors.o.
+ (errors.o): New rule.
+ * common/common-defs.h: Include errors.h.
+ * utils.h (perror_with_name, error, verror, warning, vwarning):
+ Don't declare.
+ * common/common-utils.h: (malloc_failure, internal_error):
+ Likewise.
+
+
+ * utils.c (internal_vproblem): Always print the message.
+
+
+ * ada-typeprint.c (print_range): Initialize lo,hi for gcc -Wall.
+
+
+ * ada-typeprint.c (type_is_full_subrange_of_target_type):
+ Return 0 if TYPE is dynamic.
+ (print_range): Add handling of dynamic ranges.
+
+
+ * gdbtypes.h (struct main_type): Add field "data_location".
+ (TYPE_DATA_LOCATION, TYPE_DATA_LOCATION_BATON)
+ (TYPE_DATA_LOCATION_ADDR, TYPE_DATA_LOCATION_KIND): New macros.
+ * gdbtypes.c (is_dynamic_type): Return 1 if the type has
+ a dynamic data location.
+ (resolve_dynamic_type): Add DW_AT_data_location handling.
+ (copy_recursive, copy_type): Copy the data_location information
+ when present.
+ * dwarf2read.c (set_die_type): Add DW_AT_data_location handling.
+ * value.c (value_from_contents_and_address): Add
+ DW_AT_data_location handling.
+
+
+ * dwarf2expr.h (struct dwarf_expr_context_funcs): Uncomment
+ field "get_object_address".
+ * dwarf2expr.c (execute_stack_op): Add handling for
+ DW_OP_push_object_address.
+ * dwarf2loc.h (dwarf2_evaluate_property): Add "address" field.
+ * dwarf2loc.c (struct dwarf_expr_baton): Add field "obj_address".
+ (dwarf_expr_push_dwarf_reg_entry_value): Set baton_local.obj_address.
+ (dwarf_expr_get_obj_addr): New function.
+ (dwarf_expr_ctx_funcs): Add get_object_address field.
+ (dwarf2_evaluate_loc_desc_full): Set baton.obj_address.
+ (dwarf2_locexpr_baton_eval): Add parameter "addr". Use it.
+ (dwarf2_evaluate_property): Add parameter "address". Use it.
+ (needs_get_obj_addr): New function.
+ (needs_frame_ctx_funcs): Add get_object_address field.
+ (dwarf2_compile_expr_to_ax): Add DW_OP_push_object_address handling.
+ * gdbtypes.c (resolve_dynamic_range): Add "addr" field. Use it.
+ (resolve_dynamic_array): Likewise.
+
+
+ * ada-lang.c (ada_evaluate_subexp) <OP_VAR_VALUE>:
+ When noside is EVAL_AVOID_SIDE_EFFECTS, only return a statically
+ fixed value for records and unions for which some GNAT encodings
+ are present.
+
+
+ * ada-lang.c (ada_evaluate_subexp) <OP_VAR_VALUE>: Slight code
+ rewrite to avoid "else if" and "else" constructs. Should be
+ a no-op in practice.
+
+
+ * ada-lang.c (ada_evaluate_subexp) <OP_VAR_VALUE>: Fix identation
+ of lexical block.
+
+
+ PR c++/17132
+ * eval.c: Update all calls to find_overload_match.
+ * valarith.c: Likewise.
+ (value_user_defined_cpp_op, value_user_defined_op): New
+ argument NOSIDE. Update all callers.
+ * valops.c (find_overload_match): New argument NOSIDE.
+ * value.h (find_overload_match): Update signature.
+
* python/lib/gdb/command/xmethods.py (set_xm_status1): Use the