PVECTORED_EXCEPTION_HANDLER undefined compiling assert.cc

Corinna Vinschen vinschen@redhat.com
Thu Oct 9 13:26:00 GMT 2003

On Thu, Oct 09, 2003 at 08:13:57AM -0400, Earnie Boyd wrote:
> Corinna Vinschen wrote:
> >
> >I've checked in a patch in CVS.  The problem was raised by
> >PVECTORED_EXCEPTION_HANDLER defined only if _WIN32_WINNT >= 0x0501
> >but the usage in winbase was guarded by _WIN32_WINNT >= 0x0500.
> >Cygwin sets _WIN32_WINNT to 0x0500.
> >
> Cygwin should consider a higher value for _WIN32_WINNT since it handles 
> the OS Version discrepencies with it's autoload feature.  The time to 
> change the value would be at the first use of a new feature of a new 
> version of OS.  So if you're using Windows XP specific declarations then 
> you need to modify your value of _WIN32_WINNT to 0x0501.  If you're 
> using Windows 2003 specific declarations then you should set it to what 
> ever value MS has deemed to represent that version of Win32 OS.

The problem has nothing to do with Cygwin using XP functions.  The
definition was guarded by a higher value than the usage of that define.
This is a plain fault in the header files, which wouldn't even had
been found if Cygwin would have used _WIN32_WINNT == 0x0501. 

According to MSDN, changing the guards from _WIN32_WINNT >= 0x0501 back
to _WIN32_WINNT >= 0x0500 was also not correct.  As long as you don't
have diferent information than just MSDN, this change should be reverted. 
MSDN clearly states that VectoredHandler is only available beginning with


Corinna Vinschen
Cygwin Developer
Red Hat, Inc.

More information about the Cygwin-developers mailing list