Date: Tue, 6 Jan 2009 14:03:13 -0500 From: David Schultz <das@FreeBSD.ORG> To: Bruce Evans <brde@optusnet.com.au> Cc: freebsd-standards@FreeBSD.ORG, Vaclav Haisman <v.haisman@sh.cvut.cz>, imp@FreeBSD.ORG, freebsd-gnats-submit@FreeBSD.ORG Subject: Re: standards/130067: Wrong numeric limits in system headers? Message-ID: <20090106190313.GA15233@zim.MIT.EDU> In-Reply-To: <20081231215445.S3923@delplex.bde.org> References: <200812302231.mBUMVUtf092910@www.freebsd.org> <20081231215445.S3923@delplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On FreeBSD/i386, long doubles are represented with 64 bits of precision, but computations are performed with 53 bits of precision. In a sane world, this discrepancy wouldn't exist, but for reasons I won't get into, they do, and probably always will. C99 defines the LDBL constants based on what can be represented, not what can be computed as the result of arithmetic operations, so my interpretation is that the values in float.h are correct, though confusing.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090106190313.GA15233>