OLD | NEW |
1 /* A Bison parser, made by GNU Bison 1.875c. */ | 1 /* A Bison parser, made by GNU Bison 1.875c. */ |
2 | 2 |
3 /* Skeleton parser for Yacc-like parsing with Bison, | 3 /* Skeleton parser for Yacc-like parsing with Bison, |
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundati
on, Inc. | 4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundati
on, Inc. |
5 | 5 |
6 This program is free software; you can redistribute it and/or modify | 6 This program is free software; you can redistribute it and/or modify |
7 it under the terms of the GNU General Public License as published by | 7 it under the terms of the GNU General Public License as published by |
8 the Free Software Foundation; either version 2, or (at your option) | 8 the Free Software Foundation; either version 2, or (at your option) |
9 any later version. | 9 any later version. |
10 | 10 |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 #define yyrule pascal_rule /* With YYDEBUG defined */ | 188 #define yyrule pascal_rule /* With YYDEBUG defined */ |
189 #define yylhs pascal_yylhs | 189 #define yylhs pascal_yylhs |
190 #define yylen pascal_yylen | 190 #define yylen pascal_yylen |
191 #define yydefred pascal_yydefred | 191 #define yydefred pascal_yydefred |
192 #define yydgoto pascal_yydgoto | 192 #define yydgoto pascal_yydgoto |
193 #define yysindex pascal_yysindex | 193 #define yysindex pascal_yysindex |
194 #define yyrindex pascal_yyrindex | 194 #define yyrindex pascal_yyrindex |
195 #define yygindex pascal_yygindex | 195 #define yygindex pascal_yygindex |
196 #define yytable pascal_yytable | 196 #define yytable pascal_yytable |
197 #define yycheck pascal_yycheck | 197 #define yycheck pascal_yycheck |
| 198 #define yyss pascal_yyss |
| 199 #define yysslim pascal_yysslim |
| 200 #define yyssp pascal_yyssp |
| 201 #define yystacksize pascal_yystacksize |
| 202 #define yyvs pascal_yyvs |
| 203 #define yyvsp pascal_yyvsp |
198 | 204 |
199 #ifndef YYDEBUG | 205 #ifndef YYDEBUG |
200 #define YYDEBUG 1 /* Default to yydebug support */ | 206 #define YYDEBUG 1 /* Default to yydebug support */ |
201 #endif | 207 #endif |
202 | 208 |
203 #define YYFPRINTF parser_fprintf | 209 #define YYFPRINTF parser_fprintf |
204 | 210 |
205 int yyparse (void); | 211 int yyparse (void); |
206 | 212 |
207 static int yylex (void); | 213 static int yylex (void); |
(...skipping 10 matching lines...) Expand all Loading... |
218 | 224 |
219 /* Enabling verbose error messages. */ | 225 /* Enabling verbose error messages. */ |
220 #ifdef YYERROR_VERBOSE | 226 #ifdef YYERROR_VERBOSE |
221 # undef YYERROR_VERBOSE | 227 # undef YYERROR_VERBOSE |
222 # define YYERROR_VERBOSE 1 | 228 # define YYERROR_VERBOSE 1 |
223 #else | 229 #else |
224 # define YYERROR_VERBOSE 0 | 230 # define YYERROR_VERBOSE 0 |
225 #endif | 231 #endif |
226 | 232 |
227 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) | 233 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) |
228 #line 129 "p-exp.y" | 234 #line 135 "p-exp.y" |
229 typedef union YYSTYPE { | 235 typedef union YYSTYPE { |
230 LONGEST lval; | 236 LONGEST lval; |
231 struct { | 237 struct { |
232 LONGEST val; | 238 LONGEST val; |
233 struct type *type; | 239 struct type *type; |
234 } typed_val_int; | 240 } typed_val_int; |
235 struct { | 241 struct { |
236 DOUBLEST dval; | 242 DOUBLEST dval; |
237 struct type *type; | 243 struct type *type; |
238 } typed_val_float; | 244 } typed_val_float; |
239 struct symbol *sym; | 245 struct symbol *sym; |
240 struct type *tval; | 246 struct type *tval; |
241 struct stoken sval; | 247 struct stoken sval; |
242 struct ttype tsym; | 248 struct ttype tsym; |
243 struct symtoken ssym; | 249 struct symtoken ssym; |
244 int voidval; | 250 int voidval; |
245 struct block *bval; | 251 struct block *bval; |
246 enum exp_opcode opcode; | 252 enum exp_opcode opcode; |
247 struct internalvar *ivar; | 253 struct internalvar *ivar; |
248 | 254 |
249 struct type **tvec; | 255 struct type **tvec; |
250 int *ivec; | 256 int *ivec; |
251 } YYSTYPE; | 257 } YYSTYPE; |
252 /* Line 191 of yacc.c. */ | 258 /* Line 191 of yacc.c. */ |
253 #line 254 "p-exp.c" | 259 #line 260 "p-exp.c" |
254 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ | 260 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ |
255 # define YYSTYPE_IS_DECLARED 1 | 261 # define YYSTYPE_IS_DECLARED 1 |
256 # define YYSTYPE_IS_TRIVIAL 1 | 262 # define YYSTYPE_IS_TRIVIAL 1 |
257 #endif | 263 #endif |
258 | 264 |
259 | 265 |
260 | 266 |
261 /* Copy the second part of user declarations. */ | 267 /* Copy the second part of user declarations. */ |
262 #line 153 "p-exp.y" | 268 #line 159 "p-exp.y" |
263 | 269 |
264 /* YYSTYPE gets defined by %union */ | 270 /* YYSTYPE gets defined by %union */ |
265 static int parse_number (char *, int, int, YYSTYPE *); | 271 static int parse_number (char *, int, int, YYSTYPE *); |
266 | 272 |
267 static struct type *current_type; | 273 static struct type *current_type; |
268 static struct internalvar *intvar; | 274 static struct internalvar *intvar; |
269 static int leftdiv_is_integer; | 275 static int leftdiv_is_integer; |
270 static void push_current_type (void); | 276 static void push_current_type (void); |
271 static void pop_current_type (void); | 277 static void pop_current_type (void); |
272 static int search_field; | 278 static int search_field; |
273 | 279 |
274 | 280 |
275 /* Line 214 of yacc.c. */ | 281 /* Line 214 of yacc.c. */ |
276 #line 277 "p-exp.c" | 282 #line 283 "p-exp.c" |
277 | 283 |
278 #if ! defined (yyoverflow) || YYERROR_VERBOSE | 284 #if ! defined (yyoverflow) || YYERROR_VERBOSE |
279 | 285 |
280 # ifndef YYFREE | 286 # ifndef YYFREE |
281 # define YYFREE xfree | 287 # define YYFREE xfree |
282 # endif | 288 # endif |
283 # ifndef YYMALLOC | 289 # ifndef YYMALLOC |
284 # define YYMALLOC xmalloc | 290 # define YYMALLOC xmalloc |
285 # endif | 291 # endif |
286 | 292 |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
472 -1, 65, 14, 71, -1, 70, 14, 71, -1, 67, | 478 -1, 65, 14, 71, -1, 70, 14, 71, -1, 67, |
473 -1, 14, 71, -1, 72, -1, 70, -1, 68, -1, | 479 -1, 14, 71, -1, 72, -1, 70, -1, 68, -1, |
474 49, 70, -1, 9, -1, 11, 71, -1, 12, 71, | 480 49, 70, -1, 9, -1, 11, 71, -1, 12, 71, |
475 -1, 8, -1, 50, -1, 9, -1, 10, -1, 8, | 481 -1, 8, -1, 50, -1, 9, -1, 10, -1, 8, |
476 -1, 50, -1 | 482 -1, 50, -1 |
477 }; | 483 }; |
478 | 484 |
479 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ | 485 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ |
480 static const unsigned short yyrline[] = | 486 static const unsigned short yyrline[] = |
481 { | 487 { |
482 0, 234, 234, 234, 243, 244, 247, 254, 255, 260, | 488 0, 240, 240, 240, 249, 250, 253, 260, 261, 266, |
483 266, 272, 276, 280, 284, 289, 293, 311, 329, 341, | 489 272, 278, 282, 286, 290, 295, 299, 317, 335, 347, |
484 339, 369, 366, 381, 382, 384, 388, 403, 409, 413, | 490 345, 375, 372, 387, 388, 390, 394, 409, 415, 419, |
485 413, 433, 437, 441, 445, 449, 453, 457, 463, 469, | 491 419, 439, 443, 447, 451, 455, 459, 463, 469, 475, |
486 475, 481, 487, 493, 497, 501, 505, 509, 516, 523, | 492 481, 487, 493, 499, 503, 507, 511, 515, 522, 529, |
487 531, 545, 553, 556, 571, 579, 582, 607, 634, 652, | 493 537, 551, 559, 562, 577, 585, 588, 613, 640, 658, |
488 662, 677, 692, 693, 724, 795, 806, 810, 812, 814, | 494 668, 683, 698, 699, 730, 801, 812, 816, 818, 820, |
489 817, 825, 826, 827, 828, 831, 832 | 495 823, 831, 832, 833, 834, 837, 838 |
490 }; | 496 }; |
491 #endif | 497 #endif |
492 | 498 |
493 #if YYDEBUG || YYERROR_VERBOSE | 499 #if YYDEBUG || YYERROR_VERBOSE |
494 /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. | 500 /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. |
495 First, the terminals, then, starting at YYNTOKENS, nonterminals. */ | 501 First, the terminals, then, starting at YYNTOKENS, nonterminals. */ |
496 static const char *const yytname[] = | 502 static const char *const yytname[] = |
497 { | 503 { |
498 "$end", "error", "$undefined", "INT", "FLOAT", "STRING", "FIELDNAME", | 504 "$end", "error", "$undefined", "INT", "FLOAT", "STRING", "FIELDNAME", |
499 "COMPLETE", "NAME", "TYPENAME", "NAME_OR_INT", "STRUCT", "CLASS", | 505 "COMPLETE", "NAME", "TYPENAME", "NAME_OR_INT", "STRUCT", "CLASS", |
(...skipping 811 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1311 | 1317 |
1312 /* If YYLEN is nonzero, implement the default value of the action: | 1318 /* If YYLEN is nonzero, implement the default value of the action: |
1313 `$$ = $1'. | 1319 `$$ = $1'. |
1314 | 1320 |
1315 Otherwise, the following line sets YYVAL to garbage. | 1321 Otherwise, the following line sets YYVAL to garbage. |
1316 This behavior is undocumented and Bison | 1322 This behavior is undocumented and Bison |
1317 users should not rely upon it. Assigning to YYVAL | 1323 users should not rely upon it. Assigning to YYVAL |
1318 unconditionally makes the parser a bit smaller, and it avoids a | 1324 unconditionally makes the parser a bit smaller, and it avoids a |
1319 GCC warning that YYVAL may be used uninitialized. */ | 1325 GCC warning that YYVAL may be used uninitialized. */ |
1320 yyval = yyvsp[1-yylen]; | 1326 yyval = yyvsp[1-yylen]; |
error: old chunk mismatch |
None
OLD | NEW |