[Bug 16954] New: #defines of LONG_MAX, LONG_MIN and INT_MIN are wrong

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Jan 16 06:04:45 CST 2009


http://bugs.winehq.org/show_bug.cgi?id=16954

           Summary: #defines of LONG_MAX, LONG_MIN and INT_MIN are wrong
           Product: Wine
           Version: unspecified
          Platform: Other
        OS/Version: other
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P2
         Component: -unknown
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: lkcl at lkcl.net


a build of python2.5.2 under msys under wine goes completely tits-up
due to very strange long / int interactions.

the addition of a (long) typecast (around 0xNNNNL!) fixes the problem.

the definitions in the standard wine / mingw32 header files are
completely at odds with standard linux #defines for LONG_MAX and LONG_MIN.

the definition below for INT_MIN matches the standard linux #define,
and has the advantage that it actually works.


+#ifdef __WINE__  /* weird: you have to typecast 0x7fffffffL to long */
+#undef LONG_MAX
+#undef LONG_MIN
+#define LONG_MAX ((long)0x7FFFFFFFL)
+#define LONG_MIN ((long)(-LONG_MAX-1))
+#else

+#ifdef __WINE__
+/* wine's #define of INT_MIN slightly faulty...
+ */
+#undef INT_MIN
+#define INT_MIN  (-INT_MAX - 1)
+#endif
+
+


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list