aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.base/charset.exp
diff options
context:
space:
mode:
authorPierre Muller <muller@sourceware.org>2010-04-21 23:21:04 +0000
committerPierre Muller <muller@sourceware.org>2010-04-21 23:21:04 +0000
commit9a22f0d0aeec70f4ee1908008f3a2defaad6f7dd (patch)
treea36134950efba04d0c0104c79b7714b47e7e5d49 /gdb/testsuite/gdb.base/charset.exp
parent32d7376d07d6b1ae69b5e15d6b546a07f9fee446 (diff)
downloadgdb-9a22f0d0aeec70f4ee1908008f3a2defaad6f7dd.zip
gdb-9a22f0d0aeec70f4ee1908008f3a2defaad6f7dd.tar.gz
gdb-9a22f0d0aeec70f4ee1908008f3a2defaad6f7dd.tar.bz2
gdb ChangeLog
* gdbtypes.h (builtin_type): Add builtin_char16 and builtin_char32 fields. * gdbtypes.c (gdbtypes_post_init): Set builtin_char16 and builtin_char32 fields. * printcmd.c (decode_format): Set char size to '\0' for strings unless explicit size is given. (print_formatted): Correct calculation of NEXT_ADDRESS for 16 or 32 bit strings. (do_examine): Do not force byte size for strings. Use builtin_char16 and builtin_char32 types to display 16 or 32 bit-wide strings. (x_command): Set LAST_SIZE to 'b' for string type. gdb/doc ChangeLog * gdb.texinfo (Examining memory): Update for change in string display with explicit size. gdb/testsuite ChangeLog * gdb.base/charset.c (Strin16, String32): New variables. * gdb.base/charset.exp (gdb_test): Test correct display of 16 or 32 bit strings.
Diffstat (limited to 'gdb/testsuite/gdb.base/charset.exp')
-rw-r--r--gdb/testsuite/gdb.base/charset.exp17
1 files changed, 17 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/charset.exp b/gdb/testsuite/gdb.base/charset.exp
index 9820632..8d1d6543 100644
--- a/gdb/testsuite/gdb.base/charset.exp
+++ b/gdb/testsuite/gdb.base/charset.exp
@@ -616,4 +616,21 @@ gdb_test "print 'a' == 'a' || 'b' == 'b'" \
".* = 1" \
"EVAL_SKIP cleanup handling regression test"
+
+proc string_display { var_name set_prefix x_size x_type} {
+ gdb_test "set ${var_name} = ${set_prefix}\"Test String\\0with zeroes\"" "" "Assign ${var_name} with prefix ${set_prefix}"
+ gdb_test "x /2${x_size}s ${var_name}" ".* ${x_type}\"Test String\"\[\r\n\]+.* ${x_type}\"with zeroes\"" "Display String ${var_name} with x/${x_size}s"
+}
+
+string_display String16 u h u
+if {$wchar_size == 2} {
+ string_display String16 L h u
+}
+
+string_display String32 U w U
+if {$wchar_size == 4} {
+ string_display String32 L w U
+}
+
+
gdb_exit