From owner-freebsd-current@FreeBSD.ORG Mon May 28 12:49:18 2012 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 9AE681065680 for ; Mon, 28 May 2012 12:49:18 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id 4CA5C8FC25 for ; Mon, 28 May 2012 12:49:18 +0000 (UTC) Received: from c120.sec.cl.cam.ac.uk (c120.sec.cl.cam.ac.uk [128.232.18.120]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id q4SCnG23098776 (version=TLSv1/SSLv3 cipher=DHE-DSS-AES128-SHA bits=128 verify=NO); Mon, 28 May 2012 12:49:17 GMT (envelope-from theraven@FreeBSD.org) Mime-Version: 1.0 (Apple Message framework v1257) Content-Type: text/plain; charset=iso-8859-1 From: David Chisnall In-Reply-To: <4FC36FE1.9080908@gwdg.de> Date: Mon, 28 May 2012 13:49:16 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <4FC30090.4070003@gwdg.de> <4D8CF7D2-CBEE-438E-A9E7-9C47A8892622@FreeBSD.org> <4FC36FE1.9080908@gwdg.de> To: Rainer Hurling X-Mailer: Apple Mail (2.1257) Cc: freebsd-current@FreeBSD.org Subject: Re: Use of C99 extra long double math functions after r236148 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 May 2012 12:49:18 -0000 On 28 May 2012, at 13:30, Rainer Hurling wrote: > On 28.05.2012 10:41 (UTC+1), David Chisnall wrote: >> On 28 May 2012, at 05:35, Rainer Hurling wrote: >=20 > Ok, that's what I had supposed. Because the main difference between = r236147 and r2136148 seems to be the define of _MATH_EXTRA_H_, the rest = is more a type of binning? Yes, it's just about making libc++'s cmath header compile, nothing more. = =20 > Yes, I agree. These outstanding long double math functions (like = log1pl) and better unicode support are really needed for some important = third party projects like R or SAGA GIS. I very much doubt that anything is using the C11 unicode stuff yet, = since no compiler or libc currently supports it... > In the past I have read several times discussions about the = correctness of long double functions on FreeBSD. Some drafts have been = dismissed because of there inaccuracy in special cases. Also was = discussed to get missing libm routines from NetBSD [1]. It appears as if = we have to wait some more time ... I thought we did pull in some NetBSD libm stuff recently. Not sure what = the status of that is, you'd need to check with das@. > Yes, I think in most cases math/R is tolerant enough of just using = doubles. But in the near future they plan to implement much more of the = C99 stuff and their tolerance to offer workarounds for FreeBSD shrinks = from release to release [2]. So these problems will increase :-( Reading that email, it seems that they would prefer a function that = exists and returns the wrong result to one that does not exist. If this = is really the attitude of the developers of R, then I shall make = absolutely certain that I avoid using R for anything where I actually = care about the results, and would strongly encourage everyone else to do = the same. =20 In general, (sane) people use the long double versions because they need = the extra precision and care about the result. We could easily = implement the long double versions now as toy versions that just called = the double versions, but that would upset a lot of people who actually = care about accuracy, who are the main target audience for these = functions. =20 David=