This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
make the sysread()/syswrite/() etc :utf8 handle warnings default
authorTony Cook <tony@develop-help.com>
Mon, 14 Nov 2016 00:17:42 +0000 (11:17 +1100)
committerTony Cook <tony@develop-help.com>
Mon, 14 Nov 2016 00:17:42 +0000 (11:17 +1100)
as they should be for deprecation warnings

pp_sys.c
t/lib/warnings/pp_sys

index 10d6185..b7e5f61 100644 (file)
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -1705,9 +1705,9 @@ PP(pp_sysread)
 
     if ((fp_utf8 = PerlIO_isutf8(IoIFP(io))) && !IN_BYTES) {
         if (PL_op->op_type == OP_SYSREAD || PL_op->op_type == OP_RECV) {
-            Perl_ck_warner(aTHX_ packWARN(WARN_DEPRECATED),
-                           "%s() is deprecated on :utf8 handles",
-                           OP_DESC(PL_op));
+            Perl_ck_warner_d(aTHX_ packWARN(WARN_DEPRECATED),
+                             "%s() is deprecated on :utf8 handles",
+                             OP_DESC(PL_op));
         }
        buffer = SvPVutf8_force(bufsv, blen);
        /* UTF-8 may not have been set if they are all low bytes */
@@ -1968,9 +1968,9 @@ PP(pp_syswrite)
     doing_utf8 = DO_UTF8(bufsv);
 
     if (PerlIO_isutf8(IoIFP(io))) {
-        Perl_ck_warner(aTHX_ packWARN(WARN_DEPRECATED),
-                       "%s() is deprecated on :utf8 handles",
-                       OP_DESC(PL_op));
+        Perl_ck_warner_d(aTHX_ packWARN(WARN_DEPRECATED),
+                         "%s() is deprecated on :utf8 handles",
+                         OP_DESC(PL_op));
        if (!SvUTF8(bufsv)) {
            /* We don't modify the original scalar.  */
            tmpbuf = bytes_to_utf8((const U8*) buffer, &blen);
index 56e2da5..b1451b1 100644 (file)
@@ -950,23 +950,25 @@ EXPECT
 sleep() with negative argument at - line 2.
 ########
 # NAME sysread() deprecated on :utf8
-use warnings 'deprecated';
 open my $fh, "<:raw", "../harness" or die "# $!";
 my $buf;
 sysread $fh, $buf, 10;
 binmode $fh, ':utf8';
 sysread $fh, $buf, 10;
+no warnings 'deprecated';
+sysread $fh, $buf, 10;
 EXPECT
-sysread() is deprecated on :utf8 handles at - line 6.
+sysread() is deprecated on :utf8 handles at - line 5.
 ########
 # NAME syswrite() deprecated on :utf8
 my $file = "syswwarn.tmp";
-use warnings 'deprecated';
 open my $fh, ">:raw", $file or die "# $!";
 syswrite $fh, 'ABC';
 binmode $fh, ':utf8';
 syswrite $fh, 'ABC';
+no warnings 'deprecated';
+syswrite $fh, 'ABC';
 close $fh;
 unlink $file;
 EXPECT
-syswrite() is deprecated on :utf8 handles at - line 6.
+syswrite() is deprecated on :utf8 handles at - line 5.