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/