Revert "nptl files should #include <pthreadP.h> instead of "pthreadP.h""
[kopensolaris-gnu/glibc.git] / ctype / test_ctype.c
index 622e5bf..d577e88 100644 (file)
@@ -1,22 +1,21 @@
-/* Copyright (C) 1991, 1994 Free Software Foundation, Inc.
-This file is part of the GNU C Library.
+/* Copyright (C) 1991, 1994, 1996, 1997, 2000 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
 
-The GNU C Library is free software; you can redistribute it and/or
-modify it under the terms of the GNU Library General Public License as
-published by the Free Software Foundation; either version 2 of the
-License, or (at your option) any later version.
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
 
-The GNU C Library is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-Library General Public License for more details.
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
 
-You should have received a copy of the GNU Library General Public
-License along with the GNU C Library; see the file COPYING.LIB.  If
-not, write to the Free Software Foundation, Inc., 675 Mass Ave,
-Cambridge, MA 02139, USA.  */
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
 
-#include <ansidecl.h>
 #include <limits.h>
 #include <ctype.h>
 #include <stdio.h>
@@ -30,7 +29,7 @@ Cambridge, MA 02139, USA.  */
 __inline
 #endif
 static void
-DEFUN(print_char, (c), unsigned char c)
+print_char (unsigned char c)
 {
   printf("%d/", (int) c);
   if (isgraph(c))
@@ -40,11 +39,27 @@ DEFUN(print_char, (c), unsigned char c)
 }
 
 int
-DEFUN(main, (argc, argv), int argc AND char **argv)
+main (int argc, char **argv)
 {
-  register unsigned short int c;
+  unsigned short int c;
   int lose = 0;
 
+#define TRYEM do {                                                           \
+      TRY (isascii);                                                         \
+      TRY (isalnum);                                                         \
+      TRY (isalpha);                                                         \
+      TRY (iscntrl);                                                         \
+      TRY (isdigit);                                                         \
+      TRY (isgraph);                                                         \
+      TRY (islower);                                                         \
+      TRY (isprint);                                                         \
+      TRY (ispunct);                                                         \
+      TRY (isspace);                                                         \
+      TRY (isupper);                                                         \
+      TRY (isxdigit);                                                        \
+      TRY (isblank);                                                         \
+    } while (0)
+
   for (c = 0; c <= UCHAR_MAX; ++c)
     {
       print_char (c);
@@ -55,32 +70,10 @@ DEFUN(main, (argc, argv), int argc AND char **argv)
          ++lose;
        }
 
-      if (isascii(c))
-       fputs(" isascii", stdout);
-      if (isalnum(c))
-       fputs(" isalnum", stdout);
-      if (isalpha(c))
-       fputs(" isalpha", stdout);
-      if (iscntrl(c))
-       fputs(" iscntrl", stdout);
-      if (isdigit(c))
-       fputs(" isdigit", stdout);
-      if (isgraph(c))
-       fputs(" isgraph", stdout);
-      if (islower(c))
-       fputs(" islower", stdout);
-      if (isprint(c))
-       fputs(" isprint", stdout);
-      if (ispunct(c))
-       fputs(" ispunct", stdout);
-      if (isspace(c))
-       fputs(" isspace", stdout);
-      if (isupper(c))
-       fputs(" isupper", stdout);
-      if (isxdigit(c))
-       fputs(" isxdigit", stdout);
-      if (isblank(c))
-       fputs(" isblank", stdout);
+#define TRY(isfoo) if (isfoo (c)) fputs (" " #isfoo, stdout)
+      TRYEM;
+#undef TRY
+
       fputs("; lower = ", stdout);
       print_char(tolower(c));
       fputs("; upper = ", stdout);
@@ -88,5 +81,21 @@ DEFUN(main, (argc, argv), int argc AND char **argv)
       putchar('\n');
     }
 
-  exit (lose ? EXIT_FAILURE : EXIT_SUCCESS);
+  fputs ("EOF", stdout);
+  if (tolower (EOF) != EOF)
+    {
+      ++lose;
+      printf (" tolower BOGUS %d;", tolower (EOF));
+    }
+  if (toupper (EOF) != EOF)
+    {
+      ++lose;
+      printf (" toupper BOGUS %d;", toupper (EOF));
+    }
+
+#define TRY(isfoo) if (isfoo (EOF)) fputs (" " #isfoo, stdout), ++lose
+  TRYEM;
+#undef TRY
+
+  return lose ? EXIT_FAILURE : EXIT_SUCCESS;
 }