/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"/usr/include/wchar.h"

    This had to be done to correct non-standard usages in the
    original, manufacturer supplied header file.  */

/* "@(#) wchar.h $Revision: ../hdr/wchar.h@@/main/i80/3 $" */

#ifndef _WCHAR_INCLUDED
#  define _WCHAR_INCLUDED

#ifndef _SYS_STDSYMS_INCLUDED
#  include <sys/stdsyms.h>
#endif /* _SYS_STDSYMS_INCLUDED */




/* preinclude guards needed for aC++ namespace std */
#ifndef _CTYPE_INCLUDED
#  include <ctype.h>      /* _U, _L, etc             */
#endif
#ifndef _STDDEF_INCLUDED
#  include <stddef.h>     /* NULL, size_t, etc       */
#endif
#ifndef _STDIO_INCLUDED
#  include <stdio.h>      /* stdio prototypes        */
#endif
#ifndef _STDLIB_INCLUDED
#  include <stdlib.h>     /* multibyte prototypes    */
#endif
#ifndef _TIME_INCLUDED
#  include <time.h>       /* tm struct               */
#endif
#ifndef _LIMITS_INCLUDED
#  include <limits.h>       /* UINT_MAX               */
#endif

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */


#   ifndef _WCHAR_T_INCLUDED
#       include <sys/_wchar_t.h>
#   endif /** _WCHAR_T_INCLUDED **/

_NAMESPACE_STD_START
#  ifndef _WINT_T
#     define _WINT_T 
      typedef unsigned int wint_t;
#  endif /* _WINT_T */

#  ifndef _WCTYPE_T
#     define _WCTYPE_T
      typedef unsigned int wctype_t;
#  endif /* _WCTYPE_T */
_NAMESPACE_STD_END

#  define WEOF  (wint_t)(-1)


#  ifndef _WPI_PROTOS
#     define _WPI_PROTOS
#     if defined(__STDC__) || defined(__cplusplus)
_NAMESPACE_STD_START
#        ifdef _INCLUDE__STDC_A1_SOURCE

#             include <sys/_mbstate_t.h>

#             define WCHAR_MAX  (wchar_t)UINT_MAX  /* max value of an unsigned integer */
#             define WCHAR_MIN  (wchar_t)0

	      extern wint_t 	btowc __((int));
	      extern int fwide __((FILE *, int));
	      extern int fwprintf __((FILE *, const wchar_t *, ...));
	      extern int fwscanf __((FILE *, const wchar_t *, ...));
	      extern int mbsinit __((const mbstate_t *));
	      extern size_t mbrlen __((const char *, size_t, mbstate_t *));
	      extern size_t mbrtowc __((wchar_t *, const char *, size_t, mbstate_t *));
	      extern size_t mbsrtowcs __((wchar_t *, const char **, size_t, mbstate_t *));
	      extern int swprintf __((wchar_t *, size_t, const wchar_t *, ...));
	      extern int swscanf __((const wchar_t *, const wchar_t *, ...));
	      extern int vfwprintf __((FILE *, const wchar_t *, va_list));
	      extern int vwprintf __((const wchar_t *, va_list));
	      extern int vswprintf __((wchar_t *, size_t, const wchar_t *, va_list));
	      extern int wctob __(( wint_t));
	      extern wchar_t *wmemchr __((const wchar_t *, wchar_t, size_t));
	      extern int  wmemcmp __((const wchar_t *, const wchar_t *, size_t));
	      extern wchar_t *wmemcpy __((wchar_t *, const wchar_t *, size_t));
	      extern wchar_t *wmemmove __((wchar_t *, const wchar_t *, size_t));
	      extern wchar_t *wmemset __((wchar_t *, wchar_t, size_t));
	      extern int wprintf __((const wchar_t *, ...));
	      extern int wscanf __((const wchar_t *, ...));
	      extern size_t wcrtomb __((char *, wchar_t, mbstate_t *));
      	      extern size_t wcsrtombs __((char *, const wchar_t **, size_t, mbstate_t *));
	      extern wchar_t *wcsstr __((const wchar_t *, const wchar_t *));
#        endif /* _INCLUDE_STDC_A1_SOURCE */

	 /* Wide String Manipulation */
         extern wchar_t *wcscat __((wchar_t *, const wchar_t *));
         extern wchar_t *wcsncat __((wchar_t *, const wchar_t *, size_t));
         extern wchar_t *wcscpy __((wchar_t *, const wchar_t *));
         extern wchar_t *wcsncpy __((wchar_t *, const wchar_t *, size_t));
         extern size_t wcslen __((const wchar_t *));
         extern size_t wcsspn __((const wchar_t *, const wchar_t *));
         extern size_t wcscspn __((const wchar_t *, const wchar_t *));
         extern int wcscmp __((const wchar_t *, const wchar_t *));
         extern int wcsncmp __((const wchar_t *, const wchar_t *, size_t));

#  ifdef _INCLUDE__STDC_A1_SOURCE
         extern size_t  wcsftime __((wchar_t *, size_t, const wchar_t *,
				    const struct tm *));
         extern wchar_t *wcstok __((wchar_t *, const wchar_t *, wchar_t **));
#  else /* ! _INCLUDE__STDC_A1_SOURCE  */
         extern size_t  wcsftime __((wchar_t *, size_t, const char *,
				    const struct tm *));
         extern wchar_t *wcstok __((wchar_t *, const wchar_t *));
#  endif /* _INCLUDE_STDC_A1_SOURCE */
#if defined(__HP_NO_STRING_OVERLOADS) ||        \
   !(defined(_NAMESPACE_STD)          ||        \
     defined(__HPACC_STRICTER_ANSI__) ||        \
     defined(_HP_NAMESPACE_STD))
#        if defined(_XPG4_EXTENDED) || defined(_INCLUDE__STDC_A1_SOURCE)
             extern wchar_t *wcschr __((const wchar_t *, wchar_t));
             extern wchar_t *wcsrchr __((const wchar_t *, wchar_t));
#        else /* ! _INCLUDE__STDC_A1_SOURCE && ! XPG4_EXTENDED */
             extern wchar_t *wcschr __((const wchar_t *, wint_t));
             extern wchar_t *wcsrchr __((const wchar_t *, wint_t));
#        endif /* _XPG4_EXTENDED || _INCLUDE_STDC_A1_SOURCE */
         extern wchar_t *wcspbrk __((const wchar_t *, const wchar_t *));
#else
/* These functions are defined in <cwchar> */
#endif /* defined(__HP_NO_STRING_OVERLOADS) || ... */
_NAMESPACE_STD_END
         extern wchar_t *wcswcs __((const wchar_t *, const wchar_t *));
#        ifdef _REENTRANT
#          ifdef _PTHREADS_DRAFT4
             extern wchar_t *wcstok_r __((wchar_t *, const wchar_t *, wchar_t **));
#          endif /* _PTHREADS_DRAFT4 */
#        endif /* _REENTRANT */
_NAMESPACE_STD_START
	 extern int wcscoll __((const wchar_t *, const wchar_t *));
         extern size_t wcsxfrm __((wchar_t *, const wchar_t *, size_t));
_NAMESPACE_STD_END
#        ifdef _XPG4_EXTENDED
               extern int           wcwidth __((wchar_t));
#        else /* ! _XPG4_EXTENDED */
#           ifdef _INCLUDE_HPUX_SOURCE
                 extern int           wcwidth __((__wint_t));
#           endif /* _INCLUDE_HPUX_SOURCE */
#        endif /* _XPG4_EXTENDED */
         extern int  wcswidth __((const wchar_t *, _hpux_size_t));

_NAMESPACE_STD_START
	 /* Wide Character Classification */
         extern int iswalnum __((wint_t));
         extern int iswalpha __((wint_t));
         extern int iswcntrl __((wint_t));
         extern int iswdigit __((wint_t));
         extern int iswgraph __((wint_t));
         extern int iswlower __((wint_t));
         extern int iswprint __((wint_t));
         extern int iswpunct __((wint_t));
         extern int iswspace __((wint_t));
         extern int iswupper __((wint_t));
         extern int iswxdigit __((wint_t));
         extern wint_t towlower __((wint_t));
         extern wint_t towupper __((wint_t));
         extern wctype_t wctype __((const char *));
         extern int iswctype __((wint_t, wctype_t));

	 /* Wide Character I/O */
         extern wint_t fgetwc __((FILE *));
         extern wchar_t *fgetws __((wchar_t *, int, FILE *));
         extern wint_t fputwc __((wint_t, FILE *));
         extern int fputws __((const wchar_t *, FILE *));
         extern wint_t getwc __((FILE *));
         extern wint_t getwchar __((void));
         extern wint_t putwc __((wint_t, FILE *));
         extern wint_t putwchar __((wint_t));
         extern wint_t ungetwc __((wint_t, FILE *));

	 /* Wide Character Numeric/Time Conversion */
         extern double wcstod __((const wchar_t *, wchar_t **));
         extern long int wcstol __((const wchar_t *, wchar_t **, int));
         extern unsigned long int wcstoul __((const wchar_t *, wchar_t **, int));
_NAMESPACE_STD_END

#  ifdef _INCLUDE_XOPEN_SOURCE_EXTENDED 
	 extern wchar_t	*getws __((wchar_t *));
	 extern int putws __((const wchar_t *));
#  endif /* _INCLUDE_XOPEN_SOURCE_EXTENDED */

#     endif  /* _STDC_ || __cplusplus */

#  endif /* _WPI_PROTOS */

#  ifdef _INCLUDE_HPUX_SOURCE

     extern int iswblank __((__wint_t));
#    ifdef _PTHREADS_DRAFT4
       extern wchar_t *fgetws_unlocked __((wchar_t *, int, __FILE *));
       extern int fputws_unlocked __((const wchar_t *, __FILE *));
       extern __wint_t getwc_unlocked __((__FILE *));
       extern __wint_t getwchar_unlocked __((void));
       extern __wint_t putwc_unlocked __((__wint_t, __FILE *));
       extern __wint_t putwchar_unlocked __((__wint_t));
       extern int putws_unlocked __((const wchar_t *));
       extern __wint_t ungetwc_unlocked __((__wint_t, __FILE *));
#    endif /* _PTHREADS_DRAFT4 */

#  endif /* _INCLUDE_HPUX_SOURCE */

#  ifndef __lint
#     define getwchar()		getwc(stdin)
#     define putwchar(wc)	putwc(wc,stdout)
#  endif /* __lint */

#ifdef __cplusplus
}
#endif

#endif  /* _WCHAR_INCLUDED */
