diff options
author | David Mitchell <davem@iabyn.com> | 2018-02-22 14:44:51 +0000 |
---|---|---|
committer | David Mitchell <davem@iabyn.com> | 2018-03-02 13:36:43 +0000 |
commit | 75230cc19006735d29105daf0c6dcaf41880f961 (patch) | |
tree | 13ebdac2b64e5118f016e682adbf12e4c4ec7d4d /perl.h | |
parent | 436ddf68a973edeede30e3cdf27a8063d7686eec (diff) | |
download | perl-75230cc19006735d29105daf0c6dcaf41880f961.tar.gz |
rationalise subroutine parsing rules
Now that the parser rules have been split into separate rules for subs
under 'use feature "signatures"' and not, refine the rules to reflect the
different regimes. In particular:
1) no longer include 'proto' in the signature variants: as it happens the
toker would never return a proto THING under signatures anyway, but
removing it from the grammar makes it clearer what's expected and not
expected.
2) Remove 'subsignature' from non-sig rules: what used to happen before
was that outside of 'use feature "signatures"', it might still try to
parse a signature, e.g.
$ perl5279 -we 'sub f :lvalue ($$@) { $x = 1 }'
Illegal character following sigil in a subroutine signature at -e line
1, near "($"
syntax error at -e line 1, near "$$@"
Now it's just a plain syntax error.
Diffstat (limited to 'perl.h')
0 files changed, 0 insertions, 0 deletions