From 0492144cdfb10720c1ba1cabad2bdd3a6f1bbaf5 Mon Sep 17 00:00:00 2001 From: jkratoch Date: Fri, 26 Jan 2007 20:53:52 +0000 Subject: [PATCH] * gdb.texinfo: Describe CHAR array vs. string identifcation rules. --- gdb/doc/ChangeLog | 5 +++++ gdb/doc/gdb.texinfo | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 1dc171856e..350c01d23f 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,8 @@ +2007-01-26 Jan Kratochvil + Eli Zaretskii + + * gdb.texinfo: Describe CHAR array vs. string identifcation rules. + 2007-01-26 Eli Zaretskii * gdb.texinfo (Compilation, Files, Bootstrapping, Bug Reporting): diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 2cb6e06760..de740ac1b0 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -5632,6 +5632,26 @@ If you ask to print an object whose contents are unknown to by the debug information, @value{GDBN} will say @samp{}. @xref{Symbols, incomplete type}, for more about this. +Strings are identified as arrays of @code{char} values without specified +signedness. Arrays of either @code{signed char} or @code{unsigned char} get +printed as arrays of 1 byte sized integers. @code{-fsigned-char} or +@code{-funsigned-char} @value{NGCC} options have no effect as @value{GDBN} +defines literal string type @code{"char"} as @code{char} without a sign. +For program code + +@smallexample +char var0[] = "A"; +signed char var1[] = "A"; +@end smallexample + +You get during debugging +@smallexample +(gdb) print var0 +$1 = "A" +(gdb) print var1 +$2 = @{65 'A', 0 '\0'@} +@end smallexample + @node Arrays @section Artificial arrays -- 2.11.0