Generalize varobj iterator
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 22c7a1e73056923f186448c85fbc51304c5b8344..ea57834afbcae9b1e5fa20f63fd397f9590fe41f 100644 (file)
@@ -1,3 +1,457 @@
+2014-06-12  Pedro Alves  <pedro@codesourcery.com>
+           Yao Qi  <yao@codesourcery.com>
+
+       * Makefile.in (SUBDIR_PYTHON_OBS): Add "py-varobj.o".
+       (SUBDIR_PYTHON_SRCS): Add "python/py-varobj.c".
+       (HFILES_NO_SRCDIR): Add "varobj-iter.h".
+       (py-varobj.o): New rule.
+       * python/py-varobj.c: New file.
+       * python/python-internal.h (py_varobj_get_iterator): Declare.
+       * varobj-iter.h: New file.
+       * varobj.c: Include "varobj-iter.h"
+       (struct varobj) <child_iter>: Change its type from "PyObject *"
+       to "struct varobj_iter *".
+       <saved_item>: Likewise.
+       [HAVE_PYTHON] (varobj_ensure_python_env): Make it extern.
+       [HAVE_PYTHON] (varobj_get_iterator): New function.
+       (update_dynamic_varobj_children) [HAVE_PYTHON]: Move
+       python-specific code to python/py-varobj.c.
+       (install_visualizer): Call varobj_iter_delete instead of
+       Py_XDECREF.
+       * varobj.h (varobj_ensure_python_env): Declare.
+
+2014-06-12  Yao Qi  <yao@codesourcery.com>
+
+       * varobj.c (struct varobj_item): New structure.
+       (create_child_with_value): Update declaration.
+       (varobj_add_child): Replace arguments 'name' and 'value' with
+       'item'.  All callers updated.
+       (install_dynamic_child): Likewise.
+       (update_dynamic_varobj_children): Likewise.
+       (varobj_add_child): Likewise.
+       (create_child_with_value): Likewise.
+
+2014-06-11  Joel Brobecker  <brobecker@adacore.com>
+
+       * NEWS: Create a new section for the next release branch.
+       Rename the section of the current branch, now that it has
+       been cut.
+
+2014-06-11  Joel Brobecker  <brobecker@adacore.com>
+
+       GDB 7.8 branch created (173373c6f6388171d1d62a217fae90a052395be2):
+       * version.in: Bump version to 7.8.50.DATE-cvs.
+
+2014-06-11  Pedro Alves  <palves@redhat.com>
+
+       PR remote/17028
+       * ser-mingw.c (net_windows_socket_check_pending): New function.
+       (net_windows_select_thread): Ignore spurious wakeups.  Use
+       net_windows_socket_check_pending.
+       (net_windows_wait_handle): Check for pending events with
+       ioctlsocket, through net_windows_socket_check_pending, instead of
+       checking the socket's event.
+
+2014-06-10  Siva Chandra Reddy  <sivachandra@google.com>
+
+       * python/python-internal.h (gdb_PyObject_GetAttrString)
+       (gdb_PyObject_HasAttrString): New inline function definitions.
+       * py-value.c (get_field_flag): Remove the now unnecessary cast to
+       char * of the second argument to PyObject_GetAttrString.
+       
+2014-06-10  Joel Brobecker  <brobecker@adacore.com>
+
+       * serial.c (serial_write): Fix index of character to be printed
+       in call to serial_logchar when serial debug traces are enabled.
+
+2014-06-10  Joel Brobecker  <brobecker@adacore.com>
+
+       * gdbtypes (resolve_dynamic_range): Add function description.
+
+2014-06-09  Gary Benson  <gbenson@redhat.com>
+
+       * common/signals.c (gdb_signal_from_host): Reorder to separate
+       the always-available ANSI-standard signals from the signals that
+       require checking.
+       (do_gdb_signal_to_host): Likewise.
+       * proc-events.c (signal_table): Likewise.
+
+2014-06-08  Hui Zhu  <hui@codesourcery.com>
+
+       * common/linux-ptrace.c (linux_disable_event_reporting): New
+       function.
+       * common/linux-ptrace.h (linux_disable_event_reporting): New
+       declaration.
+       * linux-nat.c (linux_child_follow_fork): Do a single step before
+       detach.
+
+2014-06-07  Keith Seitz  <keiths@redhat.com>
+
+       Revert:
+       PR c++/16253
+       * ada-lang.c (ada_symbol_matches_domain): Moved here and renamed
+       from symbol_matches_domain in symtab.c. All local callers
+       of symbol_matches_domain updated.
+       (standard_lookup): If DOMAIN is VAR_DOMAIN and no symbol is found,
+       search STRUCT_DOMAIN.
+       (ada_find_any_type_symbol): Do not search STRUCT_DOMAIN
+       independently.  standard_lookup will do that automatically.
+       * cp-namespace.c (cp_lookup_symbol_nonlocal): Explain when/why
+       VAR_DOMAIN searches may return a STRUCT_DOMAIN match.
+       (cp_lookup_symbol_in_namespace): Likewise.
+       If no VAR_DOMAIN symbol is found, search STRUCT_DOMAIN.
+       (cp_lookup_symbol_exports): Explain when/why VAR_DOMAIN searches
+       may return a STRUCT_DOMAIN match.
+       (lookup_symbol_file): Search for the class name in STRUCT_DOMAIN.
+       * cp-support.c: Include language.h.
+       (inspect_type): Explicitly search STRUCT_DOMAIN before searching
+       VAR_DOMAIN.
+       * psymtab.c (match_partial_symbol): Compare the requested
+       domain with the symbol's domain directly.
+       (lookup_partial_symbol): Likewise.
+       * symtab.c (lookup_symbol_in_language): Explain when/why
+       VAR_DOMAIN searches may return a STRUCT_DOMAIN match.
+       If no VAR_DOMAIN symbol is found, search STRUCT_DOMAIN for
+       appropriate languages.
+       (symbol_matches_domain): Renamed `ada_symbol_matches_domain'
+       and moved to ada-lang.c
+       (lookup_block_symbol): Explain that this function only returns
+       symbol matching the requested DOMAIN.
+       Compare the requested domain with the symbol's domain directly.
+       (iterate_over_symbols): Compare the requested domain with the
+       symbol's domain directly.
+       * symtab.h (symbol_matches_domain): Remove.
+
+2014-06-06  Doug Evans  <xdje42@gmail.com>
+
+       * guile/guile-internal.h (gdbscm_guile_major_version): Declare.
+       (gdbscm_guile_minor_version, gdbscm_guile_micro_version): Declare.
+       (gdbscm_guile_version_is_at_least): Declare.
+       (gdbscm_scm_string_to_int): Declare.
+       * guile/guile.c (gdbscm_guile_major_version): New global.
+       (gdbscm_guile_minor_version, gdbscm_guile_micro_version): New globals.
+       (guile_datadir): New static global.
+       (gdbscm_guile_data_directory): New function.
+       (initialize_scheme_side): Update.
+       (misc_guile_functions): Add guile-data-directory.
+       (initialize_gdb_module): Fetch guile version number.
+       * guile/lib/gdb.scm: Remove call to add-to-load-path.
+       * guile/lib/gdb/init.scm (%initialize!): Ditto.
+       * guile/lib/gdb/boot.scm: Use guile-data-directory.
+       * guile/scm-exception.c (gdbscm_print_exception_with_stack): Fix
+       comments.
+       * guile/scm-string.c (gdbscm_scm_string_to_int): New function.
+       * guile/scm-utils.c (gdbscm_guile_version_is_at_least): New function.
+       * guile/scm-value.c (gdbscm_value_to_string): Only call
+       scm_port_conversion_strategy if Guile version >= 2.0.6.
+
+2014-06-06  Mingjie Xing  <mingjie.xing@gmail.com>
+
+       * main.c (print_gdb_help): Add -q and --silent.
+
+2014-06-06  Gary Benson  <gbenson@redhat.com>
+
+       * common/signals.c: Remove preprocessor conditionals for
+       always-defined signals SIGINT, SIGILL, SIGABRT, SIGFPE,
+       SIGSEGV and SIGTERM.
+       * proc-events.c: Likewise.
+
+2014-06-06  Markus Metzger  <markus.t.metzger@intel.com>
+
+       * symfile.c (symfile_free_objfile): Remove restriction to
+       OBJF_USERLOADED.
+       * symfile-mem.c (symbol_file_add_from_memory): Call
+       add_target_sections_of_objfile.
+
+2014-06-05  Ludovic Courtès  <ludo@gnu.org>
+
+       * guile/scm-value.c (gdbscm_history_append_x): Use
+       'vlscm_get_value_smob_arg_unsafe' instead of
+       'vlscm_scm_to_value'.
+
+2014-06-05  Simon Marchi  <simon.marchi@ericsson.com>
+
+       PR mi/15806
+       * utils.c (printchar): Don't escape at all if quoter is NUL.
+       Update function documentation to clarify effect of parameter
+       QUOTER.
+       * remote.c (escape_buffer): Pass '\\' as the quoter to
+       fputstrn_unfiltered.
+       * mi/mi-interp.c (mi_solib_loaded): Use ui_out_field_* functions to
+       generate the output.
+       (mi_solib_unloaded): Same.
+
+2014-06-05  Joel Brobecker  <brobecker@adacore.com>
+
+       * development.sh: Delete.
+       * Makefile.in (config.status): Adjust dependency on development.sh.
+       * configure.ac: Adjust development.sh source call.
+       * configure: Regenerate.
+
+2014-06-04  Doug Evans  <xdje42@gmail.com>
+
+       * guile/scm-breakpoint.c (struct gdbscm_breakpoint_object): New members
+       is_scheme_bkpt, spec.
+       (bpscm_make_breakpoint_smob): Initialize new members.
+       (gdbscm_create_breakpoint_x): Split into two ...
+       (gdbscm_make_breakpoint, gdbscm_register_breakpoint_x): New functions.
+       (bpscm_breakpoint_deleted): Reset breakpoint number and stop function.
+       (scheme_function breakpoint_functions): Update.
+       * guile/lib/gdb.scm: Delete create-breakpoint!.  Rename
+       breakpoint-delete! to delete-breakpoint!.  Add make-breakpoint,
+       register-breakpoint!.
+
+2014-06-04  Joel Brobecker  <brobecker@adacorer.com>
+
+       PR server/17023
+       * mem-break.c (z_type_supported): Return zero if
+       THE_TARGET->SUPPORTS_Z_POINT_TYPE is NULL.
+
+2014-06-04  Tom Tromey  <tromey@redhat.com>
+
+       * ada-lang.c (ada_template_to_fixed_record_type_1): Use
+       value_from_contents_and_address_unresolved.
+       (ada_template_to_fixed_record_type_1): Likewise.
+       (ada_which_variant_applies): Likewise.
+       * value.h (value_from_contents_and_address_unresolved): Declare.
+       * value.c (value_from_contents_and_address_unresolved): New
+       function.
+       * gdbtypes.c (is_dynamic_type, resolve_dynamic_type)
+       <TYPE_CODE_STRUCT, TYPE_CODE_UNION>: New cases.
+       (resolve_dynamic_struct, resolve_dynamic_union): New functions.
+
+2014-06-04  Tom Tromey  <tromey@redhat.com>
+
+       * gdbtypes.c (is_dynamic_type): Remove unneeded "break"s.
+
+2014-06-04  Tom Tromey  <tromey@redhat.com>
+
+       * procfs.c (procfs_attach): Make "args" const.
+       * windows-nat.c (windows_attach): Make "args" const.
+       * nto-procfs.c (procfs_attach): Make "args" const.
+       * inf-ttrace.c (inf_ttrace_attach): Make "args" const.
+       * go32-nat.c (go32_attach): Make "args" const.
+       * gnu-nat.c (gnu_attach): Make "args" const.
+       * darwin-nat.c (darwin_attach): Make "args" const.
+       * inf-ptrace.c (inf_ptrace_attach): Make "args" const.
+       * linux-nat.c (linux_nat_attach): Make "args" const.
+       * remote.c (extended_remote_attach_1, extended_remote_attach):
+       Make "args" const.
+       * target.h (struct target_ops) <to_attach>: Make "args" const.
+       (find_default_attach): Likewise.
+       * utils.c (parse_pid_to_attach): Make "args" const.
+       * utils.h (parse_pid_to_attach): Update.
+
+2014-06-04  Tom Tromey  <tromey@redhat.com>
+
+       * target-delegates.c: Rebuild.
+       * target.c (default_thread_address_space): New function.
+       (target_thread_address_space): Simplify.
+       * target.h (struct target_ops) <to_thread_address_space>: Add
+       TARGET_DEFAULT_FUNC.
+
+2014-06-04  Doug Evans  <xdje42@gmail.com>
+
+       * guile/scm-type.c (type_smob): Remove duplicate typedef.
+
+2014-06-04  Markus Metzger  <markus.t.metzger@intel.com>
+
+       * record-btrace.c: Include event-loop.h and inf-loop.h.
+       (record_btrace_resume_exec_dir)
+       (record_btrace_async_inferior_event_handler)
+       (record_btrace_handle_async_inferior_event): New.
+       (record_btrace_open): Create async event handler.
+       (record_btrace_close): Delete async event handler.
+       (record_btrace_resume): Set record_btrace_resume_exec_dir,
+       Mark async event handler.
+       (record_btrace_execution_direction): New.
+       (init_record_btrace_ops): Initialize to_execution_direction.
+
+2014-06-03  Doug Evans  <xdje42@gmail.com>
+
+       * guile/scm-param.c (pascm_make_param_smob): Add ARI comment.
+       (gdbscm_make_parameter): Ditto.
+
+2014-06-03  Doug Evans  <dje@google.com>
+
+       * exec.c (exec_close_1): Call clear_section_table instead of
+       resize_section_table.
+       (clear_section_table): New function.
+       (resize_section_table): Make static.  Rename arg num_added to
+       adjustment.
+       * exec.h (clear_section_table): Declare.
+       (resize_section_table): Delete.
+       * progspace.c (release_program_space): Call clear_section_table
+       instead of resize_section_table.
+
+2014-06-03  Siva Chandra Reddy  <sivachandra@google.com>
+
+       * NEWS (Python Scripting): Add entry about the new xmethods
+       feature.
+
+2014-06-03  Siva Chandra Reddy  <sivachandra@google.com>
+
+       * python/py-xmethods.c: New file.
+       * python/py-objfile.c (objfile_object): New field 'xmethods'.
+       (objfpy_dealloc): XDECREF on the new xmethods field.
+       (objfpy_new, objfile_to_objfile_object): Initialize xmethods
+       field.
+       (objfpy_get_xmethods): New function.
+       (objfile_getset): New entry 'xmethods'.
+       * python/py-progspace.c (pspace_object): New field 'xmethods'.
+       (pspy_dealloc): XDECREF on the new xmethods field.
+       (pspy_new, pspace_to_pspace_object): Initialize xmethods
+       field.
+       (pspy_get_xmethods): New function.
+       (pspace_getset): New entry 'xmethods'.
+       * python/python-internal.h: Add declarations for new functions.
+       * python/python.c (_initialize_python): Invoke
+       gdbpy_initialize_xmethods.
+       * python/lib/gdb/__init__.py (xmethods): New
+       attribute.
+       * python/lib/gdb/xmethod.py: New file.
+       * python/lib/gdb/command/xmethods.py: New file.
+
+2014-06-03  Siva Chandra Reddy  <sivachandra@google.com>
+
+       * eval.c (evaluate_subexp_standard): Call the xmethod if the
+       best match method returned by find_overload_match is an xmethod.
+       * valarith.c (value_x_binop, value_x_unop): Call the xmethod if
+       the best matching operator returned by find_overload_match is an
+       xmethod.
+       * valops.c: #include "extension.h".
+       (find_method_list): Add "fn_list" and "xm_worker_vec" arguments.
+       Return void.  The list of matching source methods is returned in
+       "fn_list" and a vector of matching debug method workers is
+       returned in "xm_worker_vec".  Update all callers.
+       (value_find_oload_method_list): Likewise.
+       (find_oload_champ): Add "xm_worker_vec" parameter.  If it is
+       non-NULL, then the index of the best matching method in this
+       vector is returned.  Update all callers.
+       (find_overload_match): Include xmethods while performing overload
+       resolution.
+
+2014-06-03  Siva Chandra Reddy  <sivachandra@google.com>
+
+       * defs.h (enum lval_type): New enumerator "lval_xcallable".
+       * extension-priv.h (struct extension_language_ops): Add the
+       xmethod interface.
+       * extension.c (new_xmethod_worker, clone_xmethod_worker,
+       get_matching_xmethod_workers, get_xmethod_argtypes,
+       invoke_xmethod, free_xmethod_worker,
+       free_xmethod_worker_vec): New functions.
+       * extension.h: #include "common/vec.h".
+       New function declarations.
+       (struct xmethod_worker): New struct.
+       (VEC (xmethod_worker_ptr)): New vector type.
+       (xmethod_worker_ptr): New typedef.
+       (xmethod_worker_vec): Likewise.
+       * gdbtypes.c (gdbtypes_post_init): Initialize "xmethod" field of
+       builtin_type.
+       * gdbtypes.h (enum type_code): New enumerator TYPE_CODE_XMETHOD.
+       (struct builtin_type): New field "xmethod".
+       * valarith.c (value_ptradd): Assert that the value argument is not
+       lval_xcallable.
+       * valops.c (value_must_coerce_to_target): Return 0 for
+       lval_xcallable values.
+       * value.c (struct value): New field XM_WORKER in the field
+       LOCATION.
+       (value_address, value_raw_address): Return 0 for lval_xcallable
+       values.
+       (set_value_address): Assert that the value is not an
+       lval_xcallable.
+       (value_free): Free the associated xmethod worker when freeing
+       lval_xcallable values.
+       (set_value_component_location): Assert that the WHOLE value is not
+       lval_xcallable.
+       (value_of_xmethod, call_xmethod): New functions.
+       * value.h: Declare "struct xmethod_worker".
+       Declare new functions value_of_xmethod, call_xmethod.
+
+2014-06-03  Joel Brobecker  <brobecker@adacore.com>
+           Pedro Alves  <palves@redhat.com>
+
+       PR breakpoints/17000
+       * breakpoint.c (find_non_raw_software_breakpoint_inserted_here):
+       New function, extracted from software_breakpoint_inserted_here_p.
+       (software_breakpoint_inserted_here_p): Replace factored out code
+       by call to find_non_raw_software_breakpoint_inserted_here.
+       (bp_target_info_copy_insertion_state): New function.
+       (bkpt_insert_location): Handle the case of a single-step
+       breakpoint already inserted at the same address.
+       (bkpt_remove_location): Handle the case of a single-step
+       breakpoint still inserted at the same address.
+       (deprecated_insert_raw_breakpoint): Handle the case of non-raw
+       breakpoint already inserted at the same address.
+       (deprecated_remove_raw_breakpoint): Handle the case of a
+       non-raw breakpoint still inserted at the same address.
+       (find_single_step_breakpoint): New function, extracted from
+       single_step_breakpoint_inserted_here_p.
+       (find_single_step_breakpoint): New function,
+       factored out from single_step_breakpoint_inserted_here_p.
+       (single_step_breakpoint_inserted_here_p): Reimplement.
+
+2014-06-03  Brad Mouring  <bmouring@ni.com>  (tiny patch)
+
+       Pushed by Joel Brobecker  <brobecker@adacore.com>
+       * source.c (show_substitute_path_command): Fix display of matching
+       substitution rules.
+
+2014-06-03  Gary Benson  <gbenson@redhat.com>
+
+       * gnu-v2-abi.c (gnuv2_value_rtti_type): Use gdb_demangle.
+
+2014-06-02  Doug Evans  <xdje42@gmail.com>
+
+       Add parameter support for Guile.
+       * Makefile.in (SUBDIR_GUILE_OBS): Add scm-param.o.
+       (SUBDIR_GUILE_SRCS): Add scm-param.c.
+       (scm-param.o): New rule.
+       * guile/guile-internal.h (gdbscm_gc_dup_argv): Declare.
+       (gdbscm_misc_error): Declare.
+       (gdbscm_canonicalize_command_name): Declare.
+       (gdbscm_scm_to_host_string): Declare.
+       (gdbscm_scm_from_host_string): Declare.
+       (gdbscm_initialize_parameters): Declare.
+       * guile/guile.c (initialize_gdb_module): Call
+       gdbscm_initialize_parameters.
+       * guile/lib/gdb.scm: Export parameter symbols.
+       * guile/scm-cmd.c (gdbscm_canonicalize_command_name): Renamed from
+       cmdscm_canonicalize_name and made public.  All callers updated.
+       * guile/scm-exception.c (gdbscm_misc_error): New function.
+       * guile/scm-param.c: New file.
+       * guile/scm-string.c (gdbscm_scm_to_string): Add comments.
+       (gdbscm_scm_to_host_string): New function.
+       (gdbscm_scm_from_host_string): New function.
+       * scm-utils.c (gdbscm_gc_dup_argv): New function.
+
+2014-06-02  Doug Evans  <xdje42@gmail.com>
+
+       Add command support for Guile.
+       * Makefile.in (SUBDIR_GUILE_OBS): Add scm-cmd.o.
+       (SUBDIR_GUILE_SRCS): Add scm-cmd.c.
+       (scm-cmd.o): New rule.
+       * guile/guile-internal.h (gdbscm_gc_xstrdup): Declare.
+       (gdbscm_user_error_p): Declare.
+       (gdbscm_parse_command_name): Declare.
+       (gdbscm_valid_command_class_p): Declare.
+       (gdbscm_initialize_commands): Declare.
+       * guile/guile.c (initialize_gdb_module): Call
+       gdbscm_initialize_commands.
+       * guile/lib/gdb.scm: Export command symbols.
+       * guile/lib/gdb/init.scm (%exception-keys): Add gdb:user-error.
+       (throw-user-error): New function.
+       * guile/scm-cmd.c: New file.
+       * guile/scm-exception.c (user_error_symbol): New static global.
+       (gdbscm_user_error_p): New function.
+       (gdbscm_initialize_exceptions): Set user_error_symbol.
+       * scm-utils.c (gdbscm_gc_xstrdup): New function.
+
+2014-06-02  Phil Muldoon  <pmuldoon@redhat.com>
+
+       * top.c (command_loop): Handle comments here...
+       (command_line_input): ... not here.
+
 2014-06-02  Doug Evans  <xdje42@gmail.com>
 
        Add progspace support for Guile.
This page took 0.056108 seconds and 4 git commands to generate.