Hy Raymond,
On 04.09.2013 18:33, Steele, Raymond wrote:
You are right, I completely missed your post. I am updating my compiler (SolarisStudio
12.3) now. As far as I can see now, I do not have isfinite is not a member of std on my
system. Although, Netbeans allows me to choose C++ Standard C++11. What do you mean by
" experiment with the different SAL_MATH_FINITE definitions"?
mathconf.h is a C header file, so we need the C definition of isfinite.
According to [1] the "C" isfinite() should be defined in <math.h>. Maybe
on your platform there is a bug similar to [2] that undefines it later.
But we can assume that isfinite() is available in one form or the other
on your system. Maybe it is called finite(), _finite(), or
__builtin_isfinite()? Assuming [3] applies here then finite() may be the
pre-standard equivalent to the isfinite() function that we are looking for.
[1] http://pubs.opengroup.org/onlinepubs/009695399/functions/isfinite.html
[2] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14608
[3] https://www.varnish-cache.org/trac/ticket/464
What I meant with "experiment with the different SAL_MATH_FINITE
definitions" is to check whether one of the above pre-standard
isfinite() alternatives work. If you found one then add a define for
SOLARIS only that doesn't break the other platforms.
By the way std::isfinite() should be provided via <cmath> for C++11. But
as the mathconf.h header is a "C" header this C++11 header is not
available in this context.
Herbert
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org