Module: wine Branch: master Commit: 7c6a50cc46893757d398a867421eaa7196eec1bf URL: https://gitlab.winehq.org/wine/wine/-/commit/7c6a50cc46893757d398a867421eaa7...
Author: Daniel Lehman dlehman25@gmail.com Date: Wed Jan 17 21:29:59 2024 -0800
include: Add some msvcrt declarations.
---
include/msvcrt/corecrt_wctype.h | 2 ++ include/msvcrt/corecrt_wstdlib.h | 6 ++++++ include/msvcrt/corecrt_wtime.h | 1 + include/msvcrt/stdlib.h | 1 + include/msvcrt/time.h | 1 + include/msvcrt/wchar.h | 1 + include/tchar.h | 5 +++++ 7 files changed, 17 insertions(+)
diff --git a/include/msvcrt/corecrt_wctype.h b/include/msvcrt/corecrt_wctype.h index 9661ab5e596..26130aa4839 100644 --- a/include/msvcrt/corecrt_wctype.h +++ b/include/msvcrt/corecrt_wctype.h @@ -28,6 +28,7 @@ _ACRTIMP int __cdecl _isleadbyte_l(int,_locale_t); _ACRTIMP int __cdecl _iswalnum_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswalpha_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswblank_l(wint_t,_locale_t); +_ACRTIMP int __cdecl _iswcntrl_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswctype_l(wint_t,wctype_t,_locale_t); _ACRTIMP int __cdecl _iswdigit_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswgraph_l(wint_t,_locale_t); @@ -36,6 +37,7 @@ _ACRTIMP int __cdecl _iswprint_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswpunct_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswspace_l(wint_t,_locale_t); _ACRTIMP int __cdecl _iswupper_l(wint_t,_locale_t); +_ACRTIMP int __cdecl _iswxdigit_l(wint_t,_locale_t); _ACRTIMP wint_t __cdecl _towlower_l(wint_t,_locale_t); _ACRTIMP wint_t __cdecl _towupper_l(wint_t,_locale_t); _ACRTIMP int __cdecl is_wctype(wint_t,wctype_t); diff --git a/include/msvcrt/corecrt_wstdlib.h b/include/msvcrt/corecrt_wstdlib.h index e37da1848ac..f6c68bb937a 100644 --- a/include/msvcrt/corecrt_wstdlib.h +++ b/include/msvcrt/corecrt_wstdlib.h @@ -46,6 +46,7 @@ _ACRTIMP errno_t __cdecl _mbstowcs_s_l(size_t*,wchar_t*,size_t,const char* _ACRTIMP int __cdecl mbtowc(wchar_t*,const char*,size_t); _ACRTIMP int __cdecl _mbtowc_l(wchar_t*,const char*,size_t,_locale_t); _ACRTIMP float __cdecl wcstof(const wchar_t*,wchar_t**); +_ACRTIMP float __cdecl _wcstof_l(const wchar_t*,wchar_t**,_locale_t); _ACRTIMP double __cdecl wcstod(const wchar_t*,wchar_t**); _ACRTIMP __msvcrt_long __cdecl wcstol(const wchar_t*,wchar_t**,int); _ACRTIMP size_t __cdecl wcstombs(char*,const wchar_t*,size_t); @@ -63,6 +64,11 @@ _ACRTIMP __int64 __cdecl _wcstoll_l(const wchar_t*,wchar_t**,int,_locale_t _ACRTIMP unsigned __int64 __cdecl wcstoull(const wchar_t*,wchar_t**,int); _ACRTIMP unsigned __int64 __cdecl _wcstoull_l(const wchar_t*,wchar_t**,int,_locale_t);
+#ifdef _UCRT +_ACRTIMP double __cdecl _wcstold_l(const wchar_t*,wchar_t**,_locale_t); +static inline long double wcstold(const wchar_t *string, wchar_t **endptr) { return _wcstold_l(string, endptr, NULL); } +#endif /* _UCRT */ + #ifdef __cplusplus extern "C++" {
diff --git a/include/msvcrt/corecrt_wtime.h b/include/msvcrt/corecrt_wtime.h index 9d96f1a171c..c05602d2156 100644 --- a/include/msvcrt/corecrt_wtime.h +++ b/include/msvcrt/corecrt_wtime.h @@ -30,6 +30,7 @@ extern "C" {
_ACRTIMP wchar_t* __cdecl _wasctime(const struct tm*); _ACRTIMP size_t __cdecl wcsftime(wchar_t*,size_t,const wchar_t*,const struct tm*); +_ACRTIMP size_t __cdecl _wcsftime_l(wchar_t*,size_t,const wchar_t*,const struct tm*,_locale_t); _ACRTIMP wchar_t* __cdecl _wctime32(const __time32_t*); _ACRTIMP wchar_t* __cdecl _wctime64(const __time64_t*); _ACRTIMP wchar_t* __cdecl _wstrdate(wchar_t*); diff --git a/include/msvcrt/stdlib.h b/include/msvcrt/stdlib.h index b7ced413440..f1ffcd8c035 100644 --- a/include/msvcrt/stdlib.h +++ b/include/msvcrt/stdlib.h @@ -225,6 +225,7 @@ _ACRTIMP int __cdecl rand(void); _ACRTIMP errno_t __cdecl rand_s(unsigned int*); _ACRTIMP void __cdecl srand(unsigned int); _ACRTIMP float __cdecl strtof(const char*,char**); +_ACRTIMP float __cdecl _strtof_l(const char*,char**,_locale_t); _ACRTIMP double __cdecl strtod(const char*,char**); _ACRTIMP __msvcrt_long __cdecl strtol(const char*,char**,int); _ACRTIMP __msvcrt_ulong __cdecl strtoul(const char*,char**,int); diff --git a/include/msvcrt/time.h b/include/msvcrt/time.h index 4d79d066184..42e2fc4b1e2 100644 --- a/include/msvcrt/time.h +++ b/include/msvcrt/time.h @@ -91,6 +91,7 @@ _ACRTIMP errno_t __cdecl _localtime64_s(struct tm*, const __time64_t*); _ACRTIMP __time32_t __cdecl _mktime32(struct tm*); _ACRTIMP __time64_t __cdecl _mktime64(struct tm*); _ACRTIMP size_t __cdecl strftime(char*,size_t,const char*,const struct tm*); +_ACRTIMP size_t __cdecl _strftime_l(char*,size_t,const char*,const struct tm*,_locale_t); _ACRTIMP __time32_t __cdecl _time32(__time32_t*); _ACRTIMP __time64_t __cdecl _time64(__time64_t*);
diff --git a/include/msvcrt/wchar.h b/include/msvcrt/wchar.h index cb82a08692a..4ca189bd2c7 100644 --- a/include/msvcrt/wchar.h +++ b/include/msvcrt/wchar.h @@ -39,6 +39,7 @@ size_t __cdecl mbrlen(const char *,size_t,mbstate_t*); size_t __cdecl mbrtowc(wchar_t*,const char*,size_t,mbstate_t*); size_t __cdecl mbsrtowcs(wchar_t*,const char**,size_t,mbstate_t*); size_t __cdecl wcrtomb(char*,wchar_t,mbstate_t*); +int __cdecl wcrtomb_s(size_t*,char*,size_t,wchar_t,mbstate_t*); size_t __cdecl wcsrtombs(char*,const wchar_t**,size_t,mbstate_t*); int __cdecl wctob(wint_t);
diff --git a/include/tchar.h b/include/tchar.h index a51bd5b359f..bbf85973b41 100644 --- a/include/tchar.h +++ b/include/tchar.h @@ -115,6 +115,7 @@ extern "C" { #define _tcsdec WINE_tchar_routine(_strdec, _mbsdec, _wcsdec) #define _tcsdup WINE_tchar_routine(strdup, _mbsdup, _wcsdup) #define _tcsftime WINE_tchar_routine(strftime, strftime, wcsftime) +#define _tcsftime_l WINE_tchar_routine(_strftime_l, _strftime_l, _wcsftime_l) #define _tcsicmp WINE_tchar_routine(strcasecmp, _mbsicmp, _wcsicmp) #define _tcsicoll WINE_tchar_routine(_stricoll, _stricoll, _wcsicoll) #define _tcsinc WINE_tchar_routine(_strinc, _mbsinc, _wcsinc) @@ -148,8 +149,12 @@ extern "C" { #define _tcsspn WINE_tchar_routine(strspn, _mbsspn, wcsspn) #define _tcsstr WINE_tchar_routine(strstr, _mbsstr, wcsstr) #define _tcstod WINE_tchar_routine(strtod, strtod, wcstod) +#define _tcstof WINE_tchar_routine(strtof, strtof, wcstof) +#define _tcstof_l WINE_tchar_routine(_strtof_l, _strtof_l, _wcstof_l) #define _tcstok WINE_tchar_routine(strtok, _mbstok, _wcstok) #define _tcstol WINE_tchar_routine(strtol, strtol, wcstol) +#define _tcstold WINE_tchar_routine(strtold, strtold, wcstold) +#define _tcstold_l WINE_tchar_routine(_strtold_l, _strtold_l, _wcstold_l) #define _tcstoll WINE_tchar_routine(strtoll, strtoll, wcstoll) #define _tcstoll_l WINE_tchar_routine(_strtoll_l, _strtoll_l, _wcstoll_l) #define _tcstoul WINE_tchar_routine(strtoul, strtoul, wcstoul)