OSDN Git Service

PR driver/15303
[pf3gnuchains/gcc-fork.git] / gcc / fortran / misc.c
index 94d61c9..b5e6275 100644 (file)
@@ -67,9 +67,9 @@ void
 gfc_clear_ts (gfc_typespec *ts)
 {
   ts->type = BT_UNKNOWN;
-  ts->derived = NULL;
+  ts->u.derived = NULL;
   ts->kind = 0;
-  ts->cl = NULL;
+  ts->u.cl = NULL;
   ts->interface = NULL;
   /* flag that says if the type is C interoperable */
   ts->is_c_interop = 0;
@@ -130,6 +130,9 @@ gfc_basic_typename (bt type)
     case BT_DERIVED:
       p = "DERIVED";
       break;
+    case BT_CLASS:
+      p = "CLASS";
+      break;
     case BT_PROCEDURE:
       p = "PROCEDURE";
       break;
@@ -183,7 +186,11 @@ gfc_typename (gfc_typespec *ts)
       sprintf (buffer, "HOLLERITH");
       break;
     case BT_DERIVED:
-      sprintf (buffer, "TYPE(%s)", ts->derived->name);
+      sprintf (buffer, "TYPE(%s)", ts->u.derived->name);
+      break;
+    case BT_CLASS:
+      sprintf (buffer, "CLASS(%s)",
+              ts->u.derived->components->ts.u.derived->name);
       break;
     case BT_PROCEDURE:
       strcpy (buffer, "PROCEDURE");