diff options
author | Father Chrysostomos <sprout@cpan.org> | 2011-11-04 14:30:09 -0700 |
---|---|---|
committer | Father Chrysostomos <sprout@cpan.org> | 2011-11-06 01:13:49 -0700 |
commit | 7ad221d371731323437db18994f392eb7fa45f3a (patch) | |
tree | 2e9a3c79ab15ffe633831bface73c5cd789d4b84 /parser.h | |
parent | 60d6334874c6f82066ad72b36a86bcb753de82a2 (diff) | |
download | perl-7ad221d371731323437db18994f392eb7fa45f3a.tar.gz |
Merge some parser fields
By combining two booleans with the flags field, we save some space.
By making it a 16-bit instead of 32-bit field (only two flag bits
are currently used), we also avoid alignment holes (I hope; I’m
not very good at this).
Diffstat (limited to 'parser.h')
-rw-r--r-- | parser.h | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -105,10 +105,10 @@ typedef struct yy_parser { COP *saved_curcop; /* the previous PL_curcop */ char tokenbuf[256]; - bool in_pod; /* lexer is within a =pod section */ U8 lex_fakeeof; /* precedence at which to fake EOF */ - bool filtered; /* source filters in evalbytes */ - U32 lex_flags; + PERL_BITFIELD16 lex_flags:14; + PERL_BITFIELD16 in_pod:1; /* lexer is within a =pod section */ + PERL_BITFIELD16 filtered:1; /* source filters in evalbytes */ } yy_parser; /* flags for lexer API */ |