Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jan 2003 13:12:01 -0500 (EST)
From:      Garrett Wollman <wollman@lcs.mit.edu>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        ryany@pobox.com, freebsd-standards@FreeBSD.ORG
Subject:   Re: math.h: first run
Message-ID:  <200301231812.h0NIC1vK049625@khavrinen.lcs.mit.edu>
In-Reply-To: <20030123.105659.100599437.imp@bsdimp.com>
References:  <20030121130737.6be86e80.ryany@pobox.com> <20030123.105659.100599437.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
<<On Thu, 23 Jan 2003 10:56:59 -0700 (MST), "M. Warner Losh" <imp@bsdimp.com> said:

> This repeats the historical mistake about _REENTRANT defining
> *gamma*_r functions we inherited from Sun.  Shouldn't those be
> protected by some more appropriate standards symbol?

gamma_r functions are nonstandard.  The Standard says:

# These functions need not be reentrant. A function that is not
# required to be reentrant is not required to be thread-safe.

This is probably related to the XSI requirement to store the sign of
the gamma function in the global variable `signgam', which obviously
cannot be done reentrantly.

As an implementation extension, we might choose to implement reentrant
versions of the gamma family of functions.  If we do so, they should
be declared unconditionally in the BSD namespace (__BSD_VISIBLE)

-GAWollman


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-standards" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301231812.h0NIC1vK049625>