Fix crash in dwarf2read.c with template parameters
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 106f0e65bbecfe50e3e03369c38195f1e57cafa9..1e2f0eb4669581d385980c896118adde535cc726 100644 (file)
@@ -1,3 +1,289 @@
+2019-04-30  Tom Tromey  <tromey@adacore.com>
+
+       PR c++/24470:
+       * dwarf2read.c (process_structure_scope): Handle case where type
+       has template parameters but no symbol was created.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Chris January  <chris.january@arm.com>
+
+       * f-typeprint.c (f_type_print_base): Print 'allocatable' type
+       qualifier.
+       * gdbtypes.h (TYPE_IS_ALLOCATABLE): Define.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-typeprint.c (f_print_type): Update rules for printing
+       whitespace.
+       (f_type_print_varspec_suffix): Likewise.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Chris January  <chris.january@arm.com>
+
+       * f-typeprint.c (f_type_print_varspec_suffix): Handle printing
+       function arguments.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * f-lang.c (build_fortran_types): Change name of void type to
+       lower case.
+       * f-typeprint.c (f_type_print_base): Print the name of the void
+       type, rather than a fixed string.
+       * f-valprint.c (f_decorations): Use lower case void string.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Chris January  <chris.january@arm.com>
+
+       * dwarf2read.c (dwarf2_init_complex_target_type): Use different
+       types for Fortran.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Chris January  <chris.january@arm.com>
+           David Lecomber  <david.lecomber@arm.com>
+
+       * f-exp.y (BINOP_INTRINSIC): New token.
+       (exp): New parser rule handling BINOP_INTRINSIC.
+       (f77_keywords): Add new builtin procedures.
+       * f-lang.c (evaluate_subexp_f): Handle BINOP_MOD, UNOP_FORTRAN_CEILING,
+       UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
+       (operator_length_f): Handle UNOP_FORTRAN_CEILING,
+       UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
+       (print_unop_subexp_f): New function.
+       (print_binop_subexp_f): New function.
+       (print_subexp_f): Handle UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
+       BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX.
+       (dump_subexp_body_f): Likewise.
+       (operator_check_f): Likewise.
+       * fortran-operator.def: Add UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR,
+       BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gdb/expprint.c (dump_subexp_body_standard): Remove use of
+       UNOP_KIND.
+       * gdb/expression.h (exp_opcode): Include 'fortran-operator.def'.
+       * gdb/f-exp.y (exp): Rename UNOP_KIND to UNOP_FORTRAN_KIND.
+       * gdb/f-lang.c (evaluate_subexp_f): Likewise.
+       (operator_length_f): New fuction.
+       (print_subexp_f): New function.
+       (op_name_f): New function.
+       (dump_subexp_body_f): New function.
+       (operator_check_f): New function.
+       (exp_descriptor_f): Replace standard expression handling functions
+       with new functions.
+       * gdb/fortran-operator.def: New file.
+       * gdb/parse.c (operator_length_standard): Remove use of UNOP_KIND.
+       * gdb/std-operator.def: Remove UNOP_KIND.
+
+2019-04-30  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * std-operator.def: Remove unbalanced, stray double quote
+       character.
+
+2019-04-29  Andrew Burgess  <andrew.burgess@embecosm.com>
+           Chris January  <chris.january@arm.com>
+           Daniel Everett  <daniel.everett@arm.com>
+           Nick Forrington  <nick.forrington@arm.com>
+           Richard Bunt  <richard.bunt@arm.com>
+
+       * cp-valprint.c (cp_print_value_fields): Allow an additional level
+       of depth when printing anonymous structs or unions.
+       * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
+       Don't print either the top-level value, or the children if the
+       max-depth is exceeded.
+       (ppscm_print_children): When printing the key of a map, allow one
+       extra level of depth.
+       * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Don't
+       print either the top-level value, or the children if the max-depth
+       is exceeded.
+       (print_children): When printing the key of a map, allow one extra
+       level of depth.
+       * python/py-value.c (valpy_format_string): Add max_depth keyword.
+       * valprint.c: (PRINT_MAX_DEPTH_DEFAULT): Define.
+       (user_print_options): Initialise max_depth field.
+       (val_print_scalar_or_string_type_p): New function.
+       (val_print): Check to see if the max depth has been reached.
+       (val_print_check_max_depth): Define new function.
+       (show_print_max_depth): New function.
+       (_initialize_valprint): Add 'print max-depth' option.
+       * valprint.h (struct value_print_options) <max_depth>: New field.
+       (val_print_check_max_depth): Declare new function.
+       * NEWS: Document new feature.
+
+2019-04-29  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * ada-lang.c (ada_language_defn): Initialise new field.
+       * c-lang.c (c_is_string_type_p): New function.
+       (c_language_defn): Initialise new field.
+       (cplus_language_defn): Initialise new field.
+       (asm_language_defn): Initialise new field.
+       (minimal_language_defn): Initialise new field.
+       * c-lang.h (c_is_string_type_p): Declare new function.
+       * d-lang.c (d_language_defn): Initialise new field.
+       * f-lang.c (f_is_string_type_p): New function.
+       (f_language_defn): Initialise new field.
+       * go-lang.c (go_is_string_type_p): New function.
+       (go_language_defn): Initialise new field.
+       * language.c (default_is_string_type_p): New function.
+       (unknown_language_defn): Initialise new field.
+       (auto_language_defn): Initialise new field.
+       * language.h (struct language_defn) <la_is_string_type_p>: New
+       member variable.
+       (default_is_string_type_p): Declare new function.
+       * m2-lang.c (m2_language_defn): Initialise new field.
+       * objc-lang.c (objc_language_defn): Initialise new field.
+       * opencl-lang.c (opencl_language_defn): Initialise new field.
+       * p-lang.c (pascal_is_string_type_p): New function.
+       (pascal_language_defn): Initialise new field.
+       * rust-lang.c (rust_is_string_type_p): New function.
+       (rust_language_defn): Initialise new field.
+
+2019-04-29  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * language.h (struct language_defn) <la_struct_too_deep_ellipsis>:
+       New field.
+       * ada-lang.c (ada_language_defn): Initialise new field.
+       * c-lang.c (c_language_defn): Likewise.
+       (cplus_language_defn): Likewise.
+       (asm_language_defn): Likewise.
+       (minimal_language_defn): Likewise.
+       * d-lang.c (d_language_defn): Likewise.
+       * f-lang.c (f_language_defn): Likewise.
+       * go-lang.c (go_language_defn): Likewise.
+       * language.c (unknown_language_defn): Likewise.
+       (auto_language_defn): Likewise.
+       * m2-lang.c (m2_language_defn): Likewise.
+       * objc-lang.c (objc_language_defn): Likewise.
+       * opencl-lang.c (opencl_language_defn): Likewise.
+       * p-lang.c (pascal_language_defn): Likewise.
+       * rust-lang.c (rust_language_defn): Likewise.
+
+2019-04-29  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * ada-lang.c (ada_is_character_type): Change return type to bool.
+       (ada_is_string_type): Likewise.
+       * ada-lang.h (ada_is_character_type): Update declaration
+       (ada_is_string_type): Likewise.
+
+2019-04-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
+
+       Support style in 'frame|thread apply'
+
+       * gdbcmd.h (execute_command_to_string): New term_out parameter.
+       * record.c (record_start, record_stop): Update callers of
+       execute_command_to_string with false.
+       * guile/guile.c (gdbscm_execute_gdb_command): Likewise.
+       * ui-file.h (class ui_file): New term_out and can_emit_style_escape
+       methods.
+       (class string_file): New constructor with term_out parameter.
+       Override methods term_out and can_emit_style_escape.  New member
+       term_out.
+       (class stdio_file): Override can_emit_style_escape.
+       (class tee_file): Override term_out and can_emit_style_escape.
+       * utils.h (can_emit_style_escape): Remove.
+       * utils.c (can_emit_style_escape): Likewise.
+       Update all callers of can_emit_style_escape (SOMESTREAM) to
+       SOMESTREAM->can_emit_style_escape.
+       * source-cache.c (source_cache::get_source_lines): Likewise.
+       * stack.c (frame_apply_command_count): Call execute_command_to_string
+       passing the term_out characteristic of the current gdb_stdout.
+       * thread.c (thr_try_catch_cmd): Likewise.
+       * top.c (execute_command_to_string): pass term_out parameter
+       to construct the string_file for the command output.
+       * ui-file.c (term_cli_styling): New function (most code moved
+       from utils.c can_emit_style_escape).
+       (string_file::string_file, string_file::can_emit_style_escape,
+       stdio_file::can_emit_style_escape, tee_file::term_out,
+       tee_file::can_emit_style_escape): New functions.
+
+2019-04-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
+
+       * NEWS: Mention the new set|show may-call-functions.
+       * infcall.c (may_call_functions_p): New variable.
+       (show_may_call_functions_p): New function.
+       (call_function_by_hand_dummy): Throws an error if not
+       may-call-functions.
+       (_initialize_infcall): Call add_setshow_boolean_cmd for
+       may-call-functions.
+
+2019-04-25  Keith Seitz  <keiths@redhat.com>
+
+       PR c++/24367
+       * cp-support.c (inspect_type): Don't attempt substitutions
+       of symbol with the same name.
+
+2019-04-25  Tom Tromey  <tromey@adacore.com>
+
+       PR gdb/24475:
+       * event-top.c (gdb_rl_callback_handler): Make "gdb_rl_expt"
+       static.
+
+2019-04-25  Tom Tromey  <tromey@adacore.com>
+
+       * xml-support.c (struct gdb_xml_parser) <set_error>: Take an
+       rvalue reference.
+       (gdb_xml_start_element_wrapper, gdb_xml_end_element_wrapper)
+       (gdb_xml_parser::parse): Use std::move.
+       * python/python-internal.h (gdbpy_convert_exception): Take a const
+       reference.
+       * python/py-value.c (valpy_getitem, valpy_nonzero): Use
+       std::move.
+       * python/py-utils.c (gdbpy_convert_exception): Take a const
+       reference.
+       * python/py-inferior.c (infpy_write_memory, infpy_search_memory):
+       Use std::move.
+       * python/py-breakpoint.c (bppy_set_condition, bppy_set_commands):
+       Use std::move.
+       * mi/mi-main.c (mi_print_exception): Take a const reference.
+       * main.c (handle_command_errors): Take a const reference.
+       * linespec.c (parse_linespec): Use std::move.
+       * infcall.c (run_inferior_call): Use std::move.
+       (call_function_by_hand_dummy): Use std::move.
+       * exec.c (try_open_exec_file): Use std::move.
+       * exceptions.h (exception_print, exception_fprintf)
+       (exception_print_same): Update.
+       * exceptions.c (print_exception, exception_print)
+       (exception_fprintf, exception_print_same): Change parameters to
+       const reference.
+       * event-top.c (gdb_rl_callback_read_char_wrapper): Update.
+       * common/new-op.c: Use std::move.
+       * common/common-exceptions.h (struct gdb_exception): Add move
+       constructor.
+       (struct gdb_exception_error, struct gdb_exception_quit, struct
+       gdb_quit_bad_alloc): Change constructor to move constructor.
+       (throw_exception): Change parameter to rvalue reference.
+       * common/common-exceptions.c (throw_exception): Take rvalue
+       reference.
+       * cli/cli-interp.c (safe_execute_command): Use std::move.
+       * breakpoint.c (insert_bp_location, location_to_sals): Use
+       std::move.
+
+2019-04-25  Tom Tromey  <tromey@adacore.com>
+
+       * guile/scm-exception.c (gdbscm_scm_from_gdb_exception)
+       (gdbscm_throw_gdb_exception): Take a gdbscm_gdb_exception.
+       * guile/scm-block.c, guile/scm-breakpoint.c, guile/scm-cmd.c,
+       guile/scm-disasm.c, guile/scm-frame.c, guile/scm-lazy-string.c,
+       guile/scm-math.c, guile/scm-param.c, guile/scm-ports.c,
+       guile/scm-symbol.c, guile/scm-symtab.c, guile/scm-type.c,
+       guile/scm-value.c: Use unpack.
+       * guile/guile-internal.h (gdbscm_scm_from_gdb_exception): Take a
+       gdbscm_gdb_exception.
+       (gdbscm_throw_gdb_exception): Likewise.
+       (struct gdbscm_gdb_exception): New.
+       (unpack): New function.
+       (gdbscm_wrap): Use unpack.
+
+2019-04-25  Tom Tromey  <tromey@adacore.com>
+
+       * event-top.c (gdb_rl_callback_read_char_wrapper_noexcept)
+       (gdb_rl_callback_handler): Use std::move.
+       * common/common-exceptions.h (struct gdb_exception): Add move
+       assignment operator.
+       (throw_exception_sjlj): Change "exception" to const reference.
+       * common/common-exceptions.c (exceptions_state_mc_catch): Update.
+       (throw_exception_sjlj): Change "exception" to const reference.
+
 2019-04-25  Tom Tromey  <tromey@adacore.com>
 
        * xml-support.c (gdb_xml_parser::gdb_xml_parser): Update.
This page took 0.028272 seconds and 4 git commands to generate.