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#ifndef _INC_TCHAR_S 7#define _INC_TCHAR_S 8 9#include <tchar.h> 10 11#if defined(MINGW_HAS_SECURE_API) 12 13#ifdef __cplusplus 14extern "C" { 15#endif 16 17#ifdef _UNICODE 18 19#define _tprintf_s wprintf_s 20#define _tprintf_s_l _wprintf_s_l 21#define _tcprintf_s _cwprintf_s 22#define _tcprintf_s_l _cwprintf_s_l 23#define _vtcprintf_s _vcwprintf_s 24#define _vtcprintf_s_l _vcwprintf_s_l 25#define _ftprintf_s fwprintf_s 26#define _ftprintf_s_l _fwprintf_s_l 27#define _stprintf_s swprintf_s 28#define _stprintf_s_l _swprintf_s_l 29#define _sntprintf_s _snwprintf_s 30#define _sntprintf_s_l _snwprintf_s_l 31#define _vtprintf_s vwprintf_s 32#define _vtprintf_s_l _vwprintf_s_l 33#define _vftprintf_s vfwprintf_s 34#define _vftprintf_s_l _vfwprintf_s_l 35#define _vstprintf_s vswprintf_s 36#define _vstprintf_s_l _vswprintf_s_l 37#define _vsntprintf_s _vsnwprintf_s 38#define _vsntprintf_s_l _vsnwprintf_s_l 39 40#define _tscanf_s wscanf_s 41#define _tscanf_s_l _wscanf_s_l 42#define _tcscanf_s _cwscanf_s 43#define _tcscanf_s_l _cwscanf_s_l 44#define _ftscanf_s fwscanf_s 45#define _ftscanf_s_l _fwscanf_s_l 46#define _stscanf_s swscanf_s 47#define _stscanf_s_l _swscanf_s_l 48#define _sntscanf_s _snwscanf_s 49#define _sntscanf_s_l _snwscanf_s_l 50 51#define _cgetts_s _cgetws_s 52#define _getts_s _getws_s 53 54#define _itot_s _itow_s 55#define _ltot_s _ltow_s 56#define _ultot_s _ultow_s 57#define _i64tot_s _i64tow_s 58#define _ui64tot_s _ui64tow_s 59 60#define _tcscat_s wcscat_s 61#define _tcscpy_s wcscpy_s 62#define _tcsncat_s wcsncat_s 63#define _tcsncat_s_l _wcsncat_s_l 64#define _tcsncpy_s wcsncpy_s 65#define _tcsncpy_s_l _wcsncpy_s_l 66#define _tcstok_s wcstok_s 67#define _tcstok_s_l _wcstok_s_l 68#define _tcserror_s _wcserror_s 69#define __tcserror_s __wcserror_s 70 71#define _tcsnset_s _wcsnset_s 72#define _tcsnset_s_l _wcsnset_s_l 73#define _tcsset_s _wcsset_s 74#define _tcsset_s_l _wcsset_s_l 75 76#define _tasctime_s _wasctime_s 77#define _tctime_s _wctime_s 78#define _tctime32_s _wctime32_s 79#define _tctime64_s _wctime64_s 80#define _tstrdate_s _wstrdate_s 81#define _tstrtime_s _wstrtime_s 82 83#define _tgetenv_s _wgetenv_s 84#define _tdupenv_s _wdupenv_s 85#define _tmakepath_s _wmakepath_s 86#define _tputenv_s _wputenv_s 87#define _tsearchenv_s _wsearchenv_s 88#define _tsplitpath_s _wsplitpath_s 89 90#define _tfopen_s _wfopen_s 91#define _tfreopen_s _wfreopen_s 92#define _ttmpnam_s _wtmpnam_s 93#define _taccess_s _waccess_s 94#define _tmktemp_s _wmktemp_s 95 96#define _tcsnccat_s wcsncat_s 97#define _tcsnccat_s_l _wcsncat_s_l 98#define _tcsnccpy_s wcsncpy_s 99#define _tcsnccpy_s_l _wcsncpy_s_l 100 101#define _tcslwr_s _wcslwr_s 102#define _tcslwr_s_l _wcslwr_s_l 103#define _tcsupr_s _wcsupr_s 104#define _tcsupr_s_l _wcsupr_s_l 105 106#define _wcstok_s_l(_String,_Delimiters,_Current_position,_Locale) (wcstok_s(_String,_Delimiters,_Current_position)) 107#define _wcsnset_s_l(_Destination,_Destination_size_chars,_Value,_Count,_Locale) (_wcsnset_s(_Destination,_Destination_size_chars,_Value,_Count)) 108#define _wcsset_s_l(_Destination,_Destination_size_chars,_Value,_Locale) (_wcsset_s(_Destination,_Destination_size_chars,_Value)) 109 110#else 111 112#define _tprintf_s printf_s 113#define _tprintf_s_l _printf_s_l 114#define _tcprintf_s _cprintf_s 115#define _tcprintf_s_l _cprintf_s_l 116#define _vtcprintf_s _vcprintf_s 117#define _vtcprintf_s_l _vcprintf_s_l 118#define _ftprintf_s fprintf_s 119#define _ftprintf_s_l _fprintf_s_l 120#define _stprintf_s sprintf_s 121#define _stprintf_s_l _sprintf_s_l 122#define _sntprintf_s _snprintf_s 123#define _sntprintf_s_l _snprintf_s_l 124#define _vtprintf_s vprintf_s 125#define _vtprintf_s_l _vprintf_s_l 126#define _vftprintf_s vfprintf_s 127#define _vftprintf_s_l _vfprintf_s_l 128#define _vstprintf_s vsprintf_s 129#define _vstprintf_s_l _vsprintf_s_l 130#define _vsntprintf_s _vsnprintf_s 131#define _vsntprintf_s_l _vsnprintf_s_l 132#define _tscanf_s scanf_s 133#define _tscanf_s_l _scanf_s_l 134#define _tcscanf_s _cscanf_s 135#define _tcscanf_s_l _cscanf_s_l 136#define _ftscanf_s fscanf_s 137#define _ftscanf_s_l _fscanf_s_l 138#define _stscanf_s sscanf_s 139#define _stscanf_s_l _sscanf_s_l 140#define _sntscanf_s _snscanf_s 141#define _sntscanf_s_l _snscanf_s_l 142 143#define _getts_s gets_s 144#define _cgetts_s _cgets_s 145#define _itot_s _itoa_s 146#define _ltot_s _ltoa_s 147#define _ultot_s _ultoa_s 148#define _i64tot_s _i64toa_s 149#define _ui64tot_s _ui64toa_s 150 151#define _tcscat_s strcat_s 152#define _tcscpy_s strcpy_s 153#define _tcserror_s strerror_s 154#define __tcserror_s _strerror_s 155 156#define _tasctime_s asctime_s 157#define _tctime_s ctime_s 158#define _tctime32_s _ctime32_s 159#define _tctime64_s _ctime64_s 160#define _tstrdate_s _strdate_s 161#define _tstrtime_s _strtime_s 162 163#define _tgetenv_s getenv_s 164#define _tdupenv_s _dupenv_s 165#define _tmakepath_s _makepath_s 166#define _tputenv_s _putenv_s 167#define _tsearchenv_s _searchenv_s 168#define _tsplitpath_s _splitpath_s 169 170#define _tfopen_s fopen_s 171#define _tfreopen_s freopen_s 172#define _ttmpnam_s tmpnam_s 173#define _tmktemp_s _mktemp_s 174 175#ifndef _POSIX_ 176#define _taccess_s _access_s 177#endif 178 179#define _tsopen_s _sopen_s 180 181#ifdef _MBCS 182 183#ifdef _MB_MAP_DIRECT 184 185#define _tcsncat_s _mbsnbcat_s 186#define _tcsncat_s_l _mbsnbcat_s_l 187#define _tcsncpy_s _mbsnbcpy_s 188#define _tcsncpy_s_l _mbsnbcpy_s_l 189#define _tcstok_s _mbstok_s 190#define _tcstok_s_l _mbstok_s_l 191 192#define _tcsnset_s _mbsnbset_s 193#define _tcsnset_s_l _mbsnbset_s_l 194#define _tcsset_s _mbsset_s 195#define _tcsset_s_l _mbsset_s_l 196 197#define _tcsnccat_s _mbsncat_s 198#define _tcsnccat_s_l _mbsncat_s_l 199#define _tcsnccpy_s _mbsncpy_s 200#define _tcsnccpy_s_l _mbsncpy_s_l 201#define _tcsncset_s _mbsnset_s 202#define _tcsncset_s_l _mbsnset_s_l 203 204#define _tcslwr_s _mbslwr_s 205#define _tcslwr_s_l _mbslwr_s_l 206#define _tcsupr_s _mbsupr_s 207#define _tcsupr_s_l _mbsupr_s_l 208 209#define _tccpy_s _mbccpy_s 210#define _tccpy_s_l _mbccpy_s_l 211#else 212 213 _CRTIMP char *__cdecl _tcsncat_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount); 214 _CRTIMP char *__cdecl _tcsncat_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale); 215 _CRTIMP char *__cdecl _tcsncpy_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount); 216 _CRTIMP char *__cdecl _tcsncpy_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale); 217 _CRTIMP char *__cdecl _tcstok_s(char *_Str,const char *_Delim,char **_Context); 218 _CRTIMP char *__cdecl _tcstok_s_l(char *_Str,const char *_Delim,char **_Context,_locale_t _Locale); 219 _CRTIMP errno_t __cdecl _tcsset_s(char *_Str,size_t _SizeInChars,unsigned int _Val); 220 _CRTIMP errno_t __cdecl _tcsset_s_l(char *_Str,size_t _SizeInChars,unsigned int,_locale_t _Locale); 221 _CRTIMP char *__cdecl _tcsnccat_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount); 222 _CRTIMP char *__cdecl _tcsnccat_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale); 223 _CRTIMP char *__cdecl _tcsnccpy_s(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount); 224 _CRTIMP char *__cdecl _tcsnccpy_s_l(char *_Dst,size_t _DstSizeInChars,const char *_Src,size_t _MaxCount,_locale_t _Locale); 225 _CRTIMP char *__cdecl _tcslwr_s(char *_Str,size_t _SizeInChars); 226 _CRTIMP char *__cdecl _tcslwr_s_l(char *_Str,size_t _SizeInChars,_locale_t _Locale); 227 _CRTIMP char *__cdecl _tcsupr_s(char *_Str,size_t _SizeInChars); 228 _CRTIMP char *__cdecl _tcsupr_s_l(char *_Str,size_t _SizeInChars,_locale_t _Locale); 229 230#endif 231 232#else 233 234#define _tcsncat_s strncat_s 235#define _tcsncat_s_l _strncat_s_l 236#define _tcsncpy_s strncpy_s 237#define _tcsncpy_s_l _strncpy_s_l 238#define _tcstok_s strtok_s 239#define _tcstok_s_l _strtok_s_l 240 241#define _tcsnset_s _strnset_s 242#define _tcsnset_s_l _strnset_s_l 243#define _tcsset_s _strset_s 244#define _tcsset_s _strset_s 245#define _tcsset_s_l _strset_s_l 246 247#define _tcsnccat_s strncat_s 248#define _tcsnccat_s_l _strncat_s_l 249#define _tcsnccpy_s strncpy_s 250#define _tcsnccpy_s_l _strncpy_s_l 251 252#define _tcslwr_s _strlwr_s 253#define _tcslwr_s_l _strlwr_s_l 254#define _tcsupr_s _strupr_s 255#define _tcsupr_s_l _strupr_s_l 256 257#define _strnset_s_l(_Destination,_Destination_size_chars,_Value,_Count,_Locale) (_strnset_s(_Destination,_Destination_size_chars,_Value,_Count)) 258#define _strset_s_l(_Destination,_Destination_size_chars,_Value,_Locale) (_strset_s(_Destination,_Destination_size_chars,_Value)) 259#endif 260#endif 261 262#ifdef __cplusplus 263} 264#endif 265#endif 266#endif 267