* c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
authorJoel Brobecker <brobecker@gnat.com>
Tue, 12 May 2009 08:05:52 +0000 (08:05 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Tue, 12 May 2009 08:05:52 +0000 (08:05 +0000)
        pushing it on the output obstack.

gdb/ChangeLog
gdb/c-lang.c

index 92c47a1..3780632 100644 (file)
@@ -1,3 +1,8 @@
+2009-05-12  Joel Brobecker <brobecker@adacore.com>
+
+       * c-lang.c (print_wchar): Convert w into a gdb_wchar_t before
+       pushing it on the output obstack.
+
 2009-05-11  Joel Brobecker <brobecker@adacore.com>
 
        Fix internal error on breaking at a multi-locations caller source line.
index 027e9b2..f95c98f 100644 (file)
@@ -166,9 +166,11 @@ print_wchar (gdb_wint_t w, const gdb_byte *orig, int orig_len,
                                            && w != LCST ('8')
                                            && w != LCST ('9'))))
     {
+      gdb_wchar_t wchar = (gdb_wchar_t) w;
+
       if (w == gdb_btowc (quoter) || w == LCST ('\\'))
        obstack_grow_wstr (output, LCST ("\\"));
-      obstack_grow (output, &w, sizeof (gdb_wchar_t));
+      obstack_grow (output, &wchar, sizeof (gdb_wchar_t));
     }
   else
     {