diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-19 20:28:52 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-19 20:28:52 +0000 |
commit | 918dd9105923fdbf070e5782aed7cd6275caa321 (patch) | |
tree | e83ae92245cfabb66db1bb61baae37973eca1523 /gdb/testsuite/gdb.dwarf2/implptr.exp | |
parent | 0e37a63c3cabe0baab792ed4169307ab4cdc791d (diff) | |
download | binutils-gdb-918dd9105923fdbf070e5782aed7cd6275caa321.tar.gz |
gdb/
Fix crash if referenced CU is aged out.
* dwarf2loc.c (per_cu_dwarf_call): New variable back_to, use to for
xfree of block.data.
(indirect_pieced_value): New variable back_to, use to for xfree of
baton.data.
(dwarf2_compile_expr_to_ax): New variable back_to, use to for xfree of
block.data.
* dwarf2read.c (dwarf2_find_base_address): New prototype.
(load_cu): New function from ...
(dw2_do_instantiate_symtab): ... the code here ...
(process_full_comp_unit): ... and here.
(dwarf2_fetch_die_location_block): Call load_cu first. Call xmemdup on
retval.data.
gdb/testsuite/
Fix crash if referenced CU is aged out.
* gdb.dwarf2/dw2-op-call.exp (maintenance set dwarf2 max-cache-age 0):
New.
* gdb.dwarf2/implptr.exp: Likewise.
Diffstat (limited to 'gdb/testsuite/gdb.dwarf2/implptr.exp')
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/implptr.exp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.dwarf2/implptr.exp b/gdb/testsuite/gdb.dwarf2/implptr.exp index 8f9b5fb41b4..562e983b0ef 100644 --- a/gdb/testsuite/gdb.dwarf2/implptr.exp +++ b/gdb/testsuite/gdb.dwarf2/implptr.exp @@ -40,6 +40,9 @@ if {[prepare_for_testing ${testfile}.exp ${testfile}.x $srcfile $opts]} { return -1 } +# Additional test to verify the referenced CU is not aged out. +gdb_test_no_output "maintenance set dwarf2 max-cache-age 0" + if ![runto_main] { return -1 } |