The devel/p5-indirect port
p5-indirect-0.39p0 – lexically warn about using the indirect method call syntax
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
- Categories:
-
devel
perl5
Library dependencies
Build dependencies
Run dependencies