OSDN Git Service

(dbxout_type): Handle complex integer types.
authorrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 4 Mar 1993 18:47:42 +0000 (18:47 +0000)
committerrms <rms@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 4 Mar 1993 18:47:42 +0000 (18:47 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3634 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/dbxout.c

index 8a902b8..506701a 100644 (file)
@@ -1044,8 +1044,27 @@ dbxout_type (type, full, show_arg_types)
                   TYPE_SYMTAB_ADDRESS (type),
                   TREE_INT_CST_LOW (size_in_bytes (TREE_TYPE (type))));
          CHARS (15);           /* The number is probably incorrect here.  */
-       } else
-         abort (); /* What to do with CSImode complex? */
+       }
+      else
+       {
+         /* Output a complex integer type as a structure,
+            pending some other way to do it.  */
+         fprintf (asmfile, "s%d", TREE_INT_CST_LOW (size_in_bytes (type)));
+
+         fprintf (asmfile, "real:");
+         CHARS (10);
+         dbxout_type (TREE_TYPE (type), 0, 0);
+         fprintf (asmfile, ",%d,%d;",
+                  0, TYPE_PRECISION (TREE_TYPE (type)));
+         CHARS (8);
+         fprintf (asmfile, "imag:");
+         CHARS (5);
+         dbxout_type (TREE_TYPE (type), 0, 0);
+         fprintf (asmfile, ",%d,%d;;",
+                  TYPE_PRECISION (TREE_TYPE (type)),
+                  TYPE_PRECISION (TREE_TYPE (type)));
+         CHARS (9);
+       }
       break;
 
     case SET_TYPE: