Change the push/unshift warning to be of class syntax, not misc.
Jarkko Hietaniemi [Tue, 3 Apr 2001 17:58:07 +0000 (17:58 +0000)]
p4raw-id: //depot/perl@9535

op.c
pod/perldiag.pod
t/pragma/warn/op

diff --git a/op.c b/op.c
index 4f95857..f6ec916 100644 (file)
--- a/op.c
+++ b/op.c
@@ -5680,8 +5680,8 @@ Perl_ck_fun(pTHX_ OP *o)
                break;
            case OA_AVREF:
                if ((type == OP_PUSH || type == OP_UNSHIFT)
-                   && !kid->op_sibling && ckWARN(WARN_MISC))
-                   Perl_warner(aTHX_ WARN_MISC,
+                   && !kid->op_sibling && ckWARN(WARN_SYNTAX))
+                   Perl_warner(aTHX_ WARN_SYNTAX,
                        "Useless use of %s with no values",
                        PL_op_desc[type]);
                    
index 038b93f..110f1cd 100644 (file)
@@ -3684,7 +3684,7 @@ L<perlref> for more on this.
 
 =item Useless use of %s with no values
 
-(W misc) You used the push() or unshift() function with no arguments
+(W syntax) You used the push() or unshift() function with no arguments
 apart from the array, like C<push(@x)> or C<unshift(@foo)>. That won't
 usually have any effect on the array, so is completely useless. It's
 possible in principle that push(@tied_array) could have some effect
index 62268fc..b4b8e4e 100644 (file)
@@ -887,10 +887,10 @@ in end
 ########
 # op.c
 my @x;
-use warnings 'misc' ;
+use warnings 'syntax' ;
 push(@x);
 unshift(@x);
-no warnings 'misc' ;
+no warnings 'syntax' ;
 push(@x);
 unshift(@x);
 EXPECT