2007-09-26 Pierre Muller <muller@ics.u-strasbg.fr>
authorPierre Muller <muller@sourceware.org>
Wed, 26 Sep 2007 12:25:16 +0000 (12:25 +0000)
committerPierre Muller <muller@sourceware.org>
Wed, 26 Sep 2007 12:25:16 +0000 (12:25 +0000)
* Fix PR pascal/2283
p-valprint.c (pascal_val_print): correct current language check.
Also print array of char as strings.

gdb/ChangeLog
gdb/p-valprint.c

index 6db546a..50c6b35 100644 (file)
@@ -1,3 +1,10 @@
+2007-09-26  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * Fix PR pascal/2283
+       p-valprint.c (pascal_val_print): correct current language check.
+       Also print array of char as strings.
+
+
 2007-09-26  David Ung  <davidu@mips.com>
             Maciej W. Rozycki  <macro@mips.com>
 
index 0f40d6d..2ebbaf8 100644 (file)
@@ -87,7 +87,7 @@ pascal_val_print (struct type *type, const gdb_byte *valaddr,
          /* For an array of chars, print with string syntax.  */
          if (eltlen == 1 
              && ((TYPE_CODE (elttype) == TYPE_CODE_INT)
-              || ((current_language->la_language == language_m2)
+              || ((current_language->la_language == language_pascal)
                   && (TYPE_CODE (elttype) == TYPE_CODE_CHAR)))
              && (format == 0 || format == 's'))
            {
@@ -170,7 +170,8 @@ pascal_val_print (struct type *type, const gdb_byte *valaddr,
          /* For a pointer to char or unsigned char, also print the string
             pointed to, unless pointer is null.  */
          if (TYPE_LENGTH (elttype) == 1
-             && TYPE_CODE (elttype) == TYPE_CODE_INT
+             && (TYPE_CODE (elttype) == TYPE_CODE_INT
+                 || TYPE_CODE(elttype) == TYPE_CODE_CHAR)
              && (format == 0 || format == 's')
              && addr != 0)
            {