Subject: | PPI does not recognize extended control character variables such as ${^MATCH}. |
The end of the perlvar documentation describes variable syntax. This
includes (new to 5.6 says the 5.10 documentation) a set of variables
whose names must be enclosed in curly brackets, and begin with a
notional control character (e.g ${^_foo}).
PPI 1.206 parses such variables as a cast followed by a block.
svn revision 8908 patches PPI::Token::Unknown and PPI::Token::Magic to
make these 'magic' variables, in the sense of parsing to a
PPI::Token::Magic object. No, the ones beginning with ^_ do not do
anything to the Perl interpreter, but they _are_ all forced into the
'main' namespace.
Inline testing was added to PPI::Token::Magic to try to capture the
current behavior, and the resultant file has also been added.
Thanks again for PPI.
Tom Wyant