.\" Modified 2002-07-27 by Walter Harms
.\" (walter.harms@informatik.uni-oldenburg.de)
.\"
-.TH ATANH 3 2008-08-05 "" "Linux Programmer's Manual"
+.TH ATANH 3 2010-09-11 "" "Linux Programmer's Manual"
.SH NAME
atanh, atanhf, atanhl \- inverse hyperbolic tangent function
.SH SYNOPSIS
.sp
.ad l
.BR atanh ():
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 || _ISOC99_SOURCE; or
+.RS 4
+_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 500 ||
+_XOPEN_SOURCE\ &&\ _XOPEN_SOURCE_EXTENDED || _ISOC99_SOURCE ||
+_POSIX_C_SOURCE\ >=\ 200112L;
+.br
+or
.I cc\ -std=c99
+.RE
.br
.BR atanhf (),
.BR atanhl ():
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE; or
+.RS 4
+_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE ||
+_POSIX_C_SOURCE\ >=\ 200112L;
+.br
+or
.I cc\ -std=c99
+.RE
.ad b
.SH DESCRIPTION
The
is set to
.BR ERANGE
(but see BUGS).
-.\" FIXME . glibc actually gives EDOM for this case
A divide-by-zero floating-point exception
.RB ( FE_DIVBYZERO )
is raised.
also conforms to
SVr4, 4.3BSD, C89.
.SH BUGS
-For a pole error,
-.\"
-.\" FIXME . this is as at glibc 2.8; check later if this bug is fixed
+In glibc 2.9 and earlier,
+.\" Bug: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6759
.\" This can be seen in sysdeps/ieee754/k_standard.c
-.\" Bug raised: http://sources.redhat.com/bugzilla/show_bug.cgi?id=6759
+when a pole error occurs,
.I errno
-is set to
-.BR EDOM ;
-POSIX.1 says it should be set to
+as set to
+.BR EDOM
+instead of the POSIX-mandated
.BR ERANGE .
+Since version 2.10, glibc does the right thing.
.SH "SEE ALSO"
.BR acosh (3),
.BR asinh (3),