summaryrefslogtreecommitdiff
path: root/parser.h
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2011-11-04 14:30:09 -0700
committerFather Chrysostomos <sprout@cpan.org>2011-11-06 01:13:49 -0700
commit7ad221d371731323437db18994f392eb7fa45f3a (patch)
tree2e9a3c79ab15ffe633831bface73c5cd789d4b84 /parser.h
parent60d6334874c6f82066ad72b36a86bcb753de82a2 (diff)
downloadperl-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.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/parser.h b/parser.h
index 36b1a43f54..9167e6c07f 100644
--- a/parser.h
+++ b/parser.h
@@ -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 */