RE: [PHP-DEV] Re: [RFC] [DISCUSSION] More precise float value
| From: | Anatol Belski | Date: | Sun, 27 Sep 2015 19:51:26 +0000 |
| Subject: | RE: [PHP-DEV] Re: [RFC] [DISCUSSION] More precise float value | ||
| References: | 1 2 3 4 5 6 7 8 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-88523@lists.php.net to get a copy of this message | ||
Hi Jakub,
> -----Original Message-----
> From: jakub.php@gmail.com [mailto:jakub.php@gmail.com] On Behalf Of Jakub
> Zelenka
> > Exactly, so my question was - why it still needs to do "if (mode == 0)
> > ndigit = 17;" in snprintf at the place I've linked? It won't have any
> > effect as zend_dtoa will ignore it :)
> >
>
> As I said in the PR some time ago, it's not used by dtoa for mode 0 but it's still
> used by php_gcvt for checking if exponential or decimal notation should be
> used. See
>
> https://github.com/php/php-
> src/blob/250938e2d35fc54161a18167b7901c5e3b574371/main/snprintf.c#L163
>
Ah, I see it now. The patch is quite sparse, so have to check the whole functions. Thanks for the
explanations.
For 7.0 raising the precision INIs to max supported were probably OK, but no new INI options should
be added. And IMHO, there should be only one INI option change, and preferably full patch with
json_precision in 7.1 and not touching other branches (the simplest solution). As it seems, one sees
it critical to start using 17 digits in 7.0 - then probably vote were eligible (whereby I
wouldn't see it critical). But then IMHO - switch to serialize_precision in 7.0 and keep the
name for 7.1 with full patch. Though please be aware that times are going fast, if you decide to put
something 7.0 related to the vote, be sure the results stand till RC5.
Regards
Anatol