This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
integrate cfgperl contents into mainline
[perl5.git] / pod / perldiag.pod
index bffd191..47e16bf 100644 (file)
@@ -18,8 +18,11 @@ desperation):
 Optional warnings are enabled by using the B<-w> switch.  Warnings may
 be captured by setting C<$SIG{__WARN__}> to a reference to a routine that
 will be called on each warning instead of printing it.  See L<perlvar>.
+
 Trappable errors may be trapped using the eval operator.  See
-L<perlfunc/eval>.
+L<perlfunc/eval>.  In almost all cases, warnings may be selectively
+disabled or promoted to fatal errors using the C<warning> pragma.
+See L<warning>.
 
 Some of these messages are generic.  Spots that vary are denoted with a %s,
 just as in a printf format.  Note that some messages start with a %s!
@@ -1347,7 +1350,8 @@ the name.
 
 =item Format %s redefined
 
-(W) You redefined a format.  To suppress this warning, say
+(W) You redefined a format, perhaps accidentally.  To suppress this warning,
+say
 
     {
        no warning;
@@ -1979,8 +1983,6 @@ try using scientific notation (e.g. "1e6" instead of "1_000_000").
 and therefore non-portable between systems.  See L<perlport> for more
 on portability concerns.
 
-See also L<perlport> for writing portable code.
-
 =item Odd number of elements in hash assignment
 
 (S) You specified an odd number of elements to initialize a hash, which
@@ -2614,7 +2616,8 @@ may break this.
 
 =item Subroutine %s redefined
 
-(W) You redefined a subroutine.  To suppress this warning, say
+(W) You redefined a subroutine, perhaps accidentally.  To suppress this
+warning, say
 
     {
        no warning;