in reply to Embedded variable assignments inside local declarations

This is allowed and works ...
It parses, but doesn't do what you might think it does e.g
$foo = "a string"; { local( $foo = "localised" ); print $foo,$/; } print $foo,$/; __output__ localised localised
The output from B::Deparse also gives it away (assuming above code passed through perl -MO=Deparse,-p -)
($foo = 'a string'); { ($foo = 'localised'); print($foo, $/); } print($foo, $/); - syntax OK

HTH

_________
broquaint