On Sat, Jun 12, 2010 at 05:32:05PM +0000, David Schultz wrote: > Author: das > Date: Sat Jun 12 17:32:05 2010 > New Revision: 209110 > URL: http://svn.freebsd.org/changeset/base/209110 > > Log: > Introduce __isnanf() as an alias for isnanf(), and make the isnan() > macro expand to __isnanf() instead of isnanf() for float arguments. > This change is needed because isnanf() isn't declared in strict POSIX > or C99 mode. > > Compatibility note: Apps using isnan(float) that are compiled after > this change won't link against an older libm. > > Reported by: Florian Forster <o...@verplant.org>
May be, it makes sense to remove the default version for the isnan symbol ? diff --git a/lib/msun/Symbol.map b/lib/msun/Symbol.map index 429a76f..e39b39f 100644 --- a/lib/msun/Symbol.map +++ b/lib/msun/Symbol.map @@ -118,7 +118,6 @@ FBSD_1.0 { __isfinite; __isfinitef; __isfinitel; - isnanf; __isnanl; __isnormal; __isnormalf; diff --git a/lib/msun/src/s_isnan.c b/lib/msun/src/s_isnan.c index 0f544db..1fdbe96 100644 --- a/lib/msun/src/s_isnan.c +++ b/lib/msun/src/s_isnan.c @@ -61,4 +61,4 @@ __isnanl(long double e) return (u.bits.exp == 32767 && (u.bits.manl != 0 || u.bits.manh != 0)); } -__weak_reference(__isnanf, isnanf); +__sym_compat(isnanf, __isnanf, FBSD_1.0);
pgplvrizL2mWQ.pgp
Description: PGP signature