# New Ticket Created by Leopold Toetsch
# Please include the string: [perl #18782]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=18782 >
All tests including running JIT show:
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/src/sprintf.t 1 256 2 1 50.00% 1
9 subtests skipped.
Failed 1/41 test scripts, 97.56% okay. 1/556 subtests failed, 99.82% okay.
I really don't know, if it's the correct way to go. Unresolved are
IMHO packfile issues, the floatval field in the packfile header is not
set, and I don't know, if the binary float formats are interchangable.
Further confusing is the usage of nvsize and numvalsize - one of these
is redundant.
Anyway, here is a patch, how I got it running (jit changes are already
checked in).
leo
-- attachment 1 ------------------------------------------------------
url: http://rt.perl.org/rt2/attach/43581/34679/3df02f/LEO.diff
--- parrot/config/auto/format.pl Fri May 24 08:22:26 2002
+++ parrot-leo/config/auto/format.pl Sat Nov 30 12:36:00 2002
@@ -11,7 +11,7 @@
sub runstep {
my($ivformat, $nvformat, $nvsize);
my($iv, $nv, $floatsize, $doublesize, $ldsize)=Configure::Data->get(
- qw(iv nv floatsize doublesize longdoublesize)
+ qw(iv nv floatsize doublesize hugefloatvalsize)
);
if ($iv eq "int") {
@@ -30,9 +30,9 @@
$nvformat = "%f";
} elsif ($nv eq "long double") {
# Stay way from long double for now (it may be 64 or 80 bits)
- die "long double not supported at this time, use double.";
+ # die "long double not supported at this time, use double.";
$nvsize = $ldsize;
- $nvformat = "%lf";
+ $nvformat = "%Lf";
} else {
die "Configure.pl: Can't find a printf-style format specifier for type
\"$nv\"\n";
}
--- parrot/config/auto/pack.pl Fri May 24 08:22:26 2002
+++ parrot-leo/config/auto/pack.pl Sat Nov 30 13:37:30 2002
@@ -54,7 +54,7 @@
Configure::Data->set(
packtype_b => 'C',
- packtype_n => 'd'
+ packtype_n => (Configure::Data->get('numvalsize') == 12 ? 'D' : 'd')
);
#