BEGIN {
chdir 't' if -d 't';
- unshift @INC, '../lib';
+ @INC = '../lib';
}
use warnings;
# number of elements. Even so, subterfuge is sometimes required: see
# tests for %n and %p.
#
+# The following tests are not currently run, for the reasons stated:
+
+=pod
+
+=begin problematic
+
+>%.0f< >-0.1< >-0< >C library bug: no minus on VMS, HP-UX<
+>%.0f< >1.5< >2< >Standard vague: no rounding rules<
+>%.0f< >2.5< >2< >Standard vague: no rounding rules<
+
+=end problematic
+
+=cut
+
# template data result
__END__
>%6. 6s< >''< >%6. 6s INVALID< >(See use of $w in code above)<
>%v+-3d< >"\01\02\03"< >+1 .2 .3 <
>%v4.3d< >"\01\02\03"< > 001. 002. 003<
>%v04.3d< >"\01\02\03"< >0001.0002.0003<
->%*v02d< >['-', "\0\7\13"]< >00-07-11<
+>%*v02d< >['-', "\0\7\14"]< >00-07-12<
>%v.*d< >[3, "\01\02\03"]< >001.002.003<
>%v0*d< >[3, "\01\02\03"]< >001.002.003<
>%v-*d< >[3, "\01\02\03"]< >1 .2 .3 <
>%+e< >-1234.875< >-1.234875e+03<
>%#e< >-1234.875< >-1.234875e+03<
>%.0e< >1234.875< >1e+03<
+>%#.0e< >1234.875< >1.e+03<
>%.*e< >[0, 1234.875]< >1e+03<
>%.1e< >1234.875< >1.2e+03<
>%-12.4e< >1234.875< >1.2349e+03 <
>%f< >0< >0.000000<
>%.0f< >0< >0<
>%.0f< >2**38< >274877906944< >Should have exact int'l rep'n<
->%.0f< >0.5< >0<
->%.0f< >-0.5< >-0<
+>%.0f< >0.1< >0<
+>%.0f< >0.6< >1< >Known to fail with sfio<
+>%.0f< >-0.6< >-1< >Known to fail with sfio<
+>%.0f< >1< >1<
+>%#.0f< >1< >1.<
>%g< >12345.6789< >12345.7<
>%+g< >12345.6789< >+12345.7<
>%#g< >12345.6789< >12345.7<
>%.0g< >12345.6789< >1e+04<
+>%#.0g< >12345.6789< >1.e+04<
>%.2g< >12345.6789< >1.2e+04<
>%.*g< >[2, 12345.6789]< >1.2e+04<
>%.9g< >12345.6789< >12345.6789<
>%+o< >2**32-1< >37777777777<
>%#o< >2**32-1< >037777777777<
>%d< >$p=sprintf('%p',$p);$p=~/^[0-9a-f]+$/< >1< >Coarse hack: hex from %p?<
+>%#p< >''< >%#p INVALID<
>%q< >''< >%q INVALID<
>%r< >''< >%r INVALID<
>%s< >'string'< >string<