X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/17e00314cad49c11dda5b621497c7010537844ea..8d605c0decbac8c2f06fbca3b562a3f913fbdbda:/parser.h?ds=sidebyside diff --git a/parser.h b/parser.h index c19bc28..2b048aa 100644 --- a/parser.h +++ b/parser.h @@ -6,7 +6,7 @@ * License or the Artistic License, as specified in the README file. * * This file defines the layout of the parser object used by the parser - * and lexer (perly.c, toke,c). + * and lexer (perly.c, toke.c). */ #define YYEMPTY (-2) @@ -105,9 +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 */ - 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 */ @@ -116,8 +117,13 @@ typedef struct yy_parser { #ifdef PERL_CORE # define LEX_START_SAME_FILTER 0x00000001 +# define LEX_IGNORE_UTF8_HINTS 0x00000002 +# define LEX_EVALBYTES 0x00000004 +# define LEX_START_COPIED 0x00000008 +# define LEX_START_FLAGS \ + (LEX_START_SAME_FILTER|LEX_START_COPIED \ + |LEX_IGNORE_UTF8_HINTS|LEX_EVALBYTES) #endif -#define LEX_IGNORE_UTF8_HINTS 0x00000002 /* flags for parser API */ #define PARSE_OPTIONAL 0x00000001