Age | Commit message (Collapse) | Author | Files | Lines |
|
PR python/12149
* python/python.c (gdbpy_write): Accept a stream argument and
operate to the appropriate stream.
(gdbpy_flush): Likewise.
(_initialize_python): Add stream constants.
(finish_python_initialization): Add GdbOutputErrorFile class.
2011-03-18 Phil Muldoon <pmuldoon@redhat.com>
PR python/12149
* gdb.texinfo (Basic Python): Update gdb.write and flush text.
2011-03-18 Phil Muldoon <pmuldoon@redhat.com>
PR python/12149
* gdb.python/python.exp: Add gdb.write tests.
|
|
* python/py-symtab.c: Populate symtab_object_methods,
sal_object_methods.
(stpy_is_valid): New function.
(salpy_is_valid): Ditto.
* python/py-symbol.c: Declare symbol_object_methods.
Populate.
(sympy_is_valid): New function.
* python/py-objfile.c: Declare objfile_object_methods.
Populate.
(objfpy_is_valid): New function.
* python/py-inferior.c: Populate inferior_object_methods.
(infpy_is_valid): New function.
* python/py-infthread.c: Populate thread_object_methods.
(thpy_is_valid): New function.
* python/py-block.c: Declare block_object_methods.
Populate. Declare
block_iterator_object_methods. Populate.
(blpy_is_valid): New function.
(blpy_iter_is_valid): Ditto.
2010-03-17 Phil Muldoon <pmuldoon@redhat.com>
* gdb.python/Makefile.in: Add py-objfile.
* gdb.python/py-objfile.exp: New file.
* gdb.python/py-objfile.c: New file.
* gdb.python/py-block.exp: Add is_valid tests.
* gdb.python/py-inferior.exp: Ditto.
* gdb.python/py-infthread.exp: Ditto.
* gdb.python/py-symbol.exp: Ditto.
* gdb.python/py-symtab.exp: Ditto.
2011-03-17 Phil Muldoon <pmuldoon@redhat.com>
* gdb.texinfo (Blocks In Python): Add is_valid method
description.
(Inferiors In Python): Likewise.
(Threads In Python): Likewise.
(Symbols In Python): Likewise.
(Objfiles In Python): Likewise.
(Symbol Tables In Python): Likewise.
|
|
* gdb.cp/cmpd-minsyms.exp: New test.
* gdb.cp/cmpd-minsyms.cc: New file.
PR c++/11734
* gdb.cp/ovsrch.exp: New test.
* gdb.cp/ovsrch.h: New file.
* gdb.cp/ovsrch1.cc: New file.
* gdb.cp/ovsrch2.cc: New file.
* gdb.cp/ovsrch3.cc: New file.
* gdb.cp/ovsrch4.cc: New file.
|
|
2011-03-16 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/12528
* dwarf2read.c (noop_record_line): New function.
(dwarf_decode_lines): Ignore line tables for GCd functions.
testsuite/ChangeLog:
2011-03-16 Paul Pluzhnikov <ppluzhnikov@google.com>
PR gdb/12528
* gdb.base/Makefile.in: Adjust EXECUTABLES.
* gdb.base/break-on-linker-gcd-function.exp: New test.
* gdb.base/break-on-linker-gcd-function.cc: New file.
|
|
* gdb.base/jit-main.c: Define ElfW for non glibc elf targets.
|
|
* lib/gdb.exp (gdb_unload): Add another termination case.
|
|
* dwarf2read.c (dwarf2_get_pc_bounds): Require HIGH strictly higher
than LOW. Comment it.
(read_partial_die): Call complaint for inappropriate zero LOWPC or
HIGHPC not strictly higher than LOWPC.
gdb/testsuite/
* gdb.dwarf2/dw2-empty-pc-range.S: New file.
* gdb.dwarf2/dw2-empty-pc-range.exp: New file.
* gdb.dwarf2/pr11465.S: New .text labels text_start and text_end.
Provide a stub byte there.
(DW_TAG_compile_unit): Set DW_AT_low_pc, DW_AT_high_pc and
DW_AT_entry_pc.
(dieb4, dieda): Set DW_AT_high_pc higher than DW_AT_low_pc.
|
|
* ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Add support
for the "generic" vector ABI used with GCC 4.3 and later.
(ppc64_sysv_abi_return_value): Likewise.
gdb/testsuite:
* gdb.arch/altivec-abi.exp: Skip "generic" tests on 64-bit when
using a GCC 4.1 or 4.2 compiler. Add an additional test variant
"generic ABI, auto".
(altivec_abi_tests): Accept vectors returned by reference.
|
|
* gdb.texinfo (Breakpoints In Python): Add description and
example
of Python stop function operation.
2010-03-14 Phil Muldoon <pmuldoon@redhat.com>
* gdb.python/py-breakpoint.exp: Add Python stop operations
tests.
2011-03-14 Phil Muldoon <pmuldoon@redhat.com>
* python/python.h: Declare gdbpy_should_stop and
gdbpy_breakpoint_has_py_cond.
* python/python.c: Add python.h to includes. Remove
python.h from
HAVE_PYTHON definition
(gdbpy_should_stop): New dummy function.
(gdbpy_breakpoint_has_py_cond): New dummy function.
* python/py-breakpoint.c (bppy_init): Rewrite to allow
sub-classing capabilities.
(gdbpy_should_stop): New function.
(gdbpy_breakpoint_has_py_cond): New function.
(local_setattro): New function.
* breakpoint.c (condition_command): Add check for Python
'stop'
operation.
(bpstat_check_breakpoint_conditions): Execute Python
'stop'
operation function as part of stop/continue tests.
|
|
|
|
|
|
* python/py-param.c (add_setshow_generic): Add set/show callback
parameters. Register Python object context.
(get_show_value): New function.
(get_set_value): New function.
(call_doc_function): New function.
(get_doc_string): Move behind get_show_value/get_set_value.
2011-03-10 Phil Muldoon <pmuldoon@redhat.com>
* gdb.texinfo (Parameters In Python): Document get_set_string and
get_show_string methods.
2011-03-10 Phil Muldoon <pmuldoon@redhat.com>
* gdb.python/py-parameter.exp: Update tests to the new Python
parameter API. Add "no documentation" test. Add deprecated API
backward compatibility test.
|
|
gdb_continue_to_end.
|
|
tabs.
|
|
parentheses.
(gdb_continue_to_end): Add "allow_extra" parameter. Use
$command.
* gdb.threads/thread-unwindonsignal.exp: Pass "allow_extra"
argument to gdb_continue_to_end.
* gdb.threads/interrupted-hand-call.exp: Pass "allow_extra"
argument to gdb_continue_to_end.
* gdb.cp/annota3.exp: Fix regex.
* gdb.cp/annota2.exp: Fix regex.
* gdb.base/shlib-call.exp: Pass "allow_extra" argument to
gdb_continue_to_end.
* gdb.base/call-signal-resume.exp: Revert earlier patch.
* gdb.ada/tasks.exp: Pass "allow_extra" argument to
gdb_continue_to_end.
|
|
2011-03-08 Pedro Alves <pedro@codesourcery.com>
* remote.c (remote_check_symbols): Skip if the target has no
execution.
gdb/testsuite/
2011-03-08 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.server/ext-run.exp
(load new file without any gdbserver inferior): New test.
|
|
|
|
* gdb.trace/report.exp (12.1: trace report #1): New match for the
initial commands echo. New match for `Found trace'. Anchor all the
other matches. Anchor and match for `No trace frame found' the final
match.
|
|
|
|
* infrun.c (print_exited_reason): Include inferior id and pid in
message.
gdb/testsuite
* lib/opencl.exp (skip_opencl_tests): Update for exit message
change.
* lib/mi-support.exp (mi_gdb_test): Update for exit message
change.
* lib/gdb.exp (gdb_test_multiple): Update comment. Update for
exit message change.
(skip_altivec_tests): Update for exit message change.
(skip_vsx_tests): Likewise.
(gdb_continue_to_end): Likewise. Add 'command' argument.
* lib/cell.exp (skip_cell_tests): Update for exit message change.
* gdb.threads/tls.exp: Update for exit message change.
* gdb.threads/thread-unwindonsignal.exp: Use
gdb_continue_to_end.
* gdb.threads/step.exp (step_it): Update for exit message change.
(continue_all): Likewise.
* gdb.threads/print-threads.exp (test_all_threads): Update for
exit message change.
* gdb.threads/interrupted-hand-call.exp: Use
gdb_continue_to_end.
* gdb.threads/execl.exp: Use gdb_continue_to_end.
* gdb.python/py-prettyprint.exp (run_lang_tests): Use
gdb_continue_to_end.
* gdb.hp/gdb.objdbg/objdbg02.exp: Use gdb_continue_to_end.
* gdb.hp/gdb.objdbg/objdbg01.exp: Use gdb_continue_to_end.
* gdb.hp/gdb.defects/solib-d.exp: Update for exit message change.
* gdb.cp/method.exp: Update for exit message change.
* gdb.cp/mb-templates.exp: Update for exit message change.
* gdb.cp/mb-inline.exp: Use gdb_continue_to_end.
* gdb.cp/annota3.exp: Update for exit message change.
* gdb.cp/annota2.exp: Update for exit message change.
* gdb.cell/fork.exp: Use gdb_continue_to_end.
* gdb.base/term.exp: Update for exit message change.
* gdb.base/step-test.exp (test_i): Update for exit message change.
* gdb.base/sigstep.exp (advance): Update for exit message change.
(advancei): Likewise.
* gdb.base/siginfo.exp: Update for exit message change.
* gdb.base/shlib-call.exp: Use gdb_continue_to_end.
* gdb.base/reread.exp: Use gdb_continue_to_end.
* gdb.base/langs.exp: Use gdb_continue_to_end.
* gdb.base/interrupt.exp: Update for exit message change.
* gdb.base/gdb1555.exp: Update for exit message change.
* gdb.base/exe-lock.exp: Use gdb_continue_to_end.
* gdb.base/ending-run.exp: Update for exit message change.
* gdb.base/chng-syms.exp: Update for exit message change.
* gdb.base/checkpoint.exp: Update for exit message change.
* gdb.base/catch-syscall.exp (check_for_program_end): Use
gdb_continue_to_end.
(test_catch_syscall_with_wrong_args): Likewise.
* gdb.base/call-signal-resume.exp: Use gdb_continue_to_end.
* gdb.base/break-interp.exp (test_ld): Update for exit message
change.
* gdb.base/bang.exp: Update for exit message change.
* gdb.base/attach.exp (do_attach_tests): Use gdb_continue_to_end.
(do_call_attach_tests): Likewise.
* gdb.base/a2-run.exp: Update for exit message change.
* gdb.arch/ppc-dfp.exp: Update for exit message change.
* gdb.ada/tasks.exp: Use gdb_continue_to_end.
* gdb.ada/catch_ex.exp: Use gdb_continue_to_end.
|
|
|
|
* gdb.hp/gdb.aCC/configure (Makefile): Remove.
* gdb.hp/gdb.aCC/configure.ac: Remove.
* gdb.hp/gdb.base-hp/Makefile.in (Makefile): Remove.
* gdb.hp/gdb.base-hp/configure (Makefile): Remove.
* gdb.hp/gdb.base-hp/configure.ac: Remove.
* gdb.hp/gdb.compat/Makefile.in (Makefile): Remove.
* gdb.hp/gdb.compat/configure (Makefile): Remove.
* gdb.hp/gdb.compat/configure.ac: Remove.
* gdb.hp/gdb.defects/Makefile.in (Makefile): Remove.
* gdb.hp/gdb.defects/configure (Makefile): Remove.
* gdb.hp/gdb.defects/configure.ac: Remove.
* gdb.hp/gdb.objdbg/Makefile.in (Makefile): Remove.
* gdb.hp/gdb.objdbg/configure (Makefile): Remove.
* gdb.hp/gdb.objdbg/configure.ac: Remove.
* gdb.hp/configure.ac: Remove.
* gdb.hp/configure: Remove.
* gdb.hp/Makefile.in (SUBDIRS): No longer a configure
substitution.
(Makefile): Remove rule.
* gdb.cell/configure.ac: Remove.
* gdb.cell/configure: Remove.
* gdb.stabs/Makefile.in (Makefile): Remove.
(distclean): Don't remove config.status or config.log.
* gdb.stabs/configure (Makefile): Remove.
* gdb.stabs/configure.ac: Remove.
* configure: Rebuild.
* configure.ac: Don't AC_CONFIG_SUBDIRS in gdb.hp or gdb.stabs.
Remove stabs- and cell-specific logic. Test for existence of
../gdbtk before configuring gdb.gdbtk. Build Makefiles in gdb.hp
subdirectories, gdb.cell, and and gdb.stabs.
* Makefile.in (ALL_SUBDIRS): Add gdb.hp and gdb.stabs.
|
|
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.exp: Avoid searching pattern beyond
end of buffer.
|
|
gdb/testsuite/ChangeLog:
* gdb.python/py-inferior.exp: Use gdb_test_no_output instead of
gdb_test when running a test where we expected no output back.
|
|
* gdb.cp/overload.cc: Change initializer value to integer.
|
|
* value.c (value_from_history_ref): New function.
* value.h (value_from_history_ref): Export.
* cli/cli-utils.c (get_number_trailer): Use value_from_history_ref
to parse value history references.
* cli/cli-utils.h (get_number_trailer): Update comment.
2011-02-24 Michael Snyder <msnyder@vmware.com>
* gdb.base/break.exp: Add tests for delete breakpoints using
convenience variables and value history references.
|
|
* inferior.c (detach_inferior_command): Use get_number_or_range.
(kill_inferior_command): Ditto.
(remove_inferior_command): Ditto.
(initialize_inferiors): Make command names plural.
Update help strings.
2011-02-25 Michael Snyder <msnyder@vmware.com>
* gdb.texinfo (Inferiors and Programs): Update commands to show
that they can accept multiple arguments.
2011-02-25 Michael Snyder <msnyder@vmware.com>
* gdb.multi/base.exp: Add test for remove-inferiors.
|
|
gdb/testsuite/ChangeLog:
* gdb.python/py-frame.exp: Simplify the initialization phase
using prepare_for_testing.
|
|
* inferior.c (print_inferior): Accept a string instead of an int
for requested_inferiors, and use get_number_or_range to parse it.
(info_inferiors_command): Pass args string to print_inferior.
(initialize_inferiors): Change help string for info inferiors.
* inferior.h (print_inferior): Export prototype change.
2011-02-25 Michael Snyder <msnyder@vmware.com>
* gdb.multi/base.exp: Add tests for info inferiors with args.
|
|
* gdb.dwarf2/dw2-ranges.S: Rename to ...
* gdb.dwarf2/dw2-ranges.c: ... here, convert it to C.
* gdb.dwarf2/dw2-ranges.exp: Skip the testcase on !$gcc_compiled.
Rename srcfile, srcfile2 and srcfile3, new asmfile, asmfile2 and
asmfile3. Comment the STABS (#3) file compilation. Compile
everything through assembler. Provide KFAIL for symtab/12497.
* gdb.dwarf2/dw2-ranges2.S: Rename to ...
* gdb.dwarf2/dw2-ranges2.c: ... here, convert it to C.
* gdb.dwarf2/dw2-ranges3.S: Rename to ...
* gdb.dwarf2/dw2-ranges3.c: ... here, convert it to C.
|
|
* gdb.base/break.exp: Remove debugging 'printf' accidentally
left behind in previous check-in.
|
|
* breakpoint.c (breakpoint_1): Change first argument from an int
to a char pointer, so that the function now accepts a list of
breakpoints rather than just one. Use new function
'number_is_in_list' to implement.
(breakpoints_info): Pass char * instead of int to breakpoint_1.
(watchpoints_info): Ditto.
(tracepoints_info): Ditto.
(maintenance_info_breakpoints): Ditto.
(_initialize_breakpoint): Update help strings to reflect the fact
that these functions can now take more than one argument.
* cli/cli-utils.c (number_is_in_list): New function.
* cli/cli-utils.h (number_is_in_list): Export.
2011-02-21 Michael Snyder <msnyder@vmware.com>
* gdb.texinfo (Set Breaks): Add @dots{} to arguments of info break.
(Set Watchpoints): Add @dots{} to argument of info watchpoints.
(Listing Tracepoints): Add @dots{} to argument of info tracepoints.
2011-02-21 Michael Snyder <msnyder@vmware.com>
* gdb.base/break.exp: Add tests for "info break" with arguments.
* gdb.trace/infotrace.exp: Update patterns for error and help.
* gdb.base/completion.exp: Update pattern.
* gdb.base/ena-dis-br.exp: Update pattern.
* gdb.base/help.exp: Update patterns.
|
|
* memattr.c (mem_enable_command): Use get_number_or_range.
(mem_disable_command): Ditto.
(mem_delete_command): Ditto.
(_initialize_mem): Tweak usage message to reflect multiple
arguments.
2011-02-22 Michael Snyder <msnyder@vmware.com>
* gdb.base/memattr.exp: New test.
* gdb.base/memattr.c: Test load for memattr.exp.
|
|
* NEWS: Add entry.
* python/py-symbol.c (gdbpy_lookup_global_symbol): New function.
* python/python-internal.h (gdbpy_lookup_global_symbol): Declare it.
* python/python.c (GdbMethods): Add entry for lookup_global_symbol.
doc/
* gdb.texinfo (Symbols In Python): Document lookup_global_symbol.
Clarify behaviour of lookup_symbol when `block' argument is omitted,
add description of result, fix @defun formatting.
testsuite/
* gdb.python/py-symbol.exp: Test lookup_global_symbol.
|
|
* Makefile.in: Make more clean.
* gdb.ada/Makefile.in: Ditto.
* gdb.arch/Makefile.in: Ditto.
* gdb.asm/Makefile.in: Ditto.
* gdb.base/Makefile.in: Ditto.
* gdb.cp/Makefile.in: Ditto.
* gdb.dwarf2/Makefile.in: Ditto.
* gdb.java/Makefile.in: Ditto.
* gdb.mi/Makefile.in: Ditto.
* gdb.modula2/Makefile.in: Ditto.
* gdb.python/Makefile.in: Ditto.
* gdb.server/Makefile.in: Ditto.
* gdb.stabs/Makefile.in: Ditto.
* gdb.threads/Makefile.in: Ditto.
* gdb.trace/Makefile.in: Ditto.
|
|
* gdb.threads/thread-find.exp: Add tests for bad input to
info threads.
|
|
I noticed that the last "maint info breakpoints" test expects the
output to contain:
.*hw watchpoint.*
But some platforms do not have hw watchpoints (for instance, the
sim on erc32 doesn't). So I changed the expected output to accept
either.
gdb/testsuite/ChangeLog:
* gdb.python/py-breakpoint.exp: Fix the expected output of
one of the "maint info breakpoints" tests to accept the output
generated on platforms that do not have hardware watchpoints.
|
|
gdb/testsuite/ChangeLog:
* gdb.python/py-breakpoint.exp: Remove unnecessary call to
clean_restart. Be a little stricter in the expected output
for one of the tests. Fix a typo in one of the comments.
|
|
gdb/testsuite/ChangeLog:
* gdb.python/py-block.exp: Simplify using prepare_for_testing.
Delete variable binfile, no longer use. Add or modify test
comments to make them unique.
|
|
* Makefile.in: Update for make clean.
* gdb.ada/Makefile.in: Ditto.
* gdb.arch/Makefile.in: Ditto.
* gdb.asm/Makefile.in: Ditto.
* gdb.base/Makefile.in: Ditto.
* gdb.cp/Makefile.in: Ditto.
* gdb.dwarf2/Makefile.in: Ditto.
* gdb.java/Makefile.in: Ditto.
* gdb.mi/Makefile.in: Ditto.
* gdb.modula2/Makefile.in: Ditto.
* gdb.python/Makefile.in: Ditto.
* gdb.server/Makefile.in: Ditto.
* gdb.stabs/Makefile.in: Ditto.
* gdb.threads/Makefile.in: Ditto.
* gdb.trace/Makefile.in: Ditto.
|
|
* gdbthread.h (print_thread_info): Change prototype.
* thread.c (print_thread_info): Accept char* instead of int for
requested_threads argument. Use new function number_is_in_list
to determine which threads to list.
(info_threads_command): Pass char* to print_thread_info.
* cli/cli-utils.c (number_is_in_list): New function.
* cli/cli-utils.h (number_is_in_list): Export.
* mi/mi-main.c (mi_cmd_thread_info): Pass char* to
print_thread_info.
(print_one_inferior): Ditto.
(mi_cmd_list_thread_groups): Ditto.
2011-02-21 Michael Snyder <msnyder@vmware.com>
* gdb.threads/thread-find.exp: Update patterns for changes in
output of "info threads" command.
|
|
* arm-linux-nat.c: Include "observer.h" and "gdbthread.h".
(PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define.
(struct arm_linux_hwbp_cap): New type.
(arm_linux_get_hwbp_cap): New function.
(arm_linux_get_hw_breakpoint_count): Likewise.
(arm_linux_get_hw_watchpoint_count): Likewise.
(arm_linux_can_use_hw_breakpoint): Likewise.
(arm_hwbp_type): New type.
(arm_hwbp_control_t): Likewise.
(struct arm_linux_hw_breakpoint): Likewise.
(struct arm_linux_thread_points): Likewise.
(arm_threads): New global variable.
(arm_linux_find_breakpoints_by_tid): New function.
(arm_hwbp_control_initialize): Likewise.
(arm_hwbp_control_is_enabled): Likewise.
(arm_hwbp_control_disable): Likewise.
(arm_linux_hw_breakpoint_initialize): Likewise.
(arm_linux_get_hwbp_type): Likewise.
(arm_linux_hw_watchpoint_initialize): Likewise.
(arm_linux_hw_breakpoint_equal): Likewise.
(arm_linux_insert_hw_breakpoint1): Likewise.
(arm_linux_remove_hw_breakpoint1): Likewise.
(arm_linux_insert_hw_breakpoint): Likewise.
(arm_linux_remove_hw_breakpoint): Likewise.
(arm_linux_region_ok_for_hw_watchpoint): Likewise.
(arm_linux_insert_watchpoint): Likewise.
(arm_linux_remove_watchpoint): Likewise.
(arm_linux_stopped_data_address): Likewise.
(arm_linux_stopped_by_watchpoint): Likewise.
(arm_linux_watchpoint_addr_within_range): Likewise.
(arm_linux_new_thread): Likewise.
(arm_linux_thread_exit): Likewise.
(_initialize_arm_linux_nat): Install hardware breakpoint/watchpoint
related target callbacks. Register arm_linux_new_thread and
arm_linux_thread_exit.
* arm-tdep.h (arm_pc_is_thumb): Add prototype.
* arm-tdep.c (arm_pc_is_thumb): Make global.
(arm_gdbarch_init): Call set_gdbarch_have_nonsteppable_watchpoint.
testsuite/ChangeLog:
* lib/gdb.exp (skip_hw_breakpoint_tests): Add arm*-*-* target.
(skip_hw_watchpoint_tests): Likewise.
(skip_hw_watchpoint_multi_tests): Likewise.
|
|
(skip_hw_watchpoint_tests): Likewise.
(skip_hw_watchpoint_multi_tests): Likewise.
(skip_hw_watchpoint_access_tests): Likewise.
* gdb.base/hbreak.exp: Use appropriate skip_hw_..._tests checks.
* gdb.base/pr11022.exp: Likewise.
* gdb.base/watch-read.exp: Likewise.
* gdb.base/watch_thread_num.exp: Likewise.
* gdb.base/watchpoint-hw-hit-once.exp: Likewise.
* gdb.base/watchpoint-hw.exp: Likewise.
* gdb.base/watchpoint.exp: Likewise.
* gdb.threads/local-watch-wrong-thread.exp: Likewise.
* gdb.threads/watchthreads-reorder.exp: Likewise.
* gdb.threads/watchthreads.exp: Likewise.
* gdb.threads/watchthreads2.exp: Likewise.
|
|
gdb/testsuite/ChangeLog:
* gdb.ada/packed_array.exp: Add xfail for "print u_var" if
the debugger is unable to find the array bounds.
|
|
* cp-support.c (make_symbol_overload_list_namespace): Do not call
make_symbol_overload_list_block with NULL BLOCK.
* valarith.c (unop_user_defined_p): Resolve also TYPE_CODE_TYPEDEF.
gdb/testsuite/
* gdb.cp/typedef-operator.exp: New file.
* gdb.cp/typedef-operator.cc: New file.
|
|
* gdb.threads/thread-find.exp: Fix regular expressions.
|
|
|
|
When ada-lang transforms an array descriptor type (an XUP structure)
into an array type, the size of the array type is computed by using
the element size, and multiplying it by the number of elements in
that array. This does not work, however, for packed arrays, where
the *packed* size in bits needs to be used.
This usually does not cause any problem, because we end up reading
more memory than needed. However, we have observed on LynxOS
a memory error while trying to read the entire array, because
the larger-than-needed read tried to read past the end of the stack
into inaccessible memory.
This patch fixes the problem by correctly computing the array size
in bytes in the case of packed arrays.
gdb/ChangeLog:
* ada-lang.c (ada_type_of_array): Fix the size of the array
in the case of an unconstrained packed array.
gdb/testsuite/ChangeLog:
* gdb.ada/packed_array: Expand testcase to test printing of
unconstrained packed array.
|
|
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-ranges.exp: Simplify using clean_restart.
|
|
gdb/
* ax-gdb.c.c (gen_expr) <UNOP_MEMVAL>: Handle value kinds other
than axs_rvalue.
2011-02-16 Pedro Alves <pedro@codesourcery.com>
gdb/testsuite/
* collection.c (globalarr3): New global.
(main): Initialize it before collecting, and and clear it
afterwards.
* collection.exp (gdb_collect_globals_test): Test collecting with
'{type} addr', where the addr expression is not an rvalue.
|