Can't printf Perl specific datatypes without perlio
Jarkko Hietaniemi [Tue, 11 Jun 2002 02:53:34 +0000 (02:53 +0000)]
(in other words, stdio doesn't do the %V...)

p4raw-id: //depot/perl@17179

ext/XS/APItest/t/printf.t

index c44c8ab..0e58f37 100644 (file)
@@ -27,14 +27,14 @@ select STDOUT; $| = 1; # make unbuffered
 
 # Run the printf tests
 print_double(5);
-print_nv(6);
 print_int(3);
-print_iv(2);
-print_iv(-2);
-print_uv(3);
 print_long(4);
 print_float(4);
 print_long_double() if $ldok;  # val=7 hardwired
+print_iv(2);
+print_iv(-2);
+print_uv(3);
+print_nv(6);
 
 # Now redirect STDOUT and read from the file
 ok open(STDOUT, ">&", $oldout), "restore STDOUT";
@@ -46,17 +46,20 @@ close $foo;
 ok @output >= 9, "captured at least nine output lines";
 
 is($output[0], "5.000", "print_double");
-is($output[1], "6.000", "print_nv");
-is($output[2], "3", "print_int");
-is($output[3], "2", "print_iv positive");
-is($output[4], "-2", "print_iv negative");
-is($output[5], "3", "print_uv");
-is($output[6], "4", "print_long");
-is($output[7], "4.000", "print_float");
+is($output[1], "3", "print_int");
+is($output[2], "4", "print_long");
+is($output[3], "4.000", "print_float");
 
 SKIP: {
    skip "No long doubles", 1 unless $ldok;
-   is($output[8], "7.000", "print_long_double");
+   is($output[4], "7.000", "print_long_double");
 }
 
+SKIP: {
+    skip "No perlio", 4 unless $Config{useperlio};
+    is($output[5], "6.000", "print_nv");
+    is($output[6], "2", "print_iv positive");
+    is($output[7], "-2", "print_iv negative");
+    is($output[8], "3", "print_uv");
+}