On 21.01.2015 22:50, LRN wrote: > On 19.01.2015 16:12, Kai Tietz wrote: >> 2015-01-19 12:35 GMT+01:00 Jacek Caban wrote: >>> --- >>> mingw-w64-headers/crt/sec_api/time_s.h | 62 >>> ---------------------------------- >>> mingw-w64-headers/crt/time.h | 31 +++++++++++++++-- >>> 2 files changed, 29 insertions(+), 64 deletions(-) >>> delete mode 100644 mingw-w64-headers/crt/sec_api/time_s.h >>> >> Patch looks ok to me. >> >> So, we should try to go this route for other "secured"-API, too. We >> should try to emulate missing functions here in libmingwex. by this >> we can remove the need for user to know what API is present on what OS >> .... > > This update breaks programs that include both time.h and wchar.h, which > includes sec_api/wchar_s.h, which declares _wctime_s, which is also declared > in > time.h. This is because it's put in time.h under the guard of _INC_WTIME_INL > instead of _INC_WTIME_S_INL. >
Here's a patch that fixes this. -- O< ascii ribbon - stop html email! - www.asciiribbon.org
From 28b4c66c9bed0a98f64dcda20c408e459e4522e6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A0=D1=83=D1=81=D0=BB=D0=B0=D0=BD=20=D0=98=D0=B6=D0=B1?= =?UTF-8?q?=D1=83=D0=BB=D0=B0=D1=82=D0=BE=D0=B2?= <lrn1...@gmail.com> Date: Thu, 22 Jan 2015 05:12:53 +0000 Subject: [PATCH] Separate _wctime_s from _wctime, put under its own _INC_WRIMTE_S_INL guard --- mingw-w64-headers/crt/time.h | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/mingw-w64-headers/crt/time.h b/mingw-w64-headers/crt/time.h index e8f1008..bf2435f 100644 --- a/mingw-w64-headers/crt/time.h +++ b/mingw-w64-headers/crt/time.h @@ -166,18 +166,27 @@ extern "C" { #if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL) #define _INC_WTIME_INL wchar_t *__cdecl _wctime(const time_t *) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; - errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *); #ifndef __CRT__NO_INLINE #ifndef _USE_32BIT_TIME_T __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime64(_Time); } - __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s (_Buffer,_SizeInWords,_Time); } #else __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime32(_Time); } - __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime32_s (_Buffer,_SizeInWords,_Time); } #endif #endif /* __CRT__NO_INLINE */ #endif +#if !defined (RC_INVOKED) && !defined (_INC_WTIME_S_INL) +#define _INC_WTIME_INL + errno_t __cdecl _wctime_s(wchar_t *, size_t, const time_t *); +#ifndef __CRT__NO_INLINE +#ifndef _USE_32BIT_TIME_T + __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime64_s (_Buffer,_SizeInWords,_Time); } +#else + __CRT_INLINE errno_t __cdecl _wctime_s (wchar_t *_Buffer,size_t _SizeInWords,const time_t *_Time) { return _wctime32_s (_Buffer,_SizeInWords,_Time); } +#endif +#endif /* __CRT__NO_INLINE */ +#endif + #define _WTIME_DEFINED #endif -- 1.8.5.3
0x922360B0.asc
Description: application/pgp-keys
signature.asc
Description: OpenPGP digital signature
------------------------------------------------------------------------------ New Year. New Location. New Benefits. New Data Center in Ashburn, VA. GigeNET is offering a free month of service with a new server in Ashburn. Choose from 2 high performing configs, both with 100TB of bandwidth. Higher redundancy.Lower latency.Increased capacity.Completely compliant. http://p.sf.net/sfu/gigenet
_______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public