Perl::Critic::Policy::ClassHierarchies::ProhibitOneArgBless(3pm)

Perl::Critic::Policy::ClassHierarchies::ProhibitOneArgBless3pm

Write "bless {}, $class;" instead of just "bless {};".

Affiliation

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

Overview

Always use the two-argument form of "bless" because it allows subclasses to inherit your constructor.

    sub new {
        my $class = shift;
        my $self = bless {};          # not ok
        my $self = bless {}, $class;  # ok
        return $self;
    }

Configuration

This Policy is not configurable except for the standard options.

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

Jeffrey Ryan Thalhammer <[email protected]>

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