ReactOS  0.4.14-dev-1314-gacf135d
ppl.yy.c File Reference
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdlib.h>
#include <ctype.h>
#include <assert.h>
#include <limits.h>
#include "wpp_private.h"
#include "ppy.tab.h"
Include dependency graph for ppl.yy.c:

Go to the source code of this file.

Classes

struct  yy_buffer_state
 
struct  yy_trans_info
 
struct  bufferstackentry
 
struct  macexpstackentry
 

Macros

#define YY_INT_ALIGNED   short int
 
#define yy_create_buffer   ppy__create_buffer
 
#define yy_delete_buffer   ppy__delete_buffer
 
#define yy_scan_buffer   ppy__scan_buffer
 
#define yy_scan_string   ppy__scan_string
 
#define yy_scan_bytes   ppy__scan_bytes
 
#define yy_init_buffer   ppy__init_buffer
 
#define yy_flush_buffer   ppy__flush_buffer
 
#define yy_load_buffer_state   ppy__load_buffer_state
 
#define yy_switch_to_buffer   ppy__switch_to_buffer
 
#define yypush_buffer_state   ppy_push_buffer_state
 
#define yypop_buffer_state   ppy_pop_buffer_state
 
#define yyensure_buffer_stack   ppy_ensure_buffer_stack
 
#define yy_flex_debug   ppy__flex_debug
 
#define yyin   ppy_in
 
#define yyleng   ppy_leng
 
#define yylex   ppy_lex
 
#define yylineno   ppy_lineno
 
#define yyout   ppy_out
 
#define yyrestart   ppy_restart
 
#define yytext   ppy_text
 
#define yywrap   ppy_wrap
 
#define yyalloc   ppy_alloc
 
#define yyrealloc   ppy_realloc
 
#define yyfree   ppy_free
 
#define FLEX_SCANNER
 
#define YY_FLEX_MAJOR_VERSION   2
 
#define YY_FLEX_MINOR_VERSION   6
 
#define YY_FLEX_SUBMINOR_VERSION   4
 
#define FLEX_BETA
 
#define ppy__create_buffer_ALREADY_DEFINED
 
#define ppy__delete_buffer_ALREADY_DEFINED
 
#define ppy__scan_buffer_ALREADY_DEFINED
 
#define ppy__scan_string_ALREADY_DEFINED
 
#define ppy__scan_bytes_ALREADY_DEFINED
 
#define ppy__init_buffer_ALREADY_DEFINED
 
#define ppy__flush_buffer_ALREADY_DEFINED
 
#define ppy__load_buffer_state_ALREADY_DEFINED
 
#define ppy__switch_to_buffer_ALREADY_DEFINED
 
#define ppy_push_buffer_state_ALREADY_DEFINED
 
#define ppy_pop_buffer_state_ALREADY_DEFINED
 
#define ppy_ensure_buffer_stack_ALREADY_DEFINED
 
#define ppy_lex_ALREADY_DEFINED
 
#define ppy_restart_ALREADY_DEFINED
 
#define yylex_init   ppy_lex_init
 
#define yylex_init_extra   ppy_lex_init_extra
 
#define yylex_destroy   ppy_lex_destroy
 
#define yyget_debug   ppy_get_debug
 
#define yyset_debug   ppy_set_debug
 
#define yyget_extra   ppy_get_extra
 
#define yyset_extra   ppy_set_extra
 
#define yyget_in   ppy_get_in
 
#define yyset_in   ppy_set_in
 
#define yyget_out   ppy_get_out
 
#define yyset_out   ppy_set_out
 
#define yyget_leng   ppy_get_leng
 
#define yyget_text   ppy_get_text
 
#define yyget_lineno   ppy_get_lineno
 
#define yyset_lineno   ppy_set_lineno
 
#define ppy_wrap_ALREADY_DEFINED
 
#define ppy_alloc_ALREADY_DEFINED
 
#define ppy_realloc_ALREADY_DEFINED
 
#define ppy_free_ALREADY_DEFINED
 
#define ppy_text_ALREADY_DEFINED
 
#define ppy_leng_ALREADY_DEFINED
 
#define ppy_in_ALREADY_DEFINED
 
#define ppy_out_ALREADY_DEFINED
 
#define ppy__flex_debug_ALREADY_DEFINED
 
#define ppy_lineno_ALREADY_DEFINED
 
#define FLEXINT_H
 
#define INT8_MIN   (-128)
 
#define INT16_MIN   (-32767-1)
 
#define INT32_MIN   (-2147483647-1)
 
#define INT8_MAX   (127)
 
#define INT16_MAX   (32767)
 
#define INT32_MAX   (2147483647)
 
#define UINT8_MAX   (255U)
 
#define UINT16_MAX   (65535U)
 
#define UINT32_MAX   (4294967295U)
 
#define SIZE_MAX   (~(size_t)0)
 
#define yyconst   const
 
#define yynoreturn
 
#define YY_NULL   0
 
#define YY_SC_TO_UI(c)   ((YY_CHAR) (c))
 
#define BEGIN   (yy_start) = 1 + 2 *
 
#define YY_START   (((yy_start) - 1) / 2)
 
#define YYSTATE   YY_START
 
#define YY_STATE_EOF(state)   (YY_END_OF_BUFFER + state + 1)
 
#define YY_NEW_FILE   yyrestart( yyin )
 
#define YY_END_OF_BUFFER_CHAR   0
 
#define YY_BUF_SIZE   16384
 
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
 
#define YY_TYPEDEF_YY_BUFFER_STATE
 
#define YY_TYPEDEF_YY_SIZE_T
 
#define EOB_ACT_CONTINUE_SCAN   0
 
#define EOB_ACT_END_OF_FILE   1
 
#define EOB_ACT_LAST_MATCH   2
 
#define YY_LESS_LINENO(n)
 
#define YY_LINENO_REWIND_TO(ptr)
 
#define yyless(n)
 
#define unput(c)   yyunput( c, (yytext_ptr) )
 
#define YY_STRUCT_YY_BUFFER_STATE
 
#define YY_BUFFER_NEW   0
 
#define YY_BUFFER_NORMAL   1
 
#define YY_BUFFER_EOF_PENDING   2
 
#define YY_CURRENT_BUFFER
 
#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]
 
#define YY_FLUSH_BUFFER   yy_flush_buffer( YY_CURRENT_BUFFER )
 
#define yy_new_buffer   yy_create_buffer
 
#define yy_set_interactive(is_interactive)
 
#define yy_set_bol(at_bol)
 
#define YY_AT_BOL()   (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
 
#define yytext_ptr   yytext
 
#define YY_DO_BEFORE_ACTION
 
#define YY_NUM_RULES   145
 
#define YY_END_OF_BUFFER   146
 
#define REJECT   reject_used_but_not_detected
 
#define yymore()   yymore_used_but_not_detected
 
#define YY_MORE_ADJ   0
 
#define YY_RESTORE_YY_MORE_OFFSET
 
#define YY_NO_INPUT   1
 
#define YY_NO_UNISTD_H
 
#define YY_READ_BUF_SIZE   65536 /* So we read most of a file at once */
 
#define yy_current_state()   YY_START
 
#define yy_pp_state(x)   yy_pop_state(); yy_push_state(x)
 
#define YY_USER_ACTION   pp_status.char_number+=ppy_leng;
 
#define MAXBUFFERSTACK   128 /* Nesting more than 128 includes or macro expansion textss is insane */
 
#define ALLOCBLOCKSIZE   (1 << 10) /* Allocate these chunks at a time for string-buffers */
 
#define MAXMACEXPSTACK   128 /* Nesting more than 128 macro expansions is insane */
 
#define MACROPARENTHESES()   (top_macro()->parentheses)
 
#define YY_INPUT(buf, result, max_size)
 
#define BUFFERINITIALCAPACITY   256
 
#define INITIAL   0
 
#define pp_pp   1
 
#define pp_eol   2
 
#define pp_inc   3
 
#define pp_dqs   4
 
#define pp_sqs   5
 
#define pp_iqs   6
 
#define pp_comment   7
 
#define pp_def   8
 
#define pp_define   9
 
#define pp_macro   10
 
#define pp_mbody   11
 
#define pp_macign   12
 
#define pp_macscan   13
 
#define pp_macexp   14
 
#define pp_if   15
 
#define pp_ifd   16
 
#define pp_ifignored   17
 
#define pp_endif   18
 
#define pp_line   19
 
#define pp_defined   20
 
#define pp_ignore   21
 
#define RCINCL   22
 
#define YY_EXTRA_TYPE   void *
 
#define ECHO   do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
 
#define yyterminate()   return YY_NULL
 
#define YY_START_STACK_INCR   25
 
#define YY_FATAL_ERROR(msg)   yy_fatal_error( msg )
 
#define YY_DECL_IS_OURS   1
 
#define YY_DECL   int yylex (void)
 
#define YY_BREAK   /*LINTED*/break;
 
#define YY_RULE_SETUP
 
#define YY_EXIT_FAILURE   2
 
#define yyless(n)
 
#define YYTABLES_NAME   "yytables"
 

Typedefs

typedef signed char flex_int8_t
 
typedef short int flex_int16_t
 
typedef int flex_int32_t
 
typedef unsigned char flex_uint8_t
 
typedef unsigned short int flex_uint16_t
 
typedef unsigned int flex_uint32_t
 
typedef struct yy_buffer_stateYY_BUFFER_STATE
 
typedef size_t yy_size_t
 
typedef flex_uint8_t YY_CHAR
 
typedef int yy_state_type
 
typedef struct bufferstackentry bufferstackentry_t
 
typedef struct macexpstackentry macexpstackentry_t
 

Functions

void yyrestart (FILE *input_file)
 
void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer)
 
YY_BUFFER_STATE yy_create_buffer (FILE *file, int size)
 
void yy_delete_buffer (YY_BUFFER_STATE b)
 
void yy_flush_buffer (YY_BUFFER_STATE b)
 
void yypush_buffer_state (YY_BUFFER_STATE new_buffer)
 
void yypop_buffer_state (void)
 
static void yyensure_buffer_stack (void)
 
static void yy_load_buffer_state (void)
 
static void yy_init_buffer (YY_BUFFER_STATE b, FILE *file)
 
YY_BUFFER_STATE yy_scan_buffer (char *base, yy_size_t size)
 
YY_BUFFER_STATE yy_scan_string (const char *yy_str)
 
YY_BUFFER_STATE yy_scan_bytes (const char *bytes, int len)
 
voidyyalloc (yy_size_t)
 
voidyyrealloc (void *, yy_size_t)
 
void yyfree (void *)
 
static yy_state_type yy_get_previous_state (void)
 
static yy_state_type yy_try_NUL_trans (yy_state_type current_state)
 
static int yy_get_next_buffer (void)
 
static void yynoreturn yy_fatal_error (const char *msg)
 
static void newline (int)
 
static int make_number (int radix, YYSTYPE *val, const char *str, int len)
 
static void put_buffer (const char *s, int len)
 
static void push_buffer (pp_entry_t *ppp, char *filename, char *incname, int pop)
 
static bufferstackentry_tpop_buffer (void)
 
static void new_string (void)
 
static void add_string (const char *str, int len)
 
static charget_string (void)
 
static void put_string (void)
 
static int string_start (void)
 
static void push_macro (pp_entry_t *ppp)
 
static macexpstackentry_ttop_macro (void)
 
static macexpstackentry_tpop_macro (void)
 
static void free_macro (macexpstackentry_t *mep)
 
static void add_text_to_macro (const char *text, int len)
 
static void macro_add_arg (int last)
 
static void macro_add_expansion (void)
 
static void expand_special (pp_entry_t *ppp)
 
static void expand_define (pp_entry_t *ppp)
 
static void expand_macro (macexpstackentry_t *mep)
 
void WINAPIV pp_writestring (const char *format,...)
 
static int yy_init_globals (void)
 
int yylex_destroy (void)
 
int yyget_debug (void)
 
void yyset_debug (int debug_flag)
 
YY_EXTRA_TYPE yyget_extra (void)
 
void yyset_extra (YY_EXTRA_TYPE user_defined)
 
FILEyyget_in (void)
 
void yyset_in (FILE *_in_str)
 
FILEyyget_out (void)
 
void yyset_out (FILE *_out_str)
 
int yyget_leng (void)
 
charyyget_text (void)
 
int yyget_lineno (void)
 
void yyset_lineno (int _line_number)
 
int yywrap (void)
 
static void yy_push_state (int _new_state)
 
static void yy_pop_state (void)
 
static int yy_top_state (void)
 
int yylex (void)
 
 if (!(yy_init))
 
static void add_text (const char *str, int len)
 
static mtext_tadd_expand_text (mtext_t *mtp, macexpstackentry_t *mep, int *nnl)
 
void pp_do_include (char *fname, int type)
 
void pp_push_ignore_state (void)
 
void pp_pop_ignore_state (void)
 

Variables

int yyleng
 
FILEyyin = NULL
 
FILEyyout = NULL
 
static size_t yy_buffer_stack_top = 0
 
static size_t yy_buffer_stack_max = 0
 
static YY_BUFFER_STATEyy_buffer_stack = NULL
 
static char yy_hold_char
 
static int yy_n_chars
 
static charyy_c_buf_p = NULL
 
static int yy_init = 0
 
static int yy_start = 0
 
static int yy_did_buffer_switch_on_eof
 
int yylineno = 1
 
charyytext
 
static const flex_int16_t yy_accept [421]
 
static const YY_CHAR yy_ec [256]
 
static const YY_CHAR yy_meta [50]
 
static const flex_int16_t yy_base [467]
 
static const flex_int16_t yy_def [467]
 
static const flex_int16_t yy_nxt [1970]
 
static const flex_int16_t yy_chk [1970]
 
static yy_state_type yy_last_accepting_state
 
static charyy_last_accepting_cpos
 
int yy_flex_debug = 0
 
static int ncontinuations
 
static int strbuf_idx = 0
 
static int strbuf_alloc = 0
 
static charstrbuffer = NULL
 
static int str_startline
 
static macexpstackentry_tmacexpstack [MAXMACEXPSTACK]
 
static int macexpstackidx = 0
 
static bufferstackentry_t bufferstack [MAXBUFFERSTACK]
 
static int bufferstackidx = 0
 
include_state_t pp_incl_state
 
includelogicentry_tpp_includelogiclist = NULL
 
static int yy_start_stack_ptr = 0
 
static int yy_start_stack_depth = 0
 
static intyy_start_stack = NULL
 
 YY_DECL
 
charyy_cp
 
charyy_bp
 
int yy_act
 
static int curdef_alloc = 0
 
static charcurdef_text = NULL
 

Macro Definition Documentation

◆ ALLOCBLOCKSIZE

#define ALLOCBLOCKSIZE   (1 << 10) /* Allocate these chunks at a time for string-buffers */

Definition at line 1468 of file ppl.yy.c.

◆ BEGIN

#define BEGIN   (yy_start) = 1 + 2 *

Definition at line 377 of file ppl.yy.c.

◆ BUFFERINITIALCAPACITY

#define BUFFERINITIALCAPACITY   256

Definition at line 1554 of file ppl.yy.c.

◆ ECHO

#define ECHO   do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)

Definition at line 1731 of file ppl.yy.c.

◆ EOB_ACT_CONTINUE_SCAN

#define EOB_ACT_CONTINUE_SCAN   0

Definition at line 421 of file ppl.yy.c.

◆ EOB_ACT_END_OF_FILE

#define EOB_ACT_END_OF_FILE   1

Definition at line 422 of file ppl.yy.c.

◆ EOB_ACT_LAST_MATCH

#define EOB_ACT_LAST_MATCH   2

Definition at line 423 of file ppl.yy.c.

◆ FLEX_BETA

#define FLEX_BETA

Definition at line 39 of file ppl.yy.c.

◆ FLEX_SCANNER

#define FLEX_SCANNER

Definition at line 34 of file ppl.yy.c.

◆ FLEXINT_H

#define FLEXINT_H

Definition at line 289 of file ppl.yy.c.

◆ INITIAL

#define INITIAL   0

Definition at line 1606 of file ppl.yy.c.

◆ INT16_MAX

#define INT16_MAX   (32767)

Definition at line 331 of file ppl.yy.c.

◆ INT16_MIN

#define INT16_MIN   (-32767-1)

Definition at line 322 of file ppl.yy.c.

◆ INT32_MAX

#define INT32_MAX   (2147483647)

Definition at line 334 of file ppl.yy.c.

◆ INT32_MIN

#define INT32_MIN   (-2147483647-1)

Definition at line 325 of file ppl.yy.c.

◆ INT8_MAX

#define INT8_MAX   (127)

Definition at line 328 of file ppl.yy.c.

◆ INT8_MIN

#define INT8_MIN   (-128)

Definition at line 319 of file ppl.yy.c.

◆ MACROPARENTHESES

#define MACROPARENTHESES ( )    (top_macro()->parentheses)

Definition at line 1490 of file ppl.yy.c.

◆ MAXBUFFERSTACK

#define MAXBUFFERSTACK   128 /* Nesting more than 128 includes or macro expansion textss is insane */

Definition at line 1451 of file ppl.yy.c.

◆ MAXMACEXPSTACK

#define MAXMACEXPSTACK   128 /* Nesting more than 128 macro expansions is insane */

Definition at line 1476 of file ppl.yy.c.

◆ pp_comment

#define pp_comment   7

Definition at line 1613 of file ppl.yy.c.

◆ pp_def

#define pp_def   8

Definition at line 1614 of file ppl.yy.c.

◆ pp_define

#define pp_define   9

Definition at line 1615 of file ppl.yy.c.

◆ pp_defined

#define pp_defined   20

Definition at line 1626 of file ppl.yy.c.

◆ pp_dqs

#define pp_dqs   4

Definition at line 1610 of file ppl.yy.c.

◆ pp_endif

#define pp_endif   18

Definition at line 1624 of file ppl.yy.c.

◆ pp_eol

#define pp_eol   2

Definition at line 1608 of file ppl.yy.c.

◆ pp_if

#define pp_if   15

Definition at line 1621 of file ppl.yy.c.

◆ pp_ifd

#define pp_ifd   16

Definition at line 1622 of file ppl.yy.c.

◆ pp_ifignored

#define pp_ifignored   17

Definition at line 1623 of file ppl.yy.c.

◆ pp_ignore

#define pp_ignore   21

Definition at line 1627 of file ppl.yy.c.

◆ pp_inc

#define pp_inc   3

Definition at line 1609 of file ppl.yy.c.

◆ pp_iqs

#define pp_iqs   6

Definition at line 1612 of file ppl.yy.c.

◆ pp_line

#define pp_line   19

Definition at line 1625 of file ppl.yy.c.

◆ pp_macexp

#define pp_macexp   14

Definition at line 1620 of file ppl.yy.c.

◆ pp_macign

#define pp_macign   12

Definition at line 1618 of file ppl.yy.c.

◆ pp_macro

#define pp_macro   10

Definition at line 1616 of file ppl.yy.c.

◆ pp_macscan

#define pp_macscan   13

Definition at line 1619 of file ppl.yy.c.

◆ pp_mbody

#define pp_mbody   11

Definition at line 1617 of file ppl.yy.c.

◆ pp_pp

#define pp_pp   1

Definition at line 1607 of file ppl.yy.c.

◆ pp_sqs

#define pp_sqs   5

Definition at line 1611 of file ppl.yy.c.

◆ ppy__create_buffer_ALREADY_DEFINED

#define ppy__create_buffer_ALREADY_DEFINED

Definition at line 43 of file ppl.yy.c.

◆ ppy__delete_buffer_ALREADY_DEFINED

#define ppy__delete_buffer_ALREADY_DEFINED

Definition at line 49 of file ppl.yy.c.

◆ ppy__flex_debug_ALREADY_DEFINED

#define ppy__flex_debug_ALREADY_DEFINED

Definition at line 265 of file ppl.yy.c.

◆ ppy__flush_buffer_ALREADY_DEFINED

#define ppy__flush_buffer_ALREADY_DEFINED

Definition at line 79 of file ppl.yy.c.

◆ ppy__init_buffer_ALREADY_DEFINED

#define ppy__init_buffer_ALREADY_DEFINED

Definition at line 73 of file ppl.yy.c.

◆ ppy__load_buffer_state_ALREADY_DEFINED

#define ppy__load_buffer_state_ALREADY_DEFINED

Definition at line 85 of file ppl.yy.c.

◆ ppy__scan_buffer_ALREADY_DEFINED

#define ppy__scan_buffer_ALREADY_DEFINED

Definition at line 55 of file ppl.yy.c.

◆ ppy__scan_bytes_ALREADY_DEFINED

#define ppy__scan_bytes_ALREADY_DEFINED

Definition at line 67 of file ppl.yy.c.

◆ ppy__scan_string_ALREADY_DEFINED

#define ppy__scan_string_ALREADY_DEFINED

Definition at line 61 of file ppl.yy.c.

◆ ppy__switch_to_buffer_ALREADY_DEFINED

#define ppy__switch_to_buffer_ALREADY_DEFINED

Definition at line 91 of file ppl.yy.c.

◆ ppy_alloc_ALREADY_DEFINED

#define ppy_alloc_ALREADY_DEFINED

Definition at line 223 of file ppl.yy.c.

◆ ppy_ensure_buffer_stack_ALREADY_DEFINED

#define ppy_ensure_buffer_stack_ALREADY_DEFINED

Definition at line 109 of file ppl.yy.c.

◆ ppy_free_ALREADY_DEFINED

#define ppy_free_ALREADY_DEFINED

Definition at line 235 of file ppl.yy.c.

◆ ppy_in_ALREADY_DEFINED

#define ppy_in_ALREADY_DEFINED

Definition at line 253 of file ppl.yy.c.

◆ ppy_leng_ALREADY_DEFINED

#define ppy_leng_ALREADY_DEFINED

Definition at line 247 of file ppl.yy.c.

◆ ppy_lex_ALREADY_DEFINED

#define ppy_lex_ALREADY_DEFINED

Definition at line 115 of file ppl.yy.c.

◆ ppy_lineno_ALREADY_DEFINED

#define ppy_lineno_ALREADY_DEFINED

Definition at line 271 of file ppl.yy.c.

◆ ppy_out_ALREADY_DEFINED

#define ppy_out_ALREADY_DEFINED

Definition at line 259 of file ppl.yy.c.

◆ ppy_pop_buffer_state_ALREADY_DEFINED

#define ppy_pop_buffer_state_ALREADY_DEFINED

Definition at line 103 of file ppl.yy.c.

◆ ppy_push_buffer_state_ALREADY_DEFINED

#define ppy_push_buffer_state_ALREADY_DEFINED

Definition at line 97 of file ppl.yy.c.

◆ ppy_realloc_ALREADY_DEFINED

#define ppy_realloc_ALREADY_DEFINED

Definition at line 229 of file ppl.yy.c.

◆ ppy_restart_ALREADY_DEFINED

#define ppy_restart_ALREADY_DEFINED

Definition at line 121 of file ppl.yy.c.

◆ ppy_text_ALREADY_DEFINED

#define ppy_text_ALREADY_DEFINED

Definition at line 241 of file ppl.yy.c.

◆ ppy_wrap_ALREADY_DEFINED

#define ppy_wrap_ALREADY_DEFINED

Definition at line 217 of file ppl.yy.c.

◆ RCINCL

#define RCINCL   22

Definition at line 1628 of file ppl.yy.c.

◆ REJECT

#define REJECT   reject_used_but_not_detected

Definition at line 1273 of file ppl.yy.c.

◆ SIZE_MAX

#define SIZE_MAX   (~(size_t)0)

Definition at line 347 of file ppl.yy.c.

◆ UINT16_MAX

#define UINT16_MAX   (65535U)

Definition at line 340 of file ppl.yy.c.

◆ UINT32_MAX

#define UINT32_MAX   (4294967295U)

Definition at line 343 of file ppl.yy.c.

◆ UINT8_MAX

#define UINT8_MAX   (255U)

Definition at line 337 of file ppl.yy.c.

◆ unput

#define unput (   c)    yyunput( c, (yytext_ptr) )

Definition at line 441 of file ppl.yy.c.

◆ YY_AT_BOL

#define YY_AT_BOL ( )    (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)

Definition at line 582 of file ppl.yy.c.

◆ YY_BREAK

#define YY_BREAK   /*LINTED*/break;

Definition at line 1810 of file ppl.yy.c.

◆ YY_BUF_SIZE

#define YY_BUF_SIZE   16384

Definition at line 399 of file ppl.yy.c.

◆ YY_BUFFER_EOF_PENDING

#define YY_BUFFER_EOF_PENDING   2

Definition at line 503 of file ppl.yy.c.

◆ YY_BUFFER_NEW

#define YY_BUFFER_NEW   0

Definition at line 491 of file ppl.yy.c.

◆ YY_BUFFER_NORMAL

#define YY_BUFFER_NORMAL   1

Definition at line 492 of file ppl.yy.c.

◆ yy_create_buffer

#define yy_create_buffer   ppy__create_buffer

Definition at line 9 of file ppl.yy.c.

◆ YY_CURRENT_BUFFER

#define YY_CURRENT_BUFFER
Value:
: NULL)
static YY_BUFFER_STATE * yy_buffer_stack
Definition: ppl.yy.c:511
smooth NULL
Definition: ftsmooth.c:416
static size_t yy_buffer_stack_top
Definition: ppl.yy.c:509

Definition at line 519 of file ppl.yy.c.

◆ YY_CURRENT_BUFFER_LVALUE

#define YY_CURRENT_BUFFER_LVALUE   (yy_buffer_stack)[(yy_buffer_stack_top)]

Definition at line 525 of file ppl.yy.c.

◆ yy_current_state

#define yy_current_state ( )    YY_START

Definition at line 1440 of file ppl.yy.c.

◆ YY_DECL

#define YY_DECL   int yylex (void)

Definition at line 1798 of file ppl.yy.c.

◆ YY_DECL_IS_OURS

#define YY_DECL_IS_OURS   1

Definition at line 1794 of file ppl.yy.c.

◆ yy_delete_buffer

#define yy_delete_buffer   ppy__delete_buffer

Definition at line 10 of file ppl.yy.c.

◆ YY_DO_BEFORE_ACTION

#define YY_DO_BEFORE_ACTION
Value:
yyleng = (int) (yy_cp - yy_bp); \
*yy_cp = '\0'; \
static char yy_hold_char
Definition: ppl.yy.c:528
static char * yy_c_buf_p
Definition: ppl.yy.c:533
#define yytext_ptr
Definition: ppl.yy.c:598
char * yy_bp
Definition: ppl.yy.c:1824
char * yy_cp
Definition: ppl.yy.c:1824
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
Definition: typeof.h:31

Definition at line 608 of file ppl.yy.c.

◆ YY_END_OF_BUFFER

#define YY_END_OF_BUFFER   146

Definition at line 615 of file ppl.yy.c.

◆ YY_END_OF_BUFFER_CHAR

#define YY_END_OF_BUFFER_CHAR   0

Definition at line 388 of file ppl.yy.c.

◆ YY_EXIT_FAILURE

#define YY_EXIT_FAILURE   2

◆ YY_EXTRA_TYPE

#define YY_EXTRA_TYPE   void *

Definition at line 1639 of file ppl.yy.c.

◆ YY_FATAL_ERROR

#define YY_FATAL_ERROR (   msg)    yy_fatal_error( msg )

Definition at line 1785 of file ppl.yy.c.

◆ yy_flex_debug

#define yy_flex_debug   ppy__flex_debug

Definition at line 21 of file ppl.yy.c.

◆ YY_FLEX_MAJOR_VERSION

#define YY_FLEX_MAJOR_VERSION   2

Definition at line 35 of file ppl.yy.c.

◆ YY_FLEX_MINOR_VERSION

#define YY_FLEX_MINOR_VERSION   6

Definition at line 36 of file ppl.yy.c.

◆ YY_FLEX_SUBMINOR_VERSION

#define YY_FLEX_SUBMINOR_VERSION   4

Definition at line 37 of file ppl.yy.c.

◆ yy_flush_buffer

#define yy_flush_buffer   ppy__flush_buffer

Definition at line 15 of file ppl.yy.c.

◆ YY_FLUSH_BUFFER

#define YY_FLUSH_BUFFER   yy_flush_buffer( YY_CURRENT_BUFFER )

Definition at line 553 of file ppl.yy.c.

◆ yy_init_buffer

#define yy_init_buffer   ppy__init_buffer

Definition at line 14 of file ppl.yy.c.

◆ YY_INPUT

#define YY_INPUT (   buf,
  result,
  max_size 
)
Value:
{ \
}
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
static INT max_size
Definition: history.c:51
int wpp_read(void *file, char *buffer, unsigned int len)
Definition: compiler.c:274
void * file
Definition: wpp_private.h:221

Definition at line 1549 of file ppl.yy.c.

◆ YY_INT_ALIGNED

#define YY_INT_ALIGNED   short int

Definition at line 5 of file ppl.yy.c.

◆ YY_LESS_LINENO

#define YY_LESS_LINENO (   n)

Definition at line 425 of file ppl.yy.c.

◆ YY_LINENO_REWIND_TO

#define YY_LINENO_REWIND_TO (   ptr)

Definition at line 426 of file ppl.yy.c.

◆ yy_load_buffer_state

#define yy_load_buffer_state   ppy__load_buffer_state

Definition at line 16 of file ppl.yy.c.

◆ YY_MORE_ADJ

#define YY_MORE_ADJ   0

Definition at line 1275 of file ppl.yy.c.

◆ yy_new_buffer

#define yy_new_buffer   yy_create_buffer

Definition at line 563 of file ppl.yy.c.

◆ YY_NEW_FILE

#define YY_NEW_FILE   yyrestart( yyin )

Definition at line 387 of file ppl.yy.c.

◆ YY_NO_INPUT

#define YY_NO_INPUT   1

Definition at line 1394 of file ppl.yy.c.

◆ YY_NO_UNISTD_H

#define YY_NO_UNISTD_H

Definition at line 1426 of file ppl.yy.c.

◆ YY_NULL

#define YY_NULL   0

Definition at line 366 of file ppl.yy.c.

◆ YY_NUM_RULES

#define YY_NUM_RULES   145

Definition at line 614 of file ppl.yy.c.

◆ yy_pp_state

#define yy_pp_state (   x)    yy_pop_state(); yy_push_state(x)

Definition at line 1441 of file ppl.yy.c.

◆ YY_READ_BUF_SIZE

#define YY_READ_BUF_SIZE   65536 /* So we read most of a file at once */

Definition at line 1438 of file ppl.yy.c.

◆ YY_RESTORE_YY_MORE_OFFSET

#define YY_RESTORE_YY_MORE_OFFSET

Definition at line 1276 of file ppl.yy.c.

◆ YY_RULE_SETUP

#define YY_RULE_SETUP
Value:
if ( yyleng > 0 ) \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
(yytext[yyleng - 1] == '\n'); \
YY_USER_ACTION
#define yyleng
Definition: ppl.yy.c:23
#define yytext
Definition: ppl.yy.c:28

Definition at line 1813 of file ppl.yy.c.

◆ YY_SC_TO_UI

#define YY_SC_TO_UI (   c)    ((YY_CHAR) (c))

Definition at line 371 of file ppl.yy.c.

◆ yy_scan_buffer

#define yy_scan_buffer   ppy__scan_buffer

Definition at line 11 of file ppl.yy.c.

◆ yy_scan_bytes

#define yy_scan_bytes   ppy__scan_bytes

Definition at line 13 of file ppl.yy.c.

◆ yy_scan_string

#define yy_scan_string   ppy__scan_string

Definition at line 12 of file ppl.yy.c.

◆ yy_set_bol

#define yy_set_bol (   at_bol)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){\
yyensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
#define YY_CURRENT_BUFFER
Definition: ppl.yy.c:519
#define yyin
Definition: ppl.yy.c:22
#define YY_BUF_SIZE
Definition: ppl.yy.c:399

Definition at line 573 of file ppl.yy.c.

◆ yy_set_interactive

#define yy_set_interactive (   is_interactive)
Value:
{ \
if ( ! YY_CURRENT_BUFFER ){ \
yyensure_buffer_stack (); \
YY_CURRENT_BUFFER_LVALUE = \
yy_create_buffer( yyin, YY_BUF_SIZE ); \
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
#define YY_CURRENT_BUFFER
Definition: ppl.yy.c:519
#define yyin
Definition: ppl.yy.c:22
#define YY_BUF_SIZE
Definition: ppl.yy.c:399

Definition at line 564 of file ppl.yy.c.

◆ YY_START

#define YY_START   (((yy_start) - 1) / 2)

Definition at line 382 of file ppl.yy.c.

◆ YY_START_STACK_INCR

#define YY_START_STACK_INCR   25

Definition at line 1780 of file ppl.yy.c.

◆ YY_STATE_BUF_SIZE

#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))

Definition at line 405 of file ppl.yy.c.

◆ YY_STATE_EOF

#define YY_STATE_EOF (   state)    (YY_END_OF_BUFFER + state + 1)

Definition at line 385 of file ppl.yy.c.

◆ YY_STRUCT_YY_BUFFER_STATE

#define YY_STRUCT_YY_BUFFER_STATE

Definition at line 444 of file ppl.yy.c.

◆ yy_switch_to_buffer

#define yy_switch_to_buffer   ppy__switch_to_buffer

Definition at line 17 of file ppl.yy.c.

◆ YY_TYPEDEF_YY_BUFFER_STATE

#define YY_TYPEDEF_YY_BUFFER_STATE

Definition at line 408 of file ppl.yy.c.

◆ YY_TYPEDEF_YY_SIZE_T

#define YY_TYPEDEF_YY_SIZE_T

Definition at line 413 of file ppl.yy.c.

◆ YY_USER_ACTION

#define YY_USER_ACTION   pp_status.char_number+=ppy_leng;

Definition at line 1446 of file ppl.yy.c.

◆ yyalloc

Definition at line 30 of file ppl.yy.c.

◆ yyconst

#define yyconst   const

Definition at line 357 of file ppl.yy.c.

◆ yyensure_buffer_stack

#define yyensure_buffer_stack   ppy_ensure_buffer_stack

Definition at line 20 of file ppl.yy.c.

◆ yyfree

#define yyfree   ppy_free

Definition at line 32 of file ppl.yy.c.

◆ yyget_debug

#define yyget_debug   ppy_get_debug

Definition at line 147 of file ppl.yy.c.

◆ yyget_extra

#define yyget_extra   ppy_get_extra

Definition at line 159 of file ppl.yy.c.

◆ yyget_in

#define yyget_in   ppy_get_in

Definition at line 171 of file ppl.yy.c.

◆ yyget_leng

#define yyget_leng   ppy_get_leng

Definition at line 195 of file ppl.yy.c.

◆ yyget_lineno

#define yyget_lineno   ppy_get_lineno

Definition at line 207 of file ppl.yy.c.

◆ yyget_out

#define yyget_out   ppy_get_out

Definition at line 183 of file ppl.yy.c.

◆ yyget_text

#define yyget_text   ppy_get_text

Definition at line 201 of file ppl.yy.c.

◆ yyin

#define yyin   ppy_in

Definition at line 22 of file ppl.yy.c.

◆ yyleng

#define yyleng   ppy_leng

Definition at line 23 of file ppl.yy.c.

◆ yyless [1/2]

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
YY_RESTORE_YY_MORE_OFFSET \
(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
YY_DO_BEFORE_ACTION; /* set up yytext again */ \
} \
while ( 0 )
static char yy_hold_char
Definition: ppl.yy.c:528
GLdouble n
Definition: glext.h:7729
static char * yy_c_buf_p
Definition: ppl.yy.c:533
char * yy_bp
Definition: ppl.yy.c:1824
#define YY_MORE_ADJ
Definition: ppl.yy.c:1275
char * yy_cp
Definition: ppl.yy.c:1824

Definition at line 429 of file ppl.yy.c.

◆ yyless [2/2]

#define yyless (   n)
Value:
do \
{ \
/* Undo effects of setting up yytext. */ \
int yyless_macro_arg = (n); \
YY_LESS_LINENO(yyless_macro_arg);\
yytext[yyleng] = (yy_hold_char); \
(yy_c_buf_p) = yytext + yyless_macro_arg; \
*(yy_c_buf_p) = '\0'; \
yyleng = yyless_macro_arg; \
} \
while ( 0 )
static char yy_hold_char
Definition: ppl.yy.c:528
#define yyleng
Definition: ppl.yy.c:23
GLdouble n
Definition: glext.h:7729
static char * yy_c_buf_p
Definition: ppl.yy.c:533
#define yytext
Definition: ppl.yy.c:28

Definition at line 429 of file ppl.yy.c.

◆ yylex

#define yylex   ppy_lex

Definition at line 24 of file ppl.yy.c.

◆ yylex_destroy

#define yylex_destroy   ppy_lex_destroy

Definition at line 141 of file ppl.yy.c.

◆ yylex_init

#define yylex_init   ppy_lex_init

Definition at line 129 of file ppl.yy.c.

◆ yylex_init_extra

#define yylex_init_extra   ppy_lex_init_extra

Definition at line 135 of file ppl.yy.c.

◆ yylineno

#define yylineno   ppy_lineno

Definition at line 25 of file ppl.yy.c.

◆ yymore

#define yymore ( )    yymore_used_but_not_detected

Definition at line 1274 of file ppl.yy.c.

◆ yynoreturn

#define yynoreturn

Definition at line 362 of file ppl.yy.c.

◆ yyout

#define yyout   ppy_out

Definition at line 26 of file ppl.yy.c.

◆ yypop_buffer_state

#define yypop_buffer_state   ppy_pop_buffer_state

Definition at line 19 of file ppl.yy.c.

◆ yypush_buffer_state

#define yypush_buffer_state   ppy_push_buffer_state

Definition at line 18 of file ppl.yy.c.

◆ yyrealloc

#define yyrealloc   ppy_realloc

Definition at line 31 of file ppl.yy.c.

◆ yyrestart

#define yyrestart   ppy_restart

Definition at line 27 of file ppl.yy.c.

◆ yyset_debug

#define yyset_debug   ppy_set_debug

Definition at line 153 of file ppl.yy.c.

◆ yyset_extra

#define yyset_extra   ppy_set_extra

Definition at line 165 of file ppl.yy.c.

◆ yyset_in

#define yyset_in   ppy_set_in

Definition at line 177 of file ppl.yy.c.

◆ yyset_lineno

#define yyset_lineno   ppy_set_lineno

Definition at line 213 of file ppl.yy.c.

◆ yyset_out

#define yyset_out   ppy_set_out

Definition at line 189 of file ppl.yy.c.

◆ YYSTATE

#define YYSTATE   YY_START

Definition at line 383 of file ppl.yy.c.

◆ YYTABLES_NAME

#define YYTABLES_NAME   "yytables"

◆ yyterminate

#define yyterminate ( )    return YY_NULL

Definition at line 1775 of file ppl.yy.c.

◆ yytext

#define yytext   ppy_text

Definition at line 28 of file ppl.yy.c.

◆ yytext_ptr

#define yytext_ptr   yytext

Definition at line 598 of file ppl.yy.c.

◆ yywrap

#define yywrap   ppy_wrap

Definition at line 29 of file ppl.yy.c.

Typedef Documentation

◆ bufferstackentry_t

◆ flex_int16_t

Definition at line 311 of file ppl.yy.c.

◆ flex_int32_t

typedef int flex_int32_t

Definition at line 312 of file ppl.yy.c.

◆ flex_int8_t

Definition at line 310 of file ppl.yy.c.

◆ flex_uint16_t

Definition at line 314 of file ppl.yy.c.

◆ flex_uint32_t

Definition at line 315 of file ppl.yy.c.

◆ flex_uint8_t

Definition at line 313 of file ppl.yy.c.

◆ macexpstackentry_t

◆ YY_BUFFER_STATE

Definition at line 409 of file ppl.yy.c.

◆ YY_CHAR

Definition at line 585 of file ppl.yy.c.

◆ yy_size_t

typedef size_t yy_size_t

Definition at line 414 of file ppl.yy.c.

◆ yy_state_type

typedef int yy_state_type

Definition at line 589 of file ppl.yy.c.

Function Documentation

◆ add_expand_text()

static mtext_t* add_expand_text ( mtext_t mtp,
macexpstackentry_t mep,
int nnl 
)
static

Definition at line 4213 of file ppl.yy.c.

4214 {
4215  char *cptr;
4216  char *exp;
4217  int tag;
4218  int n;
4219 
4220  if(mtp == NULL)
4221  return NULL;
4222 
4223  switch(mtp->type)
4224  {
4225  case exp_text:
4226  add_text(mtp->subst.text, strlen(mtp->subst.text));
4227  break;
4228 
4229  case exp_stringize:
4230  cptr = mep->args[mtp->subst.argidx];
4231  add_text("\"", 1);
4232  while(*cptr)
4233  {
4234  if(*cptr == '"' || *cptr == '\\')
4235  add_text("\\", 1);
4236  add_text(cptr, 1);
4237  cptr++;
4238  }
4239  add_text("\"", 1);
4240  break;
4241 
4242  case exp_concat:
4243  /* Remove trailing whitespace from current expansion text */
4244  while(curdef_idx)
4245  {
4246  if(isspace(curdef_text[curdef_idx-1] & 0xff))
4247  curdef_idx--;
4248  else
4249  break;
4250  }
4251  /* tag current position and recursively expand the next part */
4252  tag = curdef_idx;
4253  mtp = add_expand_text(mtp->next, mep, nnl);
4254 
4255  /* Now get rid of the leading space of the expansion */
4256  cptr = &curdef_text[tag];
4257  n = curdef_idx - tag;
4258  while(n)
4259  {
4260  if(isspace(*cptr & 0xff))
4261  {
4262  cptr++;
4263  n--;
4264  }
4265  else
4266  break;
4267  }
4268  if(cptr != &curdef_text[tag])
4269  {
4270  memmove(&curdef_text[tag], cptr, n);
4271  curdef_idx -= (curdef_idx - tag) - n;
4272  }
4273  break;
4274 
4275  case exp_subst:
4276  if((mtp->next && mtp->next->type == exp_concat) || (mtp->prev && mtp->prev->type == exp_concat))
4277  exp = mep->args[mtp->subst.argidx];
4278  else
4279  exp = mep->ppargs[mtp->subst.argidx];
4280  if(exp)
4281  {
4282  add_text(exp, strlen(exp));
4283  *nnl -= mep->nnls[mtp->subst.argidx];
4284  cptr = strchr(exp, '\n');
4285  while(cptr)
4286  {
4287  *cptr = ' ';
4288  cptr = strchr(cptr+1, '\n');
4289  }
4290  mep->nnls[mtp->subst.argidx] = 0;
4291  }
4292  break;
4293 
4294  default:
4295  pp_internal_error(__FILE__, __LINE__, "Invalid expansion type (%d) in macro expansion\n", mtp->type);
4296  }
4297  return mtp;
4298 }
#define isspace(c)
Definition: acclib.h:69
#define memmove(s1, s2, n)
Definition: mkisofs.h:881
void WINAPIV pp_internal_error(const char *file, int line, const char *s,...)
Definition: preproc.c:438
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
GLdouble n
Definition: glext.h:7729
Definition: ecma_167.h:138
int argidx
Definition: wpp_private.h:81
union mtext::@240 subst
smooth NULL
Definition: ftsmooth.c:416
static mtext_t * add_expand_text(mtext_t *mtp, macexpstackentry_t *mep, int *nnl)
Definition: ppl.yy.c:4213
char ** ppargs
Definition: ppl.yy.c:1481
static char * curdef_text
Definition: ppl.yy.c:4189
static int curdef_idx
Definition: ppl.yy.c:3978
struct mtext * prev
Definition: wpp_private.h:77
def_exp_t type
Definition: wpp_private.h:78
struct mtext * next
Definition: wpp_private.h:76
DWORD exp
Definition: msg.c:16033
char ** args
Definition: ppl.yy.c:1480
char * strchr(const char *String, int ch)
Definition: utclib.c:501
char * text
Definition: wpp_private.h:80
static void add_text(const char *str, int len)
Definition: ppl.yy.c:4191
char * tag
Definition: main.c:59

Referenced by expand_macro().

◆ add_string()

static void add_string ( const char str,
int  len 
)
static

Definition at line 4380 of file ppl.yy.c.

4381 {
4382  int new_alloc;
4383  char *new_buffer;
4384 
4385  if(len == 0)
4386  return;
4388  {
4389  new_alloc = strbuf_alloc + ((len + ALLOCBLOCKSIZE-1) & ~(ALLOCBLOCKSIZE-1));
4390  new_buffer = pp_xrealloc(strbuffer, new_alloc * sizeof(strbuffer[0]));
4391  if(!new_buffer)
4392  return;
4393  strbuffer = new_buffer;
4394  strbuf_alloc = new_alloc;
4395  if(strbuf_alloc > 65536)
4396  ppy_warning("Reallocating string buffer larger than 64kB");
4397  }
4399  strbuf_idx += len;
4400 }
static int strbuf_alloc
Definition: ppl.yy.c:1526
static int strbuf_idx
Definition: ppl.yy.c:1525
void * pp_xrealloc(void *p, size_t size)
Definition: preproc.c:59
static char * strbuffer
Definition: ppl.yy.c:1527
const WCHAR * str
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
GLenum GLsizei len
Definition: glext.h:6722
int WINAPIV ppy_warning(const char *msg,...)
Definition: compiler.c:149
#define ALLOCBLOCKSIZE
Definition: ppl.yy.c:1468

◆ add_text()

static void add_text ( const char str,
int  len 
)
static

Definition at line 4191 of file ppl.yy.c.

4192 {
4193  int new_alloc;
4194  char *new_text;
4195 
4196  if(len == 0)
4197  return;
4199  {
4200  new_alloc = curdef_alloc + ((len + ALLOCBLOCKSIZE-1) & ~(ALLOCBLOCKSIZE-1));
4201  new_text = pp_xrealloc(curdef_text, new_alloc * sizeof(curdef_text[0]));
4202  if(!new_text)
4203  return;
4204  curdef_text = new_text;
4205  curdef_alloc = new_alloc;
4206  if(curdef_alloc > 65536)
4207  ppy_warning("Reallocating macro-expansion buffer larger than 64kB");
4208  }
4210  curdef_idx += len;
4211 }
void * pp_xrealloc(void *p, size_t size)
Definition: preproc.c:59
const WCHAR * str
static char * curdef_text
Definition: ppl.yy.c:4189
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
GLenum GLsizei len
Definition: glext.h:6722
static int curdef_idx
Definition: ppl.yy.c:3978
int WINAPIV ppy_warning(const char *msg,...)
Definition: compiler.c:149
#define ALLOCBLOCKSIZE
Definition: ppl.yy.c:1468
static int curdef_alloc
Definition: ppl.yy.c:4188

Referenced by add_expand_text(), and expand_macro().

◆ add_text_to_macro()

static void add_text_to_macro ( const char text,
int  len 
)
static

Definition at line 4585 of file ppl.yy.c.

4586 {
4587  macexpstackentry_t *mep = top_macro();
4588 
4589  assert(mep->ppp->expanding == 0);
4590 
4591  if(mep->curargalloc - mep->curargsize <= len+1) /* +1 for '\0' */
4592  {
4593  char *new_curarg;
4594  int new_alloc = mep->curargalloc + ((ALLOCBLOCKSIZE > len+1) ? ALLOCBLOCKSIZE : len+1);
4595  new_curarg = pp_xrealloc(mep->curarg, new_alloc * sizeof(mep->curarg[0]));
4596  if(!new_curarg)
4597  return;
4598  mep->curarg = new_curarg;
4599  mep->curargalloc = new_alloc;
4600  }
4601  memcpy(mep->curarg + mep->curargsize, text, len);
4602  mep->curargsize += len;
4603  mep->curarg[mep->curargsize] = '\0';
4604 }
char * curarg
Definition: ppl.yy.c:1487
void * pp_xrealloc(void *p, size_t size)
Definition: preproc.c:59
const WCHAR * text
Definition: package.c:1827
#define assert(x)
Definition: debug.h:53
int expanding
Definition: wpp_private.h:106
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
GLenum GLsizei len
Definition: glext.h:6722
static macexpstackentry_t * top_macro(void)
Definition: ppl.yy.c:4561
#define ALLOCBLOCKSIZE
Definition: ppl.yy.c:1468
pp_entry_t * ppp
Definition: ppl.yy.c:1479

Referenced by put_buffer().

◆ expand_define()

static void expand_define ( pp_entry_t ppp)
static

◆ expand_macro()

static void expand_macro ( macexpstackentry_t mep)
static

Definition at line 4300 of file ppl.yy.c.

4301 {
4302  mtext_t *mtp;
4303  int n, k;
4304  char *cptr;
4305  int nnl = 0;
4306  pp_entry_t *ppp = mep->ppp;
4307  int nargs = mep->nargs;
4308 
4309  assert(ppp->type == def_macro);
4310  assert(ppp->expanding == 0);
4311 
4312  if((ppp->nargs >= 0 && nargs != ppp->nargs) || (ppp->nargs < 0 && nargs < -ppp->nargs))
4313  {
4314  ppy_error("Too %s macro arguments (%d)", nargs < abs(ppp->nargs) ? "few" : "many", nargs);
4315  return;
4316  }
4317 
4318  for(n = 0; n < nargs; n++)
4319  nnl += mep->nnls[n];
4320 
4321  curdef_idx = 0;
4322 
4323  for(mtp = ppp->subst.mtext; mtp; mtp = mtp->next)
4324  {
4325  if(!(mtp = add_expand_text(mtp, mep, &nnl)))
4326  break;
4327  }
4328 
4329  for(n = 0; n < nnl; n++)
4330  add_text("\n", 1);
4331 
4332  /* To make sure there is room and termination (see below) */
4333  add_text(" \0", 2);
4334 
4335  /* Strip trailing whitespace from expansion */
4336  for(k = curdef_idx, cptr = &curdef_text[curdef_idx-1]; k > 0; k--, cptr--)
4337  {
4338  if(!isspace(*cptr & 0xff))
4339  break;
4340  }
4341 
4342  /*
4343  * We must add *one* whitespace to make sure that there
4344  * is a token-separation after the expansion.
4345  */
4346  *(++cptr) = ' ';
4347  *(++cptr) = '\0';
4348  k++;
4349 
4350  /* Strip leading whitespace from expansion */
4351  for(n = 0, cptr = curdef_text; n < k; n++, cptr++)
4352  {
4353  if(!isspace(*cptr & 0xff))
4354  break;
4355  }
4356 
4357  if(k - n > 0)
4358  {
4359  push_buffer(ppp, NULL, NULL, 0);
4360  /*yy_scan_bytes(curdef_text + n, k - n);*/
4362  }
4363 }
int nargs
Definition: wpp_private.h:101
#define abs(i)
Definition: fconv.c:206
int WINAPIV ppy_error(const char *msg,...)
Definition: compiler.c:135
#define isspace(c)
Definition: acclib.h:69
GLdouble n
Definition: glext.h:7729
#define assert(x)
Definition: debug.h:53
int expanding
Definition: wpp_private.h:106
#define yy_scan_string
Definition: ppl.yy.c:12
smooth NULL
Definition: ftsmooth.c:416
union pp_entry::@241 subst
static mtext_t * add_expand_text(mtext_t *mtp, macexpstackentry_t *mep, int *nnl)
Definition: ppl.yy.c:4213
mtext_t * mtext
Definition: wpp_private.h:103
static char * curdef_text
Definition: ppl.yy.c:4189
Definition: wpp_private.h:95
static void push_buffer(pp_entry_t *ppp, char *filename, char *incname, int pop)
Definition: ppl.yy.c:4434
static int curdef_idx
Definition: ppl.yy.c:3978
struct mtext * next
Definition: wpp_private.h:76
def_type_t type
Definition: wpp_private.h:98
pp_entry_t * ppp
Definition: ppl.yy.c:1479
int k
Definition: mpi.c:3369
static void add_text(const char *str, int len)
Definition: ppl.yy.c:4191

◆ expand_special()

static void expand_special ( pp_entry_t ppp)
static

◆ free_macro()

static void free_macro ( macexpstackentry_t mep)
static

Definition at line 4573 of file ppl.yy.c.

4574 {
4575  int i;
4576 
4577  for(i = 0; i < mep->nargs; i++)
4578  free(mep->args[i]);
4579  free(mep->args);
4580  free(mep->nnls);
4581  free(mep->curarg);
4582  free(mep);
4583 }
char * curarg
Definition: ppl.yy.c:1487
#define free
Definition: debug_ros.c:5
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
char ** args
Definition: ppl.yy.c:1480

◆ get_string()

static char * get_string ( void  )
static

Definition at line 4402 of file ppl.yy.c.

4403 {
4404  char *str = pp_xmalloc(strbuf_idx + 1);
4405  if(!str)
4406  return NULL;
4408  str[strbuf_idx] = '\0';
4409 #ifdef DEBUG
4410  strbuf_idx = 0;
4411 #endif
4412  return str;
4413 }
static int strbuf_idx
Definition: ppl.yy.c:1525
static char * strbuffer
Definition: ppl.yy.c:1527
const WCHAR * str
smooth NULL
Definition: ftsmooth.c:416
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
void * pp_xmalloc(size_t size)
Definition: preproc.c:45

Referenced by create_regexp_var(), DateConstr_value(), debugstr_jsval(), JSGlobal_eval(), JSON_stringify(), jsval_copy(), jsval_release(), jsval_strict_equal(), jsval_to_variant(), less_eval(), rep_call(), stringify(), to_boolean(), to_number(), to_object(), and to_string().

◆ if()

if ( yy_init)

Definition at line 1827 of file ppl.yy.c.

1828  {
1829  (yy_init) = 1;
1830 
1831 #ifdef YY_USER_INIT
1832  YY_USER_INIT;
1833 #endif
1834 
1835  if ( ! (yy_start) )
1836  (yy_start) = 1; /* first start state */
1837 
1838  if ( ! yyin )
1839  yyin = stdin;
1840 
1841  if ( ! yyout )
1842  yyout = stdout;
1843 
1844  if ( ! YY_CURRENT_BUFFER ) {
1848  }
1849 
1851  }
static int yy_start
Definition: ppl.yy.c:535
FILE * stdin
FILE * stdout
#define YY_CURRENT_BUFFER
Definition: ppl.yy.c:519
#define YY_CURRENT_BUFFER_LVALUE
Definition: ppl.yy.c:525
static int yy_init
Definition: ppl.yy.c:534
#define yyensure_buffer_stack
Definition: ppl.yy.c:20
#define yyout
Definition: ppl.yy.c:26
#define yy_load_buffer_state
Definition: ppl.yy.c:16
#define yy_create_buffer
Definition: ppl.yy.c:9
#define yyin
Definition: ppl.yy.c:22
#define YY_BUF_SIZE
Definition: ppl.yy.c:399

◆ macro_add_arg()

static void macro_add_arg ( int  last)
static

Definition at line 4606 of file ppl.yy.c.

4607 {
4608  int nnl = 0;
4609  char *cptr;
4610  char **new_args, **new_ppargs;
4611  int *new_nnls;
4612  macexpstackentry_t *mep = top_macro();
4613 
4614  assert(mep->ppp->expanding == 0);
4615 
4616  new_args = pp_xrealloc(mep->args, (mep->nargs+1) * sizeof(mep->args[0]));
4617  if(!new_args)
4618  return;
4619  mep->args = new_args;
4620 
4621  new_ppargs = pp_xrealloc(mep->ppargs, (mep->nargs+1) * sizeof(mep->ppargs[0]));
4622  if(!new_ppargs)
4623  return;
4624  mep->ppargs = new_ppargs;
4625 
4626  new_nnls = pp_xrealloc(mep->nnls, (mep->nargs+1) * sizeof(mep->nnls[0]));
4627  if(!new_nnls)
4628  return;
4629  mep->nnls = new_nnls;
4630 
4631  mep->args[mep->nargs] = pp_xstrdup(mep->curarg ? mep->curarg : "");
4632  if(!mep->args[mep->nargs])
4633  return;
4634  cptr = mep->args[mep->nargs]-1;
4635  while((cptr = strchr(cptr+1, '\n')))
4636  {
4637  nnl++;
4638  }
4639  mep->nnls[mep->nargs] = nnl;
4640  mep->nargs++;
4641  free(mep->curarg);
4642  mep->curargalloc = mep->curargsize = 0;
4643  mep->curarg = NULL;
4644 
4645  /* Each macro argument must be expanded to cope with stingize */
4646  if(last || mep->args[mep->nargs-1][0])
4647  {
4649  push_buffer(NULL, NULL, NULL, last ? 2 : 1);
4650  yy_scan_string(mep->args[mep->nargs-1]);
4651  /*mep->bufferstackidx = bufferstackidx; But not nested! */
4652  }
4653 }
char * curarg
Definition: ppl.yy.c:1487
POINT last
Definition: font.c:46
void * pp_xrealloc(void *p, size_t size)
Definition: preproc.c:59
#define free
Definition: debug_ros.c:5
#define assert(x)
Definition: debug.h:53
int expanding
Definition: wpp_private.h:106
#define yy_scan_string
Definition: ppl.yy.c:12
smooth NULL
Definition: ftsmooth.c:416
char ** ppargs
Definition: ppl.yy.c:1481
char * pp_xstrdup(const char *str)
Definition: preproc.c:73
#define pp_macexp
Definition: ppl.yy.c:1620
static void push_buffer(pp_entry_t *ppp, char *filename, char *incname, int pop)
Definition: ppl.yy.c:4434
static void yy_push_state(int _new_state)
char ** args
Definition: ppl.yy.c:1480
char * strchr(const char *String, int ch)
Definition: utclib.c:501
static macexpstackentry_t * top_macro(void)
Definition: ppl.yy.c:4561
pp_entry_t * ppp
Definition: ppl.yy.c:1479

◆ macro_add_expansion()

static void macro_add_expansion ( void  )
static

Definition at line 4655 of file ppl.yy.c.

4656 {
4657  macexpstackentry_t *mep = top_macro();
4658 
4659  assert(mep->ppp->expanding == 0);
4660 
4661  mep->ppargs[mep->nargs-1] = pp_xstrdup(mep->curarg ? mep->curarg : "");
4662  free(mep->curarg);
4663  mep->curargalloc = mep->curargsize = 0;
4664  mep->curarg = NULL;
4665 }
char * curarg
Definition: ppl.yy.c:1487
#define free
Definition: debug_ros.c:5
#define assert(x)
Definition: debug.h:53
int expanding
Definition: wpp_private.h:106
smooth NULL
Definition: ftsmooth.c:416
char ** ppargs
Definition: ppl.yy.c:1481
char * pp_xstrdup(const char *str)
Definition: preproc.c:73
static macexpstackentry_t * top_macro(void)
Definition: ppl.yy.c:4561
pp_entry_t * ppp
Definition: ppl.yy.c:1479

Referenced by pop_buffer().

◆ make_number()

static int make_number ( int  radix,
YYSTYPE val,
const char str,
int  len 
)
static

◆ new_string()

static void new_string ( void  )
static

Definition at line 4370 of file ppl.yy.c.

4371 {
4372 #ifdef DEBUG
4373  if(strbuf_idx)
4374  ppy_warning("new_string: strbuf_idx != 0");
4375 #endif
4376  strbuf_idx = 0;
4378 }
static int str_startline
Definition: ppl.yy.c:1528
static int strbuf_idx
Definition: ppl.yy.c:1525
int line_number
Definition: wpp_private.h:222
int WINAPIV ppy_warning(const char *msg,...)
Definition: compiler.c:149

Referenced by AppendUnicodeString(), and PerfDataGetCommandLine().

◆ newline()

◆ pop_buffer()

static bufferstackentry_t * pop_buffer ( void  )
static

Definition at line 4467 of file ppl.yy.c.

4468 {
4469  if(bufferstackidx < 0)
4470  pp_internal_error(__FILE__, __LINE__, "Bufferstack underflow?");
4471 
4472  if(bufferstackidx == 0)
4473  return NULL;
4474 
4475  bufferstackidx--;
4476 
4479  else
4480  {
4481  includelogicentry_t *iep = NULL;
4482 
4483  if(!bufferstack[bufferstackidx].should_pop)
4484  {
4487 
4488  /* We have EOF, check the include logic */
4490  {
4492  if(ppp)
4493  {
4494  iep = pp_xmalloc(sizeof(includelogicentry_t));
4495  if (iep)
4496  {
4497  iep->ppp = ppp;
4498  ppp->iep = iep;
4500  iep->prev = NULL;
4501  iep->next = pp_includelogiclist;
4502  if(iep->next)
4503  iep->next->prev = iep;
4504  pp_includelogiclist = iep;
4505  }
4506  }
4507  }
4510 
4511  }
4512  if (bufferstack[bufferstackidx].include_filename)
4513  {
4514  free(pp_status.input);
4516  }
4520  if (!iep)
4521  free(bufferstack[bufferstackidx].include_filename);
4522  }
4523 
4526 
4527  if(bufferstack[bufferstackidx].should_pop)
4528  {
4529  if(yy_current_state() == pp_macexp)
4531  else
4532  pp_internal_error(__FILE__, __LINE__, "Pop buffer and state without macro expansion state");
4533  yy_pop_state();
4534  }
4535 
4536  return &bufferstack[bufferstackidx];
4537 }
pp_entry_t * define
Definition: ppl.yy.c:1456
void WINAPIV pp_internal_error(const char *file, int line, const char *s,...)
Definition: preproc.c:438
static int bufferstackidx
Definition: ppl.yy.c:1534
#define free
Definition: debug_ros.c:5
int line_number
Definition: wpp_private.h:222
int line_number
Definition: parser.yy.c:775
const char * filename
Definition: ioapi.h:135
char * filename
Definition: ppl.yy.c:1459
int expanding
Definition: wpp_private.h:106
include_state_t incl
Definition: ppl.yy.c:1464
void ppy__switch_to_buffer(YY_BUFFER_STATE new_buffer)
Definition: ppl.yy.c:3165
static int ncontinuations
Definition: ppl.yy.c:1523
int char_number
Definition: wpp_private.h:223
smooth NULL
Definition: ftsmooth.c:416
struct includelogicentry * prev
Definition: wpp_private.h:46
char * input
Definition: wpp_private.h:220
void * filehandle
Definition: ppl.yy.c:1455
static void yy_pop_state(void)
Definition: wpp_private.h:95
#define pp_macexp
Definition: ppl.yy.c:1620
#define yy_current_state()
Definition: ppl.yy.c:1440
includelogicentry_t * pp_includelogiclist
Definition: ppl.yy.c:1547
void wpp_close(void *file)
Definition: compiler.c:258
static bufferstackentry_t bufferstack[MAXBUFFERSTACK]
Definition: ppl.yy.c:1533
include_state_t pp_incl_state
Definition: ppl.yy.c:1539
pp_entry_t * pplookup(const char *ident)
Definition: preproc.c:95
struct includelogicentry * next
Definition: wpp_private.h:45
void WINAPIV pp_writestring(const char *format,...)
Definition: ppl.yy.c:1556
char * include_filename
Definition: ppl.yy.c:1465
includelogicentry_t * iep
Definition: wpp_private.h:109
void * pp_xmalloc(size_t size)
Definition: preproc.c:45
int ncontinuations
Definition: ppl.yy.c:1461
void * file
Definition: wpp_private.h:221
static void macro_add_expansion(void)
Definition: ppl.yy.c:4655
struct pp_entry * ppp
Definition: wpp_private.h:47

◆ pop_macro()

static macexpstackentry_t * pop_macro ( void  )
static

Definition at line 4566 of file ppl.yy.c.

4567 {
4568  if(macexpstackidx <= 0)
4569  pp_internal_error(__FILE__, __LINE__, "Macro expansion stack underflow\n");
4570  return macexpstack[--macexpstackidx];
4571 }
void WINAPIV pp_internal_error(const char *file, int line, const char *s,...)
Definition: preproc.c:438
static int macexpstackidx
Definition: ppl.yy.c:1531
static macexpstackentry_t * macexpstack[MAXMACEXPSTACK]
Definition: ppl.yy.c:1530

◆ pp_do_include()

void pp_do_include ( char fname,
int  type 
)

Definition at line 4687 of file ppl.yy.c.

4688 {
4689  char *newpath;
4690  int n;
4691  includelogicentry_t *iep;
4692  void *fp;
4693 
4694  if(!fname)
4695  return;
4696 
4697  for(iep = pp_includelogiclist; iep; iep = iep->next)
4698  {
4699  if(!strcmp(iep->filename, fname))
4700  {
4701  /*
4702  * We are done. The file was included before.
4703  * If the define was deleted, then this entry would have
4704  * been deleted too.
4705  */
4706  free(fname);
4707  return;
4708  }
4709  }
4710 
4711  n = strlen(fname);
4712 
4713  if(n <= 2)
4714  {
4715  ppy_error("Empty include filename");
4716  free(fname);
4717  return;
4718  }
4719 
4720  /* Undo the effect of the quotation */
4721  fname[n-1] = '\0';
4722 
4723  if((fp = pp_open_include(fname+1, type, pp_status.input, &newpath)) == NULL)
4724  {
4725  ppy_error("Unable to open include file %s", fname+1);
4726  free(fname);
4727  return;
4728  }
4729 
4730  fname[n-1] = *fname; /* Redo the quotes */
4731  push_buffer(NULL, newpath, fname, 0);
4733  pp_incl_state.state = 0;
4735 
4736  pp_status.file = fp;
4738 
4739  pp_writestring("# 1 \"%s\" 1%s\n", newpath, type ? "" : " 3");
4740 }
int WINAPIV ppy_error(const char *msg,...)
Definition: compiler.c:135
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
#define free
Definition: debug_ros.c:5
GLdouble n
Definition: glext.h:7729
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
void ppy__switch_to_buffer(YY_BUFFER_STATE new_buffer)
Definition: ppl.yy.c:3165
void * pp_open_include(const char *name, int type, const char *parent_name, char **newpath)
Definition: preproc.c:290
smooth NULL
Definition: ftsmooth.c:416
char * input
Definition: wpp_private.h:220
includelogicentry_t * pp_includelogiclist
Definition: ppl.yy.c:1547
static void push_buffer(pp_entry_t *ppp, char *filename, char *incname, int pop)
Definition: ppl.yy.c:4434
include_state_t pp_incl_state
Definition: ppl.yy.c:1539
YY_BUFFER_STATE ppy__create_buffer(FILE *file, int size)
Definition: ppl.yy.c:3210
struct includelogicentry * next
Definition: wpp_private.h:45
void WINAPIV pp_writestring(const char *format,...)
Definition: ppl.yy.c:1556
int strcmp(const char *String1, const char *String2)
Definition: utclib.c:469
void * file
Definition: wpp_private.h:221
#define YY_BUF_SIZE
Definition: ppl.yy.c:399

Referenced by yyparse().

◆ pp_pop_ignore_state()

void pp_pop_ignore_state ( void  )

Definition at line 4753 of file ppl.yy.c.

4754 {
4755  yy_pop_state();
4756 }
static void yy_pop_state(void)

Referenced by pp_pop_if().

◆ pp_push_ignore_state()

void pp_push_ignore_state ( void  )

Definition at line 4748 of file ppl.yy.c.

4749 {
4751 }
#define pp_ignore
Definition: ppl.yy.c:1627
static void yy_push_state(int _new_state)

Referenced by pp_push_if().

◆ pp_writestring()

void WINAPIV pp_writestring ( const char format,
  ... 
)

Definition at line 1556 of file ppl.yy.c.

1557 {
1559  int len;
1560  static char *buffer;
1561  static int buffercapacity;
1562  char *new_buffer;
1563 
1564  if(buffercapacity == 0)
1565  {
1567  if(buffer == NULL)
1568  return;
1569  buffercapacity = BUFFERINITIALCAPACITY;
1570  }
1571 
1573  len = vsnprintf(buffer, buffercapacity,
1574  format, valist);
1576  /* If the string is longer than buffersize, vsnprintf returns
1577  * the string length with glibc >= 2.1, -1 with glibc < 2.1 */
1578  while(len > buffercapacity || len < 0)
1579  {
1580  do
1581  {
1582  buffercapacity *= 2;
1583  } while(len > buffercapacity);
1584 
1585  new_buffer = pp_xrealloc(buffer, buffercapacity);
1586  if(new_buffer == NULL)
1587  return;
1588  buffer = new_buffer;
1590  len = vsnprintf(buffer, buffercapacity,
1591  format, valist);
1593  }
1594 
1595  wpp_write(buffer, len);
1596 }
#define vsnprintf
Definition: tif_win32.c:406
#define BUFFERINITIALCAPACITY
Definition: ppl.yy.c:1554
static static const char __ms_va_list
Definition: printf.c:76
void * pp_xrealloc(void *p, size_t size)
Definition: preproc.c:59
GLuint buffer
Definition: glext.h:5915
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
smooth NULL
Definition: ftsmooth.c:416
void wpp_write(const char *buffer, unsigned int len)
Definition: compiler.c:284
GLenum GLsizei len
Definition: glext.h:6722
#define __ms_va_end(list)
Definition: windef.h:458
#define __ms_va_start(list, arg)
Definition: windef.h:457
void * pp_xmalloc(size_t size)
Definition: preproc.c:45
static __ms_va_list valist
Definition: printf.c:64

Referenced by pop_buffer(), pp_do_include(), wpp_parse(), and yyparse().

◆ push_buffer()

static void push_buffer ( pp_entry_t ppp,
char filename,
char incname,
int  pop 
)
static

Definition at line 4434 of file ppl.yy.c.

4435 {
4437  pp_internal_error(__FILE__, __LINE__, "Buffer stack overflow");
4438 
4439  memset(&bufferstack[bufferstackidx], 0, sizeof(bufferstack[0]));
4451 
4452  if(ppp)
4453  ppp->expanding = 1;
4454  else if(filename)
4455  {
4456  /* These will track the ppy_error to the correct file and line */
4457  pp_status.line_number = 1;
4458  pp_status.char_number = 1;
4460  ncontinuations = 0;
4461  }
4462  else if(!pop)
4463  pp_internal_error(__FILE__, __LINE__, "Pushing buffer without knowing where to go to");
4464  bufferstackidx++;
4465 }
pp_entry_t * define
Definition: ppl.yy.c:1456
void WINAPIV pp_internal_error(const char *file, int line, const char *s,...)
Definition: preproc.c:438
int pp_get_if_depth(void)
Definition: preproc.c:433
static int bufferstackidx
Definition: ppl.yy.c:1534
int line_number
Definition: wpp_private.h:222
const char * filename
Definition: ioapi.h:135
static calc_node_t * pop(void)
Definition: rpn_ieee.c:90
char * filename
Definition: ppl.yy.c:1459
int expanding
Definition: wpp_private.h:106
include_state_t incl
Definition: ppl.yy.c:1464
#define YY_CURRENT_BUFFER
Definition: ppl.yy.c:519
static int ncontinuations
Definition: ppl.yy.c:1523
int char_number
Definition: wpp_private.h:223
char * input
Definition: wpp_private.h:220
void * filehandle
Definition: ppl.yy.c:1455
#define MAXBUFFERSTACK
Definition: ppl.yy.c:1451
static bufferstackentry_t bufferstack[MAXBUFFERSTACK]
Definition: ppl.yy.c:1533
include_state_t pp_incl_state
Definition: ppl.yy.c:1539
char * include_filename
Definition: ppl.yy.c:1465
YY_BUFFER_STATE bufferstate
Definition: ppl.yy.c:1454
#define memset(x, y, z)
Definition: compat.h:39
int ncontinuations
Definition: ppl.yy.c:1461
void * file
Definition: wpp_private.h:221

Referenced by expand_macro(), macro_add_arg(), and pp_do_include().

◆ push_macro()

static void push_macro ( pp_entry_t ppp)
static

Definition at line 4545 of file ppl.yy.c.

4546 {
4548  {
4549  ppy_error("Too many nested macros");
4550  return;
4551  }
4552 
4555  return;
4556  memset( macexpstack[macexpstackidx], 0, sizeof(macexpstack[0][0]));
4557  macexpstack[macexpstackidx]->ppp = ppp;
4558  macexpstackidx++;
4559 }
int WINAPIV ppy_error(const char *msg,...)
Definition: compiler.c:135
static int macexpstackidx
Definition: ppl.yy.c:1531
void * pp_xmalloc(size_t size)
Definition: preproc.c:45
#define MAXMACEXPSTACK
Definition: ppl.yy.c:1476
pp_entry_t * ppp
Definition: ppl.yy.c:1479
#define memset(x, y, z)
Definition: compat.h:39
static macexpstackentry_t * macexpstack[MAXMACEXPSTACK]
Definition: ppl.yy.c:1530

◆ put_buffer()

static void put_buffer ( const char s,
int  len 
)
static

Definition at line 4673 of file ppl.yy.c.

4674 {
4675  if(top_macro())
4677  else
4678  wpp_write(s, len);
4679 }
void wpp_write(const char *buffer, unsigned int len)
Definition: compiler.c:284
GLenum GLsizei len
Definition: glext.h:6722
GLdouble s
Definition: gl.h:2039
static macexpstackentry_t * top_macro(void)
Definition: ppl.yy.c:4561
static void add_text_to_macro(const char *text, int len)
Definition: ppl.yy.c:4585

Referenced by emit_bits_e(), emit_bits_s(), and put_string().

◆ put_string()

static void put_string ( void  )
static

Definition at line 4415 of file ppl.yy.c.

4416 {
4418 #ifdef DEBUG
4419  strbuf_idx = 0;
4420 #endif
4421 }
static int strbuf_idx
Definition: ppl.yy.c:1525
static char * strbuffer
Definition: ppl.yy.c:1527
static void put_buffer(const char *s, int len)
Definition: ppl.yy.c:4673

◆ string_start()

static int string_start ( void  )
static

Definition at line 4423 of file ppl.yy.c.

4424 {
4425  return str_startline;
4426 }
static int str_startline
Definition: ppl.yy.c:1528

◆ top_macro()

static macexpstackentry_t * top_macro ( void  )
static

Definition at line 4561 of file ppl.yy.c.

4562 {
4563  return macexpstackidx > 0 ? macexpstack[macexpstackidx-1] : NULL;
4564 }
static int macexpstackidx
Definition: ppl.yy.c:1531
smooth NULL
Definition: ftsmooth.c:416
static macexpstackentry_t * macexpstack[MAXMACEXPSTACK]
Definition: ppl.yy.c:1530

Referenced by add_text_to_macro(), macro_add_arg(), macro_add_expansion(), and put_buffer().

◆ yy_create_buffer()

YY_BUFFER_STATE yy_create_buffer ( FILE file,
int  size 
)

Allocate and initialize an input buffer state.

Parameters
fileA readable stream.
sizeThe character buffer size in bytes. When in doubt, use YY_BUF_SIZE.
Returns
the allocated buffer state.

Definition at line 1351 of file macro.lex.yy.c.

1352 {
1354 
1355  b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
1356  if ( ! b )
1357  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
1358 
1359  b->yy_buf_size = size;
1360 
1361  /* yy_ch_buf has to be 2 characters longer than the size given because
1362  * we need to put in 2 end-of-buffer characters.
1363  */
1364  b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 );
1365  if ( ! b->yy_ch_buf )
1366  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
1367 
1368  b->yy_is_our_buffer = 1;
1369 
1370  yy_init_buffer(b,file );
1371 
1372  return b;
1373 }
#define YY_FATAL_ERROR(msg)
Definition: macro.lex.yy.c:670
void * yyalloc(yy_size_t)
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLsizeiptr size
Definition: glext.h:5919
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
struct yy_buffer_state * YY_BUFFER_STATE
Definition: macro.lex.yy.c:154
Definition: fci.c:126

◆ yy_delete_buffer()

void yy_delete_buffer ( YY_BUFFER_STATE  b)

Destroy the buffer.

Parameters
ba buffer created with yy_create_buffer()

Definition at line 1379 of file macro.lex.yy.c.

1380 {
1381 
1382  if ( ! b )
1383  return;
1384 
1385  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
1387 
1388  if ( b->yy_is_our_buffer )
1389  yyfree((void *) b->yy_ch_buf );
1390 
1391  yyfree((void *) b );
1392 }
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
void yyfree(void *)
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
struct yy_buffer_state * YY_BUFFER_STATE
Definition: macro.lex.yy.c:154
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yy_fatal_error()

static void yynoreturn yy_fatal_error ( const char msg)
static

◆ yy_flush_buffer()

void yy_flush_buffer ( YY_BUFFER_STATE  b)

Discard all buffered characters. On the next scan, YY_INPUT will be called.

Parameters
bthe buffer state to be flushed, usually YY_CURRENT_BUFFER.

Definition at line 1426 of file macro.lex.yy.c.

1427 {
1428  if ( ! b )
1429  return;
1430 
1431  b->yy_n_chars = 0;
1432 
1433  /* We always need two end-of-buffer characters. The first causes
1434  * a transition to the end-of-buffer state. The second causes
1435  * a jam in that state.
1436  */
1437  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
1438  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
1439 
1440  b->yy_buf_pos = &b->yy_ch_buf[0];
1441 
1442  b->yy_at_bol = 1;
1443  b->yy_buffer_status = YY_BUFFER_NEW;
1444 
1445  if ( b == YY_CURRENT_BUFFER )
1447 }
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
#define YY_END_OF_BUFFER_CHAR
Definition: macro.lex.yy.c:141
#define YY_BUFFER_NEW
Definition: macro.lex.yy.c:236
static void yy_load_buffer_state(void)
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yy_get_next_buffer()

static int yy_get_next_buffer ( void  )
static

◆ yy_get_previous_state()

static yy_state_type yy_get_previous_state ( void  )
static

◆ yy_init_buffer()

static void yy_init_buffer ( YY_BUFFER_STATE  b,
FILE file 
)
static

◆ yy_init_globals()

static int yy_init_globals ( void  )
static

◆ yy_load_buffer_state()

static void yy_load_buffer_state ( void  )
static

◆ yy_pop_state()

static void yy_pop_state ( void  )
static

Referenced by pop_buffer(), and pp_pop_ignore_state().

◆ yy_push_state()

static void yy_push_state ( int  _new_state)
static

◆ yy_scan_buffer()

YY_BUFFER_STATE yy_scan_buffer ( char base,
yy_size_t  size 
)

Setup the input buffer state to scan directly from a user-specified character buffer.

Parameters
basethe character buffer
sizethe size in bytes of the character buffer
Returns
the newly allocated buffer state object.

Definition at line 1553 of file macro.lex.yy.c.

1554 {
1556 
1557  if ( size < 2 ||
1560  /* They forgot to leave room for the EOB's. */
1561  return 0;
1562 
1563  b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
1564  if ( ! b )
1565  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
1566 
1567  b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
1568  b->yy_buf_pos = b->yy_ch_buf = base;
1569  b->yy_is_our_buffer = 0;
1570  b->yy_input_file = 0;
1571  b->yy_n_chars = b->yy_buf_size;
1572  b->yy_is_interactive = 0;
1573  b->yy_at_bol = 1;
1574  b->yy_fill_buffer = 0;
1575  b->yy_buffer_status = YY_BUFFER_NEW;
1576 
1578 
1579  return b;
1580 }
#define YY_FATAL_ERROR(msg)
Definition: macro.lex.yy.c:670
GLuint base
Definition: 3dtext.c:35
void * yyalloc(yy_size_t)
#define b
Definition: ke_i.h:79
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
GLsizeiptr size
Definition: glext.h:5919
#define YY_END_OF_BUFFER_CHAR
Definition: macro.lex.yy.c:141
#define YY_BUFFER_NEW
Definition: macro.lex.yy.c:236
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
struct yy_buffer_state * YY_BUFFER_STATE
Definition: macro.lex.yy.c:154

◆ yy_scan_bytes()

YY_BUFFER_STATE yy_scan_bytes ( const char bytes,
int  len 
)

◆ yy_scan_string()

YY_BUFFER_STATE yy_scan_string ( const char yy_str)

◆ yy_switch_to_buffer()

void yy_switch_to_buffer ( YY_BUFFER_STATE  new_buffer)

Switch to a different input buffer.

Parameters
new_bufferThe new input buffer.

Definition at line 1306 of file macro.lex.yy.c.

1307 {
1308 
1309  /* TODO. We should be able to replace this entire function body
1310  * with
1311  * yypop_buffer_state();
1312  * yypush_buffer_state(new_buffer);
1313  */
1315  if ( YY_CURRENT_BUFFER == new_buffer )
1316  return;
1317 
1318  if ( YY_CURRENT_BUFFER )
1319  {
1320  /* Flush out information for old buffer. */
1321  *(yy_c_buf_p) = (yy_hold_char);
1322  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1323  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1324  }
1325 
1326  YY_CURRENT_BUFFER_LVALUE = new_buffer;
1328 
1329  /* We don't actually know whether we did this switch during
1330  * EOF (yywrap()) processing, but the only time this flag
1331  * is looked at is after yywrap() is called, so it's safe
1332  * to go ahead and always set it.
1333  */
1335 }
static char * yy_c_buf_p
Definition: macro.lex.yy.c:279
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
static void yyensure_buffer_stack(void)
static int yy_did_buffer_switch_on_eof
Definition: macro.lex.yy.c:286
static yy_size_t yy_n_chars
Definition: macro.lex.yy.c:275
static void yy_load_buffer_state(void)
static char yy_hold_char
Definition: macro.lex.yy.c:274
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yy_top_state()

static int yy_top_state ( void  )
static

◆ yy_try_NUL_trans()

static yy_state_type yy_try_NUL_trans ( yy_state_type  current_state)
static

◆ yyalloc()

Definition at line 1814 of file macro.lex.yy.c.

1815 {
1816  return (void *) malloc( size );
1817 }
GLsizeiptr size
Definition: glext.h:5919
#define malloc
Definition: debug_ros.c:4

◆ yyensure_buffer_stack()

static void yyensure_buffer_stack ( void  )
static

◆ yyfree()

void yyfree ( void )

Definition at line 1831 of file macro.lex.yy.c.

1832 {
1833  free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
1834 }
#define free
Definition: debug_ros.c:5
static PVOID ptr
Definition: dispmode.c:27

◆ yyget_debug()

int yyget_debug ( void  )

Definition at line 1730 of file macro.lex.yy.c.

1731 {
1732  return yy_flex_debug;
1733 }
int yy_flex_debug
Definition: macro.lex.yy.c:462

◆ yyget_extra()

YY_EXTRA_TYPE yyget_extra ( void  )

◆ yyget_in()

FILE* yyget_in ( void  )

Get the input stream.

Definition at line 1674 of file macro.lex.yy.c.

1675 {
1676  return yyin;
1677 }
FILE * yyin
Definition: macro.lex.yy.c:338

◆ yyget_leng()

int yyget_leng ( void  )

Get the length of the current token.

Definition at line 1690 of file macro.lex.yy.c.

1691 {
1692  return yyleng;
1693 }
yy_size_t yyleng
Definition: macro.lex.yy.c:276

◆ yyget_lineno()

int yyget_lineno ( void  )

Get the current line number.

Definition at line 1665 of file macro.lex.yy.c.

1666 {
1667 
1668  return yylineno;
1669 }
int yylineno
Definition: macro.lex.yy.c:344

◆ yyget_out()

FILE* yyget_out ( void  )

Get the output stream.

Definition at line 1682 of file macro.lex.yy.c.

1683 {
1684  return yyout;
1685 }
FILE * yyout
Definition: macro.lex.yy.c:338

◆ yyget_text()

char* yyget_text ( void  )

Get the current token.

Definition at line 1699 of file macro.lex.yy.c.

1700 {
1701  return yytext;
1702 }
char * yytext
Definition: macro.lex.yy.c:471

◆ yylex()

int yylex ( void  )

◆ yylex_destroy()

int yylex_destroy ( void  )

Definition at line 1769 of file macro.lex.yy.c.

1770 {
1771 
1772  /* Pop the buffer stack, destroying each element. */
1773  while(YY_CURRENT_BUFFER){
1777  }
1778 
1779  /* Destroy the stack itself. */
1780  yyfree((yy_buffer_stack) );
1781  (yy_buffer_stack) = NULL;
1782 
1783  /* Reset the globals. This is important in a non-reentrant scanner so the next time
1784  * yylex() is called, initialization will occur. */
1785  yy_init_globals( );
1786 
1787  return 0;
1788 }
void yy_delete_buffer(YY_BUFFER_STATE b)
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
smooth NULL
Definition: ftsmooth.c:416
void yyfree(void *)
static int yy_init_globals(void)
static YY_BUFFER_STATE * yy_buffer_stack
Definition: macro.lex.yy.c:256
void yypop_buffer_state(void)
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yypop_buffer_state()

void yypop_buffer_state ( void  )

Removes and deletes the top of the stack, if present. The next element becomes the new top.

Definition at line 1485 of file macro.lex.yy.c.

1486 {
1487  if (!YY_CURRENT_BUFFER)
1488  return;
1489 
1492  if ((yy_buffer_stack_top) > 0)
1493  --(yy_buffer_stack_top);
1494 
1495  if (YY_CURRENT_BUFFER) {
1498  }
1499 }
void yy_delete_buffer(YY_BUFFER_STATE b)
static size_t yy_buffer_stack_top
Definition: macro.lex.yy.c:254
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
smooth NULL
Definition: ftsmooth.c:416
static int yy_did_buffer_switch_on_eof
Definition: macro.lex.yy.c:286
static void yy_load_buffer_state(void)
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yypush_buffer_state()

void yypush_buffer_state ( YY_BUFFER_STATE  new_buffer)

Pushes the new state onto the stack. The new state becomes the current state. This function will allocate the stack if necessary.

Parameters
new_bufferThe new state.

Definition at line 1455 of file macro.lex.yy.c.

1456 {
1457  if (new_buffer == NULL)
1458  return;
1459 
1461 
1462  /* This block is copied from yy_switch_to_buffer. */
1463  if ( YY_CURRENT_BUFFER )
1464  {
1465  /* Flush out information for old buffer. */
1466  *(yy_c_buf_p) = (yy_hold_char);
1467  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1468  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1469  }
1470 
1471  /* Only push if top exists. Otherwise, replace top. */
1472  if (YY_CURRENT_BUFFER)
1473  (yy_buffer_stack_top)++;
1474  YY_CURRENT_BUFFER_LVALUE = new_buffer;
1475 
1476  /* copied from yy_switch_to_buffer. */
1479 }
static size_t yy_buffer_stack_top
Definition: macro.lex.yy.c:254
static char * yy_c_buf_p
Definition: macro.lex.yy.c:279
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
static void yyensure_buffer_stack(void)
smooth NULL
Definition: ftsmooth.c:416
static int yy_did_buffer_switch_on_eof
Definition: macro.lex.yy.c:286
static yy_size_t yy_n_chars
Definition: macro.lex.yy.c:275
static void yy_load_buffer_state(void)
static char yy_hold_char
Definition: macro.lex.yy.c:274
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yyrealloc()

void* yyrealloc ( void ,
yy_size_t   
)

Definition at line 1819 of file macro.lex.yy.c.

1820 {
1821  /* The cast to (char *) in the following accommodates both
1822  * implementations that use char* generic pointers, and those
1823  * that use void* generic pointers. It works with the latter
1824  * because both ANSI C and C++ allow castless assignment from
1825  * any pointer type to void*, and deal with argument conversions
1826  * as though doing an assignment.
1827  */
1828  return (void *) realloc( (char *) ptr, size );
1829 }
#define realloc
Definition: debug_ros.c:6
static PVOID ptr
Definition: dispmode.c:27
GLsizeiptr size
Definition: glext.h:5919

◆ yyrestart()

void yyrestart ( FILE input_file)

Immediately switch to a different input stream.

Parameters
input_fileA readable stream.
Note
This function does not reset the start condition to INITIAL .

Definition at line 1289 of file macro.lex.yy.c.

1290 {
1291 
1292  if ( ! YY_CURRENT_BUFFER ){
1296  }
1297 
1298  yy_init_buffer(YY_CURRENT_BUFFER,input_file );
1300 }
#define YY_CURRENT_BUFFER_LVALUE
Definition: macro.lex.yy.c:271
static void yyensure_buffer_stack(void)
FILE * yyin
Definition: macro.lex.yy.c:338
#define YY_BUF_SIZE
Definition: macro.lex.yy.c:145
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
static void yy_load_buffer_state(void)
#define YY_CURRENT_BUFFER
Definition: macro.lex.yy.c:264

◆ yyset_debug()

void yyset_debug ( int  debug_flag)

Definition at line 1735 of file macro.lex.yy.c.

1736 {
1737  yy_flex_debug = bdebug ;
1738 }
int yy_flex_debug
Definition: macro.lex.yy.c:462

◆ yyset_extra()

void yyset_extra ( YY_EXTRA_TYPE  user_defined)

◆ yyset_in()

void yyset_in ( FILE in_str)

Set the input stream. This does not discard the current input buffer.

Parameters
in_strA readable stream.
See also
yy_switch_to_buffer

Definition at line 1720 of file macro.lex.yy.c.

1721 {
1722  yyin = in_str ;
1723 }
FILE * yyin
Definition: macro.lex.yy.c:338

◆ yyset_lineno()

void yyset_lineno ( int  line_number)

Set the current line number.

Parameters
line_number

Definition at line 1708 of file macro.lex.yy.c.

1709 {
1710 
1712 }
int line_number
Definition: parser.yy.c:775
int yylineno
Definition: macro.lex.yy.c:344

◆ yyset_out()

void yyset_out ( FILE _out_str)

Definition at line 1725 of file macro.lex.yy.c.

1726 {
1727  yyout = out_str ;
1728 }
FILE * yyout
Definition: macro.lex.yy.c:338

◆ yywrap()

int yywrap ( void  )

Definition at line 2104 of file macro.lex.yy.c.

2104 { return 1; }

Variable Documentation

◆ bufferstack

bufferstackentry_t bufferstack[MAXBUFFERSTACK]
static

Definition at line 1533 of file ppl.yy.c.

Referenced by pop_buffer(), and push_buffer().

◆ bufferstackidx

int bufferstackidx = 0
static

Definition at line 1534 of file ppl.yy.c.

Referenced by pop_buffer(), and push_buffer().

◆ curdef_alloc

int curdef_alloc = 0
static

Definition at line 4188 of file ppl.yy.c.

Referenced by add_text().

◆ curdef_text

char* curdef_text = NULL
static

Definition at line 4189 of file ppl.yy.c.

Referenced by add_expand_text(), add_text(), and expand_macro().

◆ macexpstack

macexpstackentry_t* macexpstack[MAXMACEXPSTACK]
static

Definition at line 1530 of file ppl.yy.c.

Referenced by pop_macro(), push_macro(), and top_macro().

◆ macexpstackidx

int macexpstackidx = 0
static

Definition at line 1531 of file ppl.yy.c.

Referenced by pop_macro(), push_macro(), and top_macro().

◆ ncontinuations

int ncontinuations
static

Definition at line 1523 of file ppl.yy.c.

Referenced by pop_buffer(), and push_buffer().

◆ pp_incl_state

include_state_t pp_incl_state
Initial value:
=
{
-1,
NULL,
0,
0
}
smooth NULL
Definition: ftsmooth.c:416

Definition at line 1539 of file ppl.yy.c.

Referenced by pop_buffer(), pp_do_include(), push_buffer(), while(), and yyparse().

◆ pp_includelogiclist

includelogicentry_t* pp_includelogiclist = NULL

Definition at line 1547 of file ppl.yy.c.

Referenced by free_pp_entry(), pop_buffer(), and pp_do_include().

◆ str_startline

int str_startline
static

Definition at line 1528 of file ppl.yy.c.

Referenced by new_string(), and string_start().

◆ strbuf_alloc

int strbuf_alloc = 0
static

Definition at line 1526 of file ppl.yy.c.

Referenced by add_string().

◆ strbuf_idx

int strbuf_idx = 0
static

Definition at line 1525 of file ppl.yy.c.

Referenced by add_string(), get_string(), new_string(), and put_string().

◆ strbuffer

char* strbuffer = NULL
static

Definition at line 1527 of file ppl.yy.c.

Referenced by add_string(), get_string(), and put_string().

◆ yy_accept

const flex_int16_t yy_accept[421]
static

Definition at line 623 of file ppl.yy.c.

◆ yy_act

int yy_act

Definition at line 1825 of file ppl.yy.c.

Referenced by while().

◆ yy_base

const flex_int16_t yy_base[467]
static

Definition at line 714 of file ppl.yy.c.

◆ yy_bp

char * yy_bp

Definition at line 1824 of file ppl.yy.c.

Referenced by while().

◆ yy_buffer_stack

YY_BUFFER_STATE* yy_buffer_stack = NULL
static

Stack as an array.

Definition at line 511 of file ppl.yy.c.

◆ yy_buffer_stack_max

size_t yy_buffer_stack_max = 0
static

capacity of stack.

Definition at line 510 of file ppl.yy.c.

◆ yy_buffer_stack_top

size_t yy_buffer_stack_top = 0
static

index of top of stack.

Definition at line 509 of file ppl.yy.c.

◆ yy_c_buf_p

char* yy_c_buf_p = NULL
static

Definition at line 533 of file ppl.yy.c.

◆ yy_chk

const flex_int16_t yy_chk[1970]
static

Definition at line 1044 of file ppl.yy.c.

◆ yy_cp

char* yy_cp

Definition at line 1824 of file ppl.yy.c.

Referenced by while(), yy_get_previous_state(), and yy_try_NUL_trans().

◆ YY_DECL

YY_DECL
Initial value:
{
int yy_state_type
Definition: macro.lex.yy.c:340
#define yy_current_state()
Definition: ppl.yy.c:1440

The main scanner function which does all the work.

Definition at line 1822 of file ppl.yy.c.

◆ yy_def

const flex_int16_t yy_def[467]
static

Definition at line 769 of file ppl.yy.c.

◆ yy_did_buffer_switch_on_eof

int yy_did_buffer_switch_on_eof
static

Definition at line 540 of file ppl.yy.c.

◆ yy_ec

const YY_CHAR yy_ec[256]
static

Definition at line 673 of file ppl.yy.c.

◆ yy_flex_debug

int yy_flex_debug = 0

Definition at line 1268 of file ppl.yy.c.

◆ yy_hold_char

char yy_hold_char
static

Definition at line 528 of file ppl.yy.c.

◆ yy_init

int yy_init = 0
static

Definition at line 534 of file ppl.yy.c.

Referenced by if().

◆ yy_last_accepting_cpos

char* yy_last_accepting_cpos
static

Definition at line 1265 of file ppl.yy.c.

◆ yy_last_accepting_state

yy_state_type yy_last_accepting_state
static

Definition at line 1264 of file ppl.yy.c.

◆ yy_meta

const YY_CHAR yy_meta[50]
static
Initial value:
=
{ 0,
1, 2, 3, 2, 1, 4, 5, 1, 6, 7,
8, 9, 8, 10, 11, 12, 12, 12, 1, 1,
13, 14, 15, 15, 15, 15, 16, 17, 14, 14,
14, 14, 14, 14, 15, 15, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15, 1
}

Definition at line 705 of file ppl.yy.c.

◆ yy_n_chars

int yy_n_chars
static

Definition at line 529 of file ppl.yy.c.

◆ yy_nxt

const flex_int16_t yy_nxt[1970]
static

Definition at line 824 of file ppl.yy.c.

◆ yy_start

int yy_start = 0
static

Definition at line 535 of file ppl.yy.c.

Referenced by if().

◆ yy_start_stack

int* yy_start_stack = NULL
static

Definition at line 1708 of file ppl.yy.c.

◆ yy_start_stack_depth

int yy_start_stack_depth = 0
static

Definition at line 1707 of file ppl.yy.c.

◆ yy_start_stack_ptr

int yy_start_stack_ptr = 0
static

Definition at line 1706 of file ppl.yy.c.

◆ yyin

FILE* yyin = NULL

Definition at line 587 of file ppl.yy.c.

◆ yyleng

int yyleng

Definition at line 530 of file ppl.yy.c.

◆ yylineno

int yylineno = 1

Definition at line 592 of file ppl.yy.c.

◆ yyout

FILE * yyout = NULL

Definition at line 587 of file ppl.yy.c.

◆ yytext

char* yytext

Definition at line 1277 of file ppl.yy.c.