self.assertTrue(cmath.isinf(complex(INF, NAN)))
@requires_IEEE_754
- @unittest.skipIf(sysconfig.get_config_var('TANH_PRESERVES_ZERO_SIGN') == 0,
- "system tanh() function doesn't copy the sign")
def testTanhSign(self):
for z in complex_zeros:
self.assertComplexIdentical(cmath.tanh(z), z)
self.assertTrue(math.isnan(math.tanh(NAN)))
@requires_IEEE_754
- @unittest.skipIf(sysconfig.get_config_var('TANH_PRESERVES_ZERO_SIGN') == 0,
- "system tanh() function doesn't copy the sign")
def testTanhSign(self):
# check that tanh(-0.) == -0. on IEEE 754 systems
self.assertEqual(math.tanh(-0.), -0.)
_ACEOF
-# On FreeBSD 6.2, it appears that tanh(-0.) returns 0. instead of
-# -0. on some architectures.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether tanh preserves the sign of zero" >&5
-$as_echo_n "checking whether tanh preserves the sign of zero... " >&6; }
-if ${ac_cv_tanh_preserves_zero_sign+:} false; then :
- $as_echo_n "(cached) " >&6
-else
-
-if test "$cross_compiling" = yes; then :
- ac_cv_tanh_preserves_zero_sign=no
-else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-#include <math.h>
-#include <stdlib.h>
-int main() {
- /* return 0 if either negative zeros don't exist
- on this platform or if negative zeros exist
- and tanh(-0.) == -0. */
- if (atan2(0., -1.) == atan2(-0., -1.) ||
- atan2(tanh(-0.), -1.) == atan2(-0., -1.)) exit(0);
- else exit(1);
-}
-
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
- ac_cv_tanh_preserves_zero_sign=yes
-else
- ac_cv_tanh_preserves_zero_sign=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
- conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_tanh_preserves_zero_sign" >&5
-$as_echo "$ac_cv_tanh_preserves_zero_sign" >&6; }
-if test "$ac_cv_tanh_preserves_zero_sign" = yes
-then
-
-$as_echo "#define TANH_PRESERVES_ZERO_SIGN 1" >>confdefs.h
-
-fi
-LIBS=$LIBS_SAVE
-
# For multiprocessing module, check that sem_open
# actually works. For FreeBSD versions <= 7.2,
# the kernel module that provides POSIX semaphores
AC_CHECK_FUNCS([hypot lgamma log1p log2 round tgamma])
AC_CHECK_DECLS([isinf, isnan, isfinite], [], [], [[#include <math.h>]])
-# On FreeBSD 6.2, it appears that tanh(-0.) returns 0. instead of
-# -0. on some architectures.
-AC_MSG_CHECKING(whether tanh preserves the sign of zero)
-AC_CACHE_VAL(ac_cv_tanh_preserves_zero_sign, [
-AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <math.h>
-#include <stdlib.h>
-int main() {
- /* return 0 if either negative zeros don't exist
- on this platform or if negative zeros exist
- and tanh(-0.) == -0. */
- if (atan2(0., -1.) == atan2(-0., -1.) ||
- atan2(tanh(-0.), -1.) == atan2(-0., -1.)) exit(0);
- else exit(1);
-}
-]])],
-[ac_cv_tanh_preserves_zero_sign=yes],
-[ac_cv_tanh_preserves_zero_sign=no],
-[ac_cv_tanh_preserves_zero_sign=no])])
-AC_MSG_RESULT($ac_cv_tanh_preserves_zero_sign)
-if test "$ac_cv_tanh_preserves_zero_sign" = yes
-then
- AC_DEFINE(TANH_PRESERVES_ZERO_SIGN, 1,
- [Define if tanh(-0.) is -0., or if platform doesn't have signed zeros])
-fi
-LIBS=$LIBS_SAVE
-
# For multiprocessing module, check that sem_open
# actually works. For FreeBSD versions <= 7.2,
# the kernel module that provides POSIX semaphores
(which you can't on SCO ODT 3.0). */
#undef SYS_SELECT_WITH_SYS_TIME
-/* Define if tanh(-0.) is -0., or if platform doesn't have signed zeros */
-#undef TANH_PRESERVES_ZERO_SIGN
-
/* Library needed by timemodule.c: librt may be needed for clock_gettime() */
#undef TIMEMODULE_LIB