Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:40070 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 75873 invoked from network); 23 Aug 2008 21:02:09 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 23 Aug 2008 21:02:09 -0000 Authentication-Results: pb1.pair.com smtp.mail=chris_se@gmx.net; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=chris_se@gmx.net; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmx.net designates 213.165.64.20 as permitted sender) X-PHP-List-Original-Sender: chris_se@gmx.net X-Host-Fingerprint: 213.165.64.20 mail.gmx.net Received: from [213.165.64.20] ([213.165.64.20:34782] helo=mail.gmx.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 16/39-07001-FCA70B84 for ; Sat, 23 Aug 2008 17:02:09 -0400 Received: (qmail invoked by alias); 23 Aug 2008 21:02:04 -0000 Received: from p54A16ACA.dip.t-dialin.net (EHLO chris-se.dyndns.org) [84.161.106.202] by mail.gmx.net (mp065) with SMTP; 23 Aug 2008 23:02:04 +0200 X-Authenticated: #186999 X-Provags-ID: V01U2FsdGVkX1+U12xlG8qUm0+3ZA0CwvDfiwGZ6+gKMq1kHYfwrH 6wiYnnuOw2hV8x Received: from [192.168.100.13] (cobalt.seiler.lan [192.168.100.13]) by chris-se.dyndns.org (Postfix) with ESMTP id EC32719446 for ; Sat, 23 Aug 2008 22:13:56 +0200 (CEST) Message-ID: <48B07A62.3050207@gmx.net> Date: Sat, 23 Aug 2008 23:00:18 +0200 User-Agent: Thunderbird 2.0.0.16 (X11/20080707) MIME-Version: 1.0 To: php-dev List X-Enigmail-Version: 0.95.7 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 X-FuHaFi: 0.6 Subject: [RFC] [PATCH] Rounding in PHP From: chris_se@gmx.net (Christian Seiler) Hi, A few weeks ago I wrote quite a long posting to internals@ that tried to clarify the situation on the round() function in PHP. I was asked to write it up as an RFC in the wiki, which I have done: http://wiki.php.net/rfc/rounding In the mean time, I had some time to think about that problem again and am quite sure that I have a feasible solution for the problem. The RFC includes a patch that addresses all problems and is in my eyes the best solution. The patch is actually much simpler than the RFC itself. ;-) I also discovered that zend_strtod() which is responsible for string to double conversions does not yield the same results as the traditional strtod() due to the same "extended precision truncated to double precision" problem on 32 bit x86 systems with GNU compiler. The patch also addresses that. Anyway, feel free to comment. Regards, Christian PS: While testing the Windows versions, I discovered, that someone removed http://www.php.net/extras/win32build.zip - is that intentional? I got the previous version out of CVS in order to be able to build PHP. If it is intentional, where do I get updated build instruction when compared to ?