/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"/usr/include/locale.h"

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

/* @(#) $Revision: ../hdr/locale.h@@/main/r11ros/cup_ros-cpe/cup_libc-ros-cpe/1 $ */
#ifndef _LOCALE_INCLUDED
#define _LOCALE_INCLUDED

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

#ifdef _NAMESPACE_STD
#define _NAMESPACE_STD_START namespace std {
#define _NAMESPACE_STD_END }
#define _hpux_size_t std::size_t
#define __time_t std::time_t
#define __FILE std::FILE
#define __wint_t std::wint_t
#define __struct_tm std::tm
#define __va__list std::va_list
#else
#define _NAMESPACE_STD_START
#define _NAMESPACE_STD_END
#define _hpux_size_t size_t
#define __time_t time_t
#define __FILE FILE
#define __wint_t wint_t
#define __struct_tm struct tm
#define __va__list va_list
#endif

#ifdef __cplusplus
  extern "C" {
#endif

#ifdef _INCLUDE__STDC__
#  define LC_ALL      0
#  define LC_COLLATE  1
#  define LC_CTYPE    2
#  define LC_MONETARY 3
#  define LC_NUMERIC  4
#  define LC_TIME     5
#  define LC_MESSAGES 6

#	ifndef __NULL_INCLUDED
#		include <sys/_null.h>
#	endif /** __NULL_INCLUDED **/

_NAMESPACE_STD_START
  struct lconv {
	char *decimal_point;
	char *thousands_sep;
	char *grouping;
	char *int_curr_symbol;
	char *currency_symbol;
	char *mon_decimal_point;
	char *mon_thousands_sep;
	char *mon_grouping;
	char *positive_sign;
	char *negative_sign;
	char int_frac_digits;
	char frac_digits;
	char p_cs_precedes;
	char p_sep_by_space;
	char n_cs_precedes;
	char n_sep_by_space;
	char p_sign_posn;
	char n_sign_posn;
	};
_NAMESPACE_STD_END

#  ifdef _PROTOTYPES 
_NAMESPACE_STD_START
     extern char *setlocale(int, const char *);
     extern struct lconv *localeconv(void);
_NAMESPACE_STD_END
#   ifdef _REENTRANT
     extern int setlocale_r(int, const char *, char *, int);
#   endif
#  else  /* _PROTOTYPES */
     extern char *setlocale();
     extern struct lconv *localeconv();
#   ifdef _REENTRANT
     extern int setlocale_r();
#   endif
#  endif  /* _PROTOTYPES */
#endif /* _INCLUDE__STDC__ */


#ifdef _INCLUDE_HPUX_SOURCE
#  ifndef _LIMITS_INCLUDED
#    include <limits.h>
#  endif /* _LIMITS_INCLUDED */

   extern char *_errlocale();

#  define C_LANGID      99  /* Language id for C --
			       OBSOLETE - WILL BE REMOVED IN A FUTURE RELEASE */
#  define NC_LANGID     0   /* Language id for n-computer --
			       OBSOLETE - WILL BE REMOVED IN A FUTURE RELEASE */
#  define N_CATEGORY	7   /* Total number of setlocale categories defined --
			       OBSOLETE - WILL BE REMOVED IN A FUTURE RELEASE */
#  define SL_NAME_SIZE  59  /* Maximum size of the LANG
			       and LC_variables on HP-UX */
#  define MOD_NAME_SIZE	14  /* Maximum size of the modifier component of the 
                               LANG and LC_ variables on HP-UX --
                               OBSOLETE - WILL BE REMOVED IN A FUTURE RELEASE */
#  define LC_NAME_SIZE  (SL_NAME_SIZE-MOD_NAME_SIZE)	/* Maximum size of the 
                               LC_variable without the modifier component --
			       OBSOLETE - WILL BE REMOVED IN A FUTURE RELEASE */
#  define _LastCategory LC_MESSAGES     /* This must be last category   */
#  define LC_BUFSIZ  	(_LastCategory)*(_POSIX_PATH_MAX+1) /* Maximum buffer 
                               size needed for setlocale return string */

#  define _ValidCategory(c) ((int)(c) >= LC_ALL && ((int)c <= _LastCategory))

/* definition for getlocale and XPG4 catopen */
   extern char __locale_names[_LastCategory+1][_POSIX_PATH_MAX+1];

/* definitions for getlocale() */
/*
 * MODFIER_STATUS and ERROR_STATUS have been obsoleted.
 * Do not use either of those with getlocale.
 */
#  define LOCALE_STATUS   1

  struct locale_data {
    char LC_ALL_D[SL_NAME_SIZE];	/* OBSOLETE - DO NOT USE!!! */
    char LC_COLLATE_D[SL_NAME_SIZE];
    char LC_CTYPE_D[SL_NAME_SIZE];
    char LC_MONETARY_D[SL_NAME_SIZE];
    char LC_NUMERIC_D[SL_NAME_SIZE];
    char LC_TIME_D[SL_NAME_SIZE];
    char LC_MESSAGES_D[SL_NAME_SIZE]; 
    };

#  ifdef _PROTOTYPES 
     extern struct locale_data *getlocale(int);
#   ifdef _REENTRANT
     extern int getlocale_r(int, struct locale_data *);
#   endif
#  else  /* _PROTOTYPES */
     extern struct locale_data *getlocale();
#   ifdef _REENTRANT
     extern int getlocale_r();
#   endif
#  endif /* _PROTOTYPES */

/* SETLOCALE() - macro version of setlocale() for use by HP-UX utilities */

#ifdef __lint
#  ifdef _PROTOTYPES
    extern void SETLOCALE(int, const char *);
#  else
    extern void SETLOCALE();
#  endif
#else /* not __lint */

#  ifndef __STDIO_INCLUDED
#    include <stdio.h>
#  endif

extern char *__err_string;
#   define SETLOCALE(cat, loc)                                          \
       (setlocale(cat, loc) || (fprintf(stderr, __err_string), (char *)0))
#   define _errlocale(__x)    __err_string

#  ifdef _NO_SETLOCALE
#     define setlocale(cat,loc) (1)
#  endif /* _NO_SETLOCALE */
#endif /* not __lint */

	
#endif /* _INCLUDE_HPUX_SOURCE */

#ifdef __cplusplus
}
#endif

#endif /* _LOCALE_INCLUDED */
