Mail Archives: cygwin/2005/09/28/10:52:00
At 08:45 AM 9/28/2005, you wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>According to Andy Moreton on 9/27/2005 7:58 AM:
>>>>
>>>> #include <iostream>
>>>> #include <windows.h>
>>>>+#undef max
>>>>+#undef min
>>>> #include <complex>
>>>
>>>
>>
>> The problem is that "windows.h" includes "windef.h" which defines the
>> standard macros min() and max() without checking if they are already
>> defined.
>
>Actually, <windef.h> DOES check if min and max are already defined before
>defining them. But <complex> uses std::max, which won't work if max is a
>macro. The correct fix, in my opinion, would be to update windef.h to not
>define min and max if __cplusplus is defined, since C++ is much less
>forgiving of min and max being macros in the first place (in other words,
>min and max as macros only works in C).
>
>But where does upstream windef.h live, to propose a patch to it?
Isn't it enough to offer a patch to the w32api package maintainer and let
that person take this upstream?
--
Larry Hall http://www.rfk.com
RFK Partners, Inc. (508) 893-9779 - RFK Office
838 Washington Street (508) 893-9889 - FAX
Holliston, MA 01746
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -