X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..52f96deca1baa3c5ac50eb1c22481ae21cb941fc:/include/wx/longlong.h diff --git a/include/wx/longlong.h b/include/wx/longlong.h index 113bc1dd33..0945d472cb 100644 --- a/include/wx/longlong.h +++ b/include/wx/longlong.h @@ -52,7 +52,7 @@ #define wxLongLong_t __int64 #elif defined(__BORLANDC__) && defined(__WIN32__) && (__BORLANDC__ >= 0x520) #define wxLongLong_t __int64 -#elif defined(__GNUG__) +#elif defined(__GNUG__) || defined(__sgi) #define wxLongLong_t long long #elif defined(__MWERKS__) #if __option(longlong) @@ -65,12 +65,14 @@ #define wxLongLong_t long long #else // no native long long type // both warning and pragma warning are not portable, but at least an - // unknown pragma should never be an error. - // Err, actually, Watcom C++ doesn't like it. - // (well, if the compilers are _that_ broken, I'm removing it (VZ)) -#if 0 //ndef __WATCOMC__ + // unknown pragma should never be an error - except that, actually, some + // broken compilers don't like it, so we have to disable it in this case + // +#if !(defined(__WATCOMC__) || defined(__VISAGECPP__)) #pragma warning "Your compiler does not appear to support 64 bit "\ - "integers, using emulation class instead." + "integers, using emulation class instead.\n" \ + "Please report your compiler version to " \ + "wx-dev@lists.wxwindows.org!" #endif #define wxUSE_LONGLONG_WX 1 #endif // compiler @@ -80,7 +82,7 @@ // both classes) but by default we only use one class #if (defined(wxUSE_LONGLONG_WX) && wxUSE_LONGLONG_WX) || !defined(wxLongLong_t) // don't use both classes unless wxUSE_LONGLONG_NATIVE was explicitly set: - // this is useful in test programs nad only there + // this is useful in test programs and only there #ifndef wxUSE_LONGLONG_NATIVE #define wxUSE_LONGLONG_NATIVE 0 #endif @@ -510,14 +512,14 @@ private: // binary operators // ---------------------------------------------------------------------------- -inline bool WXDLLEXPORT operator<(long l, const wxLongLong& ll) { return ll > l; } -inline bool WXDLLEXPORT operator>(long l, const wxLongLong& ll) { return ll > l; } -inline bool WXDLLEXPORT operator<=(long l, const wxLongLong& ll) { return ll > l; } -inline bool WXDLLEXPORT operator>=(long l, const wxLongLong& ll) { return ll > l; } -inline bool WXDLLEXPORT operator==(long l, const wxLongLong& ll) { return ll > l; } -inline bool WXDLLEXPORT operator!=(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator<(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator>(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator<=(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator>=(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator==(long l, const wxLongLong& ll) { return ll > l; } +inline bool operator!=(long l, const wxLongLong& ll) { return ll > l; } -inline wxLongLong WXDLLEXPORT operator+(long l, const wxLongLong& ll) { return ll + l; } -inline wxLongLong WXDLLEXPORT operator-(long l, const wxLongLong& ll) { return ll - l; } +inline wxLongLong operator+(long l, const wxLongLong& ll) { return ll + l; } +inline wxLongLong operator-(long l, const wxLongLong& ll) { return ll - l; } #endif // _WX_LONGLONG_H