This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
t/op/sprintf2.t - Mark failing tests as TODO with VC++ prior to VC14
authorSteve Hay <steve.m.hay@googlemail.com>
Fri, 19 Apr 2019 18:27:05 +0000 (19:27 +0100)
committerSteve Hay <steve.m.hay@googlemail.com>
Fri, 19 Apr 2019 19:06:44 +0000 (20:06 +0100)
See perl #133982.

t/op/sprintf2.t

index 3f4c126..dc87821 100644 (file)
@@ -818,6 +818,14 @@ SKIP: {
         local $::TODO = "denorm literals treated as zero"
             if $f == 0.0 && $t->[2] ne '0x0p+0';
 
+        # Versions of Visual C++ earlier than 2015 (VC14, cl.exe version 19.x)
+        # fail three tests here - see perl #133982.
+        local $::TODO = "Visual C++ has problems prior to VC14"
+            if $^O eq 'MSWin32' and $Config{cc} eq 'cl' and
+               $Config{ccversion} =~ /^(\d+)/ and $1 < 19 and
+               (($t->[0] eq '3e-322' and ($t->[1] eq '%a' or $t->[1] eq '%.4a')) or
+                 $t->[0] eq '7e-322');
+
         my $s = sprintf($t->[1], $f);
         is($s, $t->[2], "subnormal @$t got $s");
     }