Record nested types
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index f454c26033b7a76d518ac6c4afcf370ee35bc466..0347f37140cadbd0a009232c6192e697de4da35c 100644 (file)
@@ -1,3 +1,225 @@
+2017-12-07  Keith Seitz  <keiths@redhat.com>
+
+       * NEWS (New commands): Mention set/show print type nested-type-limit.
+       * c-typeprint.c (c_type_print_base): Print out nested types.
+       * dwarf2read.c (struct typedef_field_list): Rename to ...
+       (struct decl_field_list): ... this.  Change all uses.
+       (struct field_info) <nested_types_list, nested_types_list_count>:
+       New fields.
+       (add_partial_symbol): Look for nested type definitions in C++, too.
+       (dwarf2_add_typedef): Rename to ...
+       (dwarf2_add_type_defn): ... this.
+       (type_can_define_types): New function.
+       Update assertion to use type_can_define_types.
+       Permit NULL for a field's name.
+       (process_structure_scope): Handle child DIEs of types that can
+       define types.
+       Copy the list of nested types into the type struct.
+       * gdbtypes.h (struct typedef_field): Rename to ...
+       (struct decl_field): ... this.  Change all uses.
+       [is_protected, is_private]: New fields.
+       (struct cplus_struct_type) <nested_types, nested_types_count>: New
+       fields.
+       (TYPE_NESTED_TYPES_ARRAY, TYPE_NESTED_TYPES_FIELD)
+       (TYPE_NESTED_TYPES_FIELD_NAME, TYPE_NESTED_TYPES_FIELD_TYPE)
+       (TYPE_NESTED_TYPES_COUNT, TYPE_NESTED_TYPES_FIELD_PROTECTED)
+       (TYPE_NESTED_TYPES_FIELD_PRIVATE): New macros.
+       * typeprint.c (type_print_raw_options, default_ptype_flags): Add
+       default value for print_nested_type_limit.
+       (print_nested_type_limit): New static variable.
+       (set_print_type_nested_types, show_print_type_nested_types): New
+       functions.
+       (_initialize_typeprint): Register new commands for set/show
+       `print-nested-type-limit'.
+       * typeprint.h (struct type_print_options) [print_nested_type_limit]:
+       New field.
+
+2017-12-07  Tom Tromey  <tom@tromey.com>
+
+       PR breakpoints/22511:
+       * breakpoint.c (commands_command_1): Don't throw an exception when
+       no commands have been read.
+
+2017-12-07  Adam Stylinski  <adam.stylinski@etegent.com>
+
+       PR c++/21222
+       * target-descriptions.c (print_c_tdesc::visit_pre): Change type of
+       range-for variable.
+
+2017-12-07  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * common/selftest.h (struct selftest): Add virtual destructor.
+
+2017-12-07  Phil Muldoon  <pmuldoon@redhat.com>
+
+       * python/py-breakpoint.c (bppy_init): Use string_to_event_location
+       over basic location code. Implement explicit location keywords.
+       (bppy_init_validate_args): New function.
+       * NEWS: Document Python explicit breakpoint locations.
+
+2017-12-07  Joel Brobecker  <brobecker@adacore.com>
+
+       * MAINTAINERS: Restore target entries for m68hc11-elf,
+       score-elf and xstormy16-elf, incorrectly removed in a previous
+       patch meant to only update the list of active maintainers.
+
+2017-12-06  Pedro Alves  <palves@redhat.com>
+
+       * break-catch-syscall.c (insert_catch_syscall)
+       (remove_catch_syscall): Adjust to pass reference to
+       inf_data->syscalls_counts directly via gdb::array_view.
+       * fbsd-nat.c (fbsd_set_syscall_catchpoint): Adjust to use bool
+       and gdb::array_view.
+       * linux-nat.c (linux_child_set_syscall_catchpoint): Likewise.
+       * remote.c (remote_set_syscall_catchpoint): Likewise.
+       * target-debug.h (target_debug_print_bool): New.
+       (define target_debug_print_gdb_array_view_const_int): New.
+       * target-delegates.c: Regenerate.
+       * target.h (target_ops) <to_set_syscall_catchpoint>: Use
+       gdb::array_view and bool.
+       (target_set_syscall_catchpoint): Likewise.
+
+2017-12-06  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * break-catch-syscall.c (catch_syscall_completer): Get pointers
+       to syscall group strings after building the string vector.
+
+2017-12-06  Pedro Alves  <palves@redhat.com>
+
+       * remote.c (remote_query_supported): Don't send "xmlRegisters=" if
+       "qXfer:features:read"" is disabled.
+       (remote_write_qxfer, remote_read_qxfer, remote_search_memory):
+       Check packet_config_support instead of packet->support directly.
+
+2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * target-descriptions.c (struct tdesc_feature) <registers>: Use
+       tdesc_reg_up typedef.
+       (struct target_desc) <features>: Use tdesc_feature_up typedef.
+
+2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target-descriptions.c (struct tdesc_type): Use default
+       destructor.
+       <u>: Remove.
+       <accept>: Remove.
+       (struct tdesc_type_builtin): New.
+       (struct tdesc_type_vector): New.
+       (struct tdesc_type_with_fields): New.
+       (tdesc_predefined_types): Change type to tdesc_type_builtin[].
+       (tdesc_gdb_type): Remove.
+       (tdesc_register_type): Adjust.
+       (tdesc_create_vector): Create tdesc_type_vector.
+       (tdesc_create_struct): Create tdesc_type_with_fields.
+       (tdesc_set_struct_size): Change parameter type.
+       (tdesc_create_union): Create tdesc_type_with_fields.
+       (tdesc_create_flags): Likewise.
+       (tdesc_create_enum): Likewise.
+       (tdesc_add_field): Change parameter type.
+       (tdesc_add_typed_bitfield): Likewise.
+       (tdesc_add_bitfield): Likewise.
+       (tdesc_add_flag): Likewise.
+       (tdesc_add_enum_value): Likewise.
+       (print_c_tdesc) <visit>: Remove overload with tdesc_type
+       parameter, add overloads for tdesc_type_builtin,
+       tdesc_type_with_fields and tdesc_type_vector.
+       <m_printed_type>: Remove.
+       <m_printed_element_type, m_printed_type_with_fields>: Add.
+       * target-descriptions.h (tdesc_create_enum): Change return type.
+       (tdesc_add_typed_bitfield): Change parameter type.
+       (tdesc_add_enum_value): Change parameter type.
+       * xml-tdesc.c (struct tdesc_parsing_data) <current_type>: Change
+       type to tdesc_type_with_fields.
+       (tdesc_start_struct): Adjust.
+       (tdesc_start_flags): Adjust.
+       (tdesc_start_enum): Adjust.
+       (tdesc_start_field): Adjust.
+       * arch/tdesc.h (struct tdesc_type_builtin): Forward-declare.
+       (struct tdesc_type_vector): Forward-declare.
+       (struct tdesc_type_with_fields): Forward-declare.
+       (tdesc_create_struct): Change return type.
+       (tdesc_create_union): Likewise.
+       (tdesc_create_flags): Likewise.
+       (tdesc_add_field): Change parameter type.
+       (tdesc_set_struct_size): Likewise.
+       (tdesc_add_bitfield): Likewise.
+       (tdesc_add_flag): Likewise.
+       * features: Re-generate C files.
+
+2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target-descriptions.c (tdesc_arch_reg): Remove typedef.
+       (struct tdesc_arch_reg): Add constructor.
+       (DEF_VEC_O (tdesc_arch_reg)): Remove.
+       (struct tdesc_arch_data): Initialize fields.
+       <arch_regs>: Change type to std::vector.
+       (target_find_description): Adjust.
+       (tdesc_find_type): Adjust.
+       (tdesc_data_init): Call tdesc_arch_data constructor.
+       (tdesc_data_alloc): Allocate tdesc_arch_data with new.
+       (tdesc_data_cleanup): Free data with delete.
+       (tdesc_numbered_register): Adjust.
+       (tdesc_find_arch_register): Adjust.
+       (tdesc_use_registers): Adjust.
+
+2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target-descriptions.c (tdesc_type_field): Remove typedef.
+       (DEF_VEC_O (tdesc_type_field)): Remove.
+       (struct tdesc_type_field): Add constructor.
+       <name>: Change type to std::string.
+       (struct tdesc_type) <tdesc_type>: Instantiate vector if the type
+       kind uses it.
+       <~tdesc_type>: Destroy vector if the type kind uses it.
+       <u::u::fields>: Change type to std::vector.
+       (tdesc_gdb_type): Adjust.
+       (tdesc_add_field): Adjust.
+       (tdesc_add_typed_bitfield): Adjust.
+       (tdesc_add_field): Adjust.
+       (tdesc_add_enum_value): Adjust.
+       (class print_c_tdesc) <visit>: Adjust.
+
+2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target-descriptions.c (struct tdesc_type) <name>: Change type
+       to std::string.
+       <~tdesc_type>: Don't manually free name.
+       <operator==>: Adjust.
+       (tdesc_named_type): Adjust.
+       (tdesc_find_type): Adjust.
+       (tdesc_gdb_type): Adjust.
+       (class print_c_tdesc) <visit>: Adjust.
+
+2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * target-descriptions.c (tdesc_type_p): Remove typedef.
+       (DEF_VEC_P (tdesc_type_p)): Remove.
+       (struct tdesc_feature) <types>: Change type to std::vector.
+       <~tdesc_feature>: Replace with default implementation.
+       <accept>: Adjust.
+       (tdesc_named_type): Adjust.
+       (tdesc_create_vector): Adjust.
+       (tdesc_create_struct): Adjust.
+       (tdesc_create_union): Adjust.
+       (tdesc_create_flags): Adjust.
+       (tdesc_create_enum): Adjust.
+
+2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * target-descriptions.c (struct tdesc_reg) <tdesc_reg>: Change
+       type of name_ parameter, adjust to std::string change.
+       <name, group, type>: Change type to std::string.
+       <~tdesc_reg>: Replace with default implementation.
+       <operator==>: Adjust.
+       (tdesc_find_register_early): Adjust.
+       (tdesc_register_name): Adjust.
+       (tdesc_register_type): Adjust.
+       (tdesc_register_in_reggroup_p): Adjust.
+       (class print_c_tdesc) <visit>: Adjust.
+       (class print_c_feature) <visit>: Adjust.
+       * features/arc-arcompact.c: Re-generate.
+       * features/arc-v2.c: Re-generate.
+
 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
 
        * target-descriptions.c (tdesc_reg_p): Remove typedef.
This page took 0.0295 seconds and 4 git commands to generate.