Move pending_blocks and pending_block_obstack to buildsym_compunit
[binutils-gdb.git] / gdb / ChangeLog
index 7f254b9ae820297024c4dd5eea0b09e7007fac0e..a8d20576e6e3b4945f7652333dd9f458f69db8c1 100644 (file)
@@ -1,3 +1,112 @@
+2018-07-20  Tom Tromey  <tom@tromey.com>
+
+       * buildsym.h (class scoped_free_pendings): Remove constructor.
+       * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
+       method.
+       <m_pending_block_obstack, m_pending_blocks>: New members.
+       (pending_block_obstack, pending_blocks): Remove.
+       (scoped_free_pendings::scoped_free_pendings): Default.
+       (~scoped_free_pendings): Update.
+       (free_pending_blocks): Remove.
+       (finish_block_internal, record_pending_block, make_blockvector)
+       (end_symtab_get_static_block, augment_type_symtab, push_context)
+       (buildsym_init): Update.
+
+2018-07-20  Tom Tromey  <tom@tromey.com>
+
+       * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
+       m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
+       members.
+       (pending_addrmap, pending_addrmap_obstack)
+       (pending_addrmap_interesting): Remove.
+       (scoped_free_pendings, record_block_range, make_blockvector)
+       (prepare_for_building, reset_symtab_globals, buildsym_init):
+       Update.
+
+2018-07-20  Tom Tromey  <tom@tromey.com>
+
+       * xcoffread.c (process_linenos): Update.
+       * stabsread.c (define_symbol, read_type, read_enum_type): Update.
+       * mdebugread.c (psymtab_to_symtab_1): Update.
+       * dwarf2read.c (setup_type_unit_groups)
+       (lnp_state_machine::handle_set_file, dwarf_record_line_p)
+       (lnp_state_machine::record_line, dwarf_decode_lines): Update.
+       * dbxread.c (process_one_symbol): Update.
+       * coffread.c (coff_symtab_read, enter_linenos)
+       (process_coff_symbol): Update.
+       * buildsym.h (current_subfile): Don't declare.
+       (get_current_subfile): Declare.
+       * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
+       member.
+       (start_subfile, free_buildsym_compunit, push_subfile)
+       (prepare_for_building, start_symtab): Update.
+       (get_current_subfile): New function.
+
+2018-07-20  Tom Tromey  <tom@tromey.com>
+
+       * coffread.c (coff_symtab_read): Update.
+       * xcoffread.c (read_xcoff_symtab): Update.
+       * dwarf2read.c (new_symbol): Update.
+       (read_func_scope, read_lexical_block_scope): Update.
+       * dbxread.c (process_one_symbol): Update.
+       * buildsym.h (context_stack, context_stack_depth): Don't declare.
+       (outermost_context_p): Remove macro.
+       (outermost_context_p, get_current_context_stack)
+       (get_context_stack_depth): Declare.
+       (pop_context): Return struct context_stack.
+       * buildsym.c (struct buildsym_compunit) <m_context_stack: New
+       member.
+       (context_stack_size): Remove.
+       (INITIAL_CONTEXT_STACK_SIZE): Remove.
+       (prepare_for_building, end_symtab_get_static_block)
+       (augment_type_symtab, push_context): Update.
+       (pop_context): Return struct context_stack.
+       (outermost_context_p, get_current_context_stack)
+       (get_context_stack_depth): New functions.
+       (buildsym_init): Update.
+
+2018-07-20  Tom Tromey  <tom@tromey.com>
+
+       * rust-exp.y: Now a pure parser.  Update all rules.
+       (%union): Move earlier.
+       (current_parser, work_obstack): Remove globals.
+       (rust_parser, ~rust_parser): Update.
+       (class rust_parser) <copy_name, concat3, crate_name, super_name,
+       lex_character, lex_number, lex_string, lex_identifier,
+       rust_lookup_type, convert_params_to_types, convert_ast_to_type,
+       convert_name, convert_params_to_expression,
+       convert_ast_to_expression, ast_basic_type, ast_operation,
+       ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
+       ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
+       ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
+       ast_array_type, ast_slice_type, ast_reference_type,
+       ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
+       (rust_parse): Update.
+       (rustyyerror, rustyylex): Add parser parameter.
+       (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
+       (rust_lex_stringish_test, rust_lex_test_sequence)
+       (rust_lex_test_trailing_dot, rust_lex_test_completion)
+       (rust_lex_test_push_back, rust_lex_tests): Update.
+
+2018-07-19  Pedro Alves  <palves@redhat.com>
+
+       * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
+       gdb::unique_xmalloc_ptr.
+       * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
+       Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
+       * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
+       copy-initialization.
+       * guile/scm-pretty-print.c (ppscm_print_children): Use
+       gdb::unique_xmalloc_ptr instead of cleanups.
+       (gdbscm_apply_val_pretty_printer): Remove cleanups.
+       * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
+       gdb::unique_xmalloc_ptr.
+       * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
+       Adjust to use gdb::unique_xmalloc_ptr.
+       * guile/scm-utils.c (extract_arg): Adjust.
+       * guile/scm-value.c (gdbscm_value_field): Adjust to use
+       gdb::unique_xmalloc_ptr instead of a cleanup.
+
 2018-07-19  Tom Tromey  <tom@tromey.com>
 
        * utils.c (do_value_free_to_mark)