# 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')
   );
 
   #

Reply via email to