This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] bitfield-parent-optimized-out: Fix struct definition


The "struct S" type in bitfield-parent-optimized-out.exp is declared to
have a size of 4 bytes but to hold two 4-byte members: an int-based
bitfield and a 4-byte int.  Also, both members have the same
data_member_location 2, causing them to overlap and to reach 2 bytes
beyond the structure's boundary.

This is fixed by increasing the structure size to 8 and setting the
first and second member's data_member_location to 0 and 4, respectively.

gdb/testsuite/ChangeLog:

	* gdb.dwarf2/bitfield-parent-optimized-out.exp: Fix DWARF code for
	the definition of struct S.
---
 gdb/testsuite/gdb.dwarf2/bitfield-parent-optimized-out.exp | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/gdb/testsuite/gdb.dwarf2/bitfield-parent-optimized-out.exp b/gdb/testsuite/gdb.dwarf2/bitfield-parent-optimized-out.exp
index 27d8044..b789970 100644
--- a/gdb/testsuite/gdb.dwarf2/bitfield-parent-optimized-out.exp
+++ b/gdb/testsuite/gdb.dwarf2/bitfield-parent-optimized-out.exp
@@ -43,19 +43,18 @@ Dwarf::assemble $asm_file {
 
 	    struct_label: structure_type {
 		{name S}
-		{byte_size 4 DW_FORM_sdata}
+		{byte_size 8 DW_FORM_sdata}
 	    } {
 		member {
 		    {name bitfield}
 		    {type :$int_label}
 		    {bit_size 12 DW_FORM_sdata}
 		    {bit_offset 20 DW_FORM_sdata}
-		    {data_member_location 2 DW_FORM_sdata}
 		}
 		member {
 		    {name intfield}
 		    {type :$int_label}
-		    {data_member_location 2 DW_FORM_sdata}
+		    {data_member_location 4 DW_FORM_sdata}
 		}
 	    }
 
-- 
2.3.0


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]