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