This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[patch] for Stratus VOS
authorPaul Green <Paul.Green@stratus.com>
Wed, 26 Mar 2003 17:24:38 +0000 (12:24 -0500)
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>
Wed, 26 Mar 2003 21:31:55 +0000 (21:31 +0000)
From: "Green, Paul" <Paul.Green@stratus.com>
Message-ID: <A2A34F15EE916148BC4C4748223E67A403D99C74@exna4.stratus.com>
(plus a small tweak to the test script)

p4raw-id: //depot/perl@19070

README.vos
t/op/pack.t

index 342973a..c758235 100644 (file)
@@ -105,19 +105,32 @@ port of Perl.
 
 =head2 Handling of underflow and overflow
 
-VOS does not support automatically mapping overflowed
-floating-point values to +infinity, nor automatically mapping
-underflowed floating-point values to -infinity, unlike many
-other platforms.  The Perl pack function has been modified to
-perform such mapping in software on VOS.  Performing other
-floating-point computations that underflow or overflow will
-probably result in SIGFPE.  Don't push your luck.
+Prior to VOS Release 14.7.0, VOS does not support automatically
+mapping overflowed floating-point values to +infinity, nor
+automatically mapping underflowed floating-point values to zero,
+unlike many other platforms.  The Perl pack function has been
+modified to perform such mapping in software on VOS.  Performing
+other floating-point computations that underflow or overflow
+will probably result in SIGFPE.  Don't push your luck.
+
+As of VOS Release 14.7.0, the VOS POSIX runtime sets up the
+PA-RISC hardware floating-point status register so that the
+overflow and underflow exceptions do not trap, but instead
+automatically convert the result to infinity or zero, as
+appropriate.  As of this writing, there are still floating-point
+operations that can trap, for example, subtracting two infinite
+values.  This is recorded as suggestion posix-1022, which is not
+yet fixed.
 
 =head1 TEST STATUS
 
-When Perl is built using the native build process on VOS Release
-14.5.0 and GNU C++/GNU Tools 2.0.1, all attempted tests either
-pass or result in TODO (ignored) failures.
+When Perl 5.8.1 is built using the native build process on VOS
+Release 14.5.0 and GNU C++/GNU Tools 2.0.1, all but five
+attempted tests either pass or result in TODO (ignored)
+failures.  The tests that fail are:
+
+ext/Time/HiRes/HiRes, tests 8, 11, 20, and 21.
+lib/Net/Ping/t/450_service, test 8.
 
 =head1 SUPPORT STATUS
 
@@ -137,6 +150,6 @@ Paul Green (Paul.Green@stratus.com)
 
 =head1 LAST UPDATE
 
-August 12, 2002
+March 26, 2003
 
 =cut
index af54fdc..d3be738 100755 (executable)
@@ -184,8 +184,12 @@ sub list_eq ($$) {
     skip "Couldn't generate infinity - got error '$@'"
       unless defined $inf and $inf == $inf / 2 and $inf + 1 == $inf;
 
+    local our $TODO;
+    $TODO = "VOS needs a fix for posix-1022 to pass this test."
+      if ($^O eq 'vos');
+
     eval { $x = pack 'w', $inf };
-    like ($@, qr/^Cannot compress integer/);
+    like ($@, qr/^Cannot compress integer/, "Cannot compress integer");
   }
 
  SKIP: {