Home

The devel/p5-indirect port

p5-indirect-0.39p0 – lexically warn about using the indirect method call syntax (cvsweb github mirror)

Description

When enabled, this pragma warns about indirect method calls that are
present in your code.

The indirect syntax is now considered harmful, since its parsing has
many quirks and its use is error prone : when the subroutine foo has not
been declared in the current package, foo $x actually compiles to
$x->foo, and foo { key => 1 } to 'key'->foo(1). In
http://www.shadowcat.co.uk/blog/matt-s-trout/indirect-but-still-fatal,
Matt S. Trout gives an example of an undesirable indirect method call on
a block that can cause a particularly bewildering error.

This pragma currently does not warn for core functions (print, say, exec
or system). This may change in the future, or may be added as optional
features that would be enabled by passing options to unimport.
WWW: https://metacpan.org/release/indirect

Maintainer

The OpenBSD ports mailing-list

Categories

devel perl5

Test dependencies

Reverse dependencies

Files

Search