aboutsummaryrefslogtreecommitdiff
path: root/gdb/cplus-dem.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/cplus-dem.c')
-rw-r--r--gdb/cplus-dem.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/gdb/cplus-dem.c b/gdb/cplus-dem.c
index afe9ee7..4c5a2f6 100644
--- a/gdb/cplus-dem.c
+++ b/gdb/cplus-dem.c
@@ -507,6 +507,7 @@ cplus_demangle (type, arg_mode)
done = is_pointer = 1;
break;
case 'C': /* const */
+ case 'S': /* explicitly signed [char] */
case 'U': /* unsigned */
case 'V': /* volatile */
case 'F': /* function */
@@ -867,6 +868,14 @@ do_type (type, result, arg_mode)
non_empty = 1;
string_append (result, "unsigned");
break;
+ case 'S': /* signed char only */
+ *type += 1;
+ if (non_empty)
+ string_append (result, " ");
+ else
+ non_empty = 1;
+ string_append (result, "signed");
+ break;
case 'V':
*type += 1;
if (print_ansi_qualifiers)