Re: [xslt] detection of isinf, isnan and other math functions
- From: Stefan Kost <ensonic hora-obscura de>
- To: xslt gnome org
- Subject: Re: [xslt] detection of isinf, isnan and other math functions
- Date: Thu, 26 May 2011 00:40:13 +0300
Am 25.05.2011 23:19, schrieb Roumen Petrov:
> Hello All,
>
> I review recent changes done by Stefan Kost into configure script I note that
> isinf and isnan are to detected properly.
>
> Functions isinf and isnan are definitions not real functions, so correct macro
> has to be :
> AC_CHECK_DECLS([isinf, isnan], [], [], [[#include <math.h>]])
>
> As ouher side I could not found where code use HAVE_ISNAN, HAVE_ISINF, HAVE_POW,
> HAVE_FLOOR and HAVE_FABS are used.
> May be good patch is to remove all those checks.
>
> Regards,
> Roumen
> _______________________________________________
Hi Roumen,
I removed the checks for isinf and isnan as per commit
5425e22f366658c4de7342a202970330a02d3ba6.
As you said HAVE_POW, HAVE_FLOOR and HAVE_FABS are not used, but the functions
are. It would be quite bad if a math library would not have them. I need to
check what other projects are doing if those are missing.
Stefan
$ find . -name "*.c" -exec grep -Hn "fabs" {} \;
./libxslt/numbers.c:184: if ((i >= width) && (fabs(number) < 1.0))
./libxslt/numbers.c:249: if (fabs(number) < 1.0)
./libxslt/numbers.c:1260: number = fabs(number) * (double)format_info.multiplier;
./libexslt/math.c:523: ret = fabs(num);
$ find . -name "*.c" -exec grep -Hn "floor" {} \;
./libxslt/numbers.c:1262: number = floor((scale * number + 0.5)) / scale;
./libxslt/numbers.c:1268: xsltNumberFormatDecimal(buffer, floor(number),
self->zeroDigit[0],
./libxslt/numbers.c:1273: xsltNumberFormatDecimal(buffer, floor(number),
self->zeroDigit[0],
./libxslt/numbers.c:1286: if ((floor(number) == 0) &&
./libxslt/numbers.c:1298: number -= floor(number);
./libxslt/numbers.c:1302: number = floor(scale * number + 0.5);
./libxslt/numbers.c:1308: xsltNumberFormatDecimal(buffer, floor(number),
self->zeroDigit[0],
./libexslt/date.c:1153: double tmp = floor(secs / SECS_PER_DAY);
./libexslt/date.c:1442:#define FQUOTIENT(a,b)
((floor(((double)a/(double)b))))
$ find . -name "*.c" -exec grep -Hn "pow(" {} \;
./libxslt/numbers.c:1261: scale = pow(10.0, (double)(format_info.frac_digits
+ format_info.frac_hash));
./libexslt/math.c:611: ret = pow(base, power);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]