Classes | Macros | Typedefs | Enumerations | Functions | Variables
ce_parse.c File Reference
#include "cppvalue.h"
#include "constexp.h"
#include "message.h"
#include <stdio.h>
#include <stdlib.h>

Go to the source code of this file.

Classes

union  yyalloc
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "2.4.1"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   0
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define YYLSP_NEEDED   0
 
#define yyparse   ce_parsexpYYparse
 
#define yylex   ce_parsexpYYlex
 
#define yyerror   ce_parsexpYYerror
 
#define yylval   ce_parsexpYYlval
 
#define yychar   ce_parsexpYYchar
 
#define yydebug   ce_parsexpYYdebug
 
#define yynerrs   ce_parsexpYYnerrs
 
#define YYSTYPE   CPPValue
 
#define YYDEBUG   0
 
#define YYERROR_VERBOSE   0
 
#define YYTOKEN_TABLE   0
 
#define YYTOKENTYPE
 
#define YYSIZE_T   unsigned int
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_(msgid)   msgid
 
#define YYUSE(e)   ((void) (e))
 
#define YYID(n)   (n)
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY(To, From, Count)
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYFINAL   31
 
#define YYLAST   63
 
#define YYNTOKENS   32
 
#define YYNNTS   16
 
#define YYNRULES   44
 
#define YYNSTATES   73
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   286
 
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -29
 
#define YYTABLE_NINF   -1
 
#define yyerrok   (yyerrstatus = 0)
 
#define yyclearin   (yychar = YYEMPTY)
 
#define YYEMPTY   (-2)
 
#define YYEOF   0
 
#define YYACCEPT   goto yyacceptlab
 
#define YYABORT   goto yyabortlab
 
#define YYERROR   goto yyerrorlab
 
#define YYFAIL   goto yyerrlab
 
#define YYRECOVERING()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
 
#define YYLLOC_DEFAULT(Current, Rhs, N)
 
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
 
#define YYLEX   yylex ()
 
#define YYDPRINTF(Args)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYINITDEPTH   200
 
#define YYMAXDEPTH   10000
 
#define YYPOPSTACK(N)    (yyvsp -= (N), yyssp -= (N))
 

Typedefs

typedef unsigned char yytype_uint8
 
typedef short int yytype_int8
 
typedef unsigned short int yytype_uint16
 
typedef short int yytype_int16
 

Enumerations

enum  yytokentype {
  TOK_QUESTIONMARK = 258, TOK_COLON = 259, TOK_OR = 260, TOK_AND = 261,
  TOK_BITWISEOR = 262, TOK_BITWISEXOR = 263, TOK_AMPERSAND = 264, TOK_NOTEQUAL = 265,
  TOK_EQUAL = 266, TOK_LESSTHAN = 267, TOK_GREATERTHAN = 268, TOK_LESSTHANOREQUALTO = 269,
  TOK_GREATERTHANOREQUALTO = 270, TOK_SHIFTLEFT = 271, TOK_SHIFTRIGHT = 272, TOK_PLUS = 273,
  TOK_MINUS = 274, TOK_STAR = 275, TOK_DIVIDE = 276, TOK_MOD = 277,
  TOK_TILDE = 278, TOK_NOT = 279, TOK_LPAREN = 280, TOK_RPAREN = 281,
  TOK_OCTALINT = 282, TOK_DECIMALINT = 283, TOK_HEXADECIMALINT = 284, TOK_CHARACTER = 285,
  TOK_FLOAT = 286, TOK_QUESTIONMARK = 258, TOK_COLON = 259, TOK_OR = 260,
  TOK_AND = 261, TOK_BITWISEOR = 262, TOK_BITWISEXOR = 263, TOK_AMPERSAND = 264,
  TOK_NOTEQUAL = 265, TOK_EQUAL = 266, TOK_LESSTHAN = 267, TOK_GREATERTHAN = 268,
  TOK_LESSTHANOREQUALTO = 269, TOK_GREATERTHANOREQUALTO = 270, TOK_SHIFTLEFT = 271, TOK_SHIFTRIGHT = 272,
  TOK_PLUS = 273, TOK_MINUS = 274, TOK_STAR = 275, TOK_DIVIDE = 276,
  TOK_MOD = 277, TOK_TILDE = 278, TOK_NOT = 279, TOK_LPAREN = 280,
  TOK_RPAREN = 281, TOK_OCTALINT = 282, TOK_DECIMALINT = 283, TOK_HEXADECIMALINT = 284,
  TOK_CHARACTER = 285, TOK_FLOAT = 286, TOK_QUESTIONMARK = 258, TOK_COLON = 259,
  TOK_OR = 260, TOK_AND = 261, TOK_BITWISEOR = 262, TOK_BITWISEXOR = 263,
  TOK_AMPERSAND = 264, TOK_NOTEQUAL = 265, TOK_EQUAL = 266, TOK_LESSTHAN = 267,
  TOK_GREATERTHAN = 268, TOK_LESSTHANOREQUALTO = 269, TOK_GREATERTHANOREQUALTO = 270, TOK_SHIFTLEFT = 271,
  TOK_SHIFTRIGHT = 272, TOK_PLUS = 273, TOK_MINUS = 274, TOK_STAR = 275,
  TOK_DIVIDE = 276, TOK_MOD = 277, TOK_TILDE = 278, TOK_NOT = 279,
  TOK_LPAREN = 280, TOK_RPAREN = 281, TOK_OCTALINT = 282, TOK_DECIMALINT = 283,
  TOK_HEXADECIMALINT = 284, TOK_CHARACTER = 285, TOK_FLOAT = 286, TOK_QUESTIONMARK = 258,
  TOK_COLON = 259, TOK_OR = 260, TOK_AND = 261, TOK_BITWISEOR = 262,
  TOK_BITWISEXOR = 263, TOK_AMPERSAND = 264, TOK_NOTEQUAL = 265, TOK_EQUAL = 266,
  TOK_LESSTHAN = 267, TOK_GREATERTHAN = 268, TOK_LESSTHANOREQUALTO = 269, TOK_GREATERTHANOREQUALTO = 270,
  TOK_SHIFTLEFT = 271, TOK_SHIFTRIGHT = 272, TOK_PLUS = 273, TOK_MINUS = 274,
  TOK_STAR = 275, TOK_DIVIDE = 276, TOK_MOD = 277, TOK_TILDE = 278,
  TOK_NOT = 279, TOK_LPAREN = 280, TOK_RPAREN = 281, TOK_OCTALINT = 282,
  TOK_DECIMALINT = 283, TOK_HEXADECIMALINT = 284, TOK_CHARACTER = 285, TOK_FLOAT = 286
}
 

Functions

int constexpYYerror (const char *s)
 
int constexpYYlex ()
 
static void yydestruct (char *yymsg, int yytype, YYSTYPE *yyvaluep) const
 
int yyparse ()
 

Variables

static const yytype_uint8 yytranslate []
 
static const yytype_uint8 yyr1 []
 
static const yytype_uint8 yyr2 []
 
static const yytype_uint8 yydefact []
 
static const yytype_int8 yydefgoto []
 
static const yytype_int8 yypact []
 
static const yytype_int8 yypgoto []
 
static const yytype_uint8 yytable []
 
static const yytype_int8 yycheck []
 
static const yytype_uint8 yystos []
 
int yychar
 
YYSTYPE yylval
 
int yynerrs
 

Macro Definition Documentation

#define YY_ (   msgid)    msgid

Definition at line 231 of file ce_parse.c.

#define YY_LOCATION_PRINT (   File,
  Loc 
)    ((void) 0)

Definition at line 698 of file ce_parse.c.

#define YY_REDUCE_PRINT (   Rule)

Definition at line 871 of file ce_parse.c.

#define YY_STACK_PRINT (   Bottom,
  Top 
)

Definition at line 870 of file ce_parse.c.

#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)

Definition at line 869 of file ce_parse.c.

#define YYABORT   goto yyabortlab

Definition at line 627 of file ce_parse.c.

#define YYACCEPT   goto yyacceptlab

Definition at line 626 of file ce_parse.c.

#define YYBACKUP (   Token,
  Value 
)
Value:
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
YYPOPSTACK (1); \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (YYID (0))
while(1)
Definition: code.cpp:12603
#define YYTRANSLATE(YYX)
Definition: ce_parse.c:404
#define YY_(msgid)
Definition: ce_parse.c:231
#define YYID(n)
Definition: ce_parse.c:244
#define YYEMPTY
Definition: ce_parse.c:623
#define yychar
Definition: ce_parse.c:71
if(!yymsg) yymsg

Definition at line 639 of file ce_parse.c.

#define YYBISON   1

Definition at line 46 of file ce_parse.c.

#define YYBISON_VERSION   "2.4.1"

Definition at line 49 of file ce_parse.c.

#define yychar   ce_parsexpYYchar

Definition at line 71 of file ce_parse.c.

#define yyclearin   (yychar = YYEMPTY)

Definition at line 622 of file ce_parse.c.

#define YYCOPY (   To,
  From,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
while (YYID (0))
AdcSimulator::Count Count
#define YYID(n)
Definition: ce_parse.c:244
for(std::string line;std::getline(inFile, line);)
Definition: regex_t.cc:37

Definition at line 357 of file ce_parse.c.

#define yydebug   ce_parsexpYYdebug

Definition at line 72 of file ce_parse.c.

#define YYDEBUG   0

Definition at line 107 of file ce_parse.c.

#define YYDPRINTF (   Args)

Definition at line 868 of file ce_parse.c.

#define YYEMPTY   (-2)

Definition at line 623 of file ce_parse.c.

#define YYEOF   0

Definition at line 624 of file ce_parse.c.

#define YYERRCODE   256

Definition at line 658 of file ce_parse.c.

#define yyerrok   (yyerrstatus = 0)

Definition at line 621 of file ce_parse.c.

#define yyerror   ce_parsexpYYerror

Definition at line 69 of file ce_parse.c.

#define YYERROR   goto yyerrorlab

Definition at line 628 of file ce_parse.c.

#define YYERROR_VERBOSE   0

Definition at line 115 of file ce_parse.c.

#define YYFAIL   goto yyerrlab

Definition at line 635 of file ce_parse.c.

#define YYFINAL   31

Definition at line 387 of file ce_parse.c.

#define YYFREE   free

Definition at line 320 of file ce_parse.c.

#define YYID (   n)    (n)

Definition at line 244 of file ce_parse.c.

#define YYINITDEPTH   200

Definition at line 877 of file ce_parse.c.

#define YYLAST   63

Definition at line 389 of file ce_parse.c.

#define yylex   ce_parsexpYYlex

Definition at line 68 of file ce_parse.c.

#define YYLEX   yylex ()

Definition at line 708 of file ce_parse.c.

#define YYLLOC_DEFAULT (   Current,
  Rhs,
 
)
Value:
if (YYID (N)) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (YYID (0))
#define YYRHSLOC(Rhs, K)
Definition: ce_parse.c:665
#define YYID(n)
Definition: ce_parse.c:244
if(!yymsg) yymsg

Definition at line 667 of file ce_parse.c.

#define YYLSP_NEEDED   0

Definition at line 64 of file ce_parse.c.

#define yylval   ce_parsexpYYlval

Definition at line 70 of file ce_parse.c.

#define YYMALLOC   malloc

Definition at line 313 of file ce_parse.c.

#define YYMAXDEPTH   10000

Definition at line 888 of file ce_parse.c.

#define YYMAXUTOK   286

Definition at line 402 of file ce_parse.c.

#define yynerrs   ce_parsexpYYnerrs

Definition at line 73 of file ce_parse.c.

#define YYNNTS   16

Definition at line 394 of file ce_parse.c.

#define YYNRULES   44

Definition at line 396 of file ce_parse.c.

#define YYNSTATES   73

Definition at line 398 of file ce_parse.c.

#define YYNTOKENS   32

Definition at line 392 of file ce_parse.c.

#define YYPACT_NINF   -29

Definition at line 560 of file ce_parse.c.

int yyparse   ce_parsexpYYparse

Definition at line 67 of file ce_parse.c.

#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N))
#define YYPULL   1

Definition at line 61 of file ce_parse.c.

#define YYPURE   0

Definition at line 55 of file ce_parse.c.

#define YYPUSH   0

Definition at line 58 of file ce_parse.c.

#define YYRECOVERING ( )    (!!yyerrstatus)

Definition at line 637 of file ce_parse.c.

#define YYRHSLOC (   Rhs,
 
)    ((Rhs)[K])

Definition at line 665 of file ce_parse.c.

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 221 of file ce_parse.c.

#define YYSIZE_T   unsigned int

Definition at line 217 of file ce_parse.c.

#define YYSKELETON_NAME   "yacc.c"

Definition at line 52 of file ce_parse.c.

#define YYSTACK_ALLOC   YYMALLOC

Definition at line 299 of file ce_parse.c.

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 302 of file ce_parse.c.

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
short int yytype_int16
Definition: ce_parse.c:204
#define YYSTACK_GAP_MAXIMUM
Definition: ce_parse.c:342
#define YYSTYPE
Definition: ce_parse.c:88

Definition at line 346 of file ce_parse.c.

#define YYSTACK_FREE   YYFREE

Definition at line 300 of file ce_parse.c.

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

Definition at line 342 of file ce_parse.c.

#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (YYID (0))
#define YYCOPY(To, From, Count)
Definition: ce_parse.c:357
#define YYSIZE_T
Definition: ce_parse.c:217
#define YYSTACK_GAP_MAXIMUM
Definition: ce_parse.c:342
#define YYID(n)
Definition: ce_parse.c:244

Definition at line 373 of file ce_parse.c.

#define YYSTYPE   CPPValue

Definition at line 88 of file ce_parse.c.

#define YYTABLE_NINF   -1

Definition at line 584 of file ce_parse.c.

#define YYTERROR   1

Definition at line 657 of file ce_parse.c.

#define YYTOKEN_TABLE   0

Definition at line 120 of file ce_parse.c.

#define YYTOKENTYPE

Definition at line 126 of file ce_parse.c.

#define YYTRANSLATE (   YYX)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

Definition at line 404 of file ce_parse.c.

#define YYUNDEFTOK   2

Definition at line 401 of file ce_parse.c.

#define YYUSE (   e)    ((void) (e))

Definition at line 237 of file ce_parse.c.

Typedef Documentation

typedef short int yytype_int16

Definition at line 204 of file ce_parse.c.

typedef short int yytype_int8

Definition at line 192 of file ce_parse.c.

typedef unsigned short int yytype_uint16

Definition at line 198 of file ce_parse.c.

typedef unsigned char yytype_uint8

Definition at line 183 of file ce_parse.c.

Enumeration Type Documentation

Enumerator
TOK_QUESTIONMARK 
TOK_COLON 
TOK_OR 
TOK_AND 
TOK_BITWISEOR 
TOK_BITWISEXOR 
TOK_AMPERSAND 
TOK_NOTEQUAL 
TOK_EQUAL 
TOK_LESSTHAN 
TOK_GREATERTHAN 
TOK_LESSTHANOREQUALTO 
TOK_GREATERTHANOREQUALTO 
TOK_SHIFTLEFT 
TOK_SHIFTRIGHT 
TOK_PLUS 
TOK_MINUS 
TOK_STAR 
TOK_DIVIDE 
TOK_MOD 
TOK_TILDE 
TOK_NOT 
TOK_LPAREN 
TOK_RPAREN 
TOK_OCTALINT 
TOK_DECIMALINT 
TOK_HEXADECIMALINT 
TOK_CHARACTER 
TOK_FLOAT 
TOK_QUESTIONMARK 
TOK_COLON 
TOK_OR 
TOK_AND 
TOK_BITWISEOR 
TOK_BITWISEXOR 
TOK_AMPERSAND 
TOK_NOTEQUAL 
TOK_EQUAL 
TOK_LESSTHAN 
TOK_GREATERTHAN 
TOK_LESSTHANOREQUALTO 
TOK_GREATERTHANOREQUALTO 
TOK_SHIFTLEFT 
TOK_SHIFTRIGHT 
TOK_PLUS 
TOK_MINUS 
TOK_STAR 
TOK_DIVIDE 
TOK_MOD 
TOK_TILDE 
TOK_NOT 
TOK_LPAREN 
TOK_RPAREN 
TOK_OCTALINT 
TOK_DECIMALINT 
TOK_HEXADECIMALINT 
TOK_CHARACTER 
TOK_FLOAT 
TOK_QUESTIONMARK 
TOK_COLON 
TOK_OR 
TOK_AND 
TOK_BITWISEOR 
TOK_BITWISEXOR 
TOK_AMPERSAND 
TOK_NOTEQUAL 
TOK_EQUAL 
TOK_LESSTHAN 
TOK_GREATERTHAN 
TOK_LESSTHANOREQUALTO 
TOK_GREATERTHANOREQUALTO 
TOK_SHIFTLEFT 
TOK_SHIFTRIGHT 
TOK_PLUS 
TOK_MINUS 
TOK_STAR 
TOK_DIVIDE 
TOK_MOD 
TOK_TILDE 
TOK_NOT 
TOK_LPAREN 
TOK_RPAREN 
TOK_OCTALINT 
TOK_DECIMALINT 
TOK_HEXADECIMALINT 
TOK_CHARACTER 
TOK_FLOAT 
TOK_QUESTIONMARK 
TOK_COLON 
TOK_OR 
TOK_AND 
TOK_BITWISEOR 
TOK_BITWISEXOR 
TOK_AMPERSAND 
TOK_NOTEQUAL 
TOK_EQUAL 
TOK_LESSTHAN 
TOK_GREATERTHAN 
TOK_LESSTHANOREQUALTO 
TOK_GREATERTHANOREQUALTO 
TOK_SHIFTLEFT 
TOK_SHIFTRIGHT 
TOK_PLUS 
TOK_MINUS 
TOK_STAR 
TOK_DIVIDE 
TOK_MOD 
TOK_TILDE 
TOK_NOT 
TOK_LPAREN 
TOK_RPAREN 
TOK_OCTALINT 
TOK_DECIMALINT 
TOK_HEXADECIMALINT 
TOK_CHARACTER 
TOK_FLOAT 

Definition at line 129 of file ce_parse.c.

129  {
130  TOK_QUESTIONMARK = 258,
131  TOK_COLON = 259,
132  TOK_OR = 260,
133  TOK_AND = 261,
134  TOK_BITWISEOR = 262,
135  TOK_BITWISEXOR = 263,
136  TOK_AMPERSAND = 264,
137  TOK_NOTEQUAL = 265,
138  TOK_EQUAL = 266,
139  TOK_LESSTHAN = 267,
140  TOK_GREATERTHAN = 268,
141  TOK_LESSTHANOREQUALTO = 269,
143  TOK_SHIFTLEFT = 271,
144  TOK_SHIFTRIGHT = 272,
145  TOK_PLUS = 273,
146  TOK_MINUS = 274,
147  TOK_STAR = 275,
148  TOK_DIVIDE = 276,
149  TOK_MOD = 277,
150  TOK_TILDE = 278,
151  TOK_NOT = 279,
152  TOK_LPAREN = 280,
153  TOK_RPAREN = 281,
154  TOK_OCTALINT = 282,
155  TOK_DECIMALINT = 283,
156  TOK_HEXADECIMALINT = 284,
157  TOK_CHARACTER = 285,
158  TOK_FLOAT = 286
159  };

Function Documentation

int constexpYYerror ( const char *  s)

Definition at line 93 of file ce_parse.c.

94 {
96  "preprocessing issue while doing constant expression evaluation: %s",s);
97  return 0;
98 }
int g_constExpLineNr
Definition: constexp.cpp:563
void warn(const char *file, int line, const char *fmt,...)
Definition: message.cpp:183
static QCString * s
Definition: config.cpp:1042
QCString g_constExpFileName
Definition: constexp.cpp:564
int constexpYYlex ( )
static void yydestruct ( char *  yymsg,
int  yytype,
YYSTYPE yyvaluep 
) const
static

Definition at line 1115 of file ce_parse.c.

1120 {
1121  YYUSE (yyvaluep);
1122 
1123  if (!yymsg)
1124  yymsg = "Deleting";
1125  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
1126 
1127  switch (yytype)
1128  {
1129 
1130  default:
1131  break;
1132  }
1133 }
#define YYUSE(e)
Definition: ce_parse.c:237
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
Definition: ce_parse.c:869
int yytype
Definition: ce_parse.cpp:1117
YYSTYPE * yyvaluep
Definition: ce_parse.cpp:1118
int yyparse ( )

Definition at line 1183 of file ce_parse.c.

1187 {
1188 
1189 
1190  int yystate;
1191  /* Number of tokens to shift before error messages enabled. */
1192  int yyerrstatus;
1193 
1194  /* The stacks and their tools:
1195  `yyss': related to states.
1196  `yyvs': related to semantic values.
1197 
1198  Refer to the stacks thru separate pointers, to allow yyoverflow
1199  to reallocate them elsewhere. */
1200 
1201  /* The state stack. */
1202  yytype_int16 yyssa[YYINITDEPTH];
1203  yytype_int16 *yyss;
1204  yytype_int16 *yyssp;
1205 
1206  /* The semantic value stack. */
1207  YYSTYPE yyvsa[YYINITDEPTH];
1208  YYSTYPE *yyvs;
1209  YYSTYPE *yyvsp;
1210 
1211  YYSIZE_T yystacksize;
1212 
1213  int yyn;
1214  int yyresult;
1215  /* Lookahead token as an internal (translated) token number. */
1216  int yytoken;
1217  /* The variables used to return semantic value and location from the
1218  action routines. */
1219  YYSTYPE yyval;
1220 
1221 #if YYERROR_VERBOSE
1222  /* Buffer for error messages, and its allocated size. */
1223  char yymsgbuf[128];
1224  char *yymsg = yymsgbuf;
1225  YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1226 #endif
1227 
1228 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1229 
1230  /* The number of symbols on the RHS of the reduced rule.
1231  Keep to zero when no symbol should be popped. */
1232  int yylen = 0;
1233 
1234  yytoken = 0;
1235  yyss = yyssa;
1236  yyvs = yyvsa;
1237  yystacksize = YYINITDEPTH;
1238 
1239  YYDPRINTF ((stderr, "Starting parse\n"));
1240 
1241  yystate = 0;
1242  yyerrstatus = 0;
1243  yynerrs = 0;
1244  yychar = YYEMPTY; /* Cause a token to be read. */
1245 
1246  /* Initialize stack pointers.
1247  Waste one element of value and location stack
1248  so that they stay on the same level as the state stack.
1249  The wasted elements are never initialized. */
1250  yyssp = yyss;
1251  yyvsp = yyvs;
1252 
1253  goto yysetstate;
1254 
1255 /*------------------------------------------------------------.
1256 | yynewstate -- Push a new state, which is found in yystate. |
1257 `------------------------------------------------------------*/
1258  yynewstate:
1259  /* In all cases, when you get here, the value and location stacks
1260  have just been pushed. So pushing a state here evens the stacks. */
1261  yyssp++;
1262 
1263  yysetstate:
1264  *yyssp = yystate;
1265 
1266  if (yyss + yystacksize - 1 <= yyssp)
1267  {
1268  /* Get the current used size of the three stacks, in elements. */
1269  YYSIZE_T yysize = yyssp - yyss + 1;
1270 
1271 #ifdef yyoverflow
1272  {
1273  /* Give user a chance to reallocate the stack. Use copies of
1274  these so that the &'s don't force the real ones into
1275  memory. */
1276  YYSTYPE *yyvs1 = yyvs;
1277  yytype_int16 *yyss1 = yyss;
1278 
1279  /* Each stack pointer address is followed by the size of the
1280  data in use in that stack, in bytes. This used to be a
1281  conditional around just the two extra args, but that might
1282  be undefined if yyoverflow is a macro. */
1283  yyoverflow (YY_("memory exhausted"),
1284  &yyss1, yysize * sizeof (*yyssp),
1285  &yyvs1, yysize * sizeof (*yyvsp),
1286  &yystacksize);
1287 
1288  yyss = yyss1;
1289  yyvs = yyvs1;
1290  }
1291 #else /* no yyoverflow */
1292 # ifndef YYSTACK_RELOCATE
1293  goto yyexhaustedlab;
1294 # else
1295  /* Extend the stack our own way. */
1296  if (YYMAXDEPTH <= yystacksize)
1297  goto yyexhaustedlab;
1298  yystacksize *= 2;
1299  if (YYMAXDEPTH < yystacksize)
1300  yystacksize = YYMAXDEPTH;
1301 
1302  {
1303  yytype_int16 *yyss1 = yyss;
1304  union yyalloc *yyptr =
1305  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1306  if (! yyptr)
1307  goto yyexhaustedlab;
1308  YYSTACK_RELOCATE (yyss_alloc, yyss);
1309  YYSTACK_RELOCATE (yyvs_alloc, yyvs);
1310 # undef YYSTACK_RELOCATE
1311  if (yyss1 != yyssa)
1312  YYSTACK_FREE (yyss1);
1313  }
1314 # endif
1315 #endif /* no yyoverflow */
1316 
1317  yyssp = yyss + yysize - 1;
1318  yyvsp = yyvs + yysize - 1;
1319 
1320  YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1321  (unsigned long int) yystacksize));
1322 
1323  if (yyss + yystacksize - 1 <= yyssp)
1324  YYABORT;
1325  }
1326 
1327  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1328 
1329  if (yystate == YYFINAL)
1330  YYACCEPT;
1331 
1332  goto yybackup;
1333 
1334 /*-----------.
1335 | yybackup. |
1336 `-----------*/
1337 yybackup:
1338 
1339  /* Do appropriate processing given the current state. Read a
1340  lookahead token if we need one and don't already have one. */
1341 
1342  /* First try to decide what to do without reference to lookahead token. */
1343  yyn = yypact[yystate];
1344  if (yyn == YYPACT_NINF)
1345  goto yydefault;
1346 
1347  /* Not known => get a lookahead token if don't already have one. */
1348 
1349  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
1350  if (yychar == YYEMPTY)
1351  {
1352  YYDPRINTF ((stderr, "Reading a token: "));
1353  yychar = YYLEX;
1354  }
1355 
1356  if (yychar <= YYEOF)
1357  {
1358  yychar = yytoken = YYEOF;
1359  YYDPRINTF ((stderr, "Now at end of input.\n"));
1360  }
1361  else
1362  {
1363  yytoken = YYTRANSLATE (yychar);
1364  YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
1365  }
1366 
1367  /* If the proper action on seeing token YYTOKEN is to reduce or to
1368  detect an error, take that action. */
1369  yyn += yytoken;
1370  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
1371  goto yydefault;
1372  yyn = yytable[yyn];
1373  if (yyn <= 0)
1374  {
1375  if (yyn == 0 || yyn == YYTABLE_NINF)
1376  goto yyerrlab;
1377  yyn = -yyn;
1378  goto yyreduce;
1379  }
1380 
1381  /* Count tokens shifted since error; after three, turn off error
1382  status. */
1383  if (yyerrstatus)
1384  yyerrstatus--;
1385 
1386  /* Shift the lookahead token. */
1387  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1388 
1389  /* Discard the shifted token. */
1390  yychar = YYEMPTY;
1391 
1392  yystate = yyn;
1393  *++yyvsp = yylval;
1394 
1395  goto yynewstate;
1396 
1397 
1398 /*-----------------------------------------------------------.
1399 | yydefault -- do the default action for the current state. |
1400 `-----------------------------------------------------------*/
1401 yydefault:
1402  yyn = yydefact[yystate];
1403  if (yyn == 0)
1404  goto yyerrlab;
1405  goto yyreduce;
1406 
1407 
1408 /*-----------------------------.
1409 | yyreduce -- Do a reduction. |
1410 `-----------------------------*/
1411 yyreduce:
1412  /* yyn is the number of a rule to reduce with. */
1413  yylen = yyr2[yyn];
1414 
1415  /* If YYLEN is nonzero, implement the default value of the action:
1416  `$$ = $1'.
1417 
1418  Otherwise, the following line sets YYVAL to garbage.
1419  This behavior is undocumented and Bison
1420  users should not rely upon it. Assigning to YYVAL
1421  unconditionally makes the parser a bit smaller, and it avoids a
1422  GCC warning that YYVAL may be used uninitialized. */
1423  yyval = yyvsp[1-yylen];
1424 
1425 
1426  YY_REDUCE_PRINT (yyn);
1427  switch (yyn)
1428  {
1429  case 2:
1430 
1431  { g_resultValue = (yyvsp[(1) - (1)]); return 0; ;}
1432  break;
1433 
1434  case 3:
1435 
1436  { (yyval) = (yyvsp[(1) - (1)]); ;}
1437  break;
1438 
1439  case 4:
1440 
1441  {
1442  bool c = ((yyvsp[(1) - (5)]).isInt() ? ((long)(yyvsp[(1) - (5)]) != 0) : ((double)(yyvsp[(1) - (5)]) != 0.0));
1443  (yyval) = c ? (yyvsp[(3) - (5)]) : (yyvsp[(5) - (5)]);
1444  ;}
1445  break;
1446 
1447  case 5:
1448 
1449  { (yyval) = (yyvsp[(1) - (1)]); ;}
1450  break;
1451 
1452  case 6:
1453 
1454  {
1455  (yyval) = CPPValue( (long)((long)(yyvsp[(1) - (3)]) || (long)(yyvsp[(3) - (3)])) );
1456  ;}
1457  break;
1458 
1459  case 7:
1460 
1461  { (yyval) = (yyvsp[(1) - (1)]); ;}
1462  break;
1463 
1464  case 8:
1465 
1466  {
1467  (yyval) = CPPValue( (long)((long)(yyvsp[(1) - (3)]) && (long)(yyvsp[(3) - (3)])) );
1468  ;}
1469  break;
1470 
1471  case 9:
1472 
1473  { (yyval) = (yyvsp[(1) - (1)]); ;}
1474  break;
1475 
1476  case 10:
1477 
1478  {
1479  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) | (long)(yyvsp[(3) - (3)]) );
1480  ;}
1481  break;
1482 
1483  case 11:
1484 
1485  { (yyval) = (yyvsp[(1) - (1)]); ;}
1486  break;
1487 
1488  case 12:
1489 
1490  {
1491  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) ^ (long)(yyvsp[(3) - (3)]) );
1492  ;}
1493  break;
1494 
1495  case 13:
1496 
1497  { (yyval) = (yyvsp[(1) - (1)]); ;}
1498  break;
1499 
1500  case 14:
1501 
1502  {
1503  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) & (long)(yyvsp[(3) - (3)]) );
1504  ;}
1505  break;
1506 
1507  case 15:
1508 
1509  { (yyval) = (yyvsp[(1) - (1)]); ;}
1510  break;
1511 
1512  case 16:
1513 
1514  {
1515  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) == (double)(yyvsp[(3) - (3)])) );
1516  ;}
1517  break;
1518 
1519  case 17:
1520 
1521  {
1522  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) != (double)(yyvsp[(3) - (3)])) );
1523  ;}
1524  break;
1525 
1526  case 18:
1527 
1528  { (yyval) = (yyvsp[(1) - (1)]); ;}
1529  break;
1530 
1531  case 19:
1532 
1533  {
1534  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) < (double)(yyvsp[(3) - (3)])) );
1535  ;}
1536  break;
1537 
1538  case 20:
1539 
1540  {
1541  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) > (double)(yyvsp[(3) - (3)])) );
1542  ;}
1543  break;
1544 
1545  case 21:
1546 
1547  {
1548  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) <= (double)(yyvsp[(3) - (3)])) );
1549  ;}
1550  break;
1551 
1552  case 22:
1553 
1554  {
1555  (yyval) = CPPValue( (long)((double)(yyvsp[(1) - (3)]) >= (double)(yyvsp[(3) - (3)])) );
1556  ;}
1557  break;
1558 
1559  case 23:
1560 
1561  { (yyval) = (yyvsp[(1) - (1)]); ;}
1562  break;
1563 
1564  case 24:
1565 
1566  {
1567  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) << (long)(yyvsp[(3) - (3)]) );
1568  ;}
1569  break;
1570 
1571  case 25:
1572 
1573  {
1574  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) >> (long)(yyvsp[(3) - (3)]) );
1575  ;}
1576  break;
1577 
1578  case 26:
1579 
1580  { (yyval) = (yyvsp[(1) - (1)]); ;}
1581  break;
1582 
1583  case 27:
1584 
1585  {
1586  if (!(yyvsp[(1) - (3)]).isInt() || !(yyvsp[(3) - (3)]).isInt())
1587  {
1588  (yyval) = CPPValue( (double)(yyvsp[(1) - (3)]) + (double)(yyvsp[(3) - (3)]) );
1589  }
1590  else
1591  {
1592  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) + (long)(yyvsp[(3) - (3)]) );
1593  }
1594  ;}
1595  break;
1596 
1597  case 28:
1598 
1599  {
1600  if (!(yyvsp[(1) - (3)]).isInt() || !(yyvsp[(3) - (3)]).isInt())
1601  {
1602  (yyval) = CPPValue( (double)(yyvsp[(1) - (3)]) - (double)(yyvsp[(3) - (3)]) );
1603  }
1604  else
1605  {
1606  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) - (long)(yyvsp[(3) - (3)]) );
1607  }
1608  ;}
1609  break;
1610 
1611  case 29:
1612 
1613  { (yyval) = (yyvsp[(1) - (1)]); ;}
1614  break;
1615 
1616  case 30:
1617 
1618  {
1619  if (!(yyvsp[(1) - (3)]).isInt() || !(yyvsp[(3) - (3)]).isInt())
1620  {
1621  (yyval) = CPPValue( (double)(yyvsp[(1) - (3)]) * (double)(yyvsp[(3) - (3)]) );
1622  }
1623  else
1624  {
1625  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) * (long)(yyvsp[(3) - (3)]) );
1626  }
1627  ;}
1628  break;
1629 
1630  case 31:
1631 
1632  {
1633  if (!(yyvsp[(1) - (3)]).isInt() || !(yyvsp[(3) - (3)]).isInt())
1634  {
1635  (yyval) = CPPValue( (double)(yyvsp[(1) - (3)]) / (double)(yyvsp[(3) - (3)]) );
1636  }
1637  else
1638  {
1639  long value = (yyvsp[(3) - (3)]);
1640  if (value==0) value=1;
1641  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) / value );
1642  }
1643  ;}
1644  break;
1645 
1646  case 32:
1647 
1648  {
1649  long value = (yyvsp[(3) - (3)]);
1650  if (value==0) value=1;
1651  (yyval) = CPPValue( (long)(yyvsp[(1) - (3)]) % value );
1652  ;}
1653  break;
1654 
1655  case 33:
1656 
1657  { (yyval) = (yyvsp[(1) - (1)]); ;}
1658  break;
1659 
1660  case 34:
1661 
1662  { (yyval) = (yyvsp[(1) - (2)]); ;}
1663  break;
1664 
1665  case 35:
1666 
1667  {
1668  if ((yyvsp[(2) - (2)]).isInt())
1669  (yyval) = CPPValue(-(long)(yyvsp[(2) - (2)]));
1670  else
1671  (yyval) = CPPValue(-(double)(yyvsp[(2) - (2)]));
1672  ;}
1673  break;
1674 
1675  case 36:
1676 
1677  {
1678  (yyval) = CPPValue(~(long)(yyvsp[(2) - (2)]));
1679  ;}
1680  break;
1681 
1682  case 37:
1683 
1684  {
1685  (yyval) = CPPValue((long)!(long)(yyvsp[(2) - (2)]));
1686  ;}
1687  break;
1688 
1689  case 38:
1690 
1691  { (yyval) = (yyvsp[(1) - (1)]); ;}
1692  break;
1693 
1694  case 39:
1695 
1696  { (yyval) = (yyvsp[(2) - (3)]); ;}
1697  break;
1698 
1699  case 40:
1700 
1701  { (yyval) = parseOctal(); ;}
1702  break;
1703 
1704  case 41:
1705 
1706  { (yyval) = parseDecimal(); ;}
1707  break;
1708 
1709  case 42:
1710 
1711  { (yyval) = parseHexadecimal(); ;}
1712  break;
1713 
1714  case 43:
1715 
1716  { (yyval) = parseCharacter(); ;}
1717  break;
1718 
1719  case 44:
1720 
1721  { (yyval) = parseFloat(); ;}
1722  break;
1723 
1724 
1725 
1726  default: break;
1727  }
1728  YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
1729 
1730  YYPOPSTACK (yylen);
1731  yylen = 0;
1732  YY_STACK_PRINT (yyss, yyssp);
1733 
1734  *++yyvsp = yyval;
1735 
1736  /* Now `shift' the result of the reduction. Determine what state
1737  that goes to, based on the state we popped back to and the rule
1738  number reduced by. */
1739 
1740  yyn = yyr1[yyn];
1741 
1742  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
1743  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
1744  yystate = yytable[yystate];
1745  else
1746  yystate = yydefgoto[yyn - YYNTOKENS];
1747 
1748  goto yynewstate;
1749 
1750 
1751 /*------------------------------------.
1752 | yyerrlab -- here on detecting error |
1753 `------------------------------------*/
1754 yyerrlab:
1755  /* If not already recovering from an error, report this error. */
1756  if (!yyerrstatus)
1757  {
1758  ++yynerrs;
1759 #if ! YYERROR_VERBOSE
1760  yyerror (YY_("syntax error"));
1761 #else
1762  {
1763  YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
1764  if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
1765  {
1766  YYSIZE_T yyalloc = 2 * yysize;
1767  if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
1768  yyalloc = YYSTACK_ALLOC_MAXIMUM;
1769  if (yymsg != yymsgbuf)
1770  YYSTACK_FREE (yymsg);
1771  yymsg = (char *) YYSTACK_ALLOC (yyalloc);
1772  if (yymsg)
1773  yymsg_alloc = yyalloc;
1774  else
1775  {
1776  yymsg = yymsgbuf;
1777  yymsg_alloc = sizeof yymsgbuf;
1778  }
1779  }
1780 
1781  if (0 < yysize && yysize <= yymsg_alloc)
1782  {
1783  (void) yysyntax_error (yymsg, yystate, yychar);
1784  yyerror (yymsg);
1785  }
1786  else
1787  {
1788  yyerror (YY_("syntax error"));
1789  if (yysize != 0)
1790  goto yyexhaustedlab;
1791  }
1792  }
1793 #endif
1794  }
1795 
1796 
1797 
1798  if (yyerrstatus == 3)
1799  {
1800  /* If just tried and failed to reuse lookahead token after an
1801  error, discard it. */
1802 
1803  if (yychar <= YYEOF)
1804  {
1805  /* Return failure if at end of input. */
1806  if (yychar == YYEOF)
1807  YYABORT;
1808  }
1809  else
1810  {
1811  yydestruct ("Error: discarding",
1812  yytoken, &yylval);
1813  yychar = YYEMPTY;
1814  }
1815  }
1816 
1817  /* Else will try to reuse lookahead token after shifting the error
1818  token. */
1819  goto yyerrlab1;
1820 
1821 
1822 /*---------------------------------------------------.
1823 | yyerrorlab -- error raised explicitly by YYERROR. |
1824 `---------------------------------------------------*/
1825 yyerrorlab:
1826 
1827  /* Pacify compilers like GCC when the user code never invokes
1828  YYERROR and the label yyerrorlab therefore never appears in user
1829  code. */
1830  if (/*CONSTCOND*/ 0)
1831  goto yyerrorlab;
1832 
1833  /* Do not reclaim the symbols of the rule which action triggered
1834  this YYERROR. */
1835  YYPOPSTACK (yylen);
1836  yylen = 0;
1837  YY_STACK_PRINT (yyss, yyssp);
1838  yystate = *yyssp;
1839  goto yyerrlab1;
1840 
1841 
1842 /*-------------------------------------------------------------.
1843 | yyerrlab1 -- common code for both syntax error and YYERROR. |
1844 `-------------------------------------------------------------*/
1845 yyerrlab1:
1846  yyerrstatus = 3; /* Each real token shifted decrements this. */
1847 
1848  for (;;)
1849  {
1850  yyn = yypact[yystate];
1851  if (yyn != YYPACT_NINF)
1852  {
1853  yyn += YYTERROR;
1854  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
1855  {
1856  yyn = yytable[yyn];
1857  if (0 < yyn)
1858  break;
1859  }
1860  }
1861 
1862  /* Pop the current state because it cannot handle the error token. */
1863  if (yyssp == yyss)
1864  YYABORT;
1865 
1866 
1867  yydestruct ("Error: popping",
1868  yystos[yystate], yyvsp);
1869  YYPOPSTACK (1);
1870  yystate = *yyssp;
1871  YY_STACK_PRINT (yyss, yyssp);
1872  }
1873 
1874  *++yyvsp = yylval;
1875 
1876 
1877  /* Shift the error token. */
1878  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
1879 
1880  yystate = yyn;
1881  goto yynewstate;
1882 
1883 
1884 /*-------------------------------------.
1885 | yyacceptlab -- YYACCEPT comes here. |
1886 `-------------------------------------*/
1887 yyacceptlab:
1888  yyresult = 0;
1889  goto yyreturn;
1890 
1891 /*-----------------------------------.
1892 | yyabortlab -- YYABORT comes here. |
1893 `-----------------------------------*/
1894 yyabortlab:
1895  yyresult = 1;
1896  goto yyreturn;
1897 
1898 #if !defined(yyoverflow) || YYERROR_VERBOSE
1899 /*-------------------------------------------------.
1900 | yyexhaustedlab -- memory exhaustion comes here. |
1901 `-------------------------------------------------*/
1902 yyexhaustedlab:
1903  yyerror (YY_("memory exhausted"));
1904  yyresult = 2;
1905  /* Fall through. */
1906 #endif
1907 
1908 yyreturn:
1909  if (yychar != YYEMPTY)
1910  yydestruct ("Cleanup: discarding lookahead",
1911  yytoken, &yylval);
1912  /* Do not reclaim the symbols of the rule which action triggered
1913  this YYABORT or YYACCEPT. */
1914  YYPOPSTACK (yylen);
1915  YY_STACK_PRINT (yyss, yyssp);
1916  while (yyssp != yyss)
1917  {
1918  yydestruct ("Cleanup: popping",
1919  yystos[*yyssp], yyvsp);
1920  YYPOPSTACK (1);
1921  }
1922 #ifndef yyoverflow
1923  if (yyss != yyssa)
1924  YYSTACK_FREE (yyss);
1925 #endif
1926 #if YYERROR_VERBOSE
1927  if (yymsg != yymsgbuf)
1928  YYSTACK_FREE (yymsg);
1929 #endif
1930  /* Make sure YYID is used. */
1931  return YYID (yyresult);
1932 }
#define YYSTACK_ALLOC_MAXIMUM
Definition: ce_parse.c:302
#define YYLEX
Definition: ce_parse.c:708
CPPValue parseCharacter()
Definition: cppvalue.cpp:57
#define yyalloc
Definition: code.cpp:24
#define yynerrs
Definition: ce_parse.c:73
#define YYPOPSTACK(N)
#define YYPACT_NINF
Definition: ce_parse.c:560
#define YYABORT
Definition: ce_parse.c:627
#define YYTERROR
Definition: ce_parse.c:657
static const yytype_uint8 yytable[]
Definition: ce_parse.c:585
CPPValue parseFloat()
Definition: cppvalue.cpp:92
#define YYSTACK_BYTES(N)
Definition: ce_parse.c:346
static void yydestruct(char *yymsg, int yytype, YYSTYPE *yyvaluep) const
Definition: ce_parse.c:1115
#define YYEOF
Definition: ce_parse.c:624
#define YYSTACK_ALLOC
Definition: ce_parse.c:299
#define YYTRANSLATE(YYX)
Definition: ce_parse.c:404
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
Definition: ce_parse.c:869
#define YYINITDEPTH
Definition: ce_parse.c:877
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
Definition: ce_parse.c:373
CPPValue parseOctal()
Definition: cppvalue.cpp:24
short int yytype_int16
Definition: ce_parse.c:204
static const yytype_uint8 yydefact[]
Definition: ce_parse.c:539
#define YYMAXDEPTH
Definition: ce_parse.c:888
yytype_int16 yyss_alloc
Definition: ce_parse.c:337
#define yyerror
Definition: ce_parse.c:69
#define YYSIZE_T
Definition: ce_parse.c:217
int YYSTYPE
Definition: ce_parse.h:77
static const yytype_int8 yypact[]
Definition: ce_parse.c:561
#define YYNTOKENS
Definition: ce_parse.c:392
YYSTYPE yyvs_alloc
Definition: ce_parse.c:338
#define YY_STACK_PRINT(Bottom, Top)
Definition: ce_parse.c:870
#define YYACCEPT
Definition: ce_parse.c:626
#define YYDPRINTF(Args)
Definition: ce_parse.c:868
#define YYTABLE_NINF
Definition: ce_parse.c:584
#define YY_(msgid)
Definition: ce_parse.c:231
#define YYID(n)
Definition: ce_parse.c:244
static const yytype_int8 yydefgoto[]
Definition: ce_parse.c:552
#define YYEMPTY
Definition: ce_parse.c:623
#define YYLAST
Definition: ce_parse.c:389
CPPValue g_resultValue
Definition: constexp.cpp:562
#define YYSTACK_FREE
Definition: ce_parse.c:300
static const yytype_int8 yycheck[]
Definition: ce_parse.c:596
static const yytype_uint8 yyr2[]
Definition: ce_parse.c:527
static const yytype_uint8 yystos[]
Definition: ce_parse.c:609
#define yychar
Definition: ce_parse.c:71
CPPValue parseDecimal()
Definition: cppvalue.cpp:34
#define YY_REDUCE_PRINT(Rule)
Definition: ce_parse.c:871
static const yytype_int8 yypgoto[]
Definition: ce_parse.c:574
static const yytype_uint8 yyr1[]
Definition: ce_parse.c:517
#define YYFINAL
Definition: ce_parse.c:387
CPPValue parseHexadecimal()
Definition: cppvalue.cpp:44
#define yylval
Definition: ce_parse.c:70

Variable Documentation

int yychar

Definition at line 1152 of file ce_parse.c.

const yytype_int8 yycheck[]
static
Initial value:
=
{
1, 2, 3, 4, 32, 18, 19, 3, 7, 5,
23, 24, 25, 0, 27, 28, 29, 30, 31, 12,
13, 14, 15, 40, 41, 42, 43, 8, 20, 21,
22, 10, 11, 16, 17, 6, 18, 19, 4, 5,
38, 39, 9, 71, 44, 45, 26, 48, 49, 50,
5, 46, 47, 5, -1, 33, -1, 34, -1, 35,
-1, 36, -1, 37
}

Definition at line 596 of file ce_parse.c.

const yytype_uint8 yydefact[]
static
Initial value:
=
{
0, 0, 0, 0, 0, 0, 40, 41, 42, 43,
44, 0, 2, 3, 5, 7, 9, 11, 13, 15,
18, 23, 26, 29, 33, 38, 34, 35, 36, 37,
0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 39, 0, 6, 8, 10, 12, 14, 17, 16,
19, 20, 21, 22, 24, 25, 27, 28, 30, 31,
32, 0, 4
}

Definition at line 539 of file ce_parse.c.

const yytype_int8 yydefgoto[]
static
Initial value:
=
{
-1, 11, 12, 13, 14, 15, 16, 17, 18, 19,
20, 21, 22, 23, 24, 25
}

Definition at line 552 of file ce_parse.c.

YYSTYPE yylval

Definition at line 1155 of file ce_parse.c.

int yynerrs

Definition at line 1158 of file ce_parse.c.

const yytype_int8 yypact[]
static
Initial value:
=
{
-13, -13, -13, -13, -13, -13, -29, -29, -29, -29,
-29, 13, -29, 4, 29, 1, 19, 33, 21, 7,
17, 18, 8, -29, -29, -29, -29, -29, -29, -29,
20, -29, -13, -13, -13, -13, -13, -13, -13, -13,
-13, -13, -13, -13, -13, -13, -13, -13, -13, -13,
-13, -29, 34, 29, 1, 19, 33, 21, 7, 7,
17, 17, 17, 17, 18, 18, 8, 8, -29, -29,
-29, -13, 45
}

Definition at line 561 of file ce_parse.c.

const yytype_int8 yypgoto[]
static
Initial value:
=
{
-29, -29, 48, -28, 22, 23, 24, 25, 26, 2,
-17, 0, 5, -1, -29, -29
}

Definition at line 574 of file ce_parse.c.

const yytype_uint8 yyr1[]
static
Initial value:
=
{
0, 32, 33, 34, 34, 35, 35, 36, 36, 37,
37, 38, 38, 39, 39, 40, 40, 40, 41, 41,
41, 41, 41, 42, 42, 42, 43, 43, 43, 44,
44, 44, 44, 45, 45, 45, 45, 45, 46, 46,
47, 47, 47, 47, 47
}

Definition at line 517 of file ce_parse.c.

const yytype_uint8 yyr2[]
static
Initial value:
=
{
0, 2, 1, 1, 5, 1, 3, 1, 3, 1,
3, 1, 3, 1, 3, 1, 3, 3, 1, 3,
3, 3, 3, 1, 3, 3, 1, 3, 3, 1,
3, 3, 3, 1, 2, 2, 2, 2, 1, 3,
1, 1, 1, 1, 1
}

Definition at line 527 of file ce_parse.c.

const yytype_uint8 yystos[]
static
Initial value:
=
{
0, 18, 19, 23, 24, 25, 27, 28, 29, 30,
31, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 45, 46, 47, 45, 45, 45, 45,
34, 0, 3, 5, 6, 7, 8, 9, 10, 11,
12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 26, 35, 36, 37, 38, 39, 40, 41, 41,
42, 42, 42, 42, 43, 43, 44, 44, 45, 45,
45, 4, 35
}

Definition at line 609 of file ce_parse.c.

const yytype_uint8 yytable[]
static
Initial value:
=
{
26, 27, 28, 29, 52, 1, 2, 32, 35, 33,
3, 4, 5, 31, 6, 7, 8, 9, 10, 40,
41, 42, 43, 60, 61, 62, 63, 36, 48, 49,
50, 38, 39, 44, 45, 34, 46, 47, 71, 33,
58, 59, 37, 72, 64, 65, 51, 68, 69, 70,
33, 66, 67, 30, 0, 53, 0, 54, 0, 55,
0, 56, 0, 57
}

Definition at line 585 of file ce_parse.c.

const yytype_uint8 yytranslate[]
static

Definition at line 408 of file ce_parse.c.