summaryrefslogtreecommitdiff
path: root/parser.h
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2016-08-03 06:36:24 -0700
committerFather Chrysostomos <sprout@cpan.org>2016-08-03 06:36:24 -0700
commitd64e121b07bda895f7f3a5d0e449fc948986e2f1 (patch)
tree5724896cdbcb33c3d979494580737c1de2e18ee8 /parser.h
parent25e092d6d879f20e7550a209ec1899b76162846c (diff)
downloadperl-d64e121b07bda895f7f3a5d0e449fc948986e2f1.tar.gz
Um, finish reordering the parser struct
Follow-up to 25e092d6d, which left some gaping holes. I committed it too soon.
Diffstat (limited to 'parser.h')
-rw-r--r--parser.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/parser.h b/parser.h
index 34d85db059..b0525a498b 100644
--- a/parser.h
+++ b/parser.h
@@ -95,26 +95,27 @@ typedef struct yy_parser {
U16 in_my; /* we're compiling a "my"/"our" declaration */
U8 lex_state; /* next token is determined */
U8 error_count; /* how many compile errors so far, max 10 */
- /* 16-BIT HOLE */
+ U8 form_lex_state; /* remember lex_state when parsing fmt */
+ /* 8-BIT HOLE */
HV *in_my_stash; /* declared class of this "my" declaration */
PerlIO *rsfp; /* current source file pointer */
AV *rsfp_filters; /* holds chain of active source filters */
- U8 form_lex_state; /* remember lex_state when parsing fmt */
YYSTYPE nextval[5]; /* value of next token, if any */
I32 nexttype[5]; /* type of next token */
U8 nexttoke;
- COP *saved_curcop; /* the previous PL_curcop */
- char tokenbuf[256];
- line_t herelines; /* number of lines in here-doc */
- line_t preambling; /* line # when processing $ENV{PERL5DB} */
U8 lex_fakeeof; /* precedence at which to fake EOF */
U8 lex_flags;
PERL_BITFIELD16 in_pod:1; /* lexer is within a =pod section */
PERL_BITFIELD16 filtered:1; /* source filters in evalbytes */
PERL_BITFIELD16 saw_infix_sigil:1; /* saw & or * or % operator */
PERL_BITFIELD16 parsed_sub:1; /* last thing parsed was a sub */
+ /* 4 spare bits */
+ COP *saved_curcop; /* the previous PL_curcop */
+ char tokenbuf[256];
+ line_t herelines; /* number of lines in here-doc */
+ line_t preambling; /* line # when processing $ENV{PERL5DB} */
} yy_parser;
/* flags for lexer API */