Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #include <crtdefs.h>
      7 
      8 #ifndef _INC_TCHAR
      9 #define _INC_TCHAR
     10 
     11 #ifdef _STRSAFE_H_INCLUDED_
     12 #error Need to include strsafe.h after tchar.h
     13 #endif
     14 
     15 #ifdef __cplusplus
     16 extern "C" {
     17 #endif
     18 
     19 #ifndef __CYGWIN__
     20 
     21 #define _ftcscat _tcscat
     22 #define _ftcschr _tcschr
     23 #define _ftcscpy _tcscpy
     24 #define _ftcscspn _tcscspn
     25 #define _ftcslen _tcslen
     26 #define _ftcsncat _tcsncat
     27 #define _ftcsncpy _tcsncpy
     28 #define _ftcspbrk _tcspbrk
     29 #define _ftcsrchr _tcsrchr
     30 #define _ftcsspn _tcsspn
     31 #define _ftcsstr _tcsstr
     32 #define _ftcstok _tcstok
     33 
     34 #define _ftcsdup _tcsdup
     35 #define _ftcsnset _tcsnset
     36 #define _ftcsrev _tcsrev
     37 #define _ftcsset _tcsset
     38 
     39 #define _ftcscmp _tcscmp
     40 #define _ftcsicmp _tcsicmp
     41 #define _ftcsnccmp _tcsnccmp
     42 #define _ftcsncmp _tcsncmp
     43 #define _ftcsncicmp _tcsncicmp
     44 #define _ftcsnicmp _tcsnicmp
     45 
     46 #define _ftcscoll _tcscoll
     47 #define _ftcsicoll _tcsicoll
     48 #define _ftcsnccoll _tcsnccoll
     49 #define _ftcsncoll _tcsncoll
     50 #define _ftcsncicoll _tcsncicoll
     51 #define _ftcsnicoll _tcsnicoll
     52 
     53 #define _ftcsclen _tcsclen
     54 #define _ftcsnccat _tcsnccat
     55 #define _ftcsnccpy _tcsnccpy
     56 #define _ftcsncset _tcsncset
     57 
     58 #define _ftcsdec _tcsdec
     59 #define _ftcsinc _tcsinc
     60 #define _ftcsnbcnt _tcsnbcnt
     61 #define _ftcsnccnt _tcsnccnt
     62 #define _ftcsnextc _tcsnextc
     63 #define _ftcsninc _tcsninc
     64 #define _ftcsspnp _tcsspnp
     65 
     66 #define _ftcslwr _tcslwr
     67 #define _ftcsupr _tcsupr
     68 
     69 #define _ftclen _tclen
     70 #define _ftccpy _tccpy
     71 #define _ftccmp _tccmp
     72 
     73 #ifndef _CONST_RETURN
     74 #ifdef __cplusplus
     75 #define _CONST_RETURN const
     76 #define _CRT_CONST_CORRECT_OVERLOADS
     77 #else
     78 #define _CONST_RETURN
     79 #endif
     80 #endif
     81 
     82 #define _WConst_return _CONST_RETURN
     83 
     84 #endif /* __CYGWIN__ */
     85 
     86 #ifdef _UNICODE
     87 
     88 #ifdef __cplusplus
     89 }
     90 #endif
     91 
     92 #include <wchar.h>
     93 
     94 #ifdef __cplusplus
     95 extern "C" {
     96 #endif
     97 
     98 #ifndef __CYGWIN__
     99 
    100 #ifndef _WCTYPE_T_DEFINED
    101 #define _WCTYPE_T_DEFINED
    102   typedef unsigned short wint_t;
    103   typedef unsigned short wctype_t;
    104 #endif
    105 
    106 #endif /* __CYGWIN__ */
    107 
    108 #ifndef __TCHAR_DEFINED
    109 #define __TCHAR_DEFINED
    110   typedef wchar_t _TCHAR;
    111   typedef wchar_t _TSCHAR;
    112   typedef wchar_t _TUCHAR;
    113   typedef wchar_t _TXCHAR;
    114   typedef wint_t _TINT;
    115 #endif
    116 
    117 #ifndef NO_OLDNAMES
    118 #ifndef _TCHAR_DEFINED
    119 #define _TCHAR_DEFINED
    120   typedef wchar_t TCHAR,*PTCHAR;
    121   typedef wchar_t TBYTE,*PTBYTE;
    122 #endif
    123 #endif
    124 
    125 #define _TEOF WEOF
    126 
    127 #define __T(x) L##x
    128 
    129 #ifndef __CYGWIN__
    130 
    131 #define _tmain wmain
    132 #define _tWinMain wWinMain
    133 #define _tenviron _wenviron
    134 #define __targv __wargv
    135 
    136 #define _tprintf wprintf
    137 #define _tprintf_l _wprintf_l
    138 #define _tprintf_p _wprintf_p
    139 #define _tprintf_p_l _wprintf_p_l
    140 #define _tcprintf _cwprintf
    141 #define _tcprintf_l _cwprintf_l
    142 #define _tcprintf_p _cwprintf_p
    143 #define _tcprintf_p_l _cwprintf_p_l
    144 #define _vtcprintf _vcwprintf
    145 #define _vtcprintf_l _vcwprintf_l
    146 #define _vtcprintf_p _vcwprintf_p
    147 #define _vtcprintf_p_l _vcwprintf_p_l
    148 #define _ftprintf fwprintf
    149 #define _ftprintf_l _fwprintf_l
    150 #define _ftprintf_p _fwprintf_p
    151 #define _ftprintf_p_l _fwprintf_p_l
    152 #define _stprintf swprintf
    153 #define _stprintf_l __swprintf_l
    154 #define _stprintf_p _swprintf_p
    155 #define _stprintf_p_l _swprintf_p_l
    156 #define _sctprintf _scwprintf
    157 #define _sctprintf_l _scwprintf_l
    158 #define _sctprintf_p _scwprintf_p
    159 #define _sctprintf_p_l _scwprintf_p_l
    160 #define _sntprintf _snwprintf
    161 #define _sntprintf_l _snwprintf_l
    162 #define _vtprintf vwprintf
    163 #define _vtprintf_l _vwprintf_l
    164 #define _vtprintf_p _vwprintf_p
    165 #define _vtprintf_p_l _vwprintf_p_l
    166 #define _vftprintf vfwprintf
    167 #define _vftprintf_l _vfwprintf_l
    168 #define _vftprintf_p _vfwprintf_p
    169 #define _vftprintf_p_l _vfwprintf_p_l
    170 #define _vstprintf vswprintf
    171 #define _vstprintf_l _vswprintf_l
    172 #define _vstprintf_p _vswprintf_p
    173 #define _vstprintf_p_l _vswprintf_p_l
    174 #define _vsctprintf _vscwprintf
    175 #define _vsctprintf_l _vscwprintf_l
    176 #define _vsctprintf_p _vscwprintf_p
    177 #define _vsctprintf_p_l _vscwprintf_p_l
    178 #define _vsntprintf _vsnwprintf
    179 #define _vsntprintf_l _vsnwprintf_l
    180 
    181 #define _tscanf wscanf
    182 #define _tscanf_l _wscanf_l
    183 #define _tcscanf _cwscanf
    184 #define _tcscanf_l _cwscanf_l
    185 #define _ftscanf fwscanf
    186 #define _ftscanf_l _fwscanf_l
    187 #define _stscanf swscanf
    188 #define _stscanf_l _swscanf_l
    189 #define _sntscanf _snwscanf
    190 #define _sntscanf_l _snwscanf_l
    191 
    192 #define _fgettc fgetwc
    193 #define _fgettc_nolock _fgetwc_nolock
    194 #define _fgettchar _fgetwchar
    195 #define _fgetts fgetws
    196 #define _fputtc fputwc
    197 #define _fputtc_nolock _fputwc_nolock
    198 #define _fputtchar _fputwchar
    199 #define _fputts fputws
    200 #define _cputts _cputws
    201 #define _cgetts _cgetws
    202 #define _gettc getwc
    203 #define _gettc_nolock _getwc_nolock
    204 #define _gettch _getwch
    205 #define _gettch_nolock _getwch_nolock
    206 #define _gettche _getwche
    207 #define _gettche_nolock _getwche_nolock
    208 #define _gettchar getwchar
    209 #define _gettchar_nolock _getwchar_nolock
    210 #define _getts _getws
    211 #define _puttc putwc
    212 #define _puttc_nolock _putwc_nolock
    213 #define _puttchar putwchar
    214 #define _puttchar_nolock _putwchar_nolock
    215 #define _puttch _putwch
    216 #define _puttch_nolock _putwch_nolock
    217 #define _putts _putws
    218 #define _ungettc ungetwc
    219 #define _ungettc_nolock _ungetwc_nolock
    220 #define _ungettch _ungetwch
    221 #define _ungettch_nolock _ungetwch_nolock
    222 
    223 #define _tcstod wcstod
    224 #define _tcstol wcstol
    225 #define _tcstoul wcstoul
    226 #define _tcstoi64 _wcstoi64
    227 #define _tcstoui64 _wcstoui64
    228 #define _tstof _wtof
    229 #define _tstol _wtol
    230 #define _tstoi _wtoi
    231 #define _tstoi64 _wtoi64
    232 #define _tcstod_l _wcstod_l
    233 #define _tcstol_l _wcstol_l
    234 #define _tcstoul_l _wcstoul_l
    235 #define _tcstoi64_l _wcstoi64_l
    236 #define _tcstoui64_l _wcstoui64_l
    237 #define _tstof_l _wtof_l
    238 #define _tstol_l _wtol_l
    239 #define _tstoi_l _wtoi_l
    240 #define _tstoi64_l _wtoi64_l
    241 
    242 #define _itot _itow
    243 #define _ltot _ltow
    244 #define _ultot _ultow
    245 #define _ttoi _wtoi
    246 #define _ttol _wtol
    247 
    248 #define _ttoi64 _wtoi64
    249 #define _i64tot _i64tow
    250 #define _ui64tot _ui64tow
    251 
    252 #define _tcscat wcscat
    253 #define _tcschr wcschr
    254 #define _tcscpy wcscpy
    255 #define _tcscspn wcscspn
    256 #define _tcslen wcslen
    257 #define _tcsnlen wcsnlen
    258 #define _tcsncat wcsncat
    259 #define _tcsncat_l _wcsncat_l
    260 #define _tcsncpy wcsncpy
    261 #define _tcsncpy_l _wcsncpy_l
    262 #define _tcspbrk wcspbrk
    263 #define _tcsrchr wcsrchr
    264 #define _tcsspn wcsspn
    265 #define _tcsstr wcsstr
    266 #define _tcstok wcstok
    267 #define _tcstok_l _wcstok_l
    268 #define _tcserror _wcserror
    269 #define __tcserror __wcserror
    270 
    271 #define _tcsdup _wcsdup
    272 #define _tcsnset _wcsnset
    273 #define _tcsnset_l _wcsnset_l
    274 #define _tcsrev _wcsrev
    275 #define _tcsset _wcsset
    276 #define _tcsset_l _wcsset_l
    277 
    278 #define _tcscmp wcscmp
    279 #define _tcsicmp _wcsicmp
    280 #define _tcsicmp_l _wcsicmp_l
    281 #define _tcsnccmp wcsncmp
    282 #define _tcsncmp wcsncmp
    283 #define _tcsncicmp _wcsnicmp
    284 #define _tcsncicmp_l _wcsnicmp_l
    285 #define _tcsnicmp _wcsnicmp
    286 #define _tcsnicmp_l _wcsnicmp_l
    287 
    288 #define _tcscoll wcscoll
    289 #define _tcscoll_l _wcscoll_l
    290 #define _tcsicoll _wcsicoll
    291 #define _tcsicoll_l _wcsicoll_l
    292 #define _tcsnccoll _wcsncoll
    293 #define _tcsnccoll_l _wcsncoll_l
    294 #define _tcsncoll _wcsncoll
    295 #define _tcsncoll_l _wcsncoll_l
    296 #define _tcsncicoll _wcsnicoll
    297 #define _tcsncicoll_l _wcsnicoll_l
    298 #define _tcsnicoll _wcsnicoll
    299 #define _tcsnicoll_l _wcsnicoll_l
    300 
    301 #define _texecl _wexecl
    302 #define _texecle _wexecle
    303 #define _texeclp _wexeclp
    304 #define _texeclpe _wexeclpe
    305 #define _texecv _wexecv
    306 #define _texecve _wexecve
    307 #define _texecvp _wexecvp
    308 #define _texecvpe _wexecvpe
    309 
    310 #define _tspawnl _wspawnl
    311 #define _tspawnle _wspawnle
    312 #define _tspawnlp _wspawnlp
    313 #define _tspawnlpe _wspawnlpe
    314 #define _tspawnv _wspawnv
    315 #define _tspawnve _wspawnve
    316 #define _tspawnvp _wspawnvp
    317 #define _tspawnvp _wspawnvp
    318 #define _tspawnvpe _wspawnvpe
    319 
    320 #define _tsystem _wsystem
    321 
    322 #define _tasctime _wasctime
    323 #define _tctime _wctime
    324 #define _tctime32 _wctime32
    325 #define _tctime64 _wctime64
    326 #define _tstrdate _wstrdate
    327 #define _tstrtime _wstrtime
    328 #define _tutime _wutime
    329 #define _tutime32 _wutime
    330 #define _tutime64 _wutime64
    331 #define _tcsftime wcsftime
    332 #define _tcsftime_l _wcsftime_l
    333 
    334 #define _tchdir _wchdir
    335 #define _tgetcwd _wgetcwd
    336 #define _tgetdcwd _wgetdcwd
    337 #define _tgetdcwd_nolock _wgetdcwd_nolock
    338 #define _tmkdir _wmkdir
    339 #define _trmdir _wrmdir
    340 
    341 #define _tfullpath _wfullpath
    342 #define _tgetenv _wgetenv
    343 #define _tmakepath _wmakepath
    344 #define _tpgmptr _wpgmptr
    345 #define _get_tpgmptr _get_wpgmptr
    346 #define _tputenv _wputenv
    347 #define _tsearchenv _wsearchenv
    348 #define _tsplitpath _wsplitpath
    349 
    350 #define _tfdopen _wfdopen
    351 #define _tfsopen _wfsopen
    352 #define _tfopen _wfopen
    353 #define _tfreopen _wfreopen
    354 #define _tperror _wperror
    355 #define _tpopen _wpopen
    356 #define _ttempnam _wtempnam
    357 #define _ttmpnam _wtmpnam
    358 
    359 #define _taccess _waccess
    360 #define _tchmod _wchmod
    361 #define _tcreat _wcreat
    362 #define _tfindfirst _wfindfirst
    363 #define _tfindfirst32 _wfindfirst32
    364 #define _tfindfirst64 _wfindfirst64
    365 #define _tfindfirsti64 _wfindfirsti64
    366 #define _tfindfirst32i64 _wfindfirst32i64
    367 #define _tfindfirst64i32 _wfindfirst64i32
    368 #define _tfindnext _wfindnext
    369 #define _tfindnext32 _wfindnext32
    370 #define _tfindnext64 _wfindnext64
    371 #define _tfindnexti64 _wfindnexti64
    372 #define _tfindnext32i64 _wfindnext32i64
    373 #define _tfindnext64i32 _wfindnext64i32
    374 #define _tmktemp _wmktemp
    375 #define _topen _wopen
    376 #define _tremove _wremove
    377 #define _trename _wrename
    378 #define _tsopen _wsopen
    379 #define _tunlink _wunlink
    380 
    381 #define _tfinddata_t _wfinddata_t
    382 #define _tfinddata32_t _wfinddata32_t
    383 #define _tfinddata64_t _wfinddata64_t
    384 #define _tfinddatai64_t _wfinddatai64_t
    385 #define _tfinddata32i64_t _wfinddata32i64_t
    386 #define _tfinddata64i32_t _wfinddata64i32_t
    387 
    388 #define _tstat _wstat
    389 #define _tstat32 _wstat32
    390 #define _tstat32i64 _wstat32i64
    391 #define _tstat64 _wstat64
    392 #define _tstat64i32 _wstat64i32
    393 #define _tstati64 _wstati64
    394 
    395 #define _tsetlocale _wsetlocale
    396 
    397 #define _tcsclen wcslen
    398 #define _tcscnlen wcsnlen
    399 #define _tcsclen_l(_String,_Locale) wcslen(_String)
    400 #define _tcscnlen_l(_String,_Max_count,_Locale) wcsnlen_l((_String),(_Max_count))
    401 #define _tcsnccat wcsncat
    402 #define _tcsnccat_l _wcsncat_l
    403 #define _tcsnccpy wcsncpy
    404 #define _tcsnccpy_l _wcsncpy_l
    405 #define _tcsncset _wcsnset
    406 
    407 #define _tcsdec _wcsdec
    408 #define _tcsinc _wcsinc
    409 #define _tcsnbcnt _wcsncnt
    410 #define _tcsnccnt _wcsncnt
    411 #define _tcsnextc _wcsnextc
    412 #define _tcsninc _wcsninc
    413 #define _tcsspnp _wcsspnp
    414 
    415 #define _tcslwr _wcslwr
    416 #define _tcslwr_l _wcslwr_l
    417 #define _tcsupr _wcsupr
    418 #define _tcsupr_l _wcsupr_l
    419 #define _tcsxfrm wcsxfrm
    420 #define _tcsxfrm_l _wcsxfrm_l
    421 
    422 #define _tclen(_pc) (1)
    423 #define _tccpy(_pc1,_cpc2) ((*(_pc1) = *(_cpc2)))
    424 #define _tccmp(_cpc1,_cpc2) ((*(_cpc1))-(*(_cpc2)))
    425 
    426 #define _istalnum iswalnum
    427 #define _istalnum_l _iswalnum_l
    428 #define _istalpha iswalpha
    429 #define _istalpha_l _iswalpha_l
    430 #define _istascii iswascii
    431 #define _istcntrl iswcntrl
    432 #define _istcntrl_l _iswcntrl_l
    433 #define _istdigit iswdigit
    434 #define _istdigit_l _iswdigit_l
    435 #define _istgraph iswgraph
    436 #define _istgraph_l _iswgraph_l
    437 #define _istlower iswlower
    438 #define _istlower_l _iswlower_l
    439 #define _istprint iswprint
    440 #define _istprint_l _iswprint_l
    441 #define _istpunct iswpunct
    442 #define _istpunct_l _iswpunct_l
    443 #define _istspace iswspace
    444 #define _istspace_l _iswspace_l
    445 #define _istupper iswupper
    446 #define _istupper_l _iswupper_l
    447 #define _istxdigit iswxdigit
    448 #define _istxdigit_l _iswxdigit_l
    449 
    450 #define _totupper towupper
    451 #define _totupper_l _towupper_l
    452 #define _totlower towlower
    453 #define _totlower_l _towlower_l
    454 
    455 #define _istlegal(_Char) (1)
    456 #define _istlead(_Char) (0)
    457 #define _istleadbyte(_Char) (0)
    458 #define _istleadbyte_l(_Char,_Locale) (0)
    459 
    460 #define _wcsdec(_cpc1,_cpc2) ((_cpc1)>=(_cpc2) ? NULL : (_cpc2)-1)
    461 #define _wcsinc(_pc) ((_pc)+1)
    462 #define _wcsnextc(_cpc) ((unsigned int) *(_cpc))
    463 #define _wcsninc(_pc,_sz) (((_pc)+(_sz)))
    464   _CRTIMP size_t __cdecl __wcsncnt(const wchar_t *_Str,size_t _MaxCount);
    465 #define _wcsncnt(_cpc,_sz) (__wcsncnt(_cpc,_sz))
    466 #define _wcsspnp(_cpc1,_cpc2) (!_cpc1 ? NULL : ((*((_cpc1)+wcsspn(_cpc1,_cpc2))) ? ((_cpc1)+wcsspn(_cpc1,_cpc2)) : NULL))
    467 #define _wcsncpy_l(_Destination,_Source,_Count,_Locale) (wcsncpy(_Destination,_Source,_Count))
    468 #define _wcsncat_l(_Destination,_Source,_Count,_Locale) (wcsncat(_Destination,_Source,_Count))
    469 #define _wcstok_l(_String,_Delimiters,_Locale) (wcstok(_String,_Delimiters))
    470 #define _wcsnset_l(_Destination,_Value,_Count,_Locale) (_wcsnset(_Destination,_Value,_Count))
    471 #define _wcsset_l(_Destination,_Value,_Locale) (_wcsset(_Destination,_Value))
    472 
    473   /* dirent structures and functions */
    474 #define _tdirent	_wdirent
    475 #define _TDIR 		_WDIR
    476 #define _topendir	_wopendir
    477 #define _tclosedir	_wclosedir
    478 #define _treaddir	_wreaddir
    479 #define _trewinddir	_wrewinddir
    480 #define _ttelldir	_wtelldir
    481 #define _tseekdir	_wseekdir
    482 
    483 #endif /* __CYGWIN__ */
    484 
    485 #else
    486 
    487 #ifdef __cplusplus
    488 }
    489 #endif
    490 
    491 #include <string.h>
    492 
    493 #ifdef __cplusplus
    494 extern "C" {
    495 #endif
    496 
    497 #define _TEOF EOF
    498 
    499 #define __T(x) x
    500 
    501 #ifndef __CYGWIN__
    502 
    503 #define _tmain main
    504 #define _tWinMain WinMain
    505 #ifdef _POSIX_
    506 #define _tenviron environ
    507 #else
    508 #define _tenviron _environ
    509 #endif
    510 #define __targv __argv
    511 
    512 #define _tprintf printf
    513 #define _tprintf_l _printf_l
    514 #define _tprintf_p _printf_p
    515 #define _tprintf_p_l _printf_p_l
    516 #define _tcprintf _cprintf
    517 #define _tcprintf_l _cprintf_l
    518 #define _tcprintf_p _cprintf_p
    519 #define _tcprintf_p_l _cprintf_p_l
    520 #define _vtcprintf _vcprintf
    521 #define _vtcprintf_l _vcprintf_l
    522 #define _vtcprintf_p _vcprintf_p
    523 #define _vtcprintf_p_l _vcprintf_p_l
    524 #define _ftprintf fprintf
    525 #define _ftprintf_l _fprintf_l
    526 #define _ftprintf_p _fprintf_p
    527 #define _ftprintf_p_l _fprintf_p_l
    528 #define _stprintf sprintf
    529 #define _stprintf_l _sprintf_l
    530 #define _stprintf_p _sprintf_p
    531 #define _stprintf_p_l _sprintf_p_l
    532 #define _sctprintf _scprintf
    533 #define _sctprintf_l _scprintf_l
    534 #define _sctprintf_p _scprintf_p
    535 #define _sctprintf_p_l _scprintf_p_l
    536 #define _sntprintf _snprintf
    537 #define _sntprintf_l _snprintf_l
    538 #define _vtprintf vprintf
    539 #define _vtprintf_l _vprintf_l
    540 #define _vtprintf_p _vprintf_p
    541 #define _vtprintf_p_l _vprintf_p_l
    542 #define _vftprintf vfprintf
    543 #define _vftprintf_l _vfprintf_l
    544 #define _vftprintf_p _vfprintf_p
    545 #define _vftprintf_p_l _vfprintf_p_l
    546 #define _vstprintf vsprintf
    547 #define _vstprintf_l _vsprintf_l
    548 #define _vstprintf_p _vsprintf_p
    549 #define _vstprintf_p_l _vsprintf_p_l
    550 #define _vsctprintf _vscprintf
    551 #define _vsctprintf_l _vscprintf_l
    552 #define _vsctprintf_p _vscprintf_p
    553 #define _vsctprintf_p_l _vscprintf_p_l
    554 #define _vsntprintf _vsnprintf
    555 #define _vsntprintf_l _vsnprintf_l
    556 
    557 #define _tscanf scanf
    558 #define _tscanf_l _scanf_l
    559 #define _tcscanf _cscanf
    560 #define _tcscanf_l _cscanf_l
    561 #define _ftscanf fscanf
    562 #define _ftscanf_l _fscanf_l
    563 #define _stscanf sscanf
    564 #define _stscanf_l _sscanf_l
    565 #define _sntscanf _snscanf
    566 #define _sntscanf_l _snscanf_l
    567 
    568 #define _fgettc fgetc
    569 #define _fgettc_nolock _fgetc_nolock
    570 #define _fgettchar _fgetchar
    571 #define _fgetts fgets
    572 #define _fputtc fputc
    573 #define _fputtc_nolock _fputc_nolock
    574 #define _fputtchar _fputchar
    575 #define _fputts fputs
    576 #define _cputts _cputs
    577 #define _gettc getc
    578 #define _gettc_nolock _getc_nolock
    579 #define _gettch _getch
    580 #define _gettch_nolock _getch_nolock
    581 #define _gettche _getche
    582 #define _gettche_nolock _getche_nolock
    583 #define _gettchar getchar
    584 #define _gettchar_nolock _getchar_nolock
    585 #define _getts gets
    586 #define _cgetts _cgets
    587 #define _puttc putc
    588 #define _puttc_nolock _putc_nolock
    589 #define _puttchar putchar
    590 #define _puttchar_nolock _putchar_nolock
    591 #define _puttch _putch
    592 #define _puttch_nolock _putch_nolock
    593 #define _putts puts
    594 #define _ungettc ungetc
    595 #define _ungettc_nolock _ungetc_nolock
    596 #define _ungettch _ungetch
    597 #define _ungettch_nolock _ungetch_nolock
    598 
    599 #define _tcstod strtod
    600 #define _tcstol strtol
    601 #define _tcstoul strtoul
    602 #define _tstof atof
    603 #define _tstol atol
    604 #define _tstoi atoi
    605 #define _tstoi64 _atoi64
    606 #define _tcstod_l _strtod_l
    607 #define _tcstol_l _strtol_l
    608 #define _tcstoul_l _strtoul_l
    609 #define _tstof_l _atof_l
    610 #define _tstol_l _atol_l
    611 #define _tstoi_l _atoi_l
    612 #define _tstoi64_l _atoi64_l
    613 
    614 #define _itot _itoa
    615 #define _ltot _ltoa
    616 #define _ultot _ultoa
    617 #define _ttoi atoi
    618 #define _ttol atol
    619 
    620 #define _ttoi64 _atoi64
    621 #define _tcstoi64 _strtoi64
    622 #define _tcstoi64_l _strtoi64_l
    623 #define _tcstoui64 _strtoui64
    624 #define _tcstoui64_l _strtoui64_l
    625 #define _i64tot _i64toa
    626 #define _ui64tot _ui64toa
    627 
    628 #define _tcscat strcat
    629 #define _tcscpy strcpy
    630 #define _tcsdup _strdup
    631 #define _tcslen strlen
    632 #define _tcsnlen strnlen
    633 #define _tcsxfrm strxfrm
    634 #define _tcsxfrm_l _strxfrm_l
    635 #define _tcserror strerror
    636 #define __tcserror _strerror
    637 
    638 #define _texecl _execl
    639 #define _texecle _execle
    640 #define _texeclp _execlp
    641 #define _texeclpe _execlpe
    642 #define _texecv _execv
    643 #define _texecve _execve
    644 #define _texecvp _execvp
    645 #define _texecvpe _execvpe
    646 
    647 #define _tspawnl _spawnl
    648 #define _tspawnle _spawnle
    649 #define _tspawnlp _spawnlp
    650 #define _tspawnlpe _spawnlpe
    651 #define _tspawnv _spawnv
    652 #define _tspawnve _spawnve
    653 #define _tspawnvp _spawnvp
    654 #define _tspawnvpe _spawnvpe
    655 
    656 #define _tsystem system
    657 
    658 #define _tasctime asctime
    659 #define _tctime ctime
    660 #define _tctime32 _ctime32
    661 #define _tctime64 _ctime64
    662 #define _tstrdate _strdate
    663 #define _tstrtime _strtime
    664 #define _tutime _utime
    665 #define _tutime32 _utime32
    666 #define _tutime64 _utime64
    667 #define _tcsftime strftime
    668 #define _tcsftime_l _strftime_l
    669 
    670 #define _tchdir _chdir
    671 #define _tgetcwd _getcwd
    672 #define _tgetdcwd _getdcwd
    673 #define _tgetdcwd_nolock _getdcwd_nolock
    674 #define _tmkdir _mkdir
    675 #define _trmdir _rmdir
    676 
    677 #define _tfullpath _fullpath
    678 #define _tgetenv getenv
    679 #define _tmakepath _makepath
    680 #define _tpgmptr _pgmptr
    681 #define _get_tpgmptr _get_pgmptr
    682 #define _tputenv _putenv
    683 #define _tsearchenv _searchenv
    684 #define _tsplitpath _splitpath
    685 
    686 #ifdef _POSIX_
    687 #define _tfdopen fdopen
    688 #else
    689 #define _tfdopen _fdopen
    690 #endif
    691 #define _tfsopen _fsopen
    692 #define _tfopen fopen
    693 #define _tfreopen freopen
    694 #define _tperror perror
    695 #define _tpopen _popen
    696 #define _ttempnam _tempnam
    697 #define _ttmpnam tmpnam
    698 
    699 #define _tchmod _chmod
    700 #define _tcreat _creat
    701 #define _tfindfirst _findfirst
    702 #define _tfindfirst32 _findfirst32
    703 #define _tfindfirst64 _findfirst64
    704 #define _tfindfirsti64 _findfirsti64
    705 #define _tfindfirst32i64 _findfirst32i64
    706 #define _tfindfirst64i32 _findfirst64i32
    707 #define _tfindnext _findnext
    708 #define _tfindnext32 _findnext32
    709 #define _tfindnext64 _findnext64
    710 #define _tfindnexti64 _findnexti64
    711 #define _tfindnext32i64 _findnext32i64
    712 #define _tfindnext64i32 _findnext64i32
    713 #define _tmktemp _mktemp
    714 
    715 #ifdef _POSIX_
    716 #define _topen open
    717 #define _taccess access
    718 #else
    719 #define _topen _open
    720 #define _taccess _access
    721 #endif
    722 
    723 #define _tremove remove
    724 #define _trename rename
    725 #define _tsopen _sopen
    726 #define _tunlink _unlink
    727 
    728 #define _tfinddata_t _finddata_t
    729 #define _tfinddata32_t _finddata32_t
    730 #define _tfinddata64_t __finddata64_t
    731 #define _tfinddatai64_t _finddatai64_t
    732 #define _tfinddata32i64_t _finddata32i64_t
    733 #define _tfinddata64i32_t _finddata64i32_t
    734 
    735 #define _istascii __isascii
    736 #define _istcntrl iscntrl
    737 #define _istcntrl_l _iscntrl_l
    738 #define _istxdigit isxdigit
    739 #define _istxdigit_l _isxdigit_l
    740 
    741 #define _tstat _stat
    742 #define _tstat32 _stat32
    743 #define _tstat32i64 _stat32i64
    744 #define _tstat64 _stat64
    745 #define _tstat64i32 _stat64i32
    746 #define _tstati64 _stati64
    747 
    748 #define _tsetlocale setlocale
    749 
    750 #endif /* __CYGWIN__ */
    751 
    752 #ifdef _MBCS
    753 
    754 #ifdef __cplusplus
    755 }
    756 #endif
    757 
    758 #ifndef __CYGWIN__
    759 
    760 #include <mbstring.h>
    761 
    762 #ifdef __cplusplus
    763 extern "C" {
    764 #endif
    765 
    766 #ifndef __TCHAR_DEFINED
    767   typedef char _TCHAR;
    768   typedef signed char _TSCHAR;
    769   typedef unsigned char _TUCHAR;
    770   typedef unsigned char _TXCHAR;
    771   typedef unsigned int _TINT;
    772 #define __TCHAR_DEFINED
    773 #endif
    774 
    775 #ifndef NO_OLDNAMES
    776 #ifndef _TCHAR_DEFINED
    777 #define _TCHAR_DEFINED
    778   typedef char TCHAR,*PTCHAR;
    779   typedef unsigned char TBYTE,*PTBYTE;
    780 #endif
    781 #endif
    782 
    783 #ifdef _MB_MAP_DIRECT
    784 
    785 #define _tcschr _mbschr
    786 #define _tcscspn _mbscspn
    787 #define _tcsncat _mbsnbcat
    788 #define _tcsncat_l _mbsnbcat_l
    789 #define _tcsncpy _mbsnbcpy
    790 #define _tcsncpy_l _mbsnbcpy_l
    791 #define _tcspbrk _mbspbrk
    792 #define _tcsrchr _mbsrchr
    793 #define _tcsspn _mbsspn
    794 #define _tcsstr _mbsstr
    795 #define _tcstok _mbstok
    796 #define _tcstok_l _mbstok_l
    797 
    798 #define _tcsnset _mbsnbset
    799 #define _tcsnset_l _mbsnbset_l
    800 #define _tcsrev _mbsrev
    801 #define _tcsset _mbsset
    802 #define _tcsset_l _mbsset_l
    803 
    804 #define _tcscmp _mbscmp
    805 #define _tcsicmp _mbsicmp
    806 #define _tcsicmp_l _mbsicmp_l
    807 #define _tcsnccmp _mbsncmp
    808 #define _tcsncmp _mbsnbcmp
    809 #define _tcsncicmp _mbsnicmp
    810 #define _tcsncicmp_l _mbsnicmp_l
    811 #define _tcsnicmp _mbsnbicmp
    812 #define _tcsnicmp_l _mbsnbicmp_l
    813 
    814 #define _tcscoll _mbscoll
    815 #define _tcscoll_l _mbscoll_l
    816 #define _tcsicoll _mbsicoll
    817 #define _tcsicoll_l _mbsicoll_l
    818 #define _tcsnccoll _mbsncoll
    819 #define _tcsnccoll_l _mbsncoll_l
    820 #define _tcsncoll _mbsnbcoll
    821 #define _tcsncoll_l _mbsnbcoll_l
    822 #define _tcsncicoll _mbsnicoll
    823 #define _tcsncicoll_l _mbsnicoll_l
    824 #define _tcsnicoll _mbsnbicoll
    825 #define _tcsnicoll_l _mbsnbicoll_l
    826 
    827 #define _tcsclen _mbslen
    828 #define _tcscnlen _mbsnlen
    829 #define _tcsclen_l _mbslen_l
    830 #define _tcscnlen_l _mbsnlen_l
    831 #define _tcsnccat _mbsncat
    832 #define _tcsnccat_l _mbsncat_l
    833 #define _tcsnccpy _mbsncpy
    834 #define _tcsnccpy_l _mbsncpy_l
    835 #define _tcsncset _mbsnset
    836 #define _tcsncset_l _mbsnset_l
    837 
    838 #define _tcsdec _mbsdec
    839 #define _tcsinc _mbsinc
    840 #define _tcsnbcnt _mbsnbcnt
    841 #define _tcsnccnt _mbsnccnt
    842 #define _tcsnextc _mbsnextc
    843 #define _tcsninc _mbsninc
    844 #define _tcsspnp _mbsspnp
    845 
    846 #define _tcslwr _mbslwr
    847 #define _tcslwr_l _mbslwr_l
    848 #define _tcsupr _mbsupr
    849 #define _tcsupr_l _mbsupr_l
    850 
    851 #define _tclen _mbclen
    852 #define _tccpy _mbccpy
    853 #define _tccpy_l _mbccpy_l
    854 #else
    855 
    856   _CRTIMP _CONST_RETURN char *__cdecl _tcschr(const char *_Str,unsigned int _Val);
    857   _CRTIMP size_t __cdecl _tcscspn(const char *_Str,const char *_Control);
    858   _CRTIMP char *__cdecl _tcsncat(char *_Dst,const char *_Src,size_t _MaxCount);
    859   _CRTIMP char *__cdecl _tcsncat_l(char *_Dst,const char *_Src,size_t _MaxCount,_locale_t _Locale);
    860   _CRTIMP char *__cdecl _tcsncpy(char *_Dst,const char *_Src,size_t _MaxCount);
    861   _CRTIMP char *__cdecl _tcsncpy_l(char *_Dst,const char *_Src,size_t _MaxCount,_locale_t _Locale);
    862   _CRTIMP _CONST_RETURN char *__cdecl _tcspbrk(const char *_Str,const char *_Control);
    863   _CRTIMP _CONST_RETURN char *__cdecl _tcsrchr(const char *_Str,unsigned int _Ch);
    864   _CRTIMP size_t __cdecl _tcsspn(const char *_Str,const char *_Control);
    865   _CRTIMP _CONST_RETURN char *__cdecl _tcsstr(const char *_Str,const char *_Substr);
    866   _CRTIMP char *__cdecl _tcstok(char *_Str,const char *_Delim);
    867   _CRTIMP char *__cdecl _tcstok_l(char *_Str,const char *_Delim,_locale_t _Locale);
    868   _CRTIMP char *__cdecl _tcsnset(char *_Str,unsigned int _Val,size_t _MaxCount);
    869   _CRTIMP char *__cdecl _tcsrev(char *_Str);
    870   _CRTIMP char *__cdecl _tcsset(char *_Str,unsigned int _Val);
    871   _CRTIMP char *__cdecl _tcsset_l(char *_Str,unsigned int _Val,_locale_t _Locale);
    872   _CRTIMP int __cdecl _tcscmp(const char *_Str1,const char *_Str);
    873   _CRTIMP int __cdecl _tcsicmp(const char *_Str1,const char *_Str2);
    874   _CRTIMP int __cdecl _tcsicmp_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
    875   _CRTIMP int __cdecl _tcsnccmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
    876   _CRTIMP int __cdecl _tcsncmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
    877   _CRTIMP int __cdecl _tcsncicmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
    878   _CRTIMP int __cdecl _tcsncicmp_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    879   _CRTIMP int __cdecl _tcsnicmp(const char *_Str1,const char *_Str2,size_t _MaxCount);
    880   _CRTIMP int __cdecl _tcsnicmp_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    881   _CRTIMP int __cdecl _tcscoll(const char *_Str1,const char *_Str2);
    882   _CRTIMP int __cdecl _tcscoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
    883   _CRTIMP int __cdecl _tcsicoll(const char *_Str1,const char *_Str2);
    884   _CRTIMP int __cdecl _tcsicoll_l(const char *_Str1,const char *_Str2,_locale_t _Locale);
    885   _CRTIMP int __cdecl _tcsnccoll(const char *_Str1,const char *_Str2,size_t _MaxCount);
    886   _CRTIMP int __cdecl _tcsnccoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    887   _CRTIMP int __cdecl _tcsncoll(const char *_Str1,const char *_Str2,size_t _MaxCount);
    888   _CRTIMP int __cdecl _tcsncoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    889   _CRTIMP int __cdecl _tcsncicoll(const char *_Str1,const char *_Str2,size_t _MaxCount);
    890   _CRTIMP int __cdecl _tcsncicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    891   _CRTIMP int __cdecl _tcsnicoll(const char *_Str1,const char *_Str2,size_t _MaxCount);
    892   _CRTIMP int __cdecl _tcsnicoll_l(const char *_Str1,const char *_Str2,size_t _MaxCount,_locale_t _Locale);
    893   _CRTIMP size_t __cdecl _tcsclen(const char *_Str);
    894   _CRTIMP size_t __cdecl _tcscnlen(const char *_Str,size_t _MaxCount);
    895   _CRTIMP size_t __cdecl _tcsclen_l(const char *_Str,_locale_t _Locale);
    896   _CRTIMP size_t __cdecl _tcscnlen_l(const char *_Str,size_t _MaxCount,_locale_t _Locale);
    897   _CRTIMP char *__cdecl _tcsnccat(char *_Dst,const char *_Src,size_t _MaxCount);
    898   _CRTIMP char *__cdecl _tcsnccat_l(char *_Dst,const char *_Src,size_t _MaxCount,_locale_t _Locale);
    899   _CRTIMP char *__cdecl _tcsnccpy(char *_Dst,const char *_Src,size_t _MaxCount);
    900   _CRTIMP char *__cdecl _tcsnccpy_l(char *_Dst,const char *_Src,size_t _MaxCount,_locale_t _Locale);
    901   _CRTIMP char *__cdecl _tcsncset(char *_Str,unsigned int _Val,size_t _MaxCount);
    902   _CRTIMP char *__cdecl _tcsdec(const char *_Start,const char *_Pos);
    903   _CRTIMP char *__cdecl _tcsinc(const char *_Ptr);
    904   _CRTIMP size_t __cdecl _tcsnbcnt(const char *_Str,size_t _MaxCount);
    905   _CRTIMP size_t __cdecl _tcsnccnt(const char *_Str,size_t _MaxCount);
    906   _CRTIMP unsigned int __cdecl _tcsnextc (const char *_Str);
    907   _CRTIMP char *__cdecl _tcsninc(const char *_Ptr,size_t _Count);
    908   _CRTIMP char *__cdecl _tcsspnp(const char *_Str1,const char *_Str2);
    909   _CRTIMP char *__cdecl _tcslwr(char *_Str);
    910   _CRTIMP char *__cdecl _tcslwr_l(char *_Str,_locale_t _Locale);
    911   _CRTIMP char *__cdecl _tcsupr(char *_Str);
    912   _CRTIMP char *__cdecl _tcsupr_l(char *_Str,_locale_t _Locale);
    913   _CRTIMP size_t __cdecl _tclen(const char *_Str);
    914   _CRTIMP void __cdecl _tccpy(char *_DstCh,const char *_SrcCh);
    915 
    916 #ifdef __cplusplus
    917 #ifndef _CPP_TCHAR_INLINES_DEFINED
    918 #define _CPP_TCHAR_INLINES_DEFINED
    919   extern "C++" {
    920     extern inline char *__cdecl _tcschr(char *_S,unsigned int _C) { return ((char *)_tcschr((const char *)_S,_C)); }
    921     extern inline char *__cdecl _tcspbrk(char *_S,const char *_P) { return ((char *)_tcspbrk((const char *)_S,_P)); }
    922     extern inline char *__cdecl _tcsrchr(char *_S,unsigned int _C) { return ((char *)_tcsrchr((const char *)_S,_C)); }
    923     extern inline char *__cdecl _tcsstr(char *_S,const char *_P) { return ((char *)_tcsstr((const char *)_S,_P)); }
    924   }
    925 #endif
    926 #endif
    927 #endif
    928 
    929 #define _tccmp(_cp1,_cp2) _tcsnccmp(_cp1,_cp2,1)
    930 
    931 #define _istalnum _ismbcalnum
    932 #define _istalnum_l _ismbcalnum_l
    933 #define _istalpha _ismbcalpha
    934 #define _istalpha_l _ismbcalpha_l
    935 #define _istdigit _ismbcdigit
    936 #define _istdigit_l _ismbcdigit_l
    937 #define _istgraph _ismbcgraph
    938 #define _istgraph_l _ismbcgraph_l
    939 #define _istlegal _ismbclegal
    940 #define _istlegal_l _ismbclegal_l
    941 #define _istlower _ismbclower
    942 #define _istlower_l _ismbclower_l
    943 #define _istprint _ismbcprint
    944 #define _istprint_l _ismbcprint_l
    945 #define _istpunct _ismbcpunct
    946 #define _istpunct_l _ismbcpunct_l
    947 #define _istspace _ismbcspace
    948 #define _istspace_l _ismbcspace_l
    949 #define _istupper _ismbcupper
    950 #define _istupper_l _ismbcupper_l
    951 
    952 #define _totupper _mbctoupper
    953 #define _totupper_l _mbctoupper_l
    954 #define _totlower _mbctolower
    955 #define _totlower_l _mbctolower_l
    956 
    957 #define _istlead _ismbblead
    958 #define _istleadbyte isleadbyte
    959 #define _istleadbyte_l _isleadbyte_l
    960 
    961 #endif /* __CYGWIN__ */
    962 
    963 #else
    964 
    965 #ifndef __TCHAR_DEFINED
    966 #define __TCHAR_DEFINED
    967   typedef char _TCHAR;
    968   typedef signed char _TSCHAR;
    969   typedef unsigned char _TUCHAR;
    970   typedef char _TXCHAR;
    971   typedef int _TINT;
    972 #endif
    973 
    974 #ifndef NO_OLDNAMES
    975 #ifndef _TCHAR_DEFINED
    976 #define _TCHAR_DEFINED
    977   typedef char TCHAR,*PTCHAR;
    978   typedef unsigned char TBYTE,*PTBYTE;
    979 #endif
    980 #endif
    981 
    982 #ifndef __CYGWIN__
    983 
    984 #define _tcschr strchr
    985 #define _tcscspn strcspn
    986 #define _tcsncat strncat
    987 #define _tcsncat_l _strncat_l
    988 #define _tcsncpy strncpy
    989 #define _tcsncpy_l _strncpy_l
    990 #define _tcspbrk strpbrk
    991 #define _tcsrchr strrchr
    992 #define _tcsspn strspn
    993 #define _tcsstr strstr
    994 #define _tcstok strtok
    995 #define _tcstok_l _strtok_l
    996 
    997 #define _tcsnset _strnset
    998 #define _tcsnset_l _strnset_l
    999 #define _tcsrev _strrev
   1000 #define _tcsset _strset
   1001 
   1002 #define _tcscmp strcmp
   1003 #define _tcsicmp _stricmp
   1004 #define _tcsicmp_l _stricmp_l
   1005 #define _tcsnccmp strncmp
   1006 #define _tcsncmp strncmp
   1007 #define _tcsncicmp _strnicmp
   1008 #define _tcsncicmp_l _strnicmp_l
   1009 #define _tcsnicmp _strnicmp
   1010 #define _tcsnicmp_l _strnicmp_l
   1011 
   1012 #define _tcscoll strcoll
   1013 #define _tcscoll_l _strcoll_l
   1014 #define _tcsicoll _stricoll
   1015 #define _tcsicoll_l _stricoll_l
   1016 #define _tcsnccoll _strncoll
   1017 #define _tcsnccoll_l _strncoll_l
   1018 #define _tcsncoll _strncoll
   1019 #define _tcsncoll_l _strncoll_l
   1020 #define _tcsncicoll _strnicoll
   1021 #define _tcsncicoll_l _strnicoll_l
   1022 #define _tcsnicoll _strnicoll
   1023 #define _tcsnicoll_l _strnicoll_l
   1024 
   1025 #define _tcsclen strlen
   1026 #define _tcscnlen strnlen
   1027 #define _tcsclen_l(_String,_Locale) strlen(_String)
   1028 #define _tcscnlen_l(_String,_Max_count,_Locale) strnlen_l((_String),(_Max_count))
   1029 #define _tcsnccat strncat
   1030 #define _tcsnccat_l _strncat_l
   1031 #define _tcsnccpy strncpy
   1032 #define _tcsnccpy_l _strncpy_l
   1033 #define _tcsncset _strnset
   1034 
   1035 #define _tcsdec _strdec
   1036 #define _tcsinc _strinc
   1037 #define _tcsnbcnt _strncnt
   1038 #define _tcsnccnt _strncnt
   1039 #define _tcsnextc _strnextc
   1040 #define _tcsninc _strninc
   1041 #define _tcsspnp _strspnp
   1042 
   1043 #define _tcslwr _strlwr
   1044 #define _tcslwr_l _strlwr_l
   1045 #define _tcsupr _strupr
   1046 #define _tcsupr_l _strupr_l
   1047 #define _tcsxfrm strxfrm
   1048 #define _tcsxfrm_l _strxfrm_l
   1049 
   1050 #define _istlead(_Char) (0)
   1051 #define _istleadbyte(_Char) (0)
   1052 #define _istleadbyte_l(_Char,_Locale) (0)
   1053 
   1054 #define _tclen(_pc) (1)
   1055 #define _tccpy(_pc1,_cpc2) (*(_pc1) = *(_cpc2))
   1056 #define _tccmp(_cpc1,_cpc2) (((unsigned char)*(_cpc1))-((unsigned char)*(_cpc2)))
   1057 
   1058   /* dirent structures and functions */
   1059 #define _tdirent	dirent
   1060 #define _TDIR 		DIR
   1061 #define _topendir	opendir
   1062 #define _tclosedir	closedir
   1063 #define _treaddir	readdir
   1064 #define _trewinddir	rewinddir
   1065 #define _ttelldir	telldir
   1066 #define _tseekdir	seekdir
   1067 
   1068 #define _istalnum isalnum
   1069 #define _istalnum_l _isalnum_l
   1070 #define _istalpha isalpha
   1071 #define _istalpha_l _isalpha_l
   1072 #define _istdigit isdigit
   1073 #define _istdigit_l _isdigit_l
   1074 #define _istgraph isgraph
   1075 #define _istgraph_l _isgraph_l
   1076 #define _istlower islower
   1077 #define _istlower_l _islower_l
   1078 #define _istprint isprint
   1079 #define _istprint_l _isprint_l
   1080 #define _istpunct ispunct
   1081 #define _istpunct_l _ispunct_l
   1082 #define _istspace isspace
   1083 #define _istspace_l _isspace_l
   1084 #define _istupper isupper
   1085 #define _istupper_l _isupper_l
   1086 
   1087 #define _totupper toupper
   1088 #define _totupper_l _toupper_l
   1089 #define _totlower tolower
   1090 #define _totlower_l _tolower_l
   1091 
   1092 #define _istlegal(_c) (1)
   1093 
   1094 #ifndef NULL
   1095 #ifdef __cplusplus
   1096 #ifndef _WIN64
   1097 #define NULL 0
   1098 #else
   1099 #define NULL 0LL
   1100 #endif  /* W64 */
   1101 #else
   1102 #define NULL ((void *)0)
   1103 #endif
   1104 #endif
   1105 
   1106 #define _strdec(_cpc1,_cpc2) ((_cpc1)>=(_cpc2) ? NULL : (_cpc2)-1)
   1107 #define _strinc(_pc) ((_pc)+1)
   1108 #define _strnextc(_cpc) ((unsigned int) *(const unsigned char *)(_cpc))
   1109 #define _strninc(_pc,_sz) (((_pc)+(_sz)))
   1110   _CRTIMP size_t __cdecl __strncnt(const char *_Str,size_t _Cnt);
   1111 #define _strncnt(_cpc,_sz) (__strncnt(_cpc,_sz))
   1112 #define _strspnp(_cpc1,_cpc2) (!_cpc1 ? NULL : ((*((_cpc1)+strspn(_cpc1,_cpc2))) ? ((_cpc1)+strspn(_cpc1,_cpc2)) : NULL))
   1113 
   1114 #define _strncpy_l(_Destination,_Source,_Count,_Locale) (strncpy(_Destination,_Source,_Count))
   1115 #define _strncat_l(_Destination,_Source,_Count,_Locale) (strncat(_Destination,_Source,_Count))
   1116 #define _strtok_l(_String,_Delimiters,_Locale) (strtok(_String,_Delimiters))
   1117 #define _strnset_l(_Destination,_Value,_Count,_Locale) (_strnset(_Destination,_Value,_Count))
   1118 #define _strset_l(_Destination,_Value,_Locale) (_strset(_Destination,_Value))
   1119 #endif
   1120 #endif
   1121 
   1122 #endif /* __CYGWIN__ */
   1123 
   1124 #define _T(x) __T(x)
   1125 #define _TEXT(x) __T(x)
   1126 
   1127 #ifdef __cplusplus
   1128 }
   1129 #endif
   1130 
   1131 #ifndef __CYGWIN__
   1132 #include <sec_api/tchar_s.h>
   1133 #endif /* __CYGWIN__ */
   1134 #endif
   1135