getwchar_unlocked implementation.
[kopensolaris-gnu/glibc.git] / wctype / wctype.c
index 07cb518..6f6338c 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1996.
 
@@ -23,7 +23,7 @@
 #include <locale/localeinfo.h>
 
 wctype_t
-wctype (const char *property)
+__wctype (const char *property)
 {
   const char *names;
   wctype_t result;
@@ -45,9 +45,10 @@ wctype (const char *property)
 #if __BYTE_ORDER == __BIG_ENDIAN
   return result;
 #else
-#define XSWAPU32(w) \
-  ((((w) & 0xff00ff00) >> 8) | (((w) & 0xff00ff) << 8))
+# define SWAPU32(w) \
+  (((w) << 24) | (((w) & 0xff00) << 8) | (((w) >> 8) & 0xff00) | ((w) >> 24))
 
-  return XSWAPU32 (result);
+  return SWAPU32 (result);
 #endif
 }
+weak_alias (__wctype, wctype)