Index: lib/libc/gen/isnan.c =================================================================== --- lib/libc/gen/isnan.c (revision 242841) +++ lib/libc/gen/isnan.c (working copy) @@ -35,6 +35,7 @@ * binary compat until we can bump libm's major version number. */ +#ifdef PIC __weak_reference(__isnan, isnan); __weak_reference(__isnanf, isnanf); @@ -55,3 +56,4 @@ __isnanf(float f) u.f = f; return (u.bits.exp == 255 && u.bits.man != 0); } +#endif /* PIC */ Index: lib/msun/src/s_isnan.c =================================================================== --- lib/msun/src/s_isnan.c (revision 242841) +++ lib/msun/src/s_isnan.c (working copy) @@ -30,8 +30,9 @@ #include "fpmath.h" -/* Provided by libc */ -#if 0 +/* Provided by libc.so */ +#ifndef PIC +#undef isnan int isnan(double d) { @@ -40,7 +41,7 @@ isnan(double d) u.d = d; return (u.bits.exp == 2047 && (u.bits.manl != 0 || u.bits.manh != 0)); } -#endif +#endif /* !PIC */ int __isnanf(float f)