This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
(perl #133510) use quadmath versions of log10, ldexp and signbit
authorTony Cook <tony@develop-help.com>
Wed, 12 Sep 2018 01:09:52 +0000 (11:09 +1000)
committerTony Cook <tony@develop-help.com>
Wed, 12 Sep 2018 01:09:52 +0000 (11:09 +1000)
commite6081c0ea8a779f5fdd429d2dfb48bf094bb92c4
tree93030d55d4965871d2c0a5a7ca04a1b2e95006e3
parentdb54010671d6c27faf667d658073743b14cd9b58
(perl #133510) use quadmath versions of log10, ldexp and signbit

With -Dquadmath C++ builds, the calls to log10() and ldexp() would
cause ambiguous overloaded function errors, since all of log10(float),
log10(double) and log10(long double) were canidates for a
log10(__float128) call.  Similarly for ldexp().

signbit() had a different problem, two of the tests in ext/POSIX/t/math.t
failed with the default signbit() macro, presumably because the
__float128 was being converted to a long double, since the macro in
math.h didn't special case for __float128.
ext/POSIX/POSIX.xs
ext/POSIX/lib/POSIX.pm
perl.h