(ffeintrin_init_0): Distinguish between
authorCraig Burley <burley@gnu.org>
Mon, 18 May 1998 10:29:07 +0000 (10:29 +0000)
committerDave Love <fx@gcc.gnu.org>
Mon, 18 May 1998 10:29:07 +0000 (10:29 +0000)
crashes on bad arg base and kind types.

From-SVN: r19838

gcc/f/intrin.c

index 5ab530b..1f07d0c 100644 (file)
@@ -1643,24 +1643,29 @@ ffeintrin_init_0 ()
              || (c[1] == 'n')
              || (c[1] == 'p'))
            ++c;
-         if (((c[1] != '-')
-              && (c[1] != 'A')
-              && (c[1] != 'C')
-              && (c[1] != 'I')
-              && (c[1] != 'L')
-              && (c[1] != 'R')
-              && (c[1] != 'B')
-              && (c[1] != 'F')
-              && (c[1] != 'N')
-              && (c[1] != 'S')
-              && (c[1] != 'g')
-              && (c[1] != 's'))
-             || ((c[2] != '*')
-                 && ((c[2] < '1')
-                     || (c[2] > '9'))
-                 && (c[2] != 'A')))
+         if ((c[1] != '-')
+             && (c[1] != 'A')
+             && (c[1] != 'C')
+             && (c[1] != 'I')
+             && (c[1] != 'L')
+             && (c[1] != 'R')
+             && (c[1] != 'B')
+             && (c[1] != 'F')
+             && (c[1] != 'N')
+             && (c[1] != 'S')
+             && (c[1] != 'g')
+             && (c[1] != 's'))
            {
-             fprintf (stderr, "%s: bad arg-type\n",
+             fprintf (stderr, "%s: bad arg-base-type\n",
+                      ffeintrin_imps_[i].name);
+             break;
+           }
+         if ((c[2] != '*')
+             && ((c[2] < '1')
+                 || (c[2] > '9'))
+             && (c[2] != 'A'))
+           {
+             fprintf (stderr, "%s: bad arg-kind-type\n",
                       ffeintrin_imps_[i].name);
              break;
            }