Skip to content
Snippets Groups Projects
  1. Jan 01, 2023
  2. Jul 05, 2022
  3. Mar 23, 2022
    • Simon Marchi's avatar
      gdb/python: remove Python 2 support · edae3fd6
      Simon Marchi authored
      New in this version:
      
       - Add a PY_MAJOR_VERSION check in configure.ac / AC_TRY_LIBPYTHON.  If
         the user passes --with-python=python2, this will cause a configure
         failure saying that GDB only supports Python 3.
      
      Support for Python 2 is a maintenance burden for any patches touching
      Python support.  Among others, the differences between Python 2 and 3
      string and integer types are subtle.  It requires a lot of effort and
      thinking to get something that behaves correctly on both.  And that's if
      the author and reviewer of the patch even remember to test with Python
      2.
      
      See this thread for an example:
      
        https://sourceware.org/pipermail/gdb-patches/2021-December/184260.html
      
      So, remove Python 2 support.  Update the documentation to state that GDB
      can be built against Python 3 (as opposed to Python 2 or 3).
      
      Update all the spots that use:
      
       - sys.version_info
       - IS_PY3K
       - PY_MAJOR_VERSION
       - gdb_py_is_py3k
      
      ... to only keep the Python 3 portions and drop the use of some
      now-removed compatibility macros.
      
      I did not update the configure script more than just removing the
      explicit references to Python 2.  We could maybe do more there, like
      check the Python version and reject it if that version is not
      supported.  Otherwise (with this patch), things will only fail at
      compile time, so it won't really be clear to the user that they are
      trying to use an unsupported Python version.  But I'm a bit lost in the
      configure code that checks for Python, so I kept that for later.
      
      Change-Id: I75b0f79c148afbe3c07ac664cfa9cade052c0c62
      edae3fd6
  4. Jan 01, 2022
  5. Jan 01, 2021
  6. Jan 01, 2020
  7. Jan 01, 2019
    • Joel Brobecker's avatar
      Update copyright year range in all GDB files. · 42a4f53d
      Joel Brobecker authored
      This commit applies all changes made after running the gdb/copyright.py
      script.
      
      Note that one file was flagged by the script, due to an invalid
      copyright header
      (gdb/unittests/basic_string_view/element_access/char/empty.cc).
      As the file was copied from GCC's libstdc++-v3 testsuite, this commit
      leaves this file untouched for the time being; a patch to fix the header
      was sent to gcc-patches first.
      
      gdb/ChangeLog:
      
      	Update copyright year range in all GDB files.
      42a4f53d
  8. Jan 02, 2018
  9. Sep 11, 2017
    • Tom Tromey's avatar
      Make it simpler to add events to Python · 7d221d74
      Tom Tromey authored
      The first patch in this series went through several iterations as I'd
      forgotten how many places had to be touched to add a new event and a
      new event type.
      
      This patch simplifies the process using two new ".def" files.  Now, a
      new event type can be added by adding a line to "py-event-types.def",
      and a new event registry can be added by adding a line to
      "py-all-events.def".
      
      ChangeLog
      2017-09-11  Tom Tromey  <tom@tromey.com>
      
      	* python/python.c (do_start_initialization): Use
      	py-event-types.def to initialize types.
      	Define all object type structures.
      	* python/python-internal.h: Don't declare event initialization
      	functions.
      	* python/py-threadevent.c (thread_event_object_type): Don't
      	define.
      	* python/py-stopevent.c (stop_event_object_type): Don't define.
      	* python/py-signalevent.c (signal_event_object_type): Don't
      	declare or define.
      	* python/py-newobjfileevent.c (new_objfile_event_object_type)
      	(clear_objfiles_event_object_type): Don't declare or define.
      	* python/py-infevents.c (inferior_call_pre_event_object_type)
      	(inferior_call_post_event_object_type)
      	(register_changed_event_object_type)
      	(memory_changed_event_object_type): Don't declare or define.
      	* python/py-inferior.c (new_thread_event_object_type)
      	(new_inferior_event_object_type)
      	(inferior_deleted_event_object_type): Don't declare or define.
      	* python/py-exitedevent.c (exited_event_object_type): Don't
      	declare or define.
      	* python/py-evts.c (gdbpy_initialize_py_events): Use
      	py-all-events.def.
      	* python/py-events.h (thread_event_object_type): Don't declare.
      	(events_object): Use py-all-events.def.
      	* python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove.  Use
      	py-event-types.def.
      	* python/py-event-types.def: New file.
      	* python/py-continueevent.c (create_continue_event_object): Don't
      	declare or define.
      	* python/py-bpevent.c (breakpoint_event_object_type): Don't
      	declare or define.
      	* python/py-all-events.def: New file.
      7d221d74
    • Tom Tromey's avatar
      Add new_inferior, inferior_deleted, and new_thread events · 7c96f8c1
      Tom Tromey authored
      This adds a few new events to gdb's Python layer: new_inferior,
      inferior_deleted, and new_thread.  I wanted to be able to add a
      combined inferior/thread display window to my GUI, and I needed a few
      events to make this work.  This is PR python/15622.
      
      ChangeLog
      2017-09-11  Tom Tromey  <tom@tromey.com>
      
      	PR python/15622:
      	* NEWS: Add entry.
      	* python/python.c (do_start_initialization): Initialize new event
      	types.
      	* python/python-internal.h (gdbpy_initialize_new_inferior_event)
      	(gdbpy_initialize_inferior_deleted_event)
      	(gdbpy_initialize_new_thread_event): Declare.
      	* python/py-threadevent.c (create_thread_event_object): Add option
      	"thread" parameter.
      	* python/py-inferior.c (new_thread_event_object_type)
      	(new_inferior_event_object_type)
      	(inferior_deleted_event_object_type): Declare.
      	(python_new_inferior, python_inferior_deleted): New functions.
      	(add_thread_object): Emit new_thread event.
      	(gdbpy_initialize_inferior): Attach new functions to corresponding
      	observers.
      	(new_thread, new_inferior, inferior_deleted): Define new event
      	types.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add new
      	registries.
      	* python/py-events.h (events_object) <new_inferior,
      	inferior_deleted, new_thread>: New fields.
      	* python/py-event.h (create_thread_event_breakpoint): Add optional
      	"thread" parameter.
      
      doc/ChangeLog
      2017-09-11  Tom Tromey  <tom@tromey.com>
      
      	* python.texi (Events In Python): Document new events.
      
      testsuite/ChangeLog
      2017-09-11  Tom Tromey  <tom@tromey.com>
      
      	* gdb.python/py-infthread.exp: Add tests for new_thread event.
      	* gdb.python/py-inferior.exp: Add tests for new inferior events.
      7c96f8c1
  10. Apr 05, 2017
    • Pedro Alves's avatar
      -Wwrite-strings: The Rest · a121b7c1
      Pedro Alves authored
      This is the remainder boring constification that all looks more of less
      borderline obvious IMO.
      
      gdb/ChangeLog:
      2017-04-05  Pedro Alves  <palves@redhat.com>
      
      	* ada-exp.y (yyerror): Constify.
      	* ada-lang.c (bound_name, get_selections)
      	(ada_variant_discrim_type)
      	(ada_variant_discrim_name, ada_value_struct_elt)
      	(ada_lookup_struct_elt_type, is_unchecked_variant)
      	(ada_which_variant_applies, standard_exc, ada_get_next_arg)
      	(catch_ada_exception_command_split)
      	(catch_ada_assert_command_split, catch_assert_command)
      	(ada_op_name): Constify.
      	* ada-lang.h (ada_yyerror, get_selections)
      	(ada_variant_discrim_name, ada_value_struct_elt): Constify.
      	* arc-tdep.c (arc_print_frame_cache): Constify.
      	* arm-tdep.c (arm_skip_stub): Constify.
      	* ax-gdb.c (gen_binop, gen_struct_ref_recursive, gen_struct_ref)
      	(gen_aggregate_elt_ref): Constify.
      	* bcache.c (print_bcache_statistics): Constify.
      	* bcache.h (print_bcache_statistics): Constify.
      	* break-catch-throw.c (catch_exception_command_1):
      	* breakpoint.c (struct ep_type_description::description):
      	Constify.
      	(add_solib_catchpoint): Constify.
      	(catch_fork_command_1): Add cast.
      	(add_catch_command): Constify.
      	* breakpoint.h (add_catch_command, add_solib_catchpoint):
      	Constify.
      	* bsd-uthread.c (bsd_uthread_state): Constify.
      	* buildsym.c (patch_subfile_names): Constify.
      	* buildsym.h (next_symbol_text_func, patch_subfile_names):
      	Constify.
      	* c-exp.y (yyerror): Constify.
      	(token::oper): Constify.
      	* c-lang.h (c_yyerror, cp_print_class_member): Constify.
      	* c-varobj.c (cplus_describe_child): Constify.
      	* charset.c (find_charset_names): Add cast.
      	(find_charset_names): Constify array and add const_cast.
      	* cli/cli-cmds.c (complete_command, cd_command): Constify.
      	(edit_command): Constify.
      	* cli/cli-decode.c (lookup_cmd): Constify.
      	* cli/cli-dump.c (dump_memory_command, dump_value_command):
      	Constify.
      	(struct dump_context): Constify.
      	(add_dump_command, restore_command): Constify.
      	* cli/cli-script.c (get_command_line): Constify.
      	* cli/cli-script.h (get_command_line): Constify.
      	* cli/cli-utils.c (check_for_argument): Constify.
      	* cli/cli-utils.h (check_for_argument): Constify.
      	* coff-pe-read.c (struct read_pe_section_data): Constify.
      	* command.h (lookup_cmd): Constify.
      	* common/print-utils.c (decimal2str): Constify.
      	* completer.c (gdb_print_filename): Constify.
      	* corefile.c (set_gnutarget): Constify.
      	* cp-name-parser.y (yyerror): Constify.
      	* cp-valprint.c (cp_print_class_member): Constify.
      	* cris-tdep.c (cris_register_name, crisv32_register_name):
      	Constify.
      	* d-exp.y (yyerror): Constify.
      	(struct token::oper): Constify.
      	* d-lang.h (d_yyerror): Constify.
      	* dbxread.c (struct header_file_location::name): Constify.
      	(add_old_header_file, add_new_header_file, last_function_name)
      	(dbx_next_symbol_text, add_bincl_to_list)
      	(find_corresponding_bincl_psymtab, set_namestring)
      	(find_stab_function_addr, read_dbx_symtab, start_psymtab)
      	(dbx_end_psymtab, read_ofile_symtab, process_one_symbol):
      	* defs.h (command_line_input, print_address_symbolic)
      	(deprecated_readline_begin_hook): Constify.
      	* dwarf2read.c (anonymous_struct_prefix, dwarf_bool_name):
      	Constify.
      	* event-top.c (handle_line_of_input): Constify and add cast.
      	* exceptions.c (catch_errors): Constify.
      	* exceptions.h (catch_errors): Constify.
      	* expprint.c (print_subexp_standard, op_string, op_name)
      	(op_name_standard, dump_raw_expression, dump_raw_expression):
      	* expression.h (op_name, op_string, dump_raw_expression):
      	Constify.
      	* f-exp.y (yyerror): Constify.
      	(struct token::oper): Constify.
      	(struct f77_boolean_val::name): Constify.
      	* f-lang.c (f_word_break_characters): Constify.
      	* f-lang.h (f_yyerror): Constify.
      	* fork-child.c (fork_inferior): Add cast.
      	* frv-tdep.c (struct gdbarch_tdep::register_names): Constify.
      	(new_variant): Constify.
      	* gdbarch.sh (pstring_ptr, pstring_list): Constify.
      	* gdbarch.c: Regenerate.
      	* gdbcore.h (set_gnutarget): Constify.
      	* go-exp.y (yyerror): Constify.
      	(token::oper): Constify.
      	* go-lang.h (go_yyerror): Constify.
      	* go32-nat.c (go32_sysinfo): Constify.
      	* guile/scm-breakpoint.c (gdbscm_breakpoint_expression): Constify.
      	* guile/scm-cmd.c (cmdscm_function): Constify.
      	* guile/scm-param.c (pascm_param_value): Constify.
      	* h8300-tdep.c (h8300_register_name, h8300s_register_name)
      	(h8300sx_register_name): Constify.
      	* hppa-tdep.c (hppa32_register_name, hppa64_register_name):
      	Constify.
      	* ia64-tdep.c (ia64_register_names): Constify.
      	* infcmd.c (construct_inferior_arguments): Constify.
      	(path_command, attach_post_wait): Constify.
      	* language.c (show_range_command, show_case_command)
      	(unk_lang_error): Constify.
      	* language.h (language_defn::la_error)
      	(language_defn::la_name_of_this): Constify.
      	* linespec.c (decode_line_2): Constify.
      	* linux-thread-db.c (thread_db_err_str): Constify.
      	* lm32-tdep.c (lm32_register_name): Constify.
      	* m2-exp.y (yyerror): Constify.
      	* m2-lang.h (m2_yyerror): Constify.
      	* m32r-tdep.c (m32r_register_names): Constify and make static.
      	* m68hc11-tdep.c (m68hc11_register_names): Constify.
      	* m88k-tdep.c (m88k_register_name): Constify.
      	* macroexp.c (appendmem): Constify.
      	* mdebugread.c (fdr_name, add_data_symbol, parse_type)
      	(upgrade_type, parse_external, parse_partial_symbols)
      	(mdebug_next_symbol_text, cross_ref, mylookup_symbol, new_psymtab)
      	(new_symbol): Constify.
      	* memattr.c (mem_info_command): Constify.
      	* mep-tdep.c (register_name_from_keyword): Constify.
      	* mi/mi-cmd-env.c (mi_cmd_env_path, _initialize_mi_cmd_env):
      	Constify.
      	* mi/mi-cmd-stack.c (list_args_or_locals): Constify.
      	* mi/mi-cmd-var.c (mi_cmd_var_show_attributes): Constify.
      	* mi/mi-main.c (captured_mi_execute_command): Constify and add
      	cast.
      	(mi_execute_async_cli_command): Constify.
      	* mips-tdep.c (mips_register_name): Constify.
      	* mn10300-tdep.c (register_name, mn10300_generic_register_name)
      	(am33_register_name, am33_2_register_name)
      	* moxie-tdep.c (moxie_register_names): Constify.
      	* nat/linux-osdata.c (osdata_type): Constify fields.
      	* nto-tdep.c (nto_parse_redirection): Constify.
      	* objc-lang.c (lookup_struct_typedef, lookup_objc_class)
      	(lookup_child_selector): Constify.
      	(objc_methcall::name): Constify.
      	* objc-lang.h (lookup_objc_class, lookup_child_selector)
      	(lookup_struct_typedef): Constify.
      	* objfiles.c (pc_in_section): Constify.
      	* objfiles.h (pc_in_section): Constify.
      	* p-exp.y (struct token::oper): Constify.
      	(yyerror): Constify.
      	* p-lang.h (pascal_yyerror): Constify.
      	* parser-defs.h (op_name_standard): Constify.
      	(op_print::string): Constify.
      	(exp_descriptor::op_name): Constify.
      	* printcmd.c (print_address_symbolic): Constify.
      	* psymtab.c (print_partial_symbols): Constify.
      	* python/py-breakpoint.c (stop_func): Constify.
      	(bppy_get_expression): Constify.
      	* python/py-cmd.c (cmdpy_completer::name): Constify.
      	(cmdpy_function): Constify.
      	* python/py-event.c (evpy_add_attribute)
      	(gdbpy_initialize_event_generic): Constify.
      	* python/py-event.h (evpy_add_attribute)
      	(gdbpy_initialize_event_generic): Constify.
      	* python/py-evts.c (add_new_registry): Constify.
      	* python/py-finishbreakpoint.c (outofscope_func): Constify.
      	* python/py-framefilter.c (get_py_iter_from_func): Constify.
      	* python/py-inferior.c (get_buffer): Add cast.
      	* python/py-param.c (parm_constant::name): Constify.
      	* python/py-unwind.c (fprint_frame_id): Constify.
      	* python/python.c (gdbpy_parameter_value): Constify.
      	* remote-fileio.c (remote_fio_func_map): Make 'name' const.
      	* remote.c (memory_packet_config::name): Constify.
      	(show_packet_config_cmd, remote_write_bytes)
      	(remote_buffer_add_string):
      	* reverse.c (exec_reverse_once): Constify.
      	* rs6000-tdep.c (variant::name, variant::description): Constify.
      	* rust-exp.y (rustyyerror): Constify.
      	* rust-lang.c (rust_op_name): Constify.
      	* rust-lang.h (rustyyerror): Constify.
      	* serial.h (serial_ops::name): Constify.
      	* sh-tdep.c (sh_sh_register_name, sh_sh3_register_name)
      	(sh_sh3e_register_name, sh_sh2e_register_name)
      	(sh_sh2a_register_name, sh_sh2a_nofpu_register_name)
      	(sh_sh_dsp_register_name, sh_sh3_dsp_register_name)
      	(sh_sh4_register_name, sh_sh4_nofpu_register_name)
      	(sh_sh4al_dsp_register_name): Constify.
      	* sh64-tdep.c (sh64_register_name): Constify.
      	* solib-darwin.c (lookup_symbol_from_bfd): Constify.
      	* spu-tdep.c (spu_register_name, info_spu_dma_cmdlist): Constify.
      	* stabsread.c (patch_block_stabs, read_type_number)
      	(ref_map::stabs, ref_add, process_reference)
      	(symbol_reference_defined, define_symbol, define_symbol)
      	(error_type, read_type, read_member_functions, read_cpp_abbrev)
      	(read_one_struct_field, read_struct_fields, read_baseclasses)
      	(read_tilde_fields, read_struct_type, read_array_type)
      	(read_enum_type, read_sun_builtin_type, read_sun_floating_type)
      	(read_huge_number, read_range_type, read_args, common_block_start)
      	(find_name_end): Constify.
      	* stabsread.h (common_block_start, define_symbol)
      	(process_one_symbol, symbol_reference_defined, ref_add):
      	* symfile.c (get_section_index, add_symbol_file_command):
      	* symfile.h (get_section_index): Constify.
      	* target-descriptions.c (tdesc_type::name): Constify.
      	(tdesc_free_type): Add cast.
      	* target.c (find_default_run_target):
      	(add_deprecated_target_alias, find_default_run_target)
      	(target_announce_detach): Constify.
      	(do_option): Constify.
      	* target.h (add_deprecated_target_alias): Constify.
      	* thread.c (print_thread_info_1): Constify.
      	* top.c (deprecated_readline_begin_hook, command_line_input):
      	Constify.
      	(init_main): Add casts.
      	* top.h (handle_line_of_input): Constify.
      	* tracefile-tfile.c (tfile_write_uploaded_tsv): Constify.
      	* tracepoint.c (tvariables_info_1, trace_status_mi): Constify.
      	(tfind_command): Rename to ...
      	(tfind_command_1): ... this and constify.
      	(tfind_command): New function.
      	(tfind_end_command, tfind_start_command): Adjust.
      	(encode_source_string): Constify.
      	* tracepoint.h (encode_source_string): Constify.
      	* tui/tui-data.c (tui_partial_win_by_name): Constify.
      	* tui/tui-data.h (tui_partial_win_by_name): Constify.
      	* tui/tui-source.c (tui_set_source_content_nil): Constify.
      	* tui/tui-source.h (tui_set_source_content_nil): Constify.
      	* tui/tui-win.c (parse_scrolling_args): Constify.
      	* tui/tui-windata.c (tui_erase_data_content): Constify.
      	* tui/tui-windata.h (tui_erase_data_content): Constify.
      	* tui/tui-winsource.c (tui_erase_source_content): Constify.
      	* tui/tui.c (tui_enable): Add cast.
      	* utils.c (defaulted_query): Constify.
      	(init_page_info): Add cast.
      	(puts_debug, subset_compare): Constify.
      	* utils.h (subset_compare): Constify.
      	* varobj.c (varobj_format_string): Constify.
      	* varobj.h (varobj_format_string): Constify.
      	* vax-tdep.c (vax_register_name): Constify.
      	* windows-nat.c (windows_detach): Constify.
      	* xcoffread.c (process_linenos, xcoff_next_symbol_text): Constify.
      	* xml-support.c (gdb_xml_end_element): Constify.
      	* xml-tdesc.c (tdesc_start_reg): Constify.
      	* xstormy16-tdep.c (xstormy16_register_name): Constify.
      	* xtensa-tdep.c (xtensa_find_register_by_name): Constify.
      	* xtensa-tdep.h (xtensa_register_t::name): Constify.
      
      gdb/gdbserver/ChangeLog:
      2017-04-05  Pedro Alves  <palves@redhat.com>
      
      	* gdbreplay.c (sync_error): Constify.
      	* linux-x86-low.c (push_opcode): Constify.
      a121b7c1
  11. Feb 14, 2017
    • Tom Tromey's avatar
      PR python/13598 - add before_prompt event · 3f77c769
      Tom Tromey authored
      This adds an event that is emitted just before GDB presents a prompt
      to the user.  This provides Python code a way to react to whatever
      changes might have been made by the previous command.  For example, in
      my GUI I use this to track changes to the selected frame and reflect
      them in the UI.
      
      Built and regtested on x86-64 Fedora 23.
      
      gdb/ChangeLog
      2017-02-14  Tom Tromey  <tom@tromey.com>
      
      	PR python/13598:
      	* python/python.c (gdbpy_before_prompt_hook): Emit before_prompt
      	event.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add
      	before_prompt registry.
      	* python/py-events.h (events_object) <before_prompt>: New field.
      
      gdb/doc/ChangeLog
      2017-02-14  Tom Tromey  <tom@tromey.com>
      
      	PR python/13598:
      	* python.texi (Events In Python): Document events.before_prompt.
      
      gdb/testsuite/ChangeLog
      2017-02-14  Tom Tromey  <tom@tromey.com>
      
      	PR python/13598:
      	* gdb.python/py-events.exp: Add before_prompt event tests.
      3f77c769
  12. Jan 01, 2017
    • Joel Brobecker's avatar
      update copyright year range in GDB files · 61baf725
      Joel Brobecker authored
      This applies the second part of GDB's End of Year Procedure, which
      updates the copyright year range in all of GDB's files.
      
      gdb/ChangeLog:
      
              Update copyright year range in all GDB files.
      61baf725
  13. Jul 13, 2016
    • Tom Tromey's avatar
      PR python/15620, PR python/18620 - breakpoint events in Python · dac790e1
      Tom Tromey authored
      This patch adds some breakpoint events to Python.  In particular,
      there is a creation event that is emitted when a breakpoint is
      created; a modification event that is emitted when a breakpoint
      changes somehow; and a deletion event that is emitted when a
      breakpoint is deleted.
      
      In this patch, the event's payload is the breakpoint itself.  I
      considered making a new event type to hold the breakpoint, but I
      didn't see a need.  Still, I thought I would mention this as a spot
      where some other choice is possible.
      
      Built and regtested on x86-64 Fedora 23.
      
      2016-07-13  Tom Tromey  <tom@tromey.com>
      
      	PR python/15620, PR python/18620:
      	* python/py-evts.c (gdbpy_initialize_py_events): Call
      	add_new_registry for new events.
      	* python/py-events.h (events_object) <breakpoint_created,
      	breakpoint_deleted, breakpoint_modified>: New fields.
      	* python/py-breakpoint.c (gdbpy_breakpoint_created): Emit the
      	breakpoint changed event.
      	(gdbpy_breakpoint_deleted): Emit the breakpoint deleted event.
      	(gdbpy_breakpoint_modified): New function.
      	(gdbpy_initialize_breakpoints): Attach to the breakpoint modified
      	observer.
      
      2016-07-13  Tom Tromey  <tom@tromey.com>
      
      	PR python/15620, PR python/18620:
      	* python.texi (Events In Python): Document new breakpoint events.
      
      2016-07-13  Tom Tromey  <tom@tromey.com>
      
      	PR python/15620, PR python/18620:
      	* gdb.python/py-breakpoint.exp (connect_event, check_last_event)
      	(test_bkpt_events): New procs.
      dac790e1
  14. May 08, 2016
    • Trevor Saunders's avatar
      remove trivialy unused variables · 870f88f7
      Trevor Saunders authored
      gdb/ChangeLog:
      
      2016-05-07  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
      
      	* aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Remove unused
      	variables.
      	* aarch64-tdep.c (aarch64_skip_prologue): Likewise.
      	(aarch64_scan_prologue): Likewise.
      	(aarch64_prologue_prev_register): Likewise.
      	(aarch64_dwarf2_prev_register): Likewise.
      	(pass_in_v): Likewise.
      	(aarch64_push_dummy_call): Likewise.
      	(aarch64_breakpoint_from_pc): Likewise.
      	(aarch64_return_in_memory): Likewise.
      	(aarch64_return_value): Likewise.
      	(aarch64_displaced_step_b_cond): Likewise.
      	(aarch64_displaced_step_cb): Likewise.
      	(aarch64_displaced_step_tb): Likewise.
      	(aarch64_gdbarch_init): Likewise.
      	(aarch64_process_record): Likewise.
      	* alpha-mdebug-tdep.c (alpha_mdebug_init_abi): Likewise.
      	* alpha-tdep.c (_initialize_alpha_tdep): Likewise.
      	* amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
      	* amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Likewise.
      	* amd64-tdep.c (fixup_riprel): Likewise.
      	* amd64-windows-tdep.c (amd64_windows_frame_decode_epilogue): Likewise.
      	(amd64_windows_frame_decode_insns): Likewise.
      	(amd64_windows_frame_cache): Likewise.
      	(amd64_windows_frame_prev_register): Likewise.
      	(amd64_windows_frame_this_id): Likewise.
      	(amd64_windows_init_abi): Likewise.
      	* arm-linux-tdep.c (arm_linux_get_syscall_number): Likewise.
      	(arm_linux_get_next_pcs_syscall_next_pc): Likewise.
      	* arm-symbian-tdep.c (arm_symbian_init_abi): Likewise.
      	* arm-tdep.c (arm_make_epilogue_frame_cache): Likewise.
      	(arm_epilogue_frame_prev_register): Likewise.
      	(arm_record_vdata_transfer_insn): Likewise.
      	(arm_record_exreg_ld_st_insn): Likewise.
      	* auto-load.c (execute_script_contents): Likewise.
      	(print_scripts): Likewise.
      	* avr-tdep.c (avr_frame_prev_register): Likewise.
      	(avr_push_dummy_call): Likewise.
      	* bfin-linux-tdep.c (bfin_linux_sigframe_init): Likewise.
      	* bfin-tdep.c (bfin_gdbarch_init): Likewise.
      	* blockframe.c (find_pc_partial_function_gnu_ifunc): Likewise.
      	* break-catch-throw.c (fetch_probe_arguments): Likewise.
      	* breakpoint.c (breakpoint_xfer_memory): Likewise.
      	(breakpoint_init_inferior): Likewise.
      	(breakpoint_inserted_here_p): Likewise.
      	(software_breakpoint_inserted_here_p): Likewise.
      	(hardware_breakpoint_inserted_here_p): Likewise.
      	(bpstat_what): Likewise.
      	(break_range_command): Likewise.
      	(save_breakpoints): Likewise.
      	* coffread.c (coff_symfile_read): Likewise.
      	* cris-tdep.c (cris_push_dummy_call): Likewise.
      	(cris_scan_prologue): Likewise.
      	(cris_register_size): Likewise.
      	(_initialize_cris_tdep): Likewise.
      	* d-exp.y: Likewise.
      	* dbxread.c (dbx_read_symtab): Likewise.
      	(process_one_symbol): Likewise.
      	(coffstab_build_psymtabs): Likewise.
      	(elfstab_build_psymtabs): Likewise.
      	* dicos-tdep.c (dicos_init_abi): Likewise.
      	* disasm.c (do_mixed_source_and_assembly): Likewise.
      	(gdb_disassembly): Likewise.
      	* dtrace-probe.c (dtrace_process_dof): Likewise.
      	* dwarf2read.c (error_check_comp_unit_head): Likewise.
      	(build_type_psymtabs_1): Likewise.
      	(skip_one_die): Likewise.
      	(process_imported_unit_die): Likewise.
      	(dwarf2_physname): Likewise.
      	(read_file_scope): Likewise.
      	(setup_type_unit_groups): Likewise.
      	(create_dwo_cu_reader): Likewise.
      	(create_dwo_cu): Likewise.
      	(create_dwo_unit_in_dwp_v1): Likewise.
      	(create_dwo_unit_in_dwp_v2): Likewise.
      	(lookup_dwo_unit_in_dwp): Likewise.
      	(free_dwo_file): Likewise.
      	(check_producer): Likewise.
      	(dwarf2_add_typedef): Likewise.
      	(dwarf2_add_member_fn): Likewise.
      	(read_unsigned_leb128): Likewise.
      	(read_signed_leb128): Likewise.
      	(dwarf2_const_value): Likewise.
      	(follow_die_sig_1): Likewise.
      	(dwarf_decode_macro_bytes): Likewise.
      	* extension.c (restore_active_ext_lang): Likewise.
      	* frv-linux-tdep.c (frv_linux_sigtramp_frame_cache): Likewise.
      	* ft32-tdep.c (ft32_analyze_prologue): Likewise.
      	* gdbtypes.c (lookup_typename): Likewise.
      	(resolve_dynamic_range): Likewise.
      	(check_typedef): Likewise.
      	* h8300-tdep.c (h8300_is_argument_spill): Likewise.
      	(h8300_gdbarch_init): Likewise.
      	* hppa-tdep.c (hppa32_push_dummy_call): Likewise.
      	(hppa_frame_this_id): Likewise.
      	(_initialize_hppa_tdep): Likewise.
      	* hppanbsd-tdep.c (hppanbsd_sigtramp_cache_init): Likewise.
      	* hppaobsd-tdep.c (hppaobsd_supply_fpregset): Likewise.
      	* i386-dicos-tdep.c (i386_dicos_init_abi): Likewise.
      	* i386-tdep.c (i386_bnd_type): Likewise.
      	(i386_gdbarch_init): Likewise.
      	(i386_mpx_bd_base): Likewise.
      	* i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Likewise.
      	* i386obsd-tdep.c (i386obsd_elf_init_abi): Likewise.
      	* ia64-tdep.c (examine_prologue): Likewise.
      	(ia64_frame_cache): Likewise.
      	(ia64_push_dummy_call): Likewise.
      	* infcmd.c (finish_command_fsm_async_reply_reason): Likewise.
      	(default_print_one_register_info): Likewise.
      	* infrun.c (infrun_thread_ptid_changed): Likewise.
      	(thread_still_needs_step_over): Likewise.
      	(stop_all_threads): Likewise.
      	(restart_threads): Likewise.
      	(keep_going_stepped_thread): Likewise.
      	* iq2000-tdep.c (iq2000_scan_prologue): Likewise.
      	* language.c (language_init_primitive_type_symbols): Likewise.
      	* linespec.c (add_sal_to_sals): Likewise.
      	* linux-nat.c (status_callback): Likewise.
      	(kill_unfollowed_fork_children): Likewise.
      	(linux_nat_kill): Likewise.
      	* linux-tdep.c (linux_fill_prpsinfo): Likewise.
      	* linux-thread-db.c (thread_db_notice_clone): Likewise.
      	(record_thread): Likewise.
      	* location.c (string_to_event_location_basic): Likewise.
      	* m32c-tdep.c (m32c_prev_register): Likewise.
      	* m32r-linux-tdep.c (m32r_linux_init_abi): Likewise.
      	* m32r-tdep.c (decode_prologue): Likewise.
      	* m68klinux-tdep.c (m68k_linux_sigtramp_frame_cache): Likewise.
      	* machoread.c (macho_symtab_read): Likewise.
      	(macho_symfile_read): Likewise.
      	(macho_symfile_offsets): Likewise.
      	* maint.c (set_per_command_cmd): Likewise.
      	* mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Likewise.
      	(mi_cmd_stack_list_variables): Likewise.
      	* mi/mi-main.c (mi_cmd_exec_run): Likewise.
      	(output_register): Likewise.
      	(mi_cmd_execute): Likewise.
      	(mi_cmd_trace_define_variable): Likewise.
      	(print_variable_or_computed): Likewise.
      	* minsyms.c (prim_record_minimal_symbol_full): Likewise.
      	* mn10300-tdep.c (mn10300_frame_prev_register): Likewise.
      	* msp430-tdep.c (msp430_pseudo_register_write): Likewise.
      	* mt-tdep.c (mt_registers_info): Likewise.
      	* nios2-tdep.c (nios2_analyze_prologue): Likewise.
      	(nios2_push_dummy_call): Likewise.
      	(nios2_frame_unwind_cache): Likewise.
      	(nios2_stub_frame_cache): Likewise.
      	(nios2_stub_frame_sniffer): Likewise.
      	(nios2_gdbarch_init): Likewise.
      	* ppc-ravenscar-thread.c: Likewise.
      	* ppcfbsd-tdep.c (ppcfbsd_sigtramp_frame_cache): Likewise.
      	* python/py-evts.c (add_new_registry): Likewise.
      	* python/py-finishbreakpoint.c (bpfinishpy_init): Likewise.
      	(bpfinishpy_detect_out_scope_cb): Likewise.
      	* python/py-framefilter.c (py_print_value): Likewise.
      	* python/py-inferior.c (infpy_write_memory): Likewise.
      	* python/py-infevents.c (create_inferior_call_event_object): Likewise.
      	* python/py-infthread.c (thpy_get_ptid): Likewise.
      	* python/py-linetable.c (ltpy_get_pcs_for_line): Likewise.
      	(ltpy_get_all_source_lines): Likewise.
      	(ltpy_is_valid): Likewise.
      	(ltpy_iternext): Likewise.
      	* python/py-symtab.c (symtab_and_line_to_sal_object): Likewise.
      	* python/py-unwind.c (pyuw_object_attribute_to_pointer): Likewise.
      	(unwind_infopy_str): Likewise.
      	* python/py-varobj.c (py_varobj_get_iterator): Likewise.
      	* ravenscar-thread.c (ravenscar_inferior_created): Likewise.
      	* rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
      	* rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
      	* rs6000-tdep.c (ppc_deal_with_atomic_sequence): Likewise.
      	* s390-linux-tdep.c (s390_supply_tdb_regset): Likewise.
      	(s390_frame_prev_register): Likewise.
      	(s390_dwarf2_frame_init_reg): Likewise.
      	(s390_record_vr): Likewise.
      	(s390_process_record): Likewise.
      	* score-tdep.c (score_push_dummy_call): Likewise.
      	(score3_analyze_prologue): Likewise.
      	* sh-tdep.c (sh_extract_return_value_nofpu): Likewise.
      	* sh64-tdep.c (sh64_analyze_prologue): Likewise.
      	(sh64_push_dummy_call): Likewise.
      	(sh64_extract_return_value): Likewise.
      	(sh64_do_fp_register): Likewise.
      	* solib-aix.c (solib_aix_get_section_offsets): Likewise.
      	* solib-darwin.c (darwin_read_exec_load_addr_from_dyld): Likewise.
      	(darwin_solib_read_all_image_info_addr): Likewise.
      	* solib-dsbt.c (enable_break): Likewise.
      	* solib-frv.c (enable_break2): Likewise.
      	(frv_fdpic_find_canonical_descriptor): Likewise.
      	* solib-svr4.c (svr4_handle_solib_event): Likewise.
      	* sparc-tdep.c (sparc_skip_stack_check): Likewise.
      	* sparc64-linux-tdep.c (sparc64_linux_get_longjmp_target): Likewise.
      	* sparcobsd-tdep.c (sparc32obsd_init_abi): Likewise.
      	* spu-tdep.c (info_spu_dma_cmdlist): Likewise.
      	* stack.c (read_frame_local): Likewise.
      	* symfile.c (symbol_file_add_separate): Likewise.
      	(remove_symbol_file_command): Likewise.
      	* symmisc.c (maintenance_print_one_line_table): Likewise.
      	* symtab.c (symbol_cache_flush): Likewise.
      	(basic_lookup_transparent_type): Likewise.
      	(sort_search_symbols_remove_dups): Likewise.
      	* target.c (target_memory_map): Likewise.
      	(target_detach): Likewise.
      	(target_resume): Likewise.
      	(acquire_fileio_fd): Likewise.
      	(target_store_registers): Likewise.
      	* thread.c (print_thread_info_1): Likewise.
      	* tic6x-tdep.c (tic6x_analyze_prologue): Likewise.
      	* tilegx-linux-tdep.c (tilegx_linux_sigframe_init): Likewise.
      	* tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
      	(tilegx_analyze_prologue): Likewise.
      	(tilegx_stack_frame_destroyed_p): Likewise.
      	(tilegx_frame_cache): Likewise.
      	* tracefile.c (trace_save): Likewise.
      	* tracepoint.c (encode_actions_and_make_cleanup): Likewise.
      	(start_tracing): Likewise.
      	(print_one_static_tracepoint_marker): Likewise.
      	* tui/tui.c (tui_enable): Likewise.
      	* valops.c (value_struct_elt_bitpos): Likewise.
      	(find_overload_match): Likewise.
      	(find_oload_champ): Likewise.
      	* value.c (value_contents_copy_raw): Likewise.
      	* windows-tdep.c (windows_get_tlb_type): Likewise.
      	* x86-linux-nat.c (x86_linux_enable_btrace): Likewise.
      	* xcoffread.c (record_minimal_symbol): Likewise.
      	(scan_xcoff_symtab): Likewise.
      	* xtensa-tdep.c (execute_code): Likewise.
      	(xtensa_gdbarch_init): Likewise.
      	(_initialize_xtensa_tdep): Likewise.
      870f88f7
  15. Jan 01, 2016
  16. Jan 01, 2015
  17. Dec 02, 2014
    • Nick Bull's avatar
      New python events: inferior call, register/memory changed. · 162078c8
      Nick Bull authored
      gdb/ChangeLog:
      
      	* NEWS: Mention new Python events.
      	* Makefile.in (SUBDIR_PYTHON_OBS): Add py-infevents.o.
      	(SUBDIR_PYTHON_SRCS): Add py-infevents.c.
      	(py-infevents.o): New rule.
      	* doc/observer.texi (inferior_call_pre, inferior_call_post)
      	(memory_changed, register_changed): New observers.
      	* infcall.c (call_function_by_hand): Notify observer before and
      	after inferior call.
      	* python/py-event.h (inferior_call_kind): New enum.
      	(emit_inferior_call_event): New prototype.
      	(emit_register_changed_event): New prototype.
      	(emit_memory_changed_event): New prototype.
      	* python/py-events.h (events_object): New registries
      	inferior_call, memory_changed and register_changed.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add the
      	inferior_call, memory_changed and register_changed registries.
      	* python/py-infevents.c: New.
      	* python/py-inferior.c (python_on_inferior_call_pre)
      	(python_on_inferior_call_post, python_on_register_change)
      	(python_on_memory_change): New functions.
      	(gdbpy_initialize_inferior): Attach python handler to new
      	observers.
      	* python/py-infthread.c(gdbpy_create_ptid_object): New.
      	(thpy_get_ptid) Use gdbpy_create_ptid_object.
      	* python/python-internal.h:
      	(gdbpy_create_ptid_object)
      	(gdbpy_initialize_inferior_call_pre_event)
      	(gdbpy_initialize_inferior_call_post_event)
      	(gdbpy_initialize_register_changed_event)
      	(gdbpy_initialize_memory_changed_event): New prototypes.
      	* python/python.c (_initialize_python): Initialize new events.
      	* valops.c (value_assign): Notify register_changed observer.
      
      gdb/doc/ChangeLog:
      
      	* python.texi (Events In Python): Document new events
      	InferiorCallPreEvent, InferiorCallPostEvent, MemoryChangedEvent
      	and RegisterChangedEvent.
      
      gdb/testsuite/ChangeLog:
      
      	* gdb.python/py-events.py (inferior_call_handler): New.
      	(register_changed_handler, memory_changed_handler): New.
      	(test_events.invoke): Register new handlers.
      	* gdb.python/py-events.exp: Add tests for inferior call,
      	memory_changed and register_changed events.
      162078c8
    • Doug Evans's avatar
    • Doug Evans's avatar
      New python events: infcall, register/memory changed. · dc6c8717
      Doug Evans authored
      gdb/ChangeLog:
      
      	* NEWS: Mention new Python events.
      	* Makefile.in (SUBDIR_PYTHON_OBS): Add py-infevents.o.
      	(SUBDIR_PYTHON_SRCS): Add py-infevents.c.
      	(py-infevents.o): New rule.
      	* doc/observer.texi (inferior_call_pre, inferior_call_post)
      	(memory_changed, register_changed): New observers.
      	* infcall.c (call_function_by_hand): Notify observer before and
      	after inferior call.
      	* python/py-event.h (inferior_call_kind): New enum.
      	(emit_inferior_call_event): New prototype.
      	(emit_register_changed_event): New prototype.
      	(emit_memory_changed_event): New prototype.
      	* python/py-events.h (events_object): New registries
      	inferior_call, memory_changed and register_changed.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add the
      	inferior_call, memory_changed and register_changed registries.
      	* python/py-infevents.c: New.
      	* python/py-inferior.c (python_on_inferior_call_pre)
      	(python_on_inferior_call_post, python_on_register_change)
      	(python_on_memory_change): New functions.
      	(gdbpy_initialize_inferior): Attach python handler to new
      	observers.
      	* python/py-infthread.c(gdbpy_create_ptid_object): New.
      	(thpy_get_ptid) Use gdbpy_create_ptid_object.
      	* python/python-internal.h:
      	(gdbpy_create_ptid_object)
      	(gdbpy_initialize_inferior_call_pre_event)
      	(gdbpy_initialize_inferior_call_post_event)
      	(gdbpy_initialize_register_changed_event)
      	(gdbpy_initialize_memory_changed_event): New prototypes.
      	* python/python.c (_initialize_python): Initialize new events.
      	* valops.c (value_assign): Notify register_changed observer.
      
      gdb/doc/ChangeLog:
      
      	* python.texi (Events In Python): Document new events
      	InferiorCallPreEvent, InferiorCallPostEvent, MemoryChangedEvent
      	and RegisterChangedEvent.
      
      gdb/testsuite/ChangeLog:
      
      	* gdb.python/py-events.py (inferior_call_handler): New.
      	(register_changed_handler, memory_changed_handler): New.
      	(test_events.invoke): Register new handlers.
      	* gdb.python/py-events.exp: Add tests for inferior call,
      	memory_changed and register_changed events.
      dc6c8717
  18. Oct 17, 2014
    • Doug Evans's avatar
      New python event "clear_objfiles". · 4ffbba72
      Doug Evans authored
      If one is watching new_objfile events in python, it helps to know
      when the list of objfiles is cleared.  This patch adds a new
      clear_objfiles event to support this.
      
      This patch is all just cut-n-paste-n-tweak derived from
      the new_objfiles event.
      
      gdb/ChangeLog:
      
      	* NEWS: Mention new event gdb.clear_objfiles.
      	* python/py-event.h (emit_clear_objfiles_event): Clear
      	* python/py-events.h (events_object): New member clear_objfiles.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add clear_objfiles
      	event.
      	* python/py-inferior.c (python_new_objfile): If objfile is NULL,
      	emit clear_objfiles event.
      	* python/py-newobjfileevent.c (create_clear_objfiles_event_object): New
      	function.
      	(emit_clear_objfiles_event): New function.
      	(clear_objfiles): New event.
      	* python/python-internal.h (gdbpy_initialize_clear_objfiles_event):
      	Declare.
      	* python/python.c (_initialize_python): Call
      	gdbpy_initialize_clear_objfiles_event.
      
      gdb/doc/ChangeLog:
      
      	* python.texi (Events In Python): Document clear_objfiles event.
      
      gdb/testsuite/ChangeLog:
      
      	* gdb.python/py-events.exp: Update expected output for clear_objfiles
      	event.
      	* gdb.python/py-events.py: Add clear_objfiles event.
      4ffbba72
  19. Jan 01, 2014
  20. Nov 29, 2013
    • Doug Evans's avatar
      Remove trailing whitespace. · 256458bc
      Doug Evans authored
      	Whitespace cleanup.
      	* python/py-breakpoint.c: Remove trailing whitespace.
      	* python/py-cmd.c: Ditto.
      	* python/py-evts.c: Ditto.
      	* python/py-finishbreakpoint.c: Ditto.
      	* python/py-frame.c: Ditto.
      	* python/py-function.c: Ditto.
      	* python/py-inferior.c: Ditto.
      	* python/py-infthread.c: Ditto.
      	* python/py-param.c: Ditto.
      	* python/py-prettyprint.c: Ditto.
      	* python/py-symbol.c: Ditto.
      	* python/py-type.c: Ditto.
      	* python/py-utils.c: Ditto.
      	* python/py-value.c: Ditto.
      	* python/python-internal.h: Ditto.
      	* python/python.c: Ditto.
      256458bc
  21. May 20, 2013
    • Tom Tromey's avatar
      * python/py-arch.c (gdbpy_initialize_arch): Use · aa36459a
      Tom Tromey authored
      	gdb_pymodule_addobject.
      	* python/py-block.c (gdbpy_initialize_blocks): Use
      	gdb_pymodule_addobject.
      	* python/py-breakpoint.c (gdbpy_initialize_breakpoints): Use
      	gdb_pymodule_addobject.
      	* python/py-cmd.c (gdbpy_initialize_breakpoints): Use
      	gdb_pymodule_addobject.
      	* python/py-event.c (gdbpy_initialize_event_generic): Use
      	gdb_pymodule_addobject.
      	* python/py-evtregistry.c (gdbpy_initialize_eventregistry): Use
      	gdb_pymodule_addobject.
      	* python/py-evts.c (add_new_registry): Use
      	gdb_pymodule_addobject.
      	(gdbpy_initialize_py_events): Likewise.
      	* python/py-finishbreakpoint.c
      	(gdbpy_initialize_finishbreakpoints): Use
      	gdb_pymodule_addobject.
      	* python/py-frame.c (gdbpy_initialize_frames): Use
      	gdb_pymodule_addobject.
      	* python/py-function.c (gdbpy_initialize_functions): Use
      	gdb_pymodule_addobject.
      	* python/py-inferior.c (gdbpy_initialize_inferior): Use
      	gdb_pymodule_addobject.
      	* python/py-infthread.c (gdbpy_initialize_thread): Use
      	gdb_pymodule_addobject.
      	* python/py-objfile.c (gdbpy_initialize_objfile): Use
      	gdb_pymodule_addobject.
      	* python/py-param.c (gdbpy_initialize_parameters): Use
      	gdb_pymodule_addobject.
      	* python/py-progspace.c (gdbpy_initialize_pspace): Use
      	gdb_pymodule_addobject.
      	* python/py-symbol.c (gdbpy_initialize_symbols): Use
      	gdb_pymodule_addobject.
      	* python/py-symtab.c (gdbpy_initialize_symtabs): Use
      	gdb_pymodule_addobject.
      	* python/py-type.c (gdbpy_initialize_types): Use
      	gdb_pymodule_addobject.
      	* python/py-utils.c (gdb_pymodule_addobject): New function.
      	* python/py-value.c (gdbpy_initialize_values): Use
      	gdb_pymodule_addobject.
      	* python/python-internal.h (gdb_pymodule_addobject): Declare.
      	* python/python.c (_initialize_python): Use
      	gdb_pymodule_addobject.
      aa36459a
    • Tom Tromey's avatar
      * python/py-evts.c (gdbpy_initialize_py_events): Don't · 72ff8829
      Tom Tromey authored
      	incref the module.
      72ff8829
    • Tom Tromey's avatar
      * python/py-arch.c (gdbpy_initialize_arch): Return 'int'. · 999633ed
      Tom Tromey authored
      	Check errors.
      	* python/py-auto-load.c (gdbpy_initialize_auto_load): Return 'int'.
      	* python/py-block.c (gdbpy_initialize_blocks): Return 'int'.
      	Check errors.
      	* python/py-breakpoint.c (gdbpy_initialize_breakpoints): Return 'int'.
      	Check errors.
      	* python/py-cmd.c (gdbpy_initialize_commands): Return 'int'.
      	Check errors.
      	* python/py-event.c (gdbpy_initialize_event): Return 'int'.
      	Check errors.
      	* python/py-event.h (GDBPY_NEW_EVENT_TYPE): Change generated
      	init function to return 'int'.
      	* python/py-evtregistry.c (gdbpy_initialize_eventregistry):
      	Return 'int'.  Check errors.
      	* python/py-evts.c (gdbpy_initialize_py_events): Return 'int'.
      	Check errors.
      	* python/py-finishbreakpoint.c (gdbpy_initialize_finishbreakpoints):
      	Return 'int'.  Check errors.
      	* python/py-frame.c (gdbpy_initialize_frames): Return 'int'.
      	Check errors.
      	* python/py-function.c (gdbpy_initialize_functions): Return 'int'.
      	Check errors.
      	* python/py-gdb-readline.c (gdbpy_initialize_gdb_readline):
      	Check errors.
      	* python/py-inferior.c (gdbpy_initialize_inferior): Return 'int'.
      	Check errors.
      	* python/py-infthread.c (gdbpy_initialize_thread): Return 'int'.
      	Check errors.
      	* python/py-lazy-string.c (gdbpy_initialize_lazy_string): Return 'int'.
      	Check errors.
      	* python/py-objfile.c (gdbpy_initialize_objfile): Return 'int'.
      	Check errors.
      	* python/py-param.c (gdbpy_initialize_parameters): Return 'int'.
      	Check errors.
      	* python/py-progspace.c (gdbpy_initialize_pspace): Return 'int'.
      	Check errors.
      	* python/py-symbol.c (gdbpy_initialize_symbols): Return 'int'.
      	Check errors.
      	* python/py-symtab.c (gdbpy_initialize_symtabs): Return 'int'.
      	Check errors.
      	* python/py-type.c (gdbpy_initialize_types): Return 'int'.
      	Check errors.
      	* python/py-value.c (gdbpy_initialize_values): Return 'int'.
      	Check errors.
      	* python/python-internal.h (gdbpy_initialize_auto_load,
      	gdbpy_initialize_values, gdbpy_initialize_frames,
      	gdbpy_initialize_symtabs, gdbpy_initialize_commands,
      	gdbpy_initialize_symbols, gdbpy_initialize_symtabs,
      	gdbpy_initialize_blocks, gdbpy_initialize_types,
      	gdbpy_initialize_functions, gdbpy_initialize_pspace,
      	gdbpy_initialize_objfile, gdbpy_initialize_breakpoints,
      	gdbpy_initialize_finishbreakpoints,
      	gdbpy_initialize_lazy_string, gdbpy_initialize_parameters,
      	gdbpy_initialize_thread, gdbpy_initialize_inferior,
      	gdbpy_initialize_eventregistry, gdbpy_initialize_event,
      	gdbpy_initialize_py_events, gdbpy_initialize_stop_event,
      	gdbpy_initialize_signal_event,
      	gdbpy_initialize_breakpoint_event,
      	gdbpy_initialize_continue_event,
      	gdbpy_initialize_exited_event, gdbpy_initialize_thread_event,
      	gdbpy_initialize_new_objfile_event, gdbpy_initialize_arch):
      	Update.  Use CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
      	* python/python.c (gdb_python_initialized): New global.
      	(gdbpy_initialize_events): Return 'int'.  Check errors.
      	(_initialize_python): Check errors.  Set
      	gdb_python_initialized.
      999633ed
    • Tom Tromey's avatar
      * python/py-event.h (gdbpy_initialize_event_generic): Use · 5d153bd1
      Tom Tromey authored
      	CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
      	* python/py-evts.c (add_new_registry): Use
      	CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION.
      	* python/python-internal.h
      	(CPYCHECKER_NEGATIVE_RESULT_SETS_EXCEPTION): New macro.
      5d153bd1
  22. Jan 01, 2013
  23. Dec 12, 2012
    • Paul Koning's avatar
      Add support for Python 3. · 9a27f2c6
      Paul Koning authored
      * NEWS: Mention Python 3 support.
      * varobj.c (value_get_print_value): Use
      python_string_to_target_string.
      * python/py-block.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      * python/py-breakpoint.c: Ditto.
      * python/py-cmd.c:  Ditto.
      * python/py-event.c: Ditto.
      * python/py-event.h: Ditto.
      * python/py-evtregistry.c: Ditto.
      * python/py-finishbreakpoint.c: Ditto.
      * python/py-frame.c: Ditto.
      * python/py-function.c: Ditto.
      * python/py-infthread.c: Ditto.
      * python/py-lazy-string.c: Ditto.
      * python/py-progspace.c: Ditto.
      * /python/py-symbol.c: Ditto.
      * python/py-evts.c:  (gdbpy_initialize_py_events): Add module
      initialization for Python 3.
      * python/py-inferior.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (infpy_read_memory): Return memoryview object if Python 3.
      (infpy_write_memory): Use "s*" operand parsing code for Python 3.
      (infpy_search_memory): Ditto.
      (get_buffer): New function for Python 3.
      * python/py-objfile.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (objfpy_dealloc): Use Py_TYPE to call tp_free.
      * python/py-param.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (get_attr): Use PyUnicode_CompareWithASCIIString if Python 3.
      (set_attr): Ditto.
      * python/py-prettyprint.c (print_string_repr): use PyBytes methods
      instead of PyString methods if Python 3.
      (print_children): Skip push_dummy_python_frame call if Python 3.
      * python/py-symtab.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (salpy_dealloc): Use Py_TYPE to call tp_free.
      * python/py-type.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (field_dealloc): Use Py_TYPE to call tp_free.
      (typy_dealloc): Ditto.
      (type_object_as_number): Adjust struct initializations for
      differences in layout for Python 2 vs. Python 3.
      * python/py-utils.c (python_string_to_unicode): Omit non-Unicode
      string case for Python 3.
      (unicode_to_encoded_python_string): Shorten code (no functional
      change).
      (python_string_to_target_python_string): Comment that in Python 3
      returned value is a Python "bytes" type.
      (gdbpy_is_string): Omit non-Unicode string check in Python 3.
      (gdb_py_object_from_longest): Omit non-long integer case in Python
      3.
      (gdb_py_object_from_ulongest): Ditto.
      * python/py-value.c: Use PyVarObject_HEAD_INIT in initialization
      of type objects.
      (valpy_dealloc): Use Py_TYPE to call tp_free.
      (valpy_int): Omit function if Python 3.
      (convert_value_from_python): Use "%S" format (Python object as a
      string) if Python 3.
      (value_object_as_number): Adjust struct initializations for
      differences in layout for Python 2 vs. Python 3.
      * python/python-config.py: Adjust syntax for Python 3
      compatibility.
      Include "sys.abiflags" string as part of python library name, if
      that attribute exists (Python 3).
      * python/python-internal.h (IS_PY3): Define if Python 3.
      (Py_TPFLAGS_HAVE_ITER, Py_TPFLAGS_CHECKTYPES): Define with
      placeholder value if Python 3.
      (PyInt_Check, PyInt_FromLong, PyInt_AsLong, PyString_FromString,
      PyString_Decode, PyString_FromFormat, PyString_Check): Define as
      analogous Python 3 API function if Python 3.
      (PyVarObject_HEAD_INIT): Define if not already defined.
      (Py_TYPE): Ditto.
      * python/python.c (eval_python_command): Omit Py_FlushLine call if
      Python 3.
      Check return values of all Python API calls for error.
      Supply dummy "python" and "python-interactive" commands if Python
      initialization failed.
      (_initialize_python): Convert argc to wchar_t** if Python 3.
      Add module initialization for Python 3.
      (finish_python_initialization): Pass wchar_t * argument to
      PySys_SetPath if Python 3.
      * python/lib/gdb/__init__.py: Define "reload" if Python 3.
      (_GdbFile): New class for common output file behavior.
      (GdbOutFile): Subclass from _GdbFile.
      (GdbOutputErrorFile): Ditto.
      (auto_load_packages): Adjust syntax for Python 3 compatibility.
      * python/lib/gdb/printing.py: Define basestr and int if Python 3.
      * python/lib/gdb/prompt.py: Use sorted() function rather than
      sort() method.
      * python/lib/gdb/command/explore.py: Define raw_input if Python 3.
      Adjust syntax for Python 3 compatibility.
      * python/lib/gdb/command/pretty_printers.py: Use sorted() function
      rather than sort() method.
      Adjust syntax for Python 3 compatibility.
      * python/lib/gdb/command/type_printers.py: Ditto.
      * doc/gdb.texinfo (Inferior.read_memory): Mention that the return
      value is a memoryview object if Python 3.
      9a27f2c6
  24. Nov 08, 2012
    • Tom Tromey's avatar
      * python/py-bpevent.c: Include defs.h. · d071a26b
      Tom Tromey authored
      	* python/py-continueevent.c: Include defs.h.
      	* python/py-event.c: Include defs.h.
      	* python/py-event.h: Don't include defs.h.
      	* python/py-events.h: Don't include defs.h.
      	* python/py-evts.c: Include defs.h.
      	* python/py-exitedevent.c: Include defs.h.
      	* python/py-newobjfileevent.c: Include defs.h.
      	* python/py-signalevent.c: Include defs.h.
      	* python/py-stopevent.c: Include defs.h.
      	* python/py-threadevent.c: Include defs.h.
      d071a26b
  25. Jan 04, 2012
  26. Oct 07, 2011
    • Kevin Pouget's avatar
      Allow Python notification of new object-file loadings. · 20c168b5
      Kevin Pouget authored
      	* Makefile.in (SUBDIR_PYTHON_SRCS): Add py-newobjfilevent.c.
      	(SUBDIR_PYTHON_OBS): Add py-newobjfileevent.o.
      	Add build rule for this file.
      	* python/py-event.h (emit_new_objfile_event): New prototype.
      	(newobjfile): New Python event emitter.
      	* python/py-evts.c (gdbpy_initialize_py_events): Add new_objfile to
      	Python event registry.
      	* python/py-inferior.c: Include objfiles.h
      	(python_new_objfile): New function.
      	(gdbpy_initialize_inferior): Add python_new_objfile to the new objfile
      	observers.
      	* python/py-newobjfileevent.c: New file.
      	* python-internal.h (gdbpy_initialize_new_objfile_event): New
      	prototype.
      	* python/python.c (_initialize_python): Add
      	gdbpy_initialize_new_objfile_event call.
      	* NEWS: Add item for new Python event "gdb.newobjfile"
      
      2011-10-06  Kevin Pouget  <kevin.pouget@st.com>
      
      	Allow Python notification of new object-file loadings.
      	* gdb.texinfo (Events In Python): Document `gdb.NewObjFileEvent'
      	event type.
      
      2011-10-06  Kevin Pouget  <kevin.pouget@st.com>
      
      	Allow Python notification of new object-file loadings.
      	* gdb.python/py-events.exp: Test newobjfile event.
      	* gdb.python/py-events.py: Register newobjfile callback.
      	* gdb.python/py-events.c: Add call to shared library
      	* gdb.python/py-events-shlib.c: New file.
      20c168b5
  27. Mar 14, 2011
    • Pierre Muller's avatar
      Fix ARI warning about functions without parameters that do not · eeae04df
      Pierre Muller authored
      	use (void).
      	* breakpoint.c (all_tracepoints): Replace () by (void).
      	* f-exp.y (match_string_literal): Ditto.
      	(yylex): Ditto.
      	* m2-exp.y (yylex): Ditto.
      	* mep-tdep.c (current_me_module): Ditto.
      	(current_options): Ditto.
      	(current_cop_data_bus_width): Ditto.
      	(current_cr_names): Ditto.
      	(current_cr_is_float): Ditto.
      	(current_ccr_names): Ditto.
      	* objc-exp.y (yylex): Ditto.
      	* p-exp.y (yylex): Ditto.
      	* remote.c (send_interrupt_sequence): Ditto.
      	* tracepoint.c (current_trace_status): Ditto.
      	* python/py-evts.c (gdbpy_initialize_py_events): Ditto.
      	* python/py-prettyprint.c (push_dummy_python_frame): Ditto.
      eeae04df
  28. Feb 05, 2011
Loading