This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
podcheck.t: Fewer false positives for L<>
authorKarl Williamson <public@khwilliamson.com>
Sun, 19 Jun 2011 16:20:32 +0000 (10:20 -0600)
committerKarl Williamson <public@khwilliamson.com>
Tue, 21 Jun 2011 13:59:02 +0000 (07:59 -0600)
If there is a F<foo/bar> and a file named bar in the directory foo
exists, then assume that is what was meant, instead of raising
the possibility that L<> was meant.

t/porting/known_pod_issues.dat
t/porting/podcheck.t

index bfd93ca..f82d44e 100644 (file)
@@ -284,10 +284,9 @@ pod/perlsec.pod    Verbatim line length including indents exceeds 80 by    1
 pod/perlsolaris.pod    Apparent broken link    1
 pod/perlsolaris.pod    Verbatim line length including indents exceeds 80 by    14
 pod/perlsource.pod     ? Should you be using F<...> or maybe L<...> instead of 1
-pod/perlsource.pod     ? Should you be using L<...> instead of 1
 pod/perlsub.pod        ? Should you be using F<...> or maybe L<...> instead of 3
 pod/perlsub.pod        Verbatim line length including indents exceeds 80 by    4
-pod/perlsymbian.pod    ? Should you be using L<...> instead of 2
+pod/perlsymbian.pod    ? Should you be using L<...> instead of 1
 pod/perlsymbian.pod    Verbatim line length including indents exceeds 80 by    20
 pod/perlsyn.pod        Verbatim line length including indents exceeds 80 by    7
 pod/perlthrtut.pod     Verbatim line length including indents exceeds 80 by    5
index c1c2f23..0b018a0 100644 (file)
@@ -693,7 +693,9 @@ package My::Pod::Checker {      # Extend Pod::Checker
                 # F<> that end in eg \.pl are almost certainly ok, as are
                 # those that look like a path with multiple "/" chars
                 && ($type ne "F"
-                    || ($interior !~ /\.\w+$/ && $interior !~ /\/.+\//)
+                    || (! -e $interior
+                        && $interior !~ /\.\w+$/
+                        && $interior !~ /\/.+\//)
                    )
             ) {
                 $self->poderror({ -line => $line, -file => $file,