2009-03-28  Ozkan Sezer  <sezeroz@gmail.com>

	* stdio.h: Fix typo && build breakage (s/wchar/wchar_t/).

2009-03-28  Kai Tietz  <kai.tietz@onevision.com>

	* stdio.h: Replace _imp__<sym> by __MINGW_IMP_SYMBOL.
	* wchar.h: Likewise.
	* stdlib.h: Likewise.
	* math.h: Likewise.
	* mbctype.h: Likewise.
	* ctype.h: Likewise.
	* wctype.h: Likewise.

2009-03-16  Ozkan Sezer  <sezero@users.sourceforge.net>

	* _mingw.h (__MINGW_USE_UNDERSCORE_PREFIX): really fix typos.

2009-03-16  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h (__MINGW_USE_UNDERSCORE_PREFIX): New.
	(__MINGW_IMP_SYMBOL): New.

2009-03-15  Kai Tietz  <kai.tietz@onevision.com>

	* io.h (_wopen, _wsopen): Remove wrong c++ variant.
	* wchar.h: Likewise.

2009-03-11  Kai Tietz  <kai.tietz@onevision.com>

	PR/2674460
	* float.h (_MCW_DN): New.
	(_DN_SAVE): Likewise.
	(_DN_FLUSH): Likewise.

	* sys/types.h (useconds_t): New.
	* unistd.h (usleep): New.

2009-02-27  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h (__MINGW64): Add underscores.
	(__MINGW64...): Likewise.
	* stdio.h (__mingw_<print>): Add prototypes.

2009-02-23  Kai Tietz  <kai.tietz@onevision.com>
	    Wolfgang Glas <wolfgang.glas@ev-i.at>
	* wspiapi.h (_WSPIAPI_EMIT_LEGACY): New.
	(_WSPIAPI_LEGACY_INLINE): New.
	(WspiapiLegacyFreeAddrInfo): Use _WSPIAPI_LEGACY_INLINE
	instead of __CRT_INLINE.
	(WspiapiLegacyGetAddrInfo): Likewise.
	(WspiapiLegacyGetNameInfo): Likewise.
	* io.h (_open): Remove C++ variant.
	(_sopen.h): Likewise.

2009-02-13  Kai Tietz  <kai.tietz@onevision.com>

	* stdio.h (_iob): Add for 64-bit case.
	* wchar.h (_iob): Likewise.

2009-02-06  Kai Tietz  <kai.tietz@onevision.com>

	PR/2567461
	* ctype.h (isblank): Declare it always in c++ context.
	* wctype.h (isblank): Likewise.

2009-01-29  Kai Tietz  <kai.tietz@onevision.com>

	* basetsd.h: Add include of _mingw.h for __int64 type.

2009-01-19  Kai Tietz  <kai.tietz@onevision.com>

	* math.h: Merged from mingw32.
	* complex.h: Likewise.
	* float.h: Likewise.

2009-01-13  Kai Tietz  <kai.tietz@onevision.com>
	by sezero
	see http://sourceforge.net/forum/message.php?msg_id=6095326

	* stddef.h:
	Reverts svn changes 478, 553, 554 which were working around the
	breakage caused by the old svn change 190. svn190 change is now
	reverted with modifications. svn190 probably relied on the fact
	that _mingw.h already defind certain types/macros, but if someone
	includes stdint.h before stddef.h, it causes the NULL and offsetof
	macros to be left undefined. still, some clean-up may be done for
	_mingw.h in the future in order to avoid confusions.

2008-10-30  Kai Tietz  <kai.tietz@onevision.com>

	* signal.h (SIGALARM): Define it just when
	__USE_MINGW_ALARM is set.

2008-10-28  Kai Tietz  <kai.tietz@onevision.com>

	* stdlib.h, stdio.h: Fix headers to be save with
	option -Wstrict-prototypes.

2008-10-23  Kai Tietz  <kai.tietz@onevision.com>

	* strmif.h (DDCOLORKEY): New dummy version.
	(LPDDCOLORKEY): Declare it as DDCOLORKEY *.
	(ddraw.h): Include it just when MINGW_HAS_DDRAW_H
	is defined.

2008-10-21  Kai Tietz  <kai.tietz@onevision.com>

	* io.h (__USE_MINGW_ALARM): New.
	(alarm): Make declaration dependent on
	__USE_MINGW_ALARM.

2008-09-30  Kai Tietz  <kai.tietz@onevision.com>

	* stddef.h (offsetof): Make sure it gets defined.

2008-09-19  Kai Tietz  <kai.tietz@onevision.com>

	* shellapi.h: Replace _cdecl by __cdecl.
	* netmon.h: Likewise.
	* nmsupp.h: Likewise.
	PR/2118228 by Jeremy Kolb
	* winreg.h: Likewise.
	* stralign.h: Likewise.

2008-09-16  Kai Tietz  <kai.tietz@onevision.com>

	Patch/2108279 by Jaroslav Smid
	* lib64/uxtheme.h: New Vista API for BeginBufferedPaint,
	BufferedPaintClear, BufferedPaintInit, BufferedPaintSetAlpha,
	BufferedPaintUnInit, EndBufferedPaint, GetBufferedPaintBits,
	GetBufferedPaintDC, GetBufferedPaintTargetDC, and
	GetBufferedPaintTargetRect.

2008-09-12  Kai Tietz  <kai.tietz@onevision.com>

	Patch/2106947 by Jaroslav Smid
	* dwmapi.h: New.

2008-08-28  Kai Tietz  <kai.tietz@onevision.com>

	* io.h (_INTEGRAL_MAX_BITS): Check disabled.
	* wchar.h (_INTEGRAL_MAX_BITS): Likewise.

2008-08-27  Kai Tietz  <kai.tietz@onevision.com>

	* fcntl.h (_O_ACCMODE): New.
	* math.h (_HUGE): Special handling if _MSVCRT_ is defined.
	* ctype.h (_imp__...): Likewise.
	* mbctype.h (_imp__...): Likewise.
	* stdio.h (_imp__...): Likewise.
	* stdlib.h (_imp__...): Likewise.
	* wchar.h (_imp__...): Likewise.
	* wctype.h (_imp__...): Likewise.

2008-08-07  Kai Tietz  <kai.tietz@onevision.com>

	* winnt.h (PSLIST_ENTRY): Forward typedef without align.
	* _mingw.h (__stdcall): Disable it for 64-bit.

2008-08-02  Kai Tietz  <kai.tietz@onevision.com>

	* time.h (_localtime32): Alias it for w32 to _localtime.
	(_difftime32): To _difftime.
	(_ctime32): To _ctime.
	(_gmtime32): To _gmtime.
	(_mktime32): To _mktime.
	(_time32): To _time.

2008-07-27  Kai Tietz  <kai.tietz@onevision.com>

	* wchar.h (WCHAR_MAX): Make it type wchar_t.

2008-07-26  Kai Tietz  <kai.tietz@onevision.com>

	* process.h (exec...): Adjust prototypes to return type
	int if used in gcc.
	* winnt.h (IMAGE_ORDINAL_FLAG64): Make it a unsigned
	long long constant.
	(IMAGE_ORDINAL64): Likewise.

2008-03-10  Kai Tietz  <kai.tietz@onevision.com>

	PR/1910322: trouble using Windows VARIANT type.
	* oledlg.h: Disable default use of NONAMELESSUNION for C.

2008-03-06  Roland Schwingel  <roland.schwingel@onevision.com>

	* winnt.h (PRODUCT_...): New.
	(LANG_...): Some missing language codes.
	(SORT_INVARIANT_MATH): New.
	(SORT_JAPANESE_RADICALSTROKE): New.
	(LOCALE_NAME_MAX_LENGTH): New.
	(ACTIVATION_CONTEXT_SECTION_APPLICATION_SETTINGS): New.

2008-01-30  Kai Tietz  <kai.tietz@onevision.com>

	* userenv.h: Removed duplicate #if-clause.
	* gb18030.h: Correct typo.
	* dskquota.h: Correct ShutdownNameResolution declaration.
	* msimcntl.h: Low case name correction.
	* wabnot.h: Add MAPI_DIM default.
	* daogetrw.h: Cleanup extern C declaration via EXTERN_C.
	* dtchelp.h: Likewise.
	* comutil.h: Disable c++ code for in c.
	* comdef.h: Likewise.
	* comip.h: Likewise.
	* mspenum.h: Likewise.
	* stllock.h: Likewise.
	* _dbdao.h: Likewise.
	* dxtmpl.h: Likewise.
	* madcapcl.h: Add include winternl.h.
	* msidef.h: (msidbLocatorType): Correct typo.
	* mapiwz.h: Add include mapidefs.h for LPMAPIPROP.
	* traffic.h: Add include ntddndis.h.
	* correg.h: Typedef enum CorSaveSize.
	* ratings.h: Correct typo.
	* xcmcmsx2.h: Add include xcmc.h.
	* stm.h: Default to MPR50 if not MPR50 or MPR40 is not defined.
	* wiadef.h: Add error message to include via.h in front.
	* conio.h: Correct declaration of __readmsr.
	* ole.h: Add #if clause to protect against double declaration.
	* oleidl.h: Add #if clause to protect against double declaration.

2008-01-29  Wesley W. Terpstra  <wesley@terpstra.ca>

	* inttypes.h: Correct ,,,PTR macros for 32-bit and 64-bit.

2008-01-28  sduplichan  <sduplichan@users.sourceforge.net>

	* misc/conio.h: Add further intrinsic functions.

2008-01-26  Kai Tietz  <kai.tietz@onevision.com>

        * sys/time.h: Remove declaration of gettimeofday for
        libiberty sake.
        Add declaration of mingw_gettimeofday method.
        * time.h: Add gettimeofday declaration in protected clause.
        Add declaration of mingw_gettimeofday method.
        * _mingw.h: Add __MINGW_ATTRIB_NORETURN, __MINGW_ATTRIB_CONST,
        __UNUSED_PARAM, and __MINGW_GNUC_PREREQ macros.
        * conio.h: Add intrin function for I/O as inline methods.

2008-01-23  Kai Tietz  <kai.tietz@onevision.com>

        * sys/time.h: Add gettimeofday declaration for not __STRICT_ANSI__.
        * time.h: Protect timezone declaration.
        Change major protection-clause.
        * math.h: Change major protection-clause.
        * sys/timeb.h: Change major protection-clause.

2008-01-19  Kai Tietz  <kai.tietz@onevision.com>

        * winnt.h: Added old-style context member for float description.
	* gdiplus*.h: Moved to experimental.

2008-01-09  Kai Tietz  <kai.tietz@onevision.com>

	* directx/: New directory merged from mingw.
	* directx/d3d9.h: New.
	* directx/d3d9caps.h: New.
	* directx/d3d9types.h: New.
	* directx/dxerr8.h: New.
	* directx/dxerr9.h: New.

2008-01-02  Kai Tietz  <kai.tietz@onevision.com>

	* io.h: Add __USE_MINGW_ACCESS access patch. Merged
	from mingw project. PR/1858862.

2007-12-02  Kai Tietz  <kai.tietz@onevision.com>

	* sys/stat.h: Include io.h.
	* io.h: Add prototypes for alarm and getlogin.

2007-11-23  Kai Tietz  <kai.tietz@onevision.com>

	* wchar.h: Correct if clauses and (xxx)_func functions. Additionally
	remove a lot of warnings for 64-bit and 32-bit version.
	* minmax.h: Likewise.
	* stdlib.h: Likewise.
	* stdint.h: Likewise.
	* windef.h: Likewise.
	* io.h: Likewise.
	* winsock2.h: Likewise.
	* ctype.h: Likewise.
	* winerror.h: Likewise.
	* time.h: Likewise.
	* wctype.h: Likewise.
	* basetsd.h: Likewise.
	* setjmp.h: Likewise.

2007-11-19  Kai Tietz  <kai.tietz@onevision.com>

	* all files with interface: Use instead struct for objc sake.
	various changes for 32-bit support.

2007-11-15  Kai Tietz  <kai.tietz@onevision.com>

	* wchar.h: Add _iob definition. Additionally add 32-bit
	compatible definition of __iob_func().
	* stdio.h: Likewise.

2007-11-10  Kai Tietz  <kai.tietz@onevision.com>

	* delayhlp.cpp: PR 1829505  Linker symbol _ImageBase.

2007-11-07  20-40  <annonymous>

	* _dbdao.h: New.
	* ieeefp.h: New.
	* io.h: (_getcwd): Prototype added.
	* mspab.h: New.
	* mspaddr.h: New.
	* mspbase.h: New.
	* mspcall.h: New.
	* mspcoll.h: New.
	* mspenum.h: New.
	* msplog.h: New.
	* mspst.h: New.
	* mspstrm.h: New.
	* mspterm.h: New.
	* mspthrd.h: New.
	* msptrmac.h: New.
	* msptrmar.h: New.
	* msptrmvc.h: New.
	* msputils.h: New.
	* ws2tcpip.h: (ip_mreq): Disabled. Forced that winsock2.h is included infront.
	* wmiatlprov.h: New.
	* winsock2.h: Add AF_??? constants.
	* wchar.h: Add protypes for swprintf and vswprintf.
	* tchar.h: Likewise.
	* stdio.h: Likewise.
	* w32api.h: New.
	* nl_types.h: New.
	* langinfo.h: New.


2007-10-29  Kai Tietz  <kai.tietz@onevision.com>

	* assert.h:
	* process.h:
	* wchar.h:
	* stdlib.h:
	 Change prototype for exit, atoi, atol, div, ldiv,
	 getenv, mblen, mbtowc, mbstowcs, rand, srand, strtod,
	strtof, strtol, strtoul, system, wctomb, wcstombs, wcstod,
	wcstol, and wcstoul using no _CRTIMP.

2007-10-19  Kai Tietz  <kai.tietz@onevision.com>

	* io.h: (_lseeki64, _ltelli64): Use crt version.
	* stdio.h: (_fseeki64, _ftelli64): Likewise.

2007-10-18  Kai Tietz  <kai.tietz@onevision.com>

	* winsock.h, winsock2.h: Make them compatible to each other.
	* stdlib.h, sys/timeb.h, conio.h, crtdbg.h, io.h, mbstring.h,
	search.h, stdio.h, string.h, time.h, wchar.h: Extracted secured
	API into sec_api/.._s.h files and placed include in base headers.

2007-10-17  Kai Tietz  <kai.tietz@onevision.com>

	* time.h: _daylight,_dstbias,_timezone are variables.

2007-10-15  Kai Tietz  <kai.tietz@onevision.com>

	* direct.h: (getcwd): No _CRTIMP declaration.
	* io.h: (getcwd): Likewise.
	(isatty): Likewise.
	(mktemp): Likewise.
	* malloc.h: (malloc, calloc, free, realloc): Likewise.
	* stdlib.h: (malloc, calloc, free, realloc): Likewise.

2007-10-10  Kai Tietz  <kai.tietz@onevision.com>

	* math.h: Add prototypes for nextafterl and ldexpl.
	Add none inline declaration of ldexpf.

2007-10-09  Kai Tietz  <kai.tietz@onevision.com>

	* sys/stat.h, wstat.h: Changed POSIX prototypes.

2007-10-08  Kai Tietz  <kai.tietz@onevision.com>

	* winsock.h, winsock2.h: Make SOCKET definition signed.
	* assert.h: Protect define of assert by additional clause.

2007-10-04  Kai Tietz  <kai.tietz@onevision.com>

	* process.h: Make exec(??) and spawn(??) as posix functions
	compatible.

2007-10-01  Kai Tietz  <kai.tietz@onevision.com>

	* specstrings.h: Prefix SAL defines by SAL(xxx). This prevents
	various conflicts with gnu sources.

2007-09-28  Kai Tietz  <kai.tietz@onevision.com>

	* specstrings.h: Renamed __null to SAL__null. PR/1804037.

2007-09-27  Kai Tietz  <kai.tietz@onevision.com>

	* math.h: Correct 'long double' prototypes.

2007-09-26  Kai Tietz  <kai.tietz@onevision.com>

	* io.h: Add non inline protypes.
	* inttypes.h: (imaxabs): Likewise.

2007-09-25  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h: (USE___UUIDOF): New.
	* comdef.h: Use USE___UUIDOF for use of __uuidof operator. Also
	add include of _mingw.h to it.
	* comdefsp.h: Likewise.
	* comip.h: Likewise.
	* comsvcs.h: Likewise.
	* servprov.h: Likewise.
	* unknwn.h: Likewise.
	* time.h: Add none inline prototypes for POSIX time functions.

2007-09-19  Kai Tietz  <kai.tietz@onevision.com>

	* termio.h: Removed.
	* termios.h: Likewise.
	* sys/ttychars.h: Likewise.
	* sys/termio.h: Likewise.
	* sys/termios.h: Likewise.

2007-09-11  Kai Tietz  <kai.tietz@onevision.com>

	* stdlib.h: (_sys_errlist): Make default declaration having
	one element to prevent warning. PR/1792077.

2007-09-10  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h: [PR/1782238] size_t not defined for 32bit
	in _mingw.h.
	* stdlib.h: [PR/1781605] stdlib.h: 462: min redefined.
	Additionally do the same thing for the max macro. We assume
	that the crt version wins by default.

2007-08-24  Kai Tietz  <kai.tietz@onevision.com>

	* include: Removed dead link.
	* _mingw.h, stddef.h: Prevent warning about double defined ptrdiff_t.

2007-08-23  Professor Brian Ripley  <ripley@stats.ox.ac.uk>

	* math.h: For to use methods from libmingwex.a instead
	of msvcrt.
	* wchar.h: Likewise.
	* wctype.h: Likewise.

2007-08-22  Professor Brian Ripley  <ripley@stats.ox.ac.uk>

	* oleauto.h: Corrected use of NONAMELESSUNION and
	_FORCENAMELESSUNION.

2007-08-21  Kai Tietz  <kai.tietz@onevision.com>

	* ctype.h: wchar.h: Add isblank () and iswblank ().

2007-08-21  Professor Brian Ripley  <ripley@stats.ox.ac.uk>

	* stdargs.h: Remove spurious extra '#endif' in file.
	Restore copyright notice.
	* stdio.h, wchar.h: Define POSIX names for popen, pclose,
	and pwopen.

2007-08-16  Kai Tietz  <kai.tietz@onevision.com>

	* stdlib.h: Corrected _sys_nerr and _sys_errlist declarations.

2007-08-14  Kai Tietz  <kai.tietz@onevision.com>

	* limits.h: (_CHAR_UNSIGNED): Removed unused define.
	* locale.h: Likewise.
	* mfpr?: Removed.
	* getopt.h: Copyright adjusted to origin.
	* sys/wstat.inl: Delete unused file.
	* sys/stat.h: Add inlines.
	* sys/stat.inl: Remove.
	* sys/timeb.h: Add inlines.
	* sys/timeb.inl: Remove.
	* sys/utime.h: Add inlines.
	* sys/utime.inl: Remove.
	* time.h: Add inlines.
	* wchar.h: Add inline.
	* wtime.inl: Remove.
	* time.inl: Remove.

2007-07-25  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h, winnt.h: (__CRT_UNALIGNED): New.
	(UNALIGNED): Use value of __CRT_UNALIGNED.
	* winuser.h: (MOUSEHOOKSTRUCTEX): Name unnamed
	argument.
	* windef.h: (LPCVOID): Use _LPCVOID_DEFINED clause.
	* objbase.h: (IRpcStubBuffer, IRpcChannelBuffer): Protect
	by ifndef clause.
	* objidl.h, imm.h: Fix double type declarations.
	* limits.h: Added definitions for LONG_LONG_MIN,
	LONG_LONG_MAX, and ULONG_LONG_MAX.


2007-07-23  Kai Tietz  <kai.tietz@onevision.com>

	* excpt.h: (_EXCEPTION_POINTERS): Forward declared.
	* winuser.h: (MONITORINFOEXA, MONITORINFOEXW): Add member
	variable name for making gcc happy.
	* rpcndr.h: (PFORMAT_STRING): Removed double defintion.
	(MIDL_STUB_MESSAGE, PMIDL_STUB_MESSAGE): Likewise.
	(MIDL_SYNTAX_INFO, PMIDL_SYNTAX_INFO): Likewise.
	* wtypes.h: Unify define of ULONG, USHORT, UCHAR, etc.
	* winnt.h: Likewise.
	* windef.h: Likewise.
	* winsmcrd.h: Likewise.
	* fci.h: Likewise.
	* fdi.h: Likewise.
	* mapidbg.h: Likewise.
	* mqoai.h: Likewise.
	* sqltypes.h: Likewise.

2007-07-20  Kai Tietz  <kai.tietz@onevision.com>

	* winbase.h: Removed double definition of ACTCTX.

2007-07-19  NightStrike  <nightstrike@gmail.com> 

	* basetsd.h: (Ptr32ToPtr): Removed warning message.

2007-07-18  Kai Tietz  <kai.tietz@onevision.com>

	* assert.h: Corrected _wassert method.
	* time.h: Corrected _tzname defintion.

2007-07-17  Kai Tietz  <kai.tietz@onevision.com>

	* _mingw.h: Use _CRTIMP as declspec(dllimport) as default.
	Declare of __CRT_IMPORT as external __inline replacement.

2007-07-15  Kai Tietz  <kai.tietz@onevision.com>

	* Contributed initial header set.


Local Variables:
version-control: never
End:
