view doc/posix-functions/hypot.texi @ 16530:3cae6aa4577f

hypot-ieee: Work around test failure on OSF/1 and native Windows. * lib/math.in.h (hypot): New declaration. * lib/hypot.c: New file. * m4/hypot-ieee.m4: New file. * m4/hypot.m4 (gl_FUNC_HYPOT): If gl_FUNC_HYPOT_IEEE is present, test whether hypot works with mixed NaN and Infinity arguments. Replace it if not. * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_HYPOT, REPLACE_HYPOT. * modules/math (Makefile.am): Substitute GNULIB_HYPOT, REPLACE_HYPOT. * modules/hypot (Files): Add lib/hypot.c. (Depends-on): Add dependencies. (configure.ac): Arrange to compile replacement if REPLACE_HYPOT is 1. * modules/hypot-ieee (Files): Add m4/hypot-ieee.m4. (configure.ac): Invoke gl_FUNC_HYPOT_IEEE. * tests/test-math-c++.cc: Check the declaration of hypot. * doc/posix-functions/hypot.texi: Mention the hypot-ieee module.
author Bruno Haible <bruno@clisp.org>
date Wed, 29 Feb 2012 20:00:38 +0100
parents bb0ceefd22dc
children
line wrap: on
line source

@node hypot
@section @code{hypot}
@findex hypot

POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/hypot.html}

Gnulib module: hypot or hypot-ieee

Portability problems fixed by either Gnulib module @code{hypot} or @code{hypot-ieee}:
@itemize
@end itemize

Portability problems fixed by Gnulib module @code{hypot-ieee}:
@itemize
@item
When the arguments are mixed NaN and Infinity, this function returns a wrong
value on some platforms:
OSF/1 5.1, mingw, MSVC 9.
@end itemize

Portability problems not fixed by Gnulib:
@itemize
@end itemize