.\"
.\" Modified 2003-11-18, aeb: historical remarks
.\"
-.TH GAMMA 3 2008-08-05 "GNU" "Linux Programmer's Manual"
+.TH GAMMA 3 2017-09-15 "GNU" "Linux Programmer's Manual"
.SH NAME
gamma, gammaf, gammal \- (logarithm of the) gamma function
.SH SYNOPSIS
.B #include <math.h>
-.sp
+.PP
.BI "double gamma(double " x ");"
.br
.BI "float gammaf(float " x ");"
.br
.BI "long double gammal(long double " x ");"
-.sp
+.PP
Link with \fI\-lm\fP.
-.sp
+.PP
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
-.sp
+.PP
.ad l
.BR gamma ():
.RS 4
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
+_XOPEN_SOURCE
+ || /* Since glibc 2.19: */ _DEFAULT_SOURCE
+ || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
.RE
.BR gammaf (),
.BR gammal ():
.RS 4
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 600
-.\" Also seems to work: -std=c99 -D_XOPEN_SOURCE
+_XOPEN_SOURCE >= 600 || (_XOPEN_SOURCE && _ISOC99_SOURCE)
+ || /* Since glibc 2.19: */ _DEFAULT_SOURCE
+ || /* Glibc versions <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
.RE
.ad b
.SH DESCRIPTION
or the
.BR lgamma (3)
functions, as appropriate.
-
+.PP
For the definition of the Gamma function, see
.BR tgamma (3).
.SS *BSD version
.TE
.SH CONFORMING TO
Because of historical variations in behavior across systems,
-this function is not specified in any standard.
+this function is not specified in any recent standard.
+It was documented in SVID 2.
.SH NOTES
.SS History
4.2BSD had a
In 4.3BSD the name was changed to
.BR lgamma (3),
and the man page promises
-.sp
+.PP
.in +4n
"At some time in the future the name gamma will be rehabilitated
and used for the Gamma function"
.in
-.sp
+.PP
This did indeed happen in 4.4BSD, where
.BR gamma ()
computes the Gamma function (with no effect on