summaryrefslogtreecommitdiff
path: root/t/op
diff options
context:
space:
mode:
authorNick Ing-Simmons <nik@tiuk.ti.com>2002-03-15 07:13:38 +0000
committerNick Ing-Simmons <nik@tiuk.ti.com>2002-03-15 07:13:38 +0000
commitf10281e8406ac6b2a26b602b9618172f8e674dbf (patch)
tree2ee57dcbe71147a8c3ac3cd4a9b0c87aa974ca13 /t/op
parent0d59eeb885c1548e7bb41cac507af3425497a1ce (diff)
parent47359646ddaf861d81d418f3d16f33e47123bae1 (diff)
downloadperl-f10281e8406ac6b2a26b602b9618172f8e674dbf.tar.gz
Integrate mainline
p4raw-id: //depot/perlio@15232
Diffstat (limited to 't/op')
-rwxr-xr-xt/op/arith.t29
1 files changed, 28 insertions, 1 deletions
diff --git a/t/op/arith.t b/t/op/arith.t
index 4205345a7e..55a5e48084 100755
--- a/t/op/arith.t
+++ b/t/op/arith.t
@@ -1,6 +1,11 @@
#!./perl -w
-print "1..133\n";
+BEGIN {
+ chdir 't' if -d 't';
+ @INC = '../lib';
+}
+
+print "1..134\n";
sub try ($$) {
print +($_[1] ? "ok" : "not ok"), " $_[0]\n";
@@ -269,3 +274,25 @@ tryeq 130, 18446744073709551616/9223372036854775808, 2;
my $t1000 = time() * 1000;
try 133, abs($t1000 -1000 * $t) <= 2000;
}
+
+if ($^O eq 'vos') {
+ print "not ok 134 # TODO VOS raises SIGFPE instead of producing infinity.\n";
+} else {
+ # The computation of $v should overflow and produce "infinity"
+ # on any system whose max exponent is less than 10**1506.
+ # The exact string used to represent infinity varies by OS,
+ # so we don't test for it; all we care is that we don't die.
+ #
+ # Perl considers it to be an error if SIGFPE is raised.
+ # Chances are the interpreter will die, since it doesn't set
+ # up a handler for SIGFPE. That's why this test is last; to
+ # minimize the number of test failures. --PG
+
+ my $n = 5000;
+ my $v = 2;
+ while (--$n)
+ {
+ $v *= 2;
+ }
+ print "ok 134\n";
+}