Non-canonical hexadecimal floats are parsed prematurely #15120
Comments
From dankogai@dan.co.jpCreated by dankogai@dan-imac151.localI am so glad Perl 5.22 adds support to the C99 hexadecimal floating point notation. What I am not so glad is I found that perl sometimes parses hex floats prematurely. % perl -E 'say sprintf "%a", 0x0.b17217f7d1cf78p0 - 0x1.62e42fefa39efp-1' As you see, LHS is non-normal form and RHS normal. AFAIK in other platforms that support hexfloats 0x0.b17217f7d1cf78p0 == 0x1.62e42fefa39efp-1: C: Dan the Bit-Picking Perl Monger Perl Info
|
From @sisyphus-----Original Message-----
Works fine for me on MS Windows, perl-5.22.0: C:\>perl -E "say sprintf '%a', 0x0.b17217f7d1cf78p0 - 0x1.62e42fefa39efp-1" A regression ? Cheers, |
The RT System itself - Status changed from 'new' to 'open' |
From @jhiIf you can, please test the bleadperl at http://perl5.git.perl.org/perl.git/commit/eba98284740b799def26803ebac340aaa8930437 Test the hexfp literals and the %a without mercy. |
From @iabynOn Thu, Jan 07, 2016 at 01:42:01PM +1100, sisyphus1@optusnet.com.au wrote:
the maint-5.22 branch now prints 0x0p+0, as well as perl-5.23.0 onwards. -- |
@iabyn - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#127183 (status was 'resolved')
Searchable as RT127183$
The text was updated successfully, but these errors were encountered: