diff options
author | Tom de Vries <tdevries@suse.de> | 2025-01-06 18:48:58 +0100 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2025-01-06 18:48:58 +0100 |
commit | 91f95754097398fdfa076f5f1cf46f1e2ebc6b38 (patch) | |
tree | aacda86c6c49d941775d033d3a1e2c2969eed6f4 /gdb/testsuite | |
parent | f25d22bad46b5914e4ac18362442237757f1eb89 (diff) | |
download | gdb-91f95754097398fdfa076f5f1cf46f1e2ebc6b38.zip gdb-91f95754097398fdfa076f5f1cf46f1e2ebc6b38.tar.gz gdb-91f95754097398fdfa076f5f1cf46f1e2ebc6b38.tar.bz2 |
[gdb/cli] Show LOC_CONST_BYTES var for info locals
PR cli/32525 reports that a variable with this DWARF:
..
<2><423>: Abbrev Number: 14 (DW_TAG_variable)
<424> DW_AT_name : var1867
<42a> DW_AT_type : <0x2f8>
<42e> DW_AT_const_value : 8 byte block: 0 0 0 0 0 0 0 0
...
is not shown by info locals.
Fix this by handling LOC_CONST_BYTES in iterate_over_block_locals.
Tested on x86_64-linux.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32525
Approved-By: Tom Tromey <tom@tromey.com>
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp b/gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp index 0aa7b04..f338fd4 100644 --- a/gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp +++ b/gdb/testsuite/gdb.dwarf2/info-locals-optimized-out.exp @@ -53,6 +53,11 @@ Dwarf::assemble $asm_file { {name "opt_out"} {type :$int_type_label} } + DW_TAG_variable { + {name const_bytes} + {type :$int_type_label} + {const_value "\x01\x01\x01\x01" DW_FORM_block1} + } } } } @@ -67,5 +72,14 @@ if ![runto_main] { return -1 } +set lines [gdb_get_lines "info locals"] + # Make sure "info locals" shows optimized out variables. -gdb_test "info locals" ".*opt_out = <optimized out>.*" "info local shows optimized out variable" +gdb_assert \ + { [regexp [string_to_regexp "opt_out = <optimized out>"] $lines] } \ + "info locals shows optimized out variable" + +# Regression test for PR cli/32525. +gdb_assert \ + { [regexp [string_to_regexp "const_bytes = 16843009"] $lines] } \ + "info locals shows DW_FORM_block1 variable" |