Well,

the inline variant seems fine to me.  I would prefer to have here
instead an implementation file.  As later allows us to provide such a
function from import-library too.

Cheers,
Kai

2017-06-04 2:10 GMT+02:00 Martell Malone <[email protected]>:
> Following up with an initial patch
> Not sure if this is ideal because this will be used over the MSVC version.
> I can add it to a c source as an emulation if that suits better
>
> diff --git a/mingw-w64-headers/crt/time.h b/mingw-w64-headers/crt/time.h
> index 7f5bbb78..405a9f1d 100644
> --- a/mingw-w64-headers/crt/time.h
> +++ b/mingw-w64-headers/crt/time.h
> @@ -129,7 +129,9 @@ extern "C" {
>    struct tm *__cdecl _localtime32(const __time32_t *_Time)
> __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
>    _SECIMP errno_t __cdecl _localtime32_s (struct tm *_Tm,const __time32_t
> *_Time);
>    size_t __cdecl strftime(char * __restrict__ _Buf,size_t
> _SizeInBytes,const char * __restrict__ _Format,const struct tm *
> __restrict__ _Tm);
> -  _CRTIMP size_t __cdecl _strftime_l(char * __restrict__ _Buf,size_t
> _Max_size,const char * __restrict__ _Format,const struct tm * __restrict__
> _Tm,_locale_t _Locale);
> +  __forceinline size_t __cdecl _strftime_l(char * __restrict__ _Buf,size_t
> _Max_size,const char * __restrict__ _Format,const struct tm * __restrict__
> _Tm,_locale_t _Locale) {
> +    return strftime(_Buf, _Max_size, _Format, _Tm);
> +  }
>    _CRTIMP char *__cdecl _strdate(char *_Buffer)
> __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
>    _SECIMP errno_t __cdecl _strdate_s (char *_Buf,size_t _SizeInBytes);
>    _CRTIMP char *__cdecl _strtime(char *_Buffer)
> __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
>
> On Mon, May 22, 2017 at 12:18 PM, Martell Malone <[email protected]>
> wrote:
>
>> Thanks for spotting that strangely MSDN seems to think it does exist.
>> https://docs.microsoft.com/en-gb/cpp/c-runtime-library/
>> reference/strftime-wcsftime-strftime-l-wcsftime-l
>> I have no problem in doing an emulation for "strftime_l".
>> I would rather not use random msvcrt versions :)
>>
>> On Mon, May 22, 2017 at 12:14 PM, Liu Hao <[email protected]> wrote:
>>
>>> On 2017/5/22 18:43, JonY wrote:
>>> > On 05/22/2017 07:57 AM, Liu Hao wrote:
>>> >> On 2017/5/22 2:05, Martell Malone wrote:
>>> >>> Context: libc++ uses strftime_l now
>>> >>>
>>> >>> Please Review
>>> >> The DEF files are generated from DLLs. I don't have Win10 at hand so I
>>> >> have asked jon_y on IRC to update them.
>>> >>
>>> >
>>> > Win10 msvcrt doesn't have strftime_l, checked on 1607.
>>> Thanks for confirmation.
>>>
>>> On my Windows 7 the function `_strftime_l` is available in
>>> MSVCR{80,90,100,110,120}.DLL, but is not available in MSVCR{T,70}.DLL.
>>> So the patch can't be applied here.
>>>
>>> When I took my last look at libcxx it required MSVCR90 to build. I am
>>> not sure which version of MSVCR* libcxx requires today but I am afraid
>>> it can't be built with only MSVCRT. That is, in order to build libcxx
>>> you have to *replace* the default `-lmsvcrt` with `-lmsvcr90` (MSVCR90
>>> is fragile so I suggest you use `-lmsvcr100`). In the case of GCC this
>>> can be done by dumping GCC's default specs file, modifying it, then
>>> building use the modified specs.
>>>
>>> --
>>> Best regards,
>>> LH_Mouse
>>>
>>>
>>> ------------------------------------------------------------
>>> ------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Mingw-w64-public mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>
>>
>>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Mingw-w64-public mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to