syntax anti-lint

__END__
-X
# nolint: check runtime $^WARNING is zapped
$^WARNING = 1 ;
close $^STDIN ; print \*STDIN, "abc" ;
EXPECT

########
-X
# nolint: check runtime $^WARNING is zapped
do {
  $^WARNING = 1 ;
  close $^STDIN ;
  print $^STDIN, "abc" ;
};
EXPECT

########
-Xw
# nolint: check combination of -w and -X
do {
  $^WARNING = 1 ;
  close $^STDIN ; print \*STDIN, "abc" ;
};
EXPECT

########
-X
# Check scope of pragma with eval
use warnings;
do {
    no warnings ;
    eval '
        my $b ; chop $b ;
    '; print $^STDERR, $^EVAL_ERROR ;
    my $b ; chop $b ;
};
EXPECT

########
-X
# Check scope of pragma with eval
use warnings;
do {
    no warnings ;
    eval q[ 
        use warnings 'uninitialized' ;
        my $b ; chop $b ;
    ]; print $^STDERR, $^EVAL_ERROR;
    my $b ; chop $b ;
};
EXPECT

########
-X
# Check scope of pragma with eval
no warnings;
do {
    use warnings 'uninitialized' ;
    eval '
        my $b ; chop $b ;
    '; print $^STDERR, $^EVAL_ERROR ;
    my $b ; chop $b ;
};
EXPECT

########
-X
# Check scope of pragma with eval
no warnings;
do {
    use warnings 'uninitialized' ;
    eval '
        no warnings ;
        my $b ; chop $b ;
    '; print $^STDERR, $^EVAL_ERROR ;
    my $b ; chop $b ;
};
EXPECT

