This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Revert a231c375cc and fix 61cd60c6c5 differently instead
authorSteve Hay <steve.m.hay@googlemail.com>
Thu, 18 Sep 2014 12:25:36 +0000 (13:25 +0100)
committerSteve Hay <steve.m.hay@googlemail.com>
Thu, 18 Sep 2014 12:25:36 +0000 (13:25 +0100)
commit9c19a6c70398689cd5f09e87fe7dc48197a69524
tree40ae6c8120dfd48e47d7dfe8446ae4b0cd0917ed
parent5d855216e8e5239f9e530a61123e5bee79c287e5
Revert a231c375cc and fix 61cd60c6c5 differently instead

Change a231c375cc fixed the GCC build, broken by 61cd60c6c5, but
unfortunately also caused a test failure in the very same GCC build:
ext/XS-APItest/t/print.t test 11. There is no way to print long doubles
with formatting functions in msvcrt.dll (which is what MinGW/MinGW-w64
use by default) because that doesn't support long doubles at all, other
than as a synonym for doubles. Defining PERL_PRIfldbl gave APItest.xs the
false expectation that printing a long double with it would work, but it
does not. Hence, revert a231c375cc for now. (Future commits will add
optional GCC-only support for using long doubles by using some MinGW-
specific formatting functions instead.)

We now fix the GCC build breakage in sv.c by simply testing for whether
PERL_PRIgldbl is defined (just like APItest.xs already tests for whether
PERL_PRIfldbl is defined). Now that it once again isn't defined, we fall
through to the #else case, which is what VC uses anyway since its
LONG_DOUBLESIZE is equal to its DOUBLESIZE.
sv.c
win32/config.gc
win32/config.vc
win32/config_H.gc
win32/config_H.vc