Subject: | Invalid Parse::RecDescent grammar |
The action for the rule 'require_name' contains:
return 1 if ($name=~/\.pl$/);
This is not allowed, see "Using return in an action" in http://search.cpan.org/~jtbraun/Parse-RecDescent-1.967013/lib/Parse/RecDescent.pm.
Additionally, this means that statements like:
require "something.pl"
Will not be reported as dependencies. It's not clear if that was intended or not. This is matched in the test cases in 10_basic.t:
['require "some/stuff.pl";',undef,undef,undef], # original, probably incorrect
#['require "some/stuff.pl";',[qw(some/stuff.pl)],undef,[qw(some/stuff.pl)]], # modified, probably correct
Please take a look at what was intended and remove the return statement from the action, when you have a chance.