3 we seem to have lost a few ambiguous warnings!!
7 Use of comma-less variable list is deprecated
8 (called 3 times via depcom)
10 \1 better written as $1
11 use warnings 'syntax' ;
15 Semicolon seems to be missing
32 Multidimensional syntax %.*s not supported
35 You need to quote \"%s\""
36 sub fred {} ; $SIG{TERM} = fred;
38 Scalar value %.*s better written as $%.*s"
42 Can't use \\%c to mean $%c in expression
43 $_ = "ab" ; s/(ab)/\1/e;
45 Unquoted string "abc" may clash with future reserved word at - line 3.
49 Possible attempt to separate words with commas
52 Possible attempt to put comments in qw() list
55 %s (...) interpreted as function
60 Ambiguous use of %c{%s%s} resolved to %c%s%s
65 Ambiguous use of %c{%s} resolved to %c%s
67 sub fred {} $a = ${fred}
73 Bareword \"%s\" refers to nonexistent package
76 Ambiguous call resolved as CORE::%s(), qualify as such or use &
80 Unrecognized escape \\%c passed through
86 %s number > %s non-portable
87 my $a = 0b011111111111111111111111111111110 ;
88 $a = 0b011111111111111111111111111111111 ;
89 $a = 0b111111111111111111111111111111111 ;
97 Integer overflow in binary number
98 my $a = 0b011111111111111111111111111111110 ;
99 $a = 0b011111111111111111111111111111111 ;
100 $a = 0b111111111111111111111111111111111 ;
108 dump() better written as CORE::dump()
110 Use of /c modifier is meaningless without /g
112 Use of /c modifier is meaningless in s///
116 Use of "%s" without parentheses is ambiguous [check_uni]
119 Ambiguous use of -%s resolved as -&%s() [yylex]
120 sub fred {} ; - fred ;
122 Precedence problem: open %.*s should be open(%.*s) [yylex]
125 Operator or semicolon missing before %c%s [yylex]
126 Ambiguous use of %c resolved as operator %c
135 no warnings 'deprecated' ;
141 Use of comma-less variable list is deprecated at - line 4.
142 Use of comma-less variable list is deprecated at - line 4.
143 Use of comma-less variable list is deprecated at - line 4.
146 $a =~ m/$foo/sand $bar;
147 $a =~ s/$foo/fool/sand $bar;
150 no warnings 'deprecated' ;
151 $a =~ m/$foo/sand $bar;
152 $a =~ s/$foo/fool/sand $bar;
156 Having no space between pattern and following word is deprecated at - line 2.
157 Having no space between pattern and following word is deprecated at - line 3.
158 Use of bare << to mean <<"" is deprecated at - line 4.
161 use warnings 'syntax' ;
163 no warnings 'syntax' ;
166 \1 better written as $1 at - line 3.
169 use warnings 'semicolon' ;
172 no warnings 'semicolon' ;
176 Semicolon seems to be missing at - line 3.
179 use warnings 'syntax' ;
191 Reversed += operator at - line 3.
192 Reversed -= operator at - line 4.
193 Reversed *= operator at - line 5.
194 Reversed %= operator at - line 6.
195 Reversed &= operator at - line 7.
196 Reversed .= operator at - line 8.
197 Reversed ^= operator at - line 9.
198 Reversed |= operator at - line 10.
199 Reversed <= operator at - line 11.
200 syntax error at - line 8, near "=."
201 syntax error at - line 9, near "=^"
202 syntax error at - line 10, near "=|"
203 Unterminated <> operator at - line 11.
206 no warnings 'syntax' ;
218 syntax error at - line 8, near "=."
219 syntax error at - line 9, near "=^"
220 syntax error at - line 10, near "=|"
221 Unterminated <> operator at - line 11.
224 use warnings 'syntax' ;
226 no warnings 'syntax' ;
229 Multidimensional syntax $a[1,2] not supported at - line 3.
232 use warnings 'syntax' ;
233 sub fred {} ; $SIG{TERM} = fred;
234 no warnings 'syntax' ;
237 You need to quote "fred" at - line 3.
241 use open qw( :utf8 :std );
242 use warnings 'syntax' ;
243 sub frèd {} ; $SIG{TERM} = frèd;
244 no warnings 'syntax' ;
247 You need to quote "frèd" at - line 5.
251 use open qw( :utf8 :std );
252 use warnings 'syntax' ;
253 sub ふれど {} ; $SIG{TERM} = ふれど;
254 no warnings 'syntax' ;
257 You need to quote "ふれど" at - line 5.
260 use warnings 'syntax' ;
263 no warnings 'syntax' ;
267 Scalar value @a[3] better written as $a[3] at - line 3.
268 Scalar value @a{3} better written as $a{3} at - line 4.
272 use open qw( :utf8 :std );
273 use warnings 'syntax' ;
276 no warnings 'syntax' ;
280 Scalar value @à[3] better written as $à[3] at - line 5.
281 Scalar value @à{3} better written as $à{3} at - line 6.
285 use open qw( :utf8 :std );
286 use warnings 'syntax' ;
289 no warnings 'syntax' ;
293 Scalar value @ぁ[3] better written as $ぁ[3] at - line 5.
294 Scalar value @ぁ{3} better written as $ぁ{3} at - line 6.
297 use warnings 'syntax' ;
300 no warnings 'syntax' ;
304 Can't use \1 to mean $1 in expression at - line 4.
307 use warnings 'reserved' ;
312 no warnings 'reserved' ;
315 Unquoted string "abc" may clash with future reserved word at - line 3.
323 Possible attempt to separate words with commas at - line 3.
331 Possible attempt to put comments in qw() list at - line 3.
335 @a = qw(a, b, c # #) ;
337 @a = qw(a, b, c # #) ;
339 Possible attempt to separate words with commas at - line 3.
340 Possible attempt to put comments in qw() list at - line 3.
343 use warnings 'syntax' ;
345 print ("") and $x = 1;
348 print (1+2) * 3 if 0; # only this one should warn
351 print (...) interpreted as function at - line 7.
354 no warnings 'syntax' ;
360 use warnings 'syntax' ;
364 printf (...) interpreted as function at - line 4.
367 no warnings 'syntax' ;
373 use warnings 'syntax' ;
377 sort (...) interpreted as function at - line 4.
380 no warnings 'syntax' ;
386 use warnings 'ambiguous' ;
388 no warnings 'ambiguous' ;
391 Ambiguous use of ${time[...]} resolved to $time[...] at - line 3.
394 use warnings 'ambiguous' ;
397 Ambiguous use of ${time{...}} resolved to $time{...} at - line 3.
400 no warnings 'ambiguous' ;
406 use warnings 'ambiguous' ;
408 no warnings 'ambiguous' ;
411 Ambiguous use of ${time} resolved to $time at - line 3.
414 use warnings 'ambiguous' ;
417 no warnings 'ambiguous' ;
420 Ambiguous use of ${fred} resolved to $fred at - line 4.
423 use warnings 'syntax' ;
424 $a = _123; print "$a\n"; #( 3 string)
425 $a = 1_23; print "$a\n";
426 $a = 12_3; print "$a\n";
427 $a = 123_; print "$a\n"; # 6
428 $a = _+123; print "$a\n"; # 7 string)
429 $a = +_123; print "$a\n"; #( 8 string)
430 $a = +1_23; print "$a\n";
431 $a = +12_3; print "$a\n";
432 $a = +123_; print "$a\n"; # 11
433 $a = _-123; print "$a\n"; #(12 string)
434 $a = -_123; print "$a\n"; #(13 string)
435 $a = -1_23; print "$a\n";
436 $a = -12_3; print "$a\n";
437 $a = -123_; print "$a\n"; # 16
438 $a = 123._456; print "$a\n"; # 17
439 $a = 123.4_56; print "$a\n";
440 $a = 123.45_6; print "$a\n";
441 $a = 123.456_; print "$a\n"; # 20
442 $a = +123._456; print "$a\n"; # 21
443 $a = +123.4_56; print "$a\n";
444 $a = +123.45_6; print "$a\n";
445 $a = +123.456_; print "$a\n"; # 24
446 $a = -123._456; print "$a\n"; # 25
447 $a = -123.4_56; print "$a\n";
448 $a = -123.45_6; print "$a\n";
449 $a = -123.456_; print "$a\n"; # 28
450 $a = 123.456E_12; printf("%.0f\n", $a); # 29
451 $a = 123.456E1_2; printf("%.0f\n", $a);
452 $a = 123.456E12_; printf("%.0f\n", $a); # 31
453 $a = 123.456E_+12; printf("%.0f\n", $a); # 32
454 $a = 123.456E+_12; printf("%.0f\n", $a); # 33
455 $a = 123.456E+1_2; printf("%.0f\n", $a);
456 $a = 123.456E+12_; printf("%.0f\n", $a); # 35
457 $a = 123.456E_-12; print "$a\n"; # 36
458 $a = 123.456E-_12; print "$a\n"; # 37
459 $a = 123.456E-1_2; print "$a\n";
460 $a = 123.456E-12_; print "$a\n"; # 39
461 $a = 1__23; print "$a\n"; # 40
462 $a = 12.3__4; print "$a\n"; # 41
463 $a = 12.34e1__2; printf("%.0f\n", $a); # 42
464 no warnings 'syntax' ;
465 $a = _123; print "$a\n";
466 $a = 1_23; print "$a\n";
467 $a = 12_3; print "$a\n";
468 $a = 123_; print "$a\n";
469 $a = _+123; print "$a\n";
470 $a = +_123; print "$a\n";
471 $a = +1_23; print "$a\n";
472 $a = +12_3; print "$a\n";
473 $a = +123_; print "$a\n";
474 $a = _-123; print "$a\n";
475 $a = -_123; print "$a\n";
476 $a = -1_23; print "$a\n";
477 $a = -12_3; print "$a\n";
478 $a = -123_; print "$a\n";
479 $a = 123._456; print "$a\n";
480 $a = 123.4_56; print "$a\n";
481 $a = 123.45_6; print "$a\n";
482 $a = 123.456_; print "$a\n";
483 $a = +123._456; print "$a\n";
484 $a = +123.4_56; print "$a\n";
485 $a = +123.45_6; print "$a\n";
486 $a = +123.456_; print "$a\n";
487 $a = -123._456; print "$a\n";
488 $a = -123.4_56; print "$a\n";
489 $a = -123.45_6; print "$a\n";
490 $a = -123.456_; print "$a\n";
491 $a = 123.456E_12; printf("%.0f\n", $a);
492 $a = 123.456E1_2; printf("%.0f\n", $a);
493 $a = 123.456E12_; printf("%.0f\n", $a);
494 $a = 123.456E_+12; printf("%.0f\n", $a);
495 $a = 123.456E+_12; printf("%.0f\n", $a);
496 $a = 123.456E+1_2; printf("%.0f\n", $a);
497 $a = 123.456E+12_; printf("%.0f\n", $a);
498 $a = 123.456E_-12; print "$a\n";
499 $a = 123.456E-_12; print "$a\n";
500 $a = 123.456E-1_2; print "$a\n";
501 $a = 123.456E-12_; print "$a\n";
502 $a = 1__23; print "$a\n";
503 $a = 12.3__4; print "$a\n";
504 $a = 12.34e1__2; printf("%.0f\n", $a);
507 Misplaced _ in number at - line 6.
508 Misplaced _ in number at - line 11.
509 Misplaced _ in number at - line 16.
510 Misplaced _ in number at - line 17.
511 Misplaced _ in number at - line 20.
512 Misplaced _ in number at - line 21.
513 Misplaced _ in number at - line 24.
514 Misplaced _ in number at - line 25.
515 Misplaced _ in number at - line 28.
516 Misplaced _ in number at - line 29.
517 Misplaced _ in number at - line 31.
518 Misplaced _ in number at - line 32.
519 Misplaced _ in number at - line 33.
520 Misplaced _ in number at - line 35.
521 Misplaced _ in number at - line 36.
522 Misplaced _ in number at - line 37.
523 Misplaced _ in number at - line 39.
524 Misplaced _ in number at - line 40.
525 Misplaced _ in number at - line 41.
526 Misplaced _ in number at - line 42.
609 use warnings 'bareword' ;
612 no warnings 'bareword' ;
616 Bareword "FRED::" refers to nonexistent package at bar line 25.
619 use warnings 'ambiguous' ;
622 no warnings 'ambiguous' ;
625 Ambiguous call resolved as CORE::time(), qualify as such or use & at - line 4.
642 Warning: Use of "rand" without parentheses is ambiguous at - line 2.
648 no warnings 'ambiguous' ;
650 use warnings 'ambiguous' ;
655 Warning: Use of "rand" without parentheses is ambiguous at - line 3.
656 Warning: Use of "rand" without parentheses is ambiguous at - line 8.
657 Warning: Use of "rand" without parentheses is ambiguous at - line 10.
663 my $b = whatever + 4 ;
665 Warning: Use of "myrand" without parentheses is ambiguous at - line 4.
668 use warnings "ambiguous";
669 print for keys %+; # should not warn
676 Ambiguous use of -fred resolved as -&fred() at - line 3.
683 no warnings 'ambiguous' ;
685 use warnings 'ambiguous' ;
690 Ambiguous use of -fred resolved as -&fred() at - line 4.
691 Ambiguous use of -fred resolved as -&fred() at - line 9.
692 Ambiguous use of -fred resolved as -&fred() at - line 11.
696 open local *FOO; # should be ok
698 Precedence problem: open FOO should be open(FOO) at - line 2.
700 # toke.c (and [perl #16184])
701 open FOO => "<&0"; close FOO;
708 no warnings 'precedence' ;
710 use warnings 'precedence' ;
714 open Foo::BAR; # this should not warn
716 Precedence problem: open FOO should be open(FOO) at - line 3.
717 Precedence problem: open FOO should be open(FOO) at - line 8.
718 Precedence problem: open FOO should be open(FOO) at - line 10.
724 no warnings 'ambiguous' ;
726 use warnings 'ambiguous' ;
731 Operator or semicolon missing before *foo at - line 3.
732 Ambiguous use of * resolved as operator * at - line 3.
733 Operator or semicolon missing before *foo at - line 8.
734 Ambiguous use of * resolved as operator * at - line 8.
735 Operator or semicolon missing before *foo at - line 10.
736 Ambiguous use of * resolved as operator * at - line 10.
740 use open qw( :utf8 :std );
744 no warnings 'ambiguous' ;
746 use warnings 'ambiguous' ;
751 Operator or semicolon missing before *foo at - line 5.
752 Ambiguous use of * resolved as operator * at - line 5.
753 Operator or semicolon missing before *foo at - line 10.
754 Ambiguous use of * resolved as operator * at - line 10.
755 Operator or semicolon missing before *foo at - line 12.
756 Ambiguous use of * resolved as operator * at - line 12.
759 use warnings 'misc' ;
764 Unrecognized escape \m passed through at - line 3.
767 use warnings 'misc' ;
772 Useless use of \E at - line 3.
775 use warnings 'portable' ;
776 my $a = 0b011111111111111111111111111111110 ;
777 $a = 0b011111111111111111111111111111111 ;
778 $a = 0b111111111111111111111111111111111 ;
785 no warnings 'portable' ;
786 $a = 0b011111111111111111111111111111110 ;
787 $a = 0b011111111111111111111111111111111 ;
788 $a = 0b111111111111111111111111111111111 ;
796 Binary number > 0b11111111111111111111111111111111 non-portable at - line 5.
797 Hexadecimal number > 0xffffffff non-portable at - line 8.
798 Octal number > 037777777777 non-portable at - line 11.
801 use warnings 'overflow' ;
802 my $a = 0b011111111111111111111111111111110 ;
803 $a = 0b011111111111111111111111111111111 ;
804 $a = 0b10000000000000000000000000000000000000000000000000000000000000000 ;
807 $a = 0x10000000000000000 ;
810 $a = 002000000000000000000000;
811 no warnings 'overflow' ;
812 $a = 0b011111111111111111111111111111110 ;
813 $a = 0b011111111111111111111111111111111 ;
814 $a = 0b10000000000000000000000000000000000000000000000000000000000000000 ;
817 $a = 0x10000000000000000 ;
820 $a = 002000000000000000000000;
822 Integer overflow in binary number at - line 5.
823 Integer overflow in hexadecimal number at - line 8.
824 Integer overflow in octal number at - line 11.
832 dump() better written as CORE::dump() at - line 4.
838 sub dump { print "no warning for overridden dump\n"; }
841 no warning for overridden dump
844 use warnings 'ambiguous';
845 "@mjd_previously_unused_array";
846 no warnings 'ambiguous';
847 "@mjd_previously_unused_array2";
849 Possible unintended interpolation of @mjd_previously_unused_array in string at - line 3.
853 use open qw( :utf8 :std );
854 use warnings 'ambiguous';
855 "@mjd_previously_unused_àrray";
856 no warnings 'ambiguous';
857 "@mjd_previously_unused_àrray2";
859 Possible unintended interpolation of @mjd_previously_unused_àrray in string at - line 5.
863 use open qw( :utf8 :std );
864 use warnings 'ambiguous';
865 "@mjd_previously_unused_ぁrrぁy";
866 no warnings 'ambiguous';
867 "@mjd_previously_unused_ぁrrぁy2";
869 Possible unintended interpolation of @mjd_previously_unused_ぁrrぁy in string at - line 5.
872 # 20020328 mjd-perl-patch+@plover.com at behest of jfriedl@yahoo.com
873 use warnings 'regexp';
876 no warnings 'regexp';
880 Use of /c modifier is meaningless without /g at - line 4.
883 # 20020328 mjd-perl-patch+@plover.com at behest of jfriedl@yahoo.com
884 use warnings 'regexp';
888 no warnings 'regexp';
892 Use of /c modifier is meaningless in s/// at - line 5.
893 Use of /c modifier is meaningless in s/// at - line 6.
897 # 20020414 mjd-perl-patch+@plover.com # -a flag should suppress these warnings
904 # 20020414 mjd-perl-patch+@plover.com # -a flag should suppress these warnings
907 Possible unintended interpolation of @F in string at - line 4.
908 Name "main::F" used only once: possible typo at - line 4.
912 # 20020414 mjd-perl-patch+@plover.com
917 # 20020414 mjd-perl-patch+@plover.com
918 # In 5.7.3, this emitted "Possible unintended interpolation" warnings
919 use warnings 'ambiguous';
926 eval q/if ($a) { } elseif ($b) { }/;
927 no warnings "syntax";
928 eval q/if ($a) { } elseif ($b) { }/;
930 elseif should be elsif at (eval 1) line 1.
935 no warnings "syntax";
938 Number found where operator expected at (eval 1) line 1, near "5 6"
939 (Missing operator before 6?)
942 use warnings "syntax";
952 no warnings "syntax";
961 !=~ should be !~ at - line 4.
962 !=~ should be !~ at - line 5.
963 !=~ should be !~ at - line 6.
964 !=~ should be !~ at - line 7.
965 !=~ should be !~ at - line 8.
966 !=~ should be !~ at - line 9.
967 !=~ should be !~ at - line 10.
974 sub whack_eth ($) : locked {
976 no warnings 'deprecated';
979 sub ker_plop :locked {
981 sub swa_a_p ($) : locked {
984 Use of :unique is deprecated at - line 2.
985 Use of :locked is deprecated at - line 3.
986 Use of :locked is deprecated at - line 4.
987 Use of :locked is deprecated at - line 6.
990 use warnings "syntax";
991 sub proto_after_array(@$);
992 sub proto_after_arref(\@$);
993 sub proto_after_arref2(\[@$]);
994 sub proto_after_arref3(\[@$]_);
995 sub proto_after_hash(%$);
996 sub proto_after_hashref(\%$);
997 sub proto_after_hashref2(\[%$]);
998 sub underscore_last_pos($_);
999 sub underscore2($_;$);
1000 sub underscore_fail($_$);
1001 sub underscore_after_at(@_);
1002 no warnings "syntax";
1003 sub proto_after_array(@$);
1004 sub proto_after_hash(%$);
1005 sub underscore_fail($_$);
1007 Prototype after '@' for main::proto_after_array : @$ at - line 3.
1008 Prototype after '%' for main::proto_after_hash : %$ at - line 7.
1009 Illegal character after '_' in prototype for main::underscore_fail : $_$ at - line 12.
1010 Prototype after '@' for main::underscore_after_at : @_ at - line 13.
1013 use warnings "ambiguous";
1014 "foo\nn" =~ /^foo$\n/;
1015 "foo\nn" =~ /^foo${\}n/;
1016 my $foo = qr/^foo$\n/;
1017 my $bar = qr/^foo${\}n/;
1018 no warnings "ambiguous";
1019 "foo\nn" =~ /^foo$\n/;
1020 "foo\nn" =~ /^foo${\}n/;
1021 my $foo = qr/^foo$\n/;
1022 my $bar = qr/^foo${\}n/;
1024 Possible unintended interpolation of $\ in regex at - line 3.
1025 Possible unintended interpolation of $\ in regex at - line 5.
1028 use warnings 'syntax' ;
1032 no warnings 'syntax' ;
1037 Missing braces on \o{} at - line 3, within string
1038 Missing right brace on \o{ at - line 4, within string
1039 Number with no digits at - line 5, within string
1040 BEGIN not safe after errors--compilation aborted at - line 6.
1043 use warnings 'digit' ;
1044 my $a = "\o{1238456}";
1045 no warnings 'digit' ;
1046 my $a = "\o{1238456}";
1048 Non-octal character '8'. Resolved as "\o{123}" at - line 3.
1053 print $a =~ ?f? ? "yes\n" : "no\n" foreach 0..2;
1055 Use of ?PATTERN? without explicit operator is deprecated at - line 4.
1065 no warnings 'syntax';
1069 no warnings 'deprecated';
1071 "\c{" is deprecated and is more clearly written as ";" at - line 3.
1072 "\c," is more clearly written simply as "l" at - line 4.
1073 "\c`" is more clearly written simply as "\ " at - line 5.
1074 "\c{" is deprecated and is more clearly written as ";" at - line 7.
1077 use warnings 'syntax' ;
1083 no warnings 'syntax' ;
1086 Regexp modifiers "/d" and "/u" are mutually exclusive at - line 3, near "= "
1087 Regexp modifiers "/l" and "/a" are mutually exclusive at - line 4, near "= "
1088 Regexp modifier "/l" may not appear twice at - line 5, near "= "
1089 Regexp modifier "/a" may appear a maximum of twice at - line 7, near "= "
1090 BEGIN not safe after errors--compilation aborted at - line 8.
1094 eval "print q\xabfoo";
1096 $@ =~ /Can't find string terminator "\xab" anywhere before EOF/;