in reply to Why does NOT operator on match operator on string concatenation require two pairs of parens?
Appears to be the "If it looks like a function, it IS a function" rule.
$ perl -MO=Deparse -e'if (not +($label.$inst) =~ /\blea\b/i) {}' unless (($label . $inst) =~ /\blea\b/i) { (); } -e syntax OK
$ perl -MO=Deparse -e'if (not "$label$inst" =~ /\blea\b/i) {}' unless ("$label$inst" =~ /\blea\b/i) { (); } -e syntax OK
Alternative
$ perl -MO=Deparse -e'if ("$label$inst" !~ /\blea\b/i) {}' unless ("$label$inst" =~ /\blea\b/i) { (); } -e syntax OK
|
|---|