Print this page
2964 need POSIX 2008 locale object support (more C++ fixes)


  28  * and will aid porting programs that don't strictly follow the standard.
  29  *
  30  * Note that it is an error to include this file in a program with strict
  31  * symbol visibilty rules (under strict ANSI or POSIX_C_SOURCE rules.)
  32  * If this is done, the symbols defined here will indeed be exposed to your
  33  * program, but those symbols that are part of the related standards might
  34  * not be.
  35  */
  36 
  37 #include <sys/feature_tests.h>
  38 #include <wchar.h>
  39 #include <locale.h>
  40 #include <stdio.h>
  41 
  42 #ifdef __cplusplus
  43 extern "C" {
  44 #endif
  45 
  46 #ifndef _LOCALE_T
  47 #define _LOCALE_T
  48 typedef struct locale *locale_t;
  49 #endif
  50 
  51 extern int mbsinit_l(const mbstate_t *, locale_t);
  52 
  53 extern size_t mbsrtowcs_l(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
  54     size_t, mbstate_t *_RESTRICT_KYWD, locale_t);
  55 
  56 extern size_t mbsnrtowcs_l(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
  57     size_t, size_t, mbstate_t *_RESTRICT_KYWD, locale_t);
  58 
  59 extern char *strptime_l(const char *_RESTRICT_KYWD, const char *_RESTRICT_KYWD,
  60     struct tm *_RESTRICT_KYWD, locale_t);
  61 
  62 extern int wcwidth_l(wchar_t, locale_t);
  63 
  64 extern int wcswidth_l(const wchar_t *, size_t, locale_t);
  65 
  66 extern int iswspecial_l(wint_t, locale_t);
  67 extern int iswnumber_l(wint_t, locale_t);
  68 extern int iswhexnumber_l(wint_t, locale_t);




  28  * and will aid porting programs that don't strictly follow the standard.
  29  *
  30  * Note that it is an error to include this file in a program with strict
  31  * symbol visibilty rules (under strict ANSI or POSIX_C_SOURCE rules.)
  32  * If this is done, the symbols defined here will indeed be exposed to your
  33  * program, but those symbols that are part of the related standards might
  34  * not be.
  35  */
  36 
  37 #include <sys/feature_tests.h>
  38 #include <wchar.h>
  39 #include <locale.h>
  40 #include <stdio.h>
  41 
  42 #ifdef __cplusplus
  43 extern "C" {
  44 #endif
  45 
  46 #ifndef _LOCALE_T
  47 #define _LOCALE_T
  48 typedef struct _locale *locale_t;
  49 #endif
  50 
  51 extern int mbsinit_l(const mbstate_t *, locale_t);
  52 
  53 extern size_t mbsrtowcs_l(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
  54     size_t, mbstate_t *_RESTRICT_KYWD, locale_t);
  55 
  56 extern size_t mbsnrtowcs_l(wchar_t *_RESTRICT_KYWD, const char **_RESTRICT_KYWD,
  57     size_t, size_t, mbstate_t *_RESTRICT_KYWD, locale_t);
  58 
  59 extern char *strptime_l(const char *_RESTRICT_KYWD, const char *_RESTRICT_KYWD,
  60     struct tm *_RESTRICT_KYWD, locale_t);
  61 
  62 extern int wcwidth_l(wchar_t, locale_t);
  63 
  64 extern int wcswidth_l(const wchar_t *, size_t, locale_t);
  65 
  66 extern int iswspecial_l(wint_t, locale_t);
  67 extern int iswnumber_l(wint_t, locale_t);
  68 extern int iswhexnumber_l(wint_t, locale_t);