gdb: fix regression in gdb.xml/maint_print_struct.exp
authorAndrew Burgess <aburgess@redhat.com>
Fri, 17 Feb 2023 10:15:27 +0000 (10:15 +0000)
committerAndrew Burgess <aburgess@redhat.com>
Fri, 17 Feb 2023 22:29:09 +0000 (22:29 +0000)
A regression in gdb.xml/maint_print_struct.exp was introduced with
commit:

  commit 81b86eced24f905545b58aa6c27478104c364976
  Date:   Fri Jan 6 09:30:40 2023 -0700

      Do not record a rejected target description

The test relied on an invalid target description being stored within
the tdesc_info of the current inferior, the above commit stopped this
behaviour.

Update the test to check that the invalid architecture is NOT stored,
and then check printing the target description directly from the
file.

Approved-By: Tom Tromey <tromey@adacore.com>
gdb/testsuite/gdb.xml/maint_print_struct.exp

index 6f4118955016fb2824bf8e571df9c574f21c9597..fbb16aeb8f5bdada58f0d7f4bc7a2fb937acccb5 100644 (file)
@@ -21,12 +21,17 @@ require allow_xml_test
 
 gdb_start
 
+set xml_file "$srcdir/$subdir/maint_print_struct.xml"
+
 # Required registers are not present so it is expected a warning.
 #
-gdb_test "set tdesc filename $srcdir/$subdir/maint_print_struct.xml" "
+gdb_test "set tdesc filename $xml_file" "
 warning:.*" "setting a new tdesc having only a structure"
 
-gdb_test "maint print c-tdesc" "
+gdb_test "maint print c-tdesc" \
+    "There is no target description to print\\."
+
+gdb_test "maint print c-tdesc $xml_file" "
 .*tdesc_create_reg \\(feature, \"bad_reg1\", \[0-9\]+, 1, NULL, 128, \"two_fielded\"\\);\r
 .*tdesc_create_reg \\(feature, \"bad_reg2\", \[0-9\]+, 1, NULL, 64, \"bitfield\"\\);\r
 .*" "printing tdesc with a structure and a bitfield"