The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
  mg.c	AOK

  No such signal: SIG%s
    $SIG{FRED} = sub {}

  Setting $/ to a reference to zero as a form of slurp is deprecated, treating as undef

  SIG%s handler \"%s\" not defined.
    $SIG{"INT"} = "ok3"; kill "INT",$$;

__END__
# mg.c
use warnings 'signal' ;
$SIG{FRED} = sub {};
EXPECT
No such signal: SIGFRED at - line 3.
########
# mg.c
no warnings 'signal' ;
$SIG{FRED} = sub {};
EXPECT

########
-w
# warnable code, warnings enabled via command line switch
$/ = \0;
EXPECT
Setting $/ to a reference to zero as a form of slurp is deprecated, treating as undef at - line 3.
########
-w
# warnable code, warnings enabled via command line switch
$/ = \-1;
EXPECT
Setting $/ to a reference to a negative integer as a form of slurp is deprecated, treating as undef at - line 3.
########
$/ = \-1;
no warnings 'deprecated';
$/ = \-1;
EXPECT
Setting $/ to a reference to a negative integer as a form of slurp is deprecated, treating as undef at - line 1.
########
# mg.c
use warnings 'signal' ;
if ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'VMS') {
    print "SKIPPED\n# $^O, can't kill() to raise()\n"; exit;
}
$|=1;
$SIG{"INT"} = "fred"; kill "INT",$$;
EXPECT
SIGINT handler "fred" not defined.
########
# mg.c
no warnings 'signal' ;
if ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'VMS') {
    print "SKIPPED\n# $^O, can't kill() to raise()\n"; exit;
}
$|=1;
$SIG{"INT"} = "fred"; kill "INT",$$;
EXPECT

########
# mg.c
use warnings 'signal' ;
if ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'VMS') {
    print "SKIPPED\n# $^O, can't kill() to raise()\n"; exit;
}
$|=1;
$SIG{__WARN__} = sub { warn shift =~ s/\0/\\0/rugs };
$SIG{"INT"} = "fr\0d"; kill "INT",$$;
EXPECT
SIGINT handler "fr\0d" not defined.
########
# mg.c
use warnings 'signal' ;
use open ":std", ":utf8";
use utf8;
if ($^O eq 'MSWin32' || $^O eq 'NetWare' || $^O eq 'VMS') {
    print "SKIPPED\n# $^O, can't kill() to raise()\n"; exit;
}
$|=1;
$SIG{"INT"} = "프레드"; kill "INT",$$;
EXPECT
SIGINT handler "프레드" not defined.
########
# mg.c
use warnings 'uninitialized';
'foo' =~ /(foo)/;
oct $3;
EXPECT
Use of uninitialized value $3 in oct at - line 4.
########
# mg.c
use warnings 'uninitialized';
oct $3;
EXPECT
Use of uninitialized value $3 in oct at - line 3.
########
# mg.c
use warnings 'uninitialized';
$ENV{FOO} = undef; # should not warn
EXPECT
########
${^ENCODING} = 42;
{ local ${^ENCODING}; }
${^ENCODING} = undef;
{ local ${^ENCODING} = 37; }
no warnings 'deprecated';
${^ENCODING} = 42;
{ local ${^ENCODING}; }
${^ENCODING} = undef;
{ local ${^ENCODING} = 37; }
EXPECT
Setting ${^ENCODING} is deprecated at - line 1.
Setting ${^ENCODING} is deprecated at - line 4.