2010-12-31 Kai Tietz * float.h: New year's eve present. 2010-11-16 Kai Tietz * tchar.h (_tWinMain): Define as wWinMain for UNICODE case. 2010-10-10 Ozkan Sezer * assert.h: Always undefine and redefine assert() based on NDEBUG. 2010-09-20 Pawel Sikora * eh.h (_is_exception_typeof): Use std::type_info. 2010-09-16 Jonathan Yong * malloc.h (__mingw_aligned_malloc): Declare prototype. (__mingw_aligned_free): Likewise. (__mingw_aligned_offset_realloc): Likewise. (__mingw_aligned_realloc): Likewise. 2010-09-07 Ozkan Sezer * tchar.h (_tcsnlen): Remove the #if0 comment-out from the macro. 2010-09-06 Ozkan Sezer * string.h (strnlen): Remove the #if0 comment-out from the prototype. 2010-08-30 Ozkan Sezer * _mingw.h (__MINGW_MSC_PREREQ): Fix inverted logic. * dirent.h: Move the _mingw.h include after the header's include guard, move the packing pragmas after the RC_INVOKED guard. Reformat for smaller diff output against mingw version. 2010-08-19 Mook * _mingw.h (__MINGW_PRAGMA_PARAM): Define for MSVC. 2010-08-18 Ozkan Sezer From cygwin CVS 2010-08-17 by Keith Marshall: * limits.h (PATH_MAX): Make it agree with Microsoft's semantically identical MAX_PATH; correct value is 260. 2010-08-15 Ozkan Sezer * stdio.h (_vsnwprintf_l): Fix multiple declaration from rev. 1596. * wchar.h (_vsnwprintf_l): Likewise. (_swscanf_l): Likewise. 2010-08-14 Kai Tietz * time.h: Adjust prototypes for c99. * intrin.h: Likewise. * conio.h: Likewise. * memory.h: Likewise. * string.h: Likewise. * stdlib.h: Likewise. * stdio.h: Likewise. * wchar.h: Likewise. 2010-08-12 Kai Tietz * _mingw.h (__PRAGMA_PARAM): Renamed to __MINGW_PRAGMA_PARAM. (__BROKEN_INTERFACE): Renamed to __MINGW_BROKEN_INTERFACE. 2010-08-12 Jonathan Yong * _mingw.h (__PRAGMA_PARAM): Define. (__BROKEN_INTERFACE): Likewise. 2010-08-02 Ozkan Sezer * _mingw.h (NONAMELESSUNION): If the compiler is MSVC and the MS extensions are disabled, define it. (DUMMYUNIONNAMEX): Remove, not used or needed. (DUMMYSTRUCTNAMEX): Likewise. (DUMMYUNIONNAME1): Add a note that only Wine uses this variant. (DUMMYSTRUCTNAME1): Likewise. (DUMMYUNIONNAME6): Define. (DUMMYUNIONNAME7): Define. (DUMMYUNIONNAME8): Define. (DUMMYUNIONNAME9): Define. 2010-07-31 Kai Tietz * math.h (__mingw_raise_matherr): New prototype. 2010-07-30 Ozkan Sezer * errno.h (ENOFILE): New, define as ENOENT. * _mingw.h (NONAMELESSSTRUCT, NONAMELESSUNION): If one is defined make sure the other is defined, too. Fixes the mess caused by NONAMELESSSTRUCT which isn't used by any others, so just rely on NONAMELESSUNION. 2010-07-29 Ozkan Sezer Add mingw.org compatibility macros for anonymous unions: * _mingw.h (_ANONYMOUS_UNION): New. (_ANONYMOUS_STRUCT): New. (_UNION_NAME): New. (_STRUCT_NAME): New. (__ANONYMOUS_DEFINED): New, guarding the above. 2010-07-29 Kai Tietz * sys/types.h (_sigset_t): New. * math.h (fabs): Provide inline version. (__fpclassify): Likewise. (__fpclassifyf): Likewise. 2010-07-27 Ozkan Sezer * _mingw.h (__CRT_UNALIGNED): Remove. (UNALIGNED): Define properly against __unaligned for better compatibility with r/os. 2010-07-27 Ozkan Sezer * _mingw.h (_CRT_ALIGN): Add an MSVC version. (__unaligned): Remove irrelevant comments. See the documentation at http://msdn.microsoft.com/en-us/library/ms253978(VS.80).aspx 2010-07-23 Kai Tietz * _mingw_float.h: Removed. * float.h: Old copy of _mingw_float.h. 2010-07-23 Ozkan Sezer * _mingw_stdarg.h (va_copy): Add missing parens. * _mingw.h: Add extern to __forceinline definition. 2010-07-22 Ozkan Sezer Varargs & related cleanups and updates: * stdio.h: Remove the vadefs.h include, it is already included through _mingw.h. * wchar.h: Remove the vadefs.h include, it is already included through _mingw.h. Remove the __gnuc_va_list and va_list type definitions, already done in vadefs.h (included via _mingw.h.) * stdarg.h: Guard the whole header with __GNUC__ ifdefs. * _mingw_stdarg.h: Use _crt_va_copy invented in vadefs.h (see below) for the __va_copy definition. Move va_copy definition with ifdefs from vadefs.h to here. * _mingw.h: Move the #pragma pack(push,_CRT_PACKING) below vadefs.h inclusion and remove the comment about duplication. Remove the __gnuc_va_list and va_list type definitions, already done in the included vadefs.h. * vadefs.h: Remove _CRT_PACKING definition, already defined in _mingw.h. Remove _UINTPTR_T_DEFINED & co, already defined in _mingw.h. Guard __gnuc_va_list type definition with __GNUC__ ifdefs. Add MSVC version of va_list type definition and guard the gcc version properly. Restrict some of the macros to MSVC only, apparently used only by that compiler. Guard the gcc versions of _crt_va_* macros properly, add MSVC-x86 versions of them from r/os, add MSVC-AMD64 defs from r/os svn repo ros-amd64-bringup branch and #error for other cpus and compilers. Invent _crt_va_copy by analogy to other _crt_va_* macros for use in stdarg.h. 2010-07-22 Amine Khaldi Several patches for MSC/non-GCC: * _mingw.h (__MINGW_MSC_PREREQ): Define for MSC by analogy to the existing __MINGW_GNUC_PREREQ. (__CRT_INLINE): Define as __inline for MSC. (__restrict__): Define as __restrict for MSC, or as empty for anything other than GCC. (__MINGW_ATTRIB_NORETURN): Define as __declspec(noreturn) for MSC. (__MINGW_ATTRIB_MALLOC): Define as __declspec(noalias) __declspec(restrict) for MSC. (__MINGW_ATTRIB_PURE): Define as empty for MSC. (__MINGW_ATTRIB_USED): Ditto. (__MINGW_ATTRIB_CONST): Ditto. (__MINGW_ATTRIB_DEPRECATE): Define as __declspec(deprecated) for MSC. (__MINGW_NOTHROW): Define as __declspec(nothrow) for MSC && __cplusplus. * setjmp.h: Include crtdefs.h instead of _mingw.h which will be included as a result. 2010-07-21 Ozkan Sezer * _mingw.h (__MINGW_ATTRIB_UNUSED): Define as __attribute__((unused)) for gcc. (__MINGW_ATTRIB_USED): Define as __attribute__((used)) for gcc, or as __MINGW_ATTRIB_UNUSED where it is not supported ie. gcc < 3.1 or !gcc. 2010-07-18 Ozkan Sezer * assert.h (assert): Check against both _UNICODE and UNICODE. Reword and reformat a few places. 2010-07-18 Kai Tietz PR/3031224 * assert.h (assert): Allow for ISO-C99 that assert gets redefined according state of NDEBUG. 2010-07-18 Ozkan Sezer * _mingw_mac.h (__GNU_EXTENSION): Define as __MINGW_EXTENSION 2010-07-17 Ozkan Sezer * _mingw_unicode.h (__MINGW_TYPEDEF_UAW): New helper macro. 2010-07-15 Kai Tietz * process.h (_Exit): Fix missing declaration. * stdlib.h (_Exit): Unify code block. * assert.h (_Exit): Likewise. 2010-07-13 Kai Tietz PR/3028674 * intrin.h (_m_pextrw): Make sure gcc's intrinsic do not do havoc. 2010-07-10 Ramiro Polla * stdlib.h (strtod): For ISO-C99 use posix version __strtod. 2010-06-26 Doug Semler * complex.h (cabs, cabsf, cabsl): New inlines to match new complex. (carg, cargl, cargf): Make the inlines match the new complex library. 2010-06-18 Doug Semler * _mingw_mac.h: Move Unicode macro definitions to _mingw_unicode.h * _mingw_unicode.h: New file. 2010-06-17 Kai Tietz * _mingw_mac (__MINGW_PROCNAMEEXT_AW): New define. 2010-06-15 Ozkan Sezer * _bsd_types.h: Moved from include/mingw_inc/_bsd_types.h. Changed its include guard to _BSDTYPES_DEFINED. 2010-06-12 Kai Tietz * _mingw_mac.h (__MINGW_STRING_AW): New helper macro. 2010-06-12 Ozkan Sezer Kill definitions of I_X86_ macro and adjust places it was used: * sec_api/stralign_s.h: Replace checks against I_X86_ by checks against _X86_. 2010-05-24 Ozkan Sezer * mem.h: A little syncing with mingw32 (remove the unnecessary __STRICT_ANSI__ guards.) * sys/fcntl.h: Likewise. * sys/file.h: Likewise. * sys/param.h: Likewise. * sys/time.h: Likewise. * sys/unistd.h: Likewise. * time.h: Likewise. * unistd.h: A little syncing with mingw32 (remove the no longer used __UNISTD_GETOPT__ macro.) Whitespace tidy-up. 2010-05-22 Ozkan Sezer * _timeval.h: New. * time.h: Include _timeval.h. Move struct timeval, timerisset, timercmp and timerclear to _timeval.h. * sys/time.h: Likewise. 2010-05-21 Doug Semler * process.h (_endthread): Add noreturn attribute. (_endthreadex): Likewise. 2010-05-13 Ozkan Sezer * time.h (asctime_r): Do not bother zeroing the result buffer upon failure. (ctime_r): Likewise. (gmtime_r): Likewise. (localtime_r): Likewise. 2010-05-12 Ozkan Sezer * time.h (asctime_r): New macro. (ctime_r): Fix the gcc extension macro to return the correct pointer. (gmtime_r): Likewise. (localtime_r): Likewise. 2010-04-27 Ozkan Sezer * dirent.h (DIR): Change dd_handle from long to intptr_t type for win64 compatibility. (_WDIR): Likewise. 2010-04-18 Ozkan Sezer * stdio.h: push/pop possible [v]snprintf and [v]snwprintf macros. For the problem report about these macros in libxml2, see: http://sourceforge.net/projects/mingw-w64/forums/forum/723797/topic/3482477/ 2010-04-17 Kai Tietz * malloc.h, stdlib.h: Improve declaration of _aligned_malloc and _aligned_free for not collide by xmmintrin.h/mm_malloc.h provided by gcc. 2010-04-08 Kai Tietz * wchar.h (iswblank): Add missing prototype. 2010-03-31 Kai Tietz * assert.h (assert): Add default ASCII version. 2010-03-14 Jonathan Yong * math.h (frexp): Remove pure attribute. (modf): ditto. (sincos): ditto. (sincosl): ditto. (sincosf): ditto. (frexpf): ditto. (frexpl): ditto. 2010-02-02 Ozkan Sezer * profile.h: Remove advertising clause of copyright. For reference, see: ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change Closes our bug #2939623. 2010-02-01 Ozkan Sezer * _mingw_print_pop.h: Don't undefine/redifine the inttypes.h SCN* macros, because we don't have a __mingw_scanf() family implementation yet. Ifdef'ed the relevant portions by the yet non-defined HAVE_MINGW_SCANF_IMPL macro. * _mingw_print_push.h: Likewise. 2010-01-29 Ozkan Sezer * stdarg.h: Separate our stdarg.h into two, one which is the gcc- provided header and the other as _mingw_stdarg.h. Make stdarg.h include _mingw_stdarg.h. * float.h: Separate our float.h into two, one which is the gcc- provided header and the other as _mingw_float.h. Make float.h include _mingw_float.h. Fix confused license. * _mingw_float.h: New. * _mingw_stdarg.h: New. 2010-01-29 Ozkan Sezer * stdarg.h: Sync with the gcc PR c++/36799 fix from gcc trunk 2009-03-27/r145106. 2010-01-26 Jonathan Yong * getopt.h: Sync with mingw.org, it is also now PD instead of BSD 4 clause. 2010-01-23 Kai Tietz * crt/_mingw.h: Add SDK include of sdks/_mingw_ddk.h. 2010-01-14 Kai Tietz * tchar.h (PTCHAR, TBYTE, PTBYTE): Added. 2010-01-07 Jonathan Yong * math.h (sin): Add GCC pure attribute. (cos): Ditto. (tan): Ditto. (sinh): Ditto. (cosh): Ditto. (tanh): Ditto. (asin): Ditto. (acos): Ditto. (atan): Ditto. (atan2): Ditto. (exp): Ditto. (log): Ditto. (log2): Ditto. (pow): Ditto. (sqrt): Ditto. (ceil): Ditto. (floor): Ditto. (fabs): Ditto. (ldexp): Ditto. (frexp): Ditto. (modf): Ditto. (fmod): Ditto. (_cabs): Ditto. (_hypot): Ditto. (_j0): Ditto. (_j1): Ditto. (_jn): Ditto. (_y0): Ditto. (_y1): Ditto. (_yn): Ditto. (j0): Ditto. (j1): Ditto. (jn): Ditto. (y1): Ditto. (y2): Ditto. (yn): Ditto. (finite): Ditto. (fpclass): Ditto. (__fpclassifyl): Ditto. (__fpclassifyf): Ditto. (__fpclassify): Ditto. (__isnan): Ditto. (__isnanf): Ditto. (__isnanl): Ditto. (__signbit): Ditto. (__signbitf): Ditto. (__signbitl): Ditto. (sinf): Ditto. (sinl): Ditto. (cosf): Ditto. (cosl): Ditto. (tanf): Ditto. (tanl): Ditto. (asinf): Ditto. (asinl): Ditto. (acosf): Ditto. (acosl): Ditto. (atanf): Ditto. (atanl): Ditto. (atan2f): Ditto. (atan2l): Ditto. (sinhf): Ditto. (sinhl): Ditto. (coshf): Ditto. (coshl): Ditto. (tanhf): Ditto. (tanhl): Ditto. (acosh): Ditto. (acoshf): Ditto. (acoshl): Ditto. (asinh): Ditto. (asinhf): Ditto. (asinhl): Ditto. (atanh): Ditto. (atanhf): Ditto. (atanhl): Ditto. (expf): Ditto. (expl): Ditto. (exp2): Ditto. (exp2f): Ditto. (exp2l): Ditto. (expm1): Ditto. (expm1f): Ditto. (expm1l): Ditto. (frexpf): Ditto. (frexpl): Ditto. (ilogb): Ditto. (ilogbf): Ditto. (ilogbl): Ditto. (ldexpf): Ditto. (ldexpl): Ditto. (logf): Ditto. (logl): Ditto. (log10f): Ditto. (log10l): Ditto. (log1p): Ditto. (log1pf): Ditto. (log1pl): Ditto. (log2): Ditto. (log2f): Ditto. (log2l): Ditto. (logb): Ditto. (logbf): Ditto. (logbl): Ditto. (hypot): Ditto. (hypotf): Ditto. (hypotl): Ditto. (powf): Ditto. (powl): Ditto. (sqrtf): Ditto. (sqrtl): Ditto. (erf): Ditto. (erff): Ditto. (erfl): Ditto. (erfc): Ditto. (erfcf): Ditto. (erfcl): Ditto. (lgamma): Ditto. (lgammaf): Ditto. (lgammal): Ditto. (lgamma): Ditto. (lgammaf): Ditto. (lgammal): Ditto. (ceilf): Ditto. (ceill): Ditto. (floorf): Ditto. (floorl): Ditto. (nearbyint): Ditto. (nearbyintf): Ditto. (nearbyintl): Ditto. (round): Ditto. (roundf): Ditto. (roundl): Ditto. (lround): Ditto. (lroundf): Ditto. (lroundl): Ditto. (llround): Ditto. (llroundf): Ditto. (llroundl): Ditto. (trunc): Ditto. (truncf): Ditto. (truncl): Ditto. (fmodf): Ditto. (fmodl): Ditto. (remainder): Ditto. (remainderf): Ditto. (remainderl): Ditto. (remquo): Ditto. (remquof): Ditto. (remquol): Ditto. (copysign): Ditto. (copysignf): Ditto. (copysignl): Ditto. (fdim): Ditto. (fdimf): Ditto. (fdiml): Ditto. (fmax): Ditto. (fmaxf): Ditto. (fmaxl): Ditto. (fmin): Ditto. (fminf): Ditto. (fminl): Ditto. (fma): Ditto. (fmaf): Ditto. (fmal): Ditto. (_hypotf): Ditto. (_copysignf): Ditto. (_chgsignf): Ditto. (_logbf): Ditto. (_nextafterf): Ditto. (_finitef): Ditto. (_isnanf): Ditto. (_fpclassf): Ditto.