On 07.09.2013 00:17, Steele, Raymond wrote:
To address the isfinite() issue I added the following to rtl/math.hxx:
#ifdef SOLARIS
#undef SAL_MATH_FINITE
#define SAL_MATH_FINITE(d) finite(d)
#endf
Your links were very helpful. Thanks so much.
Wonderful, so this problem is mostly solved. We just need to get it
cleanly into the mathconf.h. How about this patch?
--- main/sal/inc/sal/mathconf.h
+++ main/sal/inc/sal/mathconf.h
@@ -55,7 +55,9 @@ extern "C" {
/* SAL_MATH_FINITE(d): test double d on INFINITY, NaN et al. */
-#if defined(__GNUC__) // workaround gcc bug 14608
+#if defined(OS2) || defined(SOLARIS)
+ #define SAL_MATH_FINITE(d) finite(d)
+#elif defined(__GNUC__) // workaround gcc bug 14608
#if (__GNUC_MINOR__ >= 3) // gcc>=4.3 has a builtin
#define SAL_MATH_FINITE(d) __builtin_isfinite(d)
#else
@@ -67,8 +69,6 @@ extern "C" {
#define SAL_MATH_FINITE(d) isfinite(d)
#elif defined( WNT)
#define SAL_MATH_FINITE(d) _finite(d)
-#elif defined OS2
-#define SAL_MATH_FINITE(d) finite(d)
#elif defined LINUX || defined UNX
#define SAL_MATH_FINITE(d) finite(d)
#else /* WNT, LINUX, UNX */
Now onto:
integer_fwd.cpp contains the following on line 136 and 137:
136: template < > 137: struct low_bits_mask_t< ::std::numeric_limits<unsigned
char>::digits>;
I'm not sure whether you saw my mail from September 2nd
(http://markmail.org/message/bt7bazzvb6zionee):
https://issues.apache.org/jira/browse/STDCXX-937 might have to do with
this. It mentions a compiler bug 6703971 but that doesn't seem to be
available any more. I suggest to update the compiler to its latest patch
level.
Of course it would also interesting to know what type
::std::numeric_limits<unsigned char>::digits on that platform. The error
message looks as if this was not an integer but a class. The C++ spec
requires that the type should be an int. Please check the <limits>
include file.
Herbert
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org