Perl::Critic::Policy::Subroutines::ProhibitNestedSubs(3pm)

Perl::Critic::Policy::Subroutines::ProhibitNestedSubs3pm

"sub never { sub correct {} }".

Affiliation

This Policy is part of the core Perl::Critic distribution.

Overview

Attention would-be clever Perl writers (including Younger RJBS):

This does not do what you think:

  sub do_something {
      ...
      sub do_subprocess {
          ...
      }
      ...
  }

do_subprocess() is global, despite where it is declared. Either write your subs without nesting or use anonymous code references.

Configuration

This Policy is not configurable except for the standard options.

Note

Originally part of Perl::Critic::Tics.

Releases

10 releases since Debian 5.0 (Lenny); the text changed 9 times.

  1. 5.0
  2. 6.0
  3. 7
  4. 8
  5. 9
  6. 10
  7. 11
  8. 12
  9. 13
  10. Arch

Author

Ricardo SIGNES <[email protected]>

From perl-perl-critic 1.156-3 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.