Rev 5219 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5219 | Rev 6324 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | /* A Bison parser, made by GNU Bison 2.3. */ |
1 | /* A Bison parser, made by GNU Bison 3.0. */ |
Line 2... | Line 2... | ||
2 | 2 | ||
Line 3... | Line 3... | ||
3 | /* Skeleton implementation for Bison's Yacc-like parsers in C |
3 | /* Bison implementation for Yacc-like parsers in C |
4 | - | ||
Line 5... | Line 4... | ||
5 | Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 |
4 | |
6 | Free Software Foundation, Inc. |
5 | Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. |
7 | 6 | ||
8 | This program is free software; you can redistribute it and/or modify |
7 | This program is free software: you can redistribute it and/or modify |
Line 9... | Line 8... | ||
9 | it under the terms of the GNU General Public License as published by |
8 | it under the terms of the GNU General Public License as published by |
10 | the Free Software Foundation; either version 2, or (at your option) |
9 | the Free Software Foundation, either version 3 of the License, or |
11 | any later version. |
10 | (at your option) any later version. |
12 | 11 | ||
Line 13... | Line 12... | ||
13 | This program is distributed in the hope that it will be useful, |
12 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
- | |
16 | GNU General Public License for more details. |
- | |
Line 17... | Line 14... | ||
17 | 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
18 | You should have received a copy of the GNU General Public License |
15 | GNU General Public License for more details. |
19 | along with this program; if not, write to the Free Software |
16 | |
20 | Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 | You should have received a copy of the GNU General Public License |
Line 45... | Line 42... | ||
45 | 42 | ||
46 | /* Identify Bison output. */ |
43 | /* Identify Bison output. */ |
Line 47... | Line 44... | ||
47 | #define YYBISON 1 |
44 | #define YYBISON 1 |
48 | 45 | ||
Line 49... | Line 46... | ||
49 | /* Bison version. */ |
46 | /* Bison version. */ |
50 | #define YYBISON_VERSION "2.3" |
47 | #define YYBISON_VERSION "3.0" |
Line 51... | Line 48... | ||
51 | 48 | ||
52 | /* Skeleton name. */ |
49 | /* Skeleton name. */ |
Line 53... | Line 50... | ||
53 | #define YYSKELETON_NAME "yacc.c" |
50 | #define YYSKELETON_NAME "yacc.c" |
54 | 51 | ||
Line 55... | Line -... | ||
55 | /* Pure parsers. */ |
- | |
56 | #define YYPURE 0 |
- | |
57 | 52 | /* Pure parsers. */ |
|
58 | /* Using locations. */ |
- | |
59 | #define YYLSP_NEEDED 0 |
- | |
60 | - | ||
61 | - | ||
62 | - | ||
63 | /* Tokens. */ |
- | |
64 | #ifndef YYTOKENTYPE |
- | |
65 | # define YYTOKENTYPE |
- | |
66 | /* Put the tokens into the symbol table, so that GDB and other debuggers |
- | |
67 | know about them. */ |
- | |
68 | enum yytokentype { |
- | |
69 | NEWLINE = 258, |
- | |
70 | VERBOSE = 259, |
- | |
71 | FILENAME = 260, |
- | |
72 | ADDLIB = 261, |
- | |
73 | LIST = 262, |
- | |
74 | ADDMOD = 263, |
- | |
75 | CLEAR = 264, |
- | |
76 | CREATE = 265, |
- | |
77 | DELETE = 266, |
- | |
78 | DIRECTORY = 267, |
- | |
79 | END = 268, |
- | |
80 | EXTRACT = 269, |
- | |
81 | FULLDIR = 270, |
- | |
82 | HELP = 271, |
- | |
83 | QUIT = 272, |
- | |
84 | REPLACE = 273, |
- | |
85 | SAVE = 274, |
- | |
86 | OPEN = 275 |
- | |
87 | }; |
- | |
88 | #endif |
- | |
89 | /* Tokens. */ |
- | |
90 | #define NEWLINE 258 |
- | |
91 | #define VERBOSE 259 |
- | |
92 | #define FILENAME 260 |
- | |
93 | #define ADDLIB 261 |
- | |
94 | #define LIST 262 |
- | |
95 | #define ADDMOD 263 |
- | |
96 | #define CLEAR 264 |
- | |
97 | #define CREATE 265 |
53 | #define YYPURE 0 |
98 | #define DELETE 266 |
- | |
99 | #define DIRECTORY 267 |
- | |
100 | #define END 268 |
- | |
101 | #define EXTRACT 269 |
- | |
Line 102... | Line 54... | ||
102 | #define FULLDIR 270 |
54 | |
103 | #define HELP 271 |
55 | /* Push parsers. */ |
Line 104... | Line 56... | ||
104 | #define QUIT 272 |
56 | #define YYPUSH 0 |
Line 105... | Line -... | ||
105 | #define REPLACE 273 |
- | |
106 | #define SAVE 274 |
57 | |
Line 107... | Line 58... | ||
107 | #define OPEN 275 |
58 | /* Pull parsers. */ |
Line 108... | Line 59... | ||
108 | 59 | #define YYPULL 1 |
|
109 | 60 | ||
Line 145... | Line 96... | ||
145 | #include "arsup.h" |
96 | #include "arsup.h" |
146 | extern int verbose; |
97 | extern int verbose; |
147 | extern int yylex (void); |
98 | extern int yylex (void); |
148 | static int yyerror (const char *); |
99 | static int yyerror (const char *); |
Line -... | Line 100... | ||
- | 100 | ||
Line 149... | Line 101... | ||
149 | 101 | #line 102 "arparse.c" /* yacc.c:339 */ |
|
- | 102 | ||
150 | 103 | # ifndef YY_NULL |
|
- | 104 | # if defined __cplusplus && 201103L <= __cplusplus |
|
151 | /* Enabling traces. */ |
105 | # define YY_NULL nullptr |
- | 106 | # else |
|
152 | #ifndef YYDEBUG |
107 | # define YY_NULL 0 |
Line 153... | Line 108... | ||
153 | # define YYDEBUG 0 |
108 | # endif |
154 | #endif |
109 | # endif |
155 | 110 | ||
156 | /* Enabling verbose error messages. */ |
111 | /* Enabling verbose error messages. */ |
157 | #ifdef YYERROR_VERBOSE |
112 | #ifdef YYERROR_VERBOSE |
158 | # undef YYERROR_VERBOSE |
113 | # undef YYERROR_VERBOSE |
159 | # define YYERROR_VERBOSE 1 |
114 | # define YYERROR_VERBOSE 1 |
Line -... | Line 115... | ||
- | 115 | #else |
|
160 | #else |
116 | # define YYERROR_VERBOSE 0 |
- | 117 | #endif |
|
- | 118 | ||
- | 119 | /* In a future release of Bison, this section will be replaced |
|
161 | # define YYERROR_VERBOSE 0 |
120 | by #include "y.tab.h". */ |
162 | #endif |
121 | #ifndef YY_YY_ARPARSE_H_INCLUDED |
- | 122 | # define YY_YY_ARPARSE_H_INCLUDED |
|
- | 123 | /* Debug traces. */ |
|
- | 124 | #ifndef YYDEBUG |
|
163 | 125 | # define YYDEBUG 0 |
|
Line -... | Line 126... | ||
- | 126 | #endif |
|
- | 127 | #if YYDEBUG |
|
- | 128 | extern int yydebug; |
|
- | 129 | #endif |
|
- | 130 | ||
- | 131 | /* Token type. */ |
|
- | 132 | #ifndef YYTOKENTYPE |
|
- | 133 | # define YYTOKENTYPE |
|
- | 134 | enum yytokentype |
|
- | 135 | { |
|
- | 136 | NEWLINE = 258, |
|
- | 137 | VERBOSE = 259, |
|
- | 138 | FILENAME = 260, |
|
- | 139 | ADDLIB = 261, |
|
- | 140 | LIST = 262, |
|
- | 141 | ADDMOD = 263, |
|
- | 142 | CLEAR = 264, |
|
- | 143 | CREATE = 265, |
|
- | 144 | DELETE = 266, |
|
- | 145 | DIRECTORY = 267, |
|
- | 146 | END = 268, |
|
- | 147 | EXTRACT = 269, |
|
- | 148 | FULLDIR = 270, |
|
- | 149 | HELP = 271, |
|
- | 150 | QUIT = 272, |
|
- | 151 | REPLACE = 273, |
|
- | 152 | SAVE = 274, |
|
- | 153 | OPEN = 275 |
|
- | 154 | }; |
|
- | 155 | #endif |
|
- | 156 | /* Tokens. */ |
|
- | 157 | #define NEWLINE 258 |
|
- | 158 | #define VERBOSE 259 |
|
- | 159 | #define FILENAME 260 |
|
- | 160 | #define ADDLIB 261 |
|
- | 161 | #define LIST 262 |
|
- | 162 | #define ADDMOD 263 |
|
- | 163 | #define CLEAR 264 |
|
- | 164 | #define CREATE 265 |
|
- | 165 | #define DELETE 266 |
|
- | 166 | #define DIRECTORY 267 |
|
- | 167 | #define END 268 |
|
- | 168 | #define EXTRACT 269 |
|
- | 169 | #define FULLDIR 270 |
|
- | 170 | #define HELP 271 |
|
- | 171 | #define QUIT 272 |
|
164 | /* Enabling the token table. */ |
172 | #define REPLACE 273 |
165 | #ifndef YYTOKEN_TABLE |
173 | #define SAVE 274 |
166 | # define YYTOKEN_TABLE 0 |
174 | #define OPEN 275 |
167 | #endif |
175 | |
- | 176 | /* Value type. */ |
|
- | 177 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED |
|
168 | 178 | typedef union YYSTYPE YYSTYPE; |
|
169 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED |
179 | union YYSTYPE |
Line 170... | Line 180... | ||
170 | typedef union YYSTYPE |
180 | { |
171 | #line 38 "arparse.y" |
- | |
172 | { |
181 | #line 37 "arparse.y" /* yacc.c:355 */ |
173 | char *name; |
182 | |
174 | struct list *list ; |
- | |
175 | - | ||
176 | } |
183 | char *name; |
- | 184 | struct list *list ; |
|
177 | /* Line 193 of yacc.c. */ |
185 | |
Line -... | Line 186... | ||
- | 186 | ||
Line 178... | Line 187... | ||
178 | #line 179 "arparse.c" |
187 | #line 188 "arparse.c" /* yacc.c:355 */ |
Line -... | Line 188... | ||
- | 188 | }; |
|
Line 179... | Line 189... | ||
179 | YYSTYPE; |
189 | # define YYSTYPE_IS_TRIVIAL 1 |
- | 190 | # define YYSTYPE_IS_DECLARED 1 |
|
180 | # define yystype YYSTYPE /* obsolescent; will be withdrawn */ |
191 | #endif |
Line 181... | Line 192... | ||
181 | # define YYSTYPE_IS_DECLARED 1 |
192 | |
182 | # define YYSTYPE_IS_TRIVIAL 1 |
193 | |
183 | #endif |
194 | extern YYSTYPE yylval; |
Line 200... | Line 211... | ||
200 | typedef unsigned char yytype_uint8; |
211 | typedef unsigned char yytype_uint8; |
201 | #endif |
212 | #endif |
Line 202... | Line 213... | ||
202 | 213 | ||
203 | #ifdef YYTYPE_INT8 |
214 | #ifdef YYTYPE_INT8 |
204 | typedef YYTYPE_INT8 yytype_int8; |
- | |
205 | #elif (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
206 | || defined __cplusplus || defined _MSC_VER) |
- | |
207 | typedef signed char yytype_int8; |
215 | typedef YYTYPE_INT8 yytype_int8; |
208 | #else |
216 | #else |
209 | typedef short int yytype_int8; |
217 | typedef signed char yytype_int8; |
Line 210... | Line 218... | ||
210 | #endif |
218 | #endif |
211 | 219 | ||
212 | #ifdef YYTYPE_UINT16 |
220 | #ifdef YYTYPE_UINT16 |
Line 224... | Line 232... | ||
224 | #ifndef YYSIZE_T |
232 | #ifndef YYSIZE_T |
225 | # ifdef __SIZE_TYPE__ |
233 | # ifdef __SIZE_TYPE__ |
226 | # define YYSIZE_T __SIZE_TYPE__ |
234 | # define YYSIZE_T __SIZE_TYPE__ |
227 | # elif defined size_t |
235 | # elif defined size_t |
228 | # define YYSIZE_T size_t |
236 | # define YYSIZE_T size_t |
229 | # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
230 | || defined __cplusplus || defined _MSC_VER) |
237 | # elif ! defined YYSIZE_T |
231 | # include |
238 | # include |
232 | # define YYSIZE_T size_t |
239 | # define YYSIZE_T size_t |
233 | # else |
240 | # else |
234 | # define YYSIZE_T unsigned int |
241 | # define YYSIZE_T unsigned int |
235 | # endif |
242 | # endif |
Line 239... | Line 246... | ||
239 | 246 | ||
240 | #ifndef YY_ |
247 | #ifndef YY_ |
241 | # if defined YYENABLE_NLS && YYENABLE_NLS |
248 | # if defined YYENABLE_NLS && YYENABLE_NLS |
242 | # if ENABLE_NLS |
249 | # if ENABLE_NLS |
243 | # include |
250 | # include |
244 | # define YY_(msgid) dgettext ("bison-runtime", msgid) |
251 | # define YY_(Msgid) dgettext ("bison-runtime", Msgid) |
245 | # endif |
252 | # endif |
246 | # endif |
253 | # endif |
247 | # ifndef YY_ |
254 | # ifndef YY_ |
- | 255 | # define YY_(Msgid) Msgid |
|
- | 256 | # endif |
|
- | 257 | #endif |
|
- | 258 | ||
- | 259 | #ifndef __attribute__ |
|
- | 260 | /* This feature is available in gcc versions 2.5 and later. */ |
|
- | 261 | # if (! defined __GNUC__ || __GNUC__ < 2 \ |
|
- | 262 | || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)) |
|
248 | # define YY_(msgid) msgid |
263 | # define __attribute__(Spec) /* empty */ |
249 | # endif |
264 | # endif |
Line 250... | Line 265... | ||
250 | #endif |
265 | #endif |
251 | 266 | ||
252 | /* Suppress unused-variable warnings by "using" E. */ |
267 | /* Suppress unused-variable warnings by "using" E. */ |
253 | #if ! defined lint || defined __GNUC__ |
268 | #if ! defined lint || defined __GNUC__ |
254 | # define YYUSE(e) ((void) (e)) |
269 | # define YYUSE(E) ((void) (E)) |
255 | #else |
270 | #else |
Line -... | Line 271... | ||
- | 271 | # define YYUSE(E) /* empty */ |
|
256 | # define YYUSE(e) /* empty */ |
272 | #endif |
257 | #endif |
273 | |
258 | 274 | #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ |
|
259 | /* Identity function, used to suppress warnings about constant conditions. */ |
- | |
260 | #ifndef lint |
275 | /* Suppress an incorrect diagnostic about yylval being uninitialized. */ |
261 | # define YYID(n) (n) |
276 | # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ |
262 | #else |
277 | _Pragma ("GCC diagnostic push") \ |
263 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
278 | _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ |
264 | || defined __cplusplus || defined _MSC_VER) |
279 | _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") |
265 | static int |
- | |
266 | YYID (int i) |
- | |
267 | #else |
280 | # define YY_IGNORE_MAYBE_UNINITIALIZED_END \ |
268 | static int |
281 | _Pragma ("GCC diagnostic pop") |
- | 282 | #else |
|
- | 283 | # define YY_INITIAL_VALUE(Value) Value |
|
- | 284 | #endif |
|
269 | YYID (i) |
285 | #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
270 | int i; |
286 | # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
271 | #endif |
- | |
- | 287 | # define YY_IGNORE_MAYBE_UNINITIALIZED_END |
|
272 | { |
288 | #endif |
Line -... | Line 289... | ||
- | 289 | #ifndef YY_INITIAL_VALUE |
|
273 | return i; |
290 | # define YY_INITIAL_VALUE(Value) /* Nothing. */ |
Line 274... | Line 291... | ||
274 | } |
291 | #endif |
Line 275... | Line 292... | ||
275 | #endif |
292 | |
Line 289... | Line 306... | ||
289 | # elif defined _MSC_VER |
306 | # elif defined _MSC_VER |
290 | # include |
307 | # include |
291 | # define alloca _alloca |
308 | # define alloca _alloca |
292 | # else |
309 | # else |
293 | # define YYSTACK_ALLOC alloca |
310 | # define YYSTACK_ALLOC alloca |
294 | # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
295 | || defined __cplusplus || defined _MSC_VER) |
311 | # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS |
296 | # include |
312 | # include |
- | 313 | /* Use EXIT_SUCCESS as a witness for stdlib.h. */ |
|
297 | # ifndef _STDLIB_H |
314 | # ifndef EXIT_SUCCESS |
298 | # define _STDLIB_H 1 |
315 | # define EXIT_SUCCESS 0 |
299 | # endif |
316 | # endif |
300 | # endif |
317 | # endif |
301 | # endif |
318 | # endif |
302 | # endif |
319 | # endif |
303 | # endif |
320 | # endif |
Line 304... | Line 321... | ||
304 | 321 | ||
305 | # ifdef YYSTACK_ALLOC |
322 | # ifdef YYSTACK_ALLOC |
306 | /* Pacify GCC's `empty if-body' warning. */ |
323 | /* Pacify GCC's 'empty if-body' warning. */ |
307 | # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) |
324 | # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) |
308 | # ifndef YYSTACK_ALLOC_MAXIMUM |
325 | # ifndef YYSTACK_ALLOC_MAXIMUM |
309 | /* The OS might guarantee only one guard page at the bottom of the stack, |
326 | /* The OS might guarantee only one guard page at the bottom of the stack, |
310 | and a page size can be as small as 4096 bytes. So we cannot safely |
327 | and a page size can be as small as 4096 bytes. So we cannot safely |
311 | invoke alloca (N) if N exceeds 4096. Use a slightly smaller number |
328 | invoke alloca (N) if N exceeds 4096. Use a slightly smaller number |
Line 316... | Line 333... | ||
316 | # define YYSTACK_ALLOC YYMALLOC |
333 | # define YYSTACK_ALLOC YYMALLOC |
317 | # define YYSTACK_FREE YYFREE |
334 | # define YYSTACK_FREE YYFREE |
318 | # ifndef YYSTACK_ALLOC_MAXIMUM |
335 | # ifndef YYSTACK_ALLOC_MAXIMUM |
319 | # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
336 | # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM |
320 | # endif |
337 | # endif |
321 | # if (defined __cplusplus && ! defined _STDLIB_H \ |
338 | # if (defined __cplusplus && ! defined EXIT_SUCCESS \ |
322 | && ! ((defined YYMALLOC || defined malloc) \ |
339 | && ! ((defined YYMALLOC || defined malloc) \ |
323 | && (defined YYFREE || defined free))) |
340 | && (defined YYFREE || defined free))) |
324 | # include |
341 | # include |
325 | # ifndef _STDLIB_H |
342 | # ifndef EXIT_SUCCESS |
326 | # define _STDLIB_H 1 |
343 | # define EXIT_SUCCESS 0 |
327 | # endif |
344 | # endif |
328 | # endif |
345 | # endif |
329 | # ifndef YYMALLOC |
346 | # ifndef YYMALLOC |
330 | # define YYMALLOC malloc |
347 | # define YYMALLOC malloc |
331 | # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
332 | || defined __cplusplus || defined _MSC_VER) |
348 | # if ! defined malloc && ! defined EXIT_SUCCESS |
333 | void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ |
349 | void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ |
334 | # endif |
350 | # endif |
335 | # endif |
351 | # endif |
336 | # ifndef YYFREE |
352 | # ifndef YYFREE |
337 | # define YYFREE free |
353 | # define YYFREE free |
338 | # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
339 | || defined __cplusplus || defined _MSC_VER) |
354 | # if ! defined free && ! defined EXIT_SUCCESS |
340 | void free (void *); /* INFRINGES ON USER NAME SPACE */ |
355 | void free (void *); /* INFRINGES ON USER NAME SPACE */ |
341 | # endif |
356 | # endif |
342 | # endif |
357 | # endif |
343 | # endif |
358 | # endif |
344 | #endif /* ! defined yyoverflow || YYERROR_VERBOSE */ |
359 | #endif /* ! defined yyoverflow || YYERROR_VERBOSE */ |
Line 349... | Line 364... | ||
349 | || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) |
364 | || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) |
Line 350... | Line 365... | ||
350 | 365 | ||
351 | /* A type that is properly aligned for any stack member. */ |
366 | /* A type that is properly aligned for any stack member. */ |
352 | union yyalloc |
367 | union yyalloc |
353 | { |
368 | { |
354 | yytype_int16 yyss; |
369 | yytype_int16 yyss_alloc; |
355 | YYSTYPE yyvs; |
370 | YYSTYPE yyvs_alloc; |
Line 356... | Line 371... | ||
356 | }; |
371 | }; |
357 | 372 | ||
Line 362... | Line 377... | ||
362 | N elements. */ |
377 | N elements. */ |
363 | # define YYSTACK_BYTES(N) \ |
378 | # define YYSTACK_BYTES(N) \ |
364 | ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ |
379 | ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ |
365 | + YYSTACK_GAP_MAXIMUM) |
380 | + YYSTACK_GAP_MAXIMUM) |
Line 366... | Line -... | ||
366 | - | ||
367 | /* Copy COUNT objects from FROM to TO. The source and destination do |
- | |
368 | not overlap. */ |
- | |
369 | # ifndef YYCOPY |
- | |
370 | # if defined __GNUC__ && 1 < __GNUC__ |
381 | |
371 | # define YYCOPY(To, From, Count) \ |
- | |
372 | __builtin_memcpy (To, From, (Count) * sizeof (*(From))) |
- | |
373 | # else |
- | |
374 | # define YYCOPY(To, From, Count) \ |
- | |
375 | do \ |
- | |
376 | { \ |
- | |
377 | YYSIZE_T yyi; \ |
- | |
378 | for (yyi = 0; yyi < (Count); yyi++) \ |
- | |
379 | (To)[yyi] = (From)[yyi]; \ |
- | |
380 | } \ |
- | |
381 | while (YYID (0)) |
- | |
382 | # endif |
- | |
Line 383... | Line 382... | ||
383 | # endif |
382 | # define YYCOPY_NEEDED 1 |
384 | 383 | ||
385 | /* Relocate STACK from its old location to the new one. The |
384 | /* Relocate STACK from its old location to the new one. The |
386 | local variables YYSIZE and YYSTACKSIZE give the old and new number of |
385 | local variables YYSIZE and YYSTACKSIZE give the old and new number of |
387 | elements in the stack, and YYPTR gives the new location of the |
386 | elements in the stack, and YYPTR gives the new location of the |
388 | stack. Advance YYPTR to a properly aligned location for the next |
387 | stack. Advance YYPTR to a properly aligned location for the next |
389 | stack. */ |
388 | stack. */ |
390 | # define YYSTACK_RELOCATE(Stack) \ |
389 | # define YYSTACK_RELOCATE(Stack_alloc, Stack) \ |
391 | do \ |
390 | do \ |
392 | { \ |
391 | { \ |
393 | YYSIZE_T yynewbytes; \ |
392 | YYSIZE_T yynewbytes; \ |
394 | YYCOPY (&yyptr->Stack, Stack, yysize); \ |
393 | YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ |
395 | Stack = &yyptr->Stack; \ |
394 | Stack = &yyptr->Stack_alloc; \ |
396 | yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ |
395 | yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ |
397 | yyptr += yynewbytes / sizeof (*yyptr); \ |
396 | yyptr += yynewbytes / sizeof (*yyptr); \ |
Line 398... | Line 397... | ||
398 | } \ |
397 | } \ |
Line -... | Line 398... | ||
- | 398 | while (0) |
|
- | 399 | ||
- | 400 | #endif |
|
- | 401 | ||
- | 402 | #if defined YYCOPY_NEEDED && YYCOPY_NEEDED |
|
- | 403 | /* Copy COUNT objects from SRC to DST. The source and destination do |
|
- | 404 | not overlap. */ |
|
- | 405 | # ifndef YYCOPY |
|
- | 406 | # if defined __GNUC__ && 1 < __GNUC__ |
|
- | 407 | # define YYCOPY(Dst, Src, Count) \ |
|
- | 408 | __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src))) |
|
- | 409 | # else |
|
- | 410 | # define YYCOPY(Dst, Src, Count) \ |
|
- | 411 | do \ |
|
- | 412 | { \ |
|
- | 413 | YYSIZE_T yyi; \ |
|
- | 414 | for (yyi = 0; yyi < (Count); yyi++) \ |
|
- | 415 | (Dst)[yyi] = (Src)[yyi]; \ |
|
- | 416 | } \ |
|
- | 417 | while (0) |
|
399 | while (YYID (0)) |
418 | # endif |
400 | 419 | # endif |
|
401 | #endif |
420 | #endif /* !YYCOPY_NEEDED */ |
402 | 421 | ||
Line 409... | Line 428... | ||
409 | #define YYNTOKENS 24 |
428 | #define YYNTOKENS 24 |
410 | /* YYNNTS -- Number of nonterminals. */ |
429 | /* YYNNTS -- Number of nonterminals. */ |
411 | #define YYNNTS 22 |
430 | #define YYNNTS 22 |
412 | /* YYNRULES -- Number of rules. */ |
431 | /* YYNRULES -- Number of rules. */ |
413 | #define YYNRULES 42 |
432 | #define YYNRULES 42 |
414 | /* YYNRULES -- Number of states. */ |
433 | /* YYNSTATES -- Number of states. */ |
415 | #define YYNSTATES 53 |
434 | #define YYNSTATES 53 |
Line 416... | Line 435... | ||
416 | 435 | ||
- | 436 | /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned |
|
417 | /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ |
437 | by yylex, with out-of-bounds checking. */ |
418 | #define YYUNDEFTOK 2 |
438 | #define YYUNDEFTOK 2 |
Line 419... | Line 439... | ||
419 | #define YYMAXUTOK 275 |
439 | #define YYMAXUTOK 275 |
420 | 440 | ||
Line 421... | Line 441... | ||
421 | #define YYTRANSLATE(YYX) \ |
441 | #define YYTRANSLATE(YYX) \ |
- | 442 | ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
|
422 | ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) |
443 | |
423 | 444 | /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM |
|
424 | /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ |
445 | as returned by yylex, without out-of-bounds checking. */ |
425 | static const yytype_uint8 yytranslate[] = |
446 | static const yytype_uint8 yytranslate[] = |
426 | { |
447 | { |
Line 453... | Line 474... | ||
453 | 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, |
474 | 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, |
454 | 15, 16, 17, 18, 19, 20 |
475 | 15, 16, 17, 18, 19, 20 |
455 | }; |
476 | }; |
Line 456... | Line 477... | ||
456 | 477 | ||
457 | #if YYDEBUG |
- | |
458 | /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in |
- | |
459 | YYRHS. */ |
- | |
460 | static const yytype_uint8 yyprhs[] = |
- | |
461 | { |
- | |
462 | 0, 0, 3, 4, 7, 10, 11, 14, 16, 18, |
- | |
463 | 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, |
- | |
464 | 40, 42, 44, 45, 48, 51, 53, 56, 59, 61, |
- | |
465 | 63, 66, 69, 73, 78, 80, 81, 85, 86, 90, |
- | |
466 | 91, 93, 94 |
- | |
467 | }; |
- | |
468 | - | ||
469 | /* YYRHS -- A `-1'-separated list of the rules' RHS. */ |
- | |
470 | static const yytype_int8 yyrhs[] = |
- | |
471 | { |
- | |
472 | 25, 0, -1, -1, 26, 27, -1, 27, 28, -1, |
- | |
473 | -1, 29, 3, -1, 37, -1, 38, -1, 45, -1, |
- | |
474 | 40, -1, 39, -1, 32, -1, 34, -1, 36, -1, |
- | |
475 | 30, -1, 31, -1, 33, -1, 35, -1, 13, -1, |
- | |
476 | 1, -1, 5, -1, -1, 14, 43, -1, 18, 43, |
- | |
477 | -1, 9, -1, 11, 43, -1, 8, 43, -1, 7, |
- | |
478 | -1, 19, -1, 20, 5, -1, 10, 5, -1, 6, |
- | |
479 | 5, 42, -1, 12, 5, 42, 41, -1, 5, -1, |
- | |
480 | -1, 21, 43, 22, -1, -1, 43, 44, 5, -1, |
- | |
481 | -1, 23, -1, -1, 4, -1 |
- | |
482 | }; |
- | |
483 | 478 | #if YYDEBUG |
|
484 | /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ |
479 | /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ |
485 | static const yytype_uint8 yyrline[] = |
480 | static const yytype_uint8 yyrline[] = |
486 | { |
481 | { |
487 | 0, 69, 69, 69, 73, 74, 78, 82, 83, 84, |
482 | 0, 68, 68, 68, 72, 73, 77, 81, 82, 83, |
488 | 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, |
483 | 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, |
489 | 95, 96, 97, 102, 107, 112, 117, 121, 126, 131, |
484 | 94, 95, 96, 101, 106, 111, 116, 120, 125, 130, |
490 | 138, 143, 149, 153, 160, 162, 166, 169, 173, 179, |
485 | 137, 142, 148, 152, 159, 161, 165, 168, 172, 178, |
491 | 184, 185, 190 |
486 | 183, 184, 189 |
492 | }; |
487 | }; |
Line 493... | Line 488... | ||
493 | #endif |
488 | #endif |
494 | 489 | ||
495 | #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE |
490 | #if YYDEBUG || YYERROR_VERBOSE || 0 |
496 | /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. |
491 | /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. |
497 | First, the terminals, then, starting at YYNTOKENS, nonterminals. */ |
492 | First, the terminals, then, starting at YYNTOKENS, nonterminals. */ |
498 | static const char *const yytname[] = |
493 | static const char *const yytname[] = |
499 | { |
494 | { |
500 | "$end", "error", "$undefined", "NEWLINE", "VERBOSE", "FILENAME", |
495 | "$end", "error", "$undefined", "NEWLINE", "VERBOSE", "FILENAME", |
501 | "ADDLIB", "LIST", "ADDMOD", "CLEAR", "CREATE", "DELETE", "DIRECTORY", |
496 | "ADDLIB", "LIST", "ADDMOD", "CLEAR", "CREATE", "DELETE", "DIRECTORY", |
502 | "END", "EXTRACT", "FULLDIR", "HELP", "QUIT", "REPLACE", "SAVE", "OPEN", |
497 | "END", "EXTRACT", "FULLDIR", "HELP", "QUIT", "REPLACE", "SAVE", "OPEN", |
503 | "'('", "')'", "','", "$accept", "start", "@1", "session", "command_line", |
498 | "'('", "')'", "','", "$accept", "start", "$@1", "session", |
504 | "command", "extract_command", "replace_command", "clear_command", |
499 | "command_line", "command", "extract_command", "replace_command", |
505 | "delete_command", "addmod_command", "list_command", "save_command", |
500 | "clear_command", "delete_command", "addmod_command", "list_command", |
506 | "open_command", "create_command", "addlib_command", "directory_command", |
501 | "save_command", "open_command", "create_command", "addlib_command", |
507 | "optional_filename", "modulelist", "modulename", "optcomma", |
502 | "directory_command", "optional_filename", "modulelist", "modulename", |
508 | "verbose_command", 0 |
503 | "optcomma", "verbose_command", YY_NULL |
Line 509... | Line 504... | ||
509 | }; |
504 | }; |
510 | #endif |
505 | #endif |
511 | 506 | ||
512 | # ifdef YYPRINT |
507 | # ifdef YYPRINT |
513 | /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to |
508 | /* YYTOKNUM[NUM] -- (External) token number corresponding to the |
514 | token YYLEX-NUM. */ |
509 | (internal) symbol number NUM (which must be that of a token). */ |
515 | static const yytype_uint16 yytoknum[] = |
510 | static const yytype_uint16 yytoknum[] = |
516 | { |
511 | { |
517 | 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, |
512 | 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, |
518 | 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, |
513 | 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, |
Line 519... | Line -... | ||
519 | 275, 40, 41, 44 |
- | |
520 | }; |
- | |
521 | # endif |
- | |
522 | - | ||
523 | /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ |
- | |
524 | static const yytype_uint8 yyr1[] = |
- | |
525 | { |
- | |
526 | 0, 24, 26, 25, 27, 27, 28, 29, 29, 29, |
514 | 275, 40, 41, 44 |
527 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
- | |
Line 528... | Line -... | ||
528 | 29, 29, 29, 30, 31, 32, 33, 34, 35, 36, |
- | |
529 | 37, 38, 39, 40, 41, 41, 42, 42, 43, 43, |
515 | }; |
530 | 44, 44, 45 |
- | |
531 | }; |
- | |
532 | - | ||
533 | /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ |
- | |
534 | static const yytype_uint8 yyr2[] = |
- | |
535 | { |
516 | # endif |
536 | 0, 2, 0, 2, 2, 0, 2, 1, 1, 1, |
- | |
Line 537... | Line -... | ||
537 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, |
- | |
538 | 1, 1, 0, 2, 2, 1, 2, 2, 1, 1, |
- | |
539 | 2, 2, 3, 4, 1, 0, 3, 0, 3, 0, |
- | |
540 | 1, 0, 1 |
- | |
541 | }; |
- | |
542 | - | ||
543 | /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state |
- | |
544 | STATE-NUM when YYTABLE doesn't specify something else to do. Zero |
- | |
545 | means the default is an error. */ |
- | |
546 | static const yytype_uint8 yydefact[] = |
- | |
547 | { |
517 | |
548 | 2, 0, 5, 1, 0, 20, 42, 21, 0, 28, |
- | |
Line 549... | Line -... | ||
549 | 39, 25, 0, 39, 0, 19, 39, 39, 29, 0, |
- | |
550 | 4, 0, 15, 16, 12, 17, 13, 18, 14, 7, |
518 | #define YYPACT_NINF -14 |
551 | 8, 11, 10, 9, 37, 27, 31, 26, 37, 23, |
- | |
552 | 24, 30, 6, 39, 32, 40, 0, 35, 41, 38, |
- | |
553 | 34, 33, 36 |
- | |
554 | }; |
- | |
555 | 519 | ||
Line 556... | Line 520... | ||
556 | /* YYDEFGOTO[NTERM-NUM]. */ |
520 | #define yypact_value_is_default(Yystate) \ |
557 | static const yytype_int8 yydefgoto[] = |
521 | (!!((Yystate) == (-14))) |
558 | { |
- | |
559 | -1, 1, 2, 4, 20, 21, 22, 23, 24, 25, |
522 | |
560 | 26, 27, 28, 29, 30, 31, 32, 51, 44, 35, |
523 | #define YYTABLE_NINF -42 |
561 | 46, 33 |
524 | |
562 | }; |
525 | #define yytable_value_is_error(Yytable_value) \ |
563 | 526 | 0 |
|
564 | /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing |
527 | |
565 | STATE-NUM. */ |
528 | /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing |
566 | #define YYPACT_NINF -14 |
529 | STATE-NUM. */ |
567 | static const yytype_int8 yypact[] = |
530 | static const yytype_int8 yypact[] = |
Line -... | Line 531... | ||
- | 531 | { |
|
- | 532 | -14, 1, -14, -14, 5, -14, -14, -14, 2, -14, |
|
- | 533 | -14, -14, 21, -14, 22, -14, -14, -14, -14, 23, |
|
- | 534 | -14, 26, -14, -14, -14, -14, -14, -14, -14, -14, |
|
- | 535 | -14, -14, -14, -14, 10, -3, -14, -3, 10, -3, |
|
- | 536 | -3, -14, -14, -14, -14, -14, 27, 28, -1, -14, |
|
- | 537 | -14, -14, -14 |
|
- | 538 | }; |
|
- | 539 | ||
- | 540 | /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. |
|
- | 541 | Performed when YYTABLE does not specify something else to do. Zero |
|
- | 542 | means the default is an error. */ |
|
- | 543 | static const yytype_uint8 yydefact[] = |
|
568 | { |
544 | { |
569 | -14, 1, -14, -14, 5, -14, -14, -14, 2, -14, |
545 | 2, 0, 5, 1, 0, 20, 42, 21, 0, 28, |
570 | -14, -14, 21, -14, 22, -14, -14, -14, -14, 23, |
546 | 39, 25, 0, 39, 0, 19, 39, 39, 29, 0, |
571 | -14, 26, -14, -14, -14, -14, -14, -14, -14, -14, |
547 | 4, 0, 15, 16, 12, 17, 13, 18, 14, 7, |
572 | -14, -14, -14, -14, 10, -3, -14, -3, 10, -3, |
548 | 8, 11, 10, 9, 37, 27, 31, 26, 37, 23, |
573 | -3, -14, -14, -14, -14, -14, 27, 28, -1, -14, |
549 | 24, 30, 6, 39, 32, 40, 0, 35, 41, 38, |
574 | -14, -14, -14 |
550 | 34, 33, 36 |
Line -... | Line 551... | ||
- | 551 | }; |
|
- | 552 | ||
- | 553 | /* YYPGOTO[NTERM-NUM]. */ |
|
- | 554 | static const yytype_int8 yypgoto[] = |
|
- | 555 | { |
|
- | 556 | -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, |
|
- | 557 | -14, -14, -14, -14, -14, -14, -14, -14, -4, -13, |
|
- | 558 | -14, -14 |
|
575 | }; |
559 | }; |
576 | 560 | ||
577 | /* YYPGOTO[NTERM-NUM]. */ |
561 | /* YYDEFGOTO[NTERM-NUM]. */ |
578 | static const yytype_int8 yypgoto[] = |
- | |
579 | { |
- | |
580 | -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, |
562 | static const yytype_int8 yydefgoto[] = |
581 | -14, -14, -14, -14, -14, -14, -14, -14, -4, -13, |
563 | { |
582 | -14, -14 |
564 | -1, 1, 2, 4, 20, 21, 22, 23, 24, 25, |
583 | }; |
565 | 26, 27, 28, 29, 30, 31, 32, 51, 44, 35, |
584 | 566 | 46, 33 |
|
Line 613... | Line 595... | ||
613 | 38, 39, 40, 45, 5, 43, 5, 43, 5, 43, |
595 | 38, 39, 40, 45, 5, 43, 5, 43, 5, 43, |
614 | 43, 5, 3, 21, 42, 23, 44, 42, 43, 5, |
596 | 43, 5, 3, 21, 42, 23, 44, 42, 43, 5, |
615 | 5, 41, 22 |
597 | 5, 41, 22 |
616 | }; |
598 | }; |
Line -... | Line 599... | ||
- | 599 | ||
- | 600 | /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ |
|
- | 601 | static const yytype_uint8 yyr1[] = |
|
- | 602 | { |
|
- | 603 | 0, 24, 26, 25, 27, 27, 28, 29, 29, 29, |
|
- | 604 | 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, |
|
- | 605 | 29, 29, 29, 30, 31, 32, 33, 34, 35, 36, |
|
- | 606 | 37, 38, 39, 40, 41, 41, 42, 42, 43, 43, |
|
- | 607 | 44, 44, 45 |
|
- | 608 | }; |
|
- | 609 | ||
- | 610 | /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ |
|
- | 611 | static const yytype_uint8 yyr2[] = |
|
- | 612 | { |
|
- | 613 | 0, 2, 0, 2, 2, 0, 2, 1, 1, 1, |
|
- | 614 | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, |
|
- | 615 | 1, 1, 0, 2, 2, 1, 2, 2, 1, 1, |
|
- | 616 | 2, 2, 3, 4, 1, 0, 3, 0, 3, 0, |
|
- | 617 | 1, 0, 1 |
|
- | 618 | }; |
|
- | 619 | ||
617 | 620 | ||
618 | #define yyerrok (yyerrstatus = 0) |
621 | #define yyerrok (yyerrstatus = 0) |
619 | #define yyclearin (yychar = YYEMPTY) |
622 | #define yyclearin (yychar = YYEMPTY) |
620 | #define YYEMPTY (-2) |
623 | #define YYEMPTY (-2) |
Line 621... | Line 624... | ||
621 | #define YYEOF 0 |
624 | #define YYEOF 0 |
622 | 625 | ||
623 | #define YYACCEPT goto yyacceptlab |
626 | #define YYACCEPT goto yyacceptlab |
Line 624... | Line -... | ||
624 | #define YYABORT goto yyabortlab |
- | |
625 | #define YYERROR goto yyerrorlab |
- | |
626 | - | ||
627 | - | ||
628 | /* Like YYERROR except do call yyerror. This remains here temporarily |
- | |
629 | to ease the transition to the new meaning of YYERROR, for GCC. |
- | |
630 | Once GCC version 2 has supplanted version 1, this can go. */ |
627 | #define YYABORT goto yyabortlab |
Line 631... | Line 628... | ||
631 | 628 | #define YYERROR goto yyerrorlab |
|
632 | #define YYFAIL goto yyerrlab |
629 | |
633 | 630 | ||
634 | #define YYRECOVERING() (!!yyerrstatus) |
631 | #define YYRECOVERING() (!!yyerrstatus) |
635 | 632 | ||
636 | #define YYBACKUP(Token, Value) \ |
633 | #define YYBACKUP(Token, Value) \ |
637 | do \ |
634 | do \ |
638 | if (yychar == YYEMPTY && yylen == 1) \ |
635 | if (yychar == YYEMPTY) \ |
639 | { \ |
636 | { \ |
640 | yychar = (Token); \ |
637 | yychar = (Token); \ |
641 | yylval = (Value); \ |
638 | yylval = (Value); \ |
642 | yytoken = YYTRANSLATE (yychar); \ |
639 | YYPOPSTACK (yylen); \ |
643 | YYPOPSTACK (1); \ |
640 | yystate = *yyssp; \ |
644 | goto yybackup; \ |
641 | goto yybackup; \ |
645 | } \ |
642 | } \ |
646 | else \ |
643 | else \ |
647 | { \ |
- | |
Line -... | Line 644... | ||
- | 644 | { \ |
|
648 | yyerror (YY_("syntax error: cannot back up")); \ |
645 | yyerror (YY_("syntax error: cannot back up")); \ |
649 | YYERROR; \ |
646 | YYERROR; \ |
Line 650... | Line -... | ||
650 | } \ |
- | |
651 | while (YYID (0)) |
- | |
652 | - | ||
653 | - | ||
654 | #define YYTERROR 1 |
- | |
655 | #define YYERRCODE 256 |
- | |
656 | - | ||
657 | - | ||
658 | /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. |
- | |
659 | If N is 0, then set CURRENT to the empty location which ends |
- | |
660 | the previous symbol: RHS[0] (always defined). */ |
- | |
661 | - | ||
662 | #define YYRHSLOC(Rhs, K) ((Rhs)[K]) |
- | |
663 | #ifndef YYLLOC_DEFAULT |
- | |
664 | # define YYLLOC_DEFAULT(Current, Rhs, N) \ |
- | |
665 | do \ |
- | |
666 | if (YYID (N)) \ |
- | |
667 | { \ |
- | |
668 | (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ |
- | |
669 | (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ |
- | |
670 | (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ |
- | |
671 | (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ |
- | |
672 | } \ |
- | |
673 | else \ |
- | |
674 | { \ |
- | |
675 | (Current).first_line = (Current).last_line = \ |
- | |
676 | YYRHSLOC (Rhs, 0).last_line; \ |
- | |
677 | (Current).first_column = (Current).last_column = \ |
- | |
678 | YYRHSLOC (Rhs, 0).last_column; \ |
- | |
679 | } \ |
- | |
680 | while (YYID (0)) |
- | |
681 | #endif |
- | |
682 | - | ||
683 | - | ||
684 | /* YY_LOCATION_PRINT -- Print the location on the stream. |
- | |
685 | This macro was not mandated originally: define only if we know |
- | |
686 | we won't break user code: when these are the locations we know. */ |
- | |
687 | - | ||
688 | #ifndef YY_LOCATION_PRINT |
- | |
689 | # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL |
- | |
690 | # define YY_LOCATION_PRINT(File, Loc) \ |
- | |
691 | fprintf (File, "%d.%d-%d.%d", \ |
- | |
692 | (Loc).first_line, (Loc).first_column, \ |
- | |
693 | (Loc).last_line, (Loc).last_column) |
- | |
694 | # else |
- | |
695 | # define YY_LOCATION_PRINT(File, Loc) ((void) 0) |
- | |
696 | # endif |
- | |
697 | #endif |
- | |
698 | - | ||
Line 699... | Line 647... | ||
699 | 647 | } \ |
|
700 | /* YYLEX -- calling `yylex' with the right arguments. */ |
648 | while (0) |
Line 701... | Line 649... | ||
701 | 649 | ||
Line 715... | Line 663... | ||
715 | 663 | ||
716 | # define YYDPRINTF(Args) \ |
664 | # define YYDPRINTF(Args) \ |
717 | do { \ |
665 | do { \ |
718 | if (yydebug) \ |
666 | if (yydebug) \ |
719 | YYFPRINTF Args; \ |
667 | YYFPRINTF Args; \ |
- | 668 | } while (0) |
|
- | 669 | ||
- | 670 | /* This macro is provided for backward compatibility. */ |
|
- | 671 | #ifndef YY_LOCATION_PRINT |
|
- | 672 | # define YY_LOCATION_PRINT(File, Loc) ((void) 0) |
|
- | 673 | #endif |
|
Line 720... | Line 674... | ||
720 | } while (YYID (0)) |
674 | |
721 | 675 | ||
722 | # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ |
676 | # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ |
723 | do { \ |
677 | do { \ |
724 | if (yydebug) \ |
678 | if (yydebug) \ |
725 | { \ |
679 | { \ |
726 | YYFPRINTF (stderr, "%s ", Title); \ |
680 | YYFPRINTF (stderr, "%s ", Title); \ |
727 | yy_symbol_print (stderr, \ |
681 | yy_symbol_print (stderr, \ |
728 | Type, Value); \ |
682 | Type, Value); \ |
729 | YYFPRINTF (stderr, "\n"); \ |
683 | YYFPRINTF (stderr, "\n"); \ |
Line 730... | Line 684... | ||
730 | } \ |
684 | } \ |
731 | } while (YYID (0)) |
685 | } while (0) |
732 | 686 | ||
Line 733... | Line -... | ||
733 | - | ||
734 | /*--------------------------------. |
- | |
735 | | Print this symbol on YYOUTPUT. | |
- | |
736 | `--------------------------------*/ |
687 | |
737 | 688 | /*----------------------------------------. |
|
738 | /*ARGSUSED*/ |
- | |
739 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
740 | || defined __cplusplus || defined _MSC_VER) |
- | |
741 | static void |
- | |
742 | yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) |
- | |
743 | #else |
- | |
744 | static void |
- | |
745 | yy_symbol_value_print (yyoutput, yytype, yyvaluep) |
689 | | Print this symbol's value on YYOUTPUT. | |
- | 690 | `----------------------------------------*/ |
|
- | 691 | ||
746 | FILE *yyoutput; |
692 | static void |
747 | int yytype; |
693 | yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) |
748 | YYSTYPE const * const yyvaluep; |
694 | { |
749 | #endif |
695 | FILE *yyo = yyoutput; |
750 | { |
696 | YYUSE (yyo); |
751 | if (!yyvaluep) |
- | |
752 | return; |
- | |
753 | # ifdef YYPRINT |
697 | if (!yyvaluep) |
754 | if (yytype < YYNTOKENS) |
698 | return; |
755 | YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); |
- | |
756 | # else |
- | |
757 | YYUSE (yyoutput); |
- | |
758 | # endif |
- | |
759 | switch (yytype) |
699 | # ifdef YYPRINT |
Line 760... | Line 700... | ||
760 | { |
700 | if (yytype < YYNTOKENS) |
761 | default: |
701 | YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); |
762 | break; |
702 | # endif |
Line 763... | Line -... | ||
763 | } |
- | |
764 | } |
- | |
765 | 703 | YYUSE (yytype); |
|
766 | 704 | } |
|
767 | /*--------------------------------. |
- | |
768 | | Print this symbol on YYOUTPUT. | |
- | |
769 | `--------------------------------*/ |
- | |
770 | - | ||
771 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
772 | || defined __cplusplus || defined _MSC_VER) |
- | |
773 | static void |
- | |
774 | yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) |
705 | |
775 | #else |
- | |
776 | static void |
706 | |
777 | yy_symbol_print (yyoutput, yytype, yyvaluep) |
- | |
778 | FILE *yyoutput; |
707 | /*--------------------------------. |
Line 779... | Line 708... | ||
779 | int yytype; |
708 | | Print this symbol on YYOUTPUT. | |
780 | YYSTYPE const * const yyvaluep; |
709 | `--------------------------------*/ |
781 | #endif |
710 | |
Line 782... | Line 711... | ||
782 | { |
711 | static void |
783 | if (yytype < YYNTOKENS) |
712 | yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) |
784 | YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); |
713 | { |
785 | else |
714 | YYFPRINTF (yyoutput, "%s %s (", |
Line 786... | Line -... | ||
786 | YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); |
- | |
787 | - | ||
788 | yy_symbol_value_print (yyoutput, yytype, yyvaluep); |
- | |
789 | YYFPRINTF (yyoutput, ")"); |
- | |
790 | } |
- | |
791 | 715 | yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); |
|
792 | /*------------------------------------------------------------------. |
716 | |
793 | | yy_stack_print -- Print the state stack from its BOTTOM up to its | |
- | |
794 | | TOP (included). | |
- | |
795 | `------------------------------------------------------------------*/ |
- | |
796 | 717 | yy_symbol_value_print (yyoutput, yytype, yyvaluep); |
|
797 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
718 | YYFPRINTF (yyoutput, ")"); |
798 | || defined __cplusplus || defined _MSC_VER) |
719 | } |
- | 720 | ||
- | 721 | /*------------------------------------------------------------------. |
|
799 | static void |
722 | | yy_stack_print -- Print the state stack from its BOTTOM up to its | |
- | 723 | | TOP (included). | |
|
800 | yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) |
724 | `------------------------------------------------------------------*/ |
801 | #else |
725 | |
Line 802... | Line 726... | ||
802 | static void |
726 | static void |
803 | yy_stack_print (bottom, top) |
727 | yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) |
804 | yytype_int16 *bottom; |
728 | { |
805 | yytype_int16 *top; |
729 | YYFPRINTF (stderr, "Stack now"); |
806 | #endif |
730 | for (; yybottom <= yytop; yybottom++) |
Line 807... | Line 731... | ||
807 | { |
731 | { |
808 | YYFPRINTF (stderr, "Stack now"); |
732 | int yybot = *yybottom; |
809 | for (; bottom <= top; ++bottom) |
733 | YYFPRINTF (stderr, " %d", yybot); |
Line 810... | Line -... | ||
810 | YYFPRINTF (stderr, " %d", *bottom); |
- | |
811 | YYFPRINTF (stderr, "\n"); |
- | |
812 | } |
734 | } |
813 | 735 | YYFPRINTF (stderr, "\n"); |
|
814 | # define YY_STACK_PRINT(Bottom, Top) \ |
- | |
815 | do { \ |
- | |
816 | if (yydebug) \ |
- | |
817 | yy_stack_print ((Bottom), (Top)); \ |
- | |
818 | } while (YYID (0)) |
- | |
819 | - | ||
820 | 736 | } |
|
- | 737 | ||
821 | /*------------------------------------------------. |
738 | # define YY_STACK_PRINT(Bottom, Top) \ |
822 | | Report that the YYRULE is going to be reduced. | |
739 | do { \ |
823 | `------------------------------------------------*/ |
- | |
824 | 740 | if (yydebug) \ |
|
825 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
741 | yy_stack_print ((Bottom), (Top)); \ |
826 | || defined __cplusplus || defined _MSC_VER) |
742 | } while (0) |
827 | static void |
743 | |
828 | yy_reduce_print (YYSTYPE *yyvsp, int yyrule) |
744 | |
829 | #else |
745 | /*------------------------------------------------. |
830 | static void |
746 | | Report that the YYRULE is going to be reduced. | |
- | 747 | `------------------------------------------------*/ |
|
831 | yy_reduce_print (yyvsp, yyrule) |
748 | |
832 | YYSTYPE *yyvsp; |
749 | static void |
833 | int yyrule; |
750 | yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule) |
834 | #endif |
751 | { |
835 | { |
752 | unsigned long int yylno = yyrline[yyrule]; |
Line 836... | Line 753... | ||
836 | int yynrhs = yyr2[yyrule]; |
753 | int yynrhs = yyr2[yyrule]; |
837 | int yyi; |
754 | int yyi; |
838 | unsigned long int yylno = yyrline[yyrule]; |
755 | YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", |
839 | YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", |
756 | yyrule - 1, yylno); |
840 | yyrule - 1, yylno); |
757 | /* The symbols being reduced. */ |
Line 841... | Line 758... | ||
841 | /* The symbols being reduced. */ |
758 | for (yyi = 0; yyi < yynrhs; yyi++) |
842 | for (yyi = 0; yyi < yynrhs; yyi++) |
759 | { |
843 | { |
760 | YYFPRINTF (stderr, " $%d = ", yyi + 1); |
844 | fprintf (stderr, " $%d = ", yyi + 1); |
761 | yy_symbol_print (stderr, |
Line 881... | Line 798... | ||
881 | #ifndef YYMAXDEPTH |
798 | #ifndef YYMAXDEPTH |
882 | # define YYMAXDEPTH 10000 |
799 | # define YYMAXDEPTH 10000 |
883 | #endif |
800 | #endif |
Line 884... | Line 801... | ||
884 | 801 | ||
885 | - | ||
886 | 802 | ||
Line 887... | Line 803... | ||
887 | #if YYERROR_VERBOSE |
803 | #if YYERROR_VERBOSE |
888 | 804 | ||
889 | # ifndef yystrlen |
805 | # ifndef yystrlen |
890 | # if defined __GLIBC__ && defined _STRING_H |
806 | # if defined __GLIBC__ && defined _STRING_H |
891 | # define yystrlen strlen |
807 | # define yystrlen strlen |
892 | # else |
- | |
893 | /* Return the length of YYSTR. */ |
- | |
894 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
808 | # else |
895 | || defined __cplusplus || defined _MSC_VER) |
809 | /* Return the length of YYSTR. */ |
896 | static YYSIZE_T |
- | |
897 | yystrlen (const char *yystr) |
- | |
898 | #else |
- | |
899 | static YYSIZE_T |
- | |
900 | yystrlen (yystr) |
- | |
901 | const char *yystr; |
810 | static YYSIZE_T |
902 | #endif |
811 | yystrlen (const char *yystr) |
903 | { |
812 | { |
904 | YYSIZE_T yylen; |
813 | YYSIZE_T yylen; |
905 | for (yylen = 0; yystr[yylen]; yylen++) |
814 | for (yylen = 0; yystr[yylen]; yylen++) |
Line 913... | Line 822... | ||
913 | # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE |
822 | # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE |
914 | # define yystpcpy stpcpy |
823 | # define yystpcpy stpcpy |
915 | # else |
824 | # else |
916 | /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in |
825 | /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in |
917 | YYDEST. */ |
826 | YYDEST. */ |
918 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
919 | || defined __cplusplus || defined _MSC_VER) |
- | |
920 | static char * |
827 | static char * |
921 | yystpcpy (char *yydest, const char *yysrc) |
828 | yystpcpy (char *yydest, const char *yysrc) |
922 | #else |
- | |
923 | static char * |
- | |
924 | yystpcpy (yydest, yysrc) |
- | |
925 | char *yydest; |
- | |
926 | const char *yysrc; |
- | |
927 | #endif |
- | |
928 | { |
829 | { |
929 | char *yyd = yydest; |
830 | char *yyd = yydest; |
930 | const char *yys = yysrc; |
831 | const char *yys = yysrc; |
Line 931... | Line 832... | ||
931 | 832 | ||
Line 983... | Line 884... | ||
983 | 884 | ||
984 | return yystpcpy (yyres, yystr) - yyres; |
885 | return yystpcpy (yyres, yystr) - yyres; |
985 | } |
886 | } |
Line 986... | Line 887... | ||
986 | # endif |
887 | # endif |
987 | 888 | ||
- | 889 | /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message |
|
- | 890 | about the unexpected token YYTOKEN for the state stack whose top is |
|
988 | /* Copy into YYRESULT an error message about the unexpected token |
891 | YYSSP. |
989 | YYCHAR while in state YYSTATE. Return the number of bytes copied, |
892 | |
990 | including the terminating null byte. If YYRESULT is null, do not |
893 | Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is |
991 | copy anything; just return the number of bytes that would be |
894 | not large enough to hold the message. In that case, also set |
992 | copied. As a special case, return 0 if an ordinary "syntax error" |
- | |
993 | message will do. Return YYSIZE_MAXIMUM if overflow occurs during |
895 | *YYMSG_ALLOC to the required number of bytes. Return 2 if the |
994 | size calculation. */ |
896 | required number of bytes is too large to store. */ |
995 | static YYSIZE_T |
- | |
996 | yysyntax_error (char *yyresult, int yystate, int yychar) |
- | |
997 | { |
- | |
998 | int yyn = yypact[yystate]; |
897 | static int |
999 | - | ||
1000 | if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) |
- | |
1001 | return 0; |
898 | yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, |
1002 | else |
- | |
1003 | { |
899 | yytype_int16 *yyssp, int yytoken) |
1004 | int yytype = YYTRANSLATE (yychar); |
900 | { |
1005 | YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); |
- | |
1006 | YYSIZE_T yysize = yysize0; |
- | |
1007 | YYSIZE_T yysize1; |
901 | YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]); |
- | 902 | YYSIZE_T yysize = yysize0; |
|
- | 903 | enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; |
|
- | 904 | /* Internationalized format string. */ |
|
1008 | int yysize_overflow = 0; |
905 | const char *yyformat = YY_NULL; |
- | 906 | /* Arguments of yyformat. */ |
|
- | 907 | char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; |
|
1009 | enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; |
908 | /* Number of reported tokens (one for the "unexpected", one per |
1010 | char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; |
909 | "expected"). */ |
1011 | int yyx; |
910 | int yycount = 0; |
1012 | 911 | ||
1013 | # if 0 |
912 | /* There are many possibilities here to consider: |
- | 913 | - If this state is a consistent state with a default action, then |
|
1014 | /* This is so xgettext sees the translatable formats that are |
914 | the only way this function was invoked is if the default action |
1015 | constructed on the fly. */ |
915 | is an error action. In that case, don't check for expected |
1016 | YY_("syntax error, unexpected %s"); |
916 | tokens because there are none. |
1017 | YY_("syntax error, unexpected %s, expecting %s"); |
917 | - The only way there can be no lookahead present (in yychar) is if |
1018 | YY_("syntax error, unexpected %s, expecting %s or %s"); |
918 | this state is a consistent state with a default action. Thus, |
1019 | YY_("syntax error, unexpected %s, expecting %s or %s or %s"); |
- | |
1020 | YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); |
919 | detecting the absence of a lookahead is sufficient to determine |
- | 920 | that there is no unexpected or expected token to report. In that |
|
- | 921 | case, just report a simple "syntax error". |
|
- | 922 | - Don't assume there isn't a lookahead just because this state is a |
|
1021 | # endif |
923 | consistent state with a default action. There might have been a |
1022 | char *yyfmt; |
924 | previous inconsistent state, consistent state with a non-default |
- | 925 | action, or user semantic action that manipulated yychar. |
|
1023 | char const *yyf; |
926 | - Of course, the expected token list depends on states to have |
1024 | static char const yyunexpected[] = "syntax error, unexpected %s"; |
927 | correct lookahead information, and it depends on the parser not |
1025 | static char const yyexpecting[] = ", expecting %s"; |
928 | to perform extra reductions after fetching a lookahead from the |
- | 929 | scanner and before detecting a syntax error. Thus, state merging |
|
- | 930 | (from LALR or IELR) and default reductions corrupt the expected |
|
1026 | static char const yyor[] = " or %s"; |
931 | token list. However, the list is correct for canonical LR with |
- | 932 | one exception: it will still contain any token that will not be |
|
1027 | char yyformat[sizeof yyunexpected |
933 | accepted due to an error action in a later state. |
- | 934 | */ |
|
1028 | + sizeof yyexpecting - 1 |
935 | if (yytoken != YYEMPTY) |
1029 | + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) |
936 | { |
- | 937 | int yyn = yypact[*yyssp]; |
|
1030 | * (sizeof yyor - 1))]; |
938 | yyarg[yycount++] = yytname[yytoken]; |
1031 | char const *yyprefix = yyexpecting; |
939 | if (!yypact_value_is_default (yyn)) |
1032 | 940 | { |
|
- | 941 | /* Start YYX at -YYN if negative to avoid negative indexes in |
|
1033 | /* Start YYX at -YYN if negative to avoid negative indexes in |
942 | YYCHECK. In other words, skip the first -YYN actions for |
1034 | YYCHECK. */ |
- | |
1035 | int yyxbegin = yyn < 0 ? -yyn : 0; |
943 | this state because they are default actions. */ |
1036 | 944 | int yyxbegin = yyn < 0 ? -yyn : 0; |
|
1037 | /* Stay within bounds of both yycheck and yytname. */ |
945 | /* Stay within bounds of both yycheck and yytname. */ |
1038 | int yychecklim = YYLAST - yyn + 1; |
946 | int yychecklim = YYLAST - yyn + 1; |
1039 | int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; |
- | |
1040 | int yycount = 1; |
- | |
1041 | - | ||
Line 1042... | Line 947... | ||
1042 | yyarg[0] = yytname[yytype]; |
947 | int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; |
1043 | yyfmt = yystpcpy (yyformat, yyunexpected); |
948 | int yyx; |
- | 949 | ||
1044 | 950 | for (yyx = yyxbegin; yyx < yyxend; ++yyx) |
|
1045 | for (yyx = yyxbegin; yyx < yyxend; ++yyx) |
951 | if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR |
1046 | if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) |
952 | && !yytable_value_is_error (yytable[yyx + yyn])) |
1047 | { |
953 | { |
1048 | if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) |
954 | if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) |
1049 | { |
- | |
1050 | yycount = 1; |
955 | { |
1051 | yysize = yysize0; |
956 | yycount = 1; |
1052 | yyformat[sizeof yyunexpected - 1] = '\0'; |
957 | yysize = yysize0; |
- | 958 | break; |
|
1053 | break; |
959 | } |
1054 | } |
960 | yyarg[yycount++] = yytname[yyx]; |
- | 961 | { |
|
- | 962 | YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]); |
|
1055 | yyarg[yycount++] = yytname[yyx]; |
963 | if (! (yysize <= yysize1 |
1056 | yysize1 = yysize + yytnamerr (0, yytname[yyx]); |
964 | && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) |
1057 | yysize_overflow |= (yysize1 < yysize); |
965 | return 2; |
- | 966 | yysize = yysize1; |
|
1058 | yysize = yysize1; |
967 | } |
Line 1059... | Line 968... | ||
1059 | yyfmt = yystpcpy (yyfmt, yyprefix); |
968 | } |
- | 969 | } |
|
- | 970 | } |
|
1060 | yyprefix = yyor; |
971 | |
1061 | } |
972 | switch (yycount) |
1062 | 973 | { |
|
- | 974 | # define YYCASE_(N, S) \ |
|
- | 975 | case N: \ |
|
- | 976 | yyformat = S; \ |
|
- | 977 | break |
|
- | 978 | YYCASE_(0, YY_("syntax error")); |
|
- | 979 | YYCASE_(1, YY_("syntax error, unexpected %s")); |
|
- | 980 | YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); |
|
- | 981 | YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); |
|
Line -... | Line 982... | ||
- | 982 | YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); |
|
- | 983 | YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); |
|
- | 984 | # undef YYCASE_ |
|
1063 | yyf = YY_(yyformat); |
985 | } |
1064 | yysize1 = yysize + yystrlen (yyf); |
986 | |
- | 987 | { |
|
Line 1065... | Line 988... | ||
1065 | yysize_overflow |= (yysize1 < yysize); |
988 | YYSIZE_T yysize1 = yysize + yystrlen (yyformat); |
1066 | yysize = yysize1; |
989 | if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) |
- | 990 | return 2; |
|
- | 991 | yysize = yysize1; |
|
- | 992 | } |
|
- | 993 | ||
- | 994 | if (*yymsg_alloc < yysize) |
|
- | 995 | { |
|
- | 996 | *yymsg_alloc = 2 * yysize; |
|
1067 | 997 | if (! (yysize <= *yymsg_alloc |
|
1068 | if (yysize_overflow) |
998 | && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) |
1069 | return YYSIZE_MAXIMUM; |
999 | *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; |
1070 | - | ||
1071 | if (yyresult) |
- | |
1072 | { |
- | |
1073 | /* Avoid sprintf, as that infringes on the user's name space. |
1000 | return 1; |
- | 1001 | } |
|
- | 1002 | ||
- | 1003 | /* Avoid sprintf, as that infringes on the user's name space. |
|
1074 | Don't have undefined behavior even if the translation |
1004 | Don't have undefined behavior even if the translation |
1075 | produced a string with the wrong number of "%s"s. */ |
1005 | produced a string with the wrong number of "%s"s. */ |
1076 | char *yyp = yyresult; |
1006 | { |
1077 | int yyi = 0; |
1007 | char *yyp = *yymsg; |
1078 | while ((*yyp = *yyf) != '\0') |
1008 | int yyi = 0; |
1079 | { |
1009 | while ((*yyp = *yyformat) != '\0') |
1080 | if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) |
1010 | if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) |
1081 | { |
1011 | { |
1082 | yyp += yytnamerr (yyp, yyarg[yyi++]); |
1012 | yyp += yytnamerr (yyp, yyarg[yyi++]); |
1083 | yyf += 2; |
- | |
1084 | } |
- | |
1085 | else |
1013 | yyformat += 2; |
1086 | { |
- | |
1087 | yyp++; |
1014 | } |
- | 1015 | else |
|
1088 | yyf++; |
1016 | { |
1089 | } |
1017 | yyp++; |
1090 | } |
1018 | yyformat++; |
1091 | } |
- | |
1092 | return yysize; |
1019 | } |
1093 | } |
1020 | } |
1094 | } |
1021 | return 0; |
Line 1095... | Line -... | ||
1095 | #endif /* YYERROR_VERBOSE */ |
- | |
1096 | - | ||
1097 | - | ||
1098 | /*-----------------------------------------------. |
1022 | } |
1099 | | Release the memory associated to this symbol. | |
1023 | #endif /* YYERROR_VERBOSE */ |
1100 | `-----------------------------------------------*/ |
- | |
1101 | - | ||
1102 | /*ARGSUSED*/ |
- | |
1103 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
1104 | || defined __cplusplus || defined _MSC_VER) |
- | |
1105 | static void |
- | |
1106 | yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) |
- | |
1107 | #else |
1024 | |
1108 | static void |
1025 | /*-----------------------------------------------. |
1109 | yydestruct (yymsg, yytype, yyvaluep) |
- | |
1110 | const char *yymsg; |
1026 | | Release the memory associated to this symbol. | |
1111 | int yytype; |
1027 | `-----------------------------------------------*/ |
1112 | YYSTYPE *yyvaluep; |
1028 | |
Line -... | Line 1029... | ||
- | 1029 | static void |
|
1113 | #endif |
1030 | yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) |
1114 | { |
- | |
1115 | YYUSE (yyvaluep); |
- | |
1116 | 1031 | { |
|
1117 | if (!yymsg) |
- | |
1118 | yymsg = "Deleting"; |
- | |
1119 | YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); |
1032 | YYUSE (yyvaluep); |
1120 | 1033 | if (!yymsg) |
|
Line 1121... | Line -... | ||
1121 | switch (yytype) |
- | |
1122 | { |
- | |
1123 | - | ||
1124 | default: |
- | |
1125 | break; |
- | |
1126 | } |
- | |
1127 | } |
- | |
1128 | - | ||
1129 | - | ||
1130 | /* Prevent warnings from -Wmissing-prototypes. */ |
- | |
1131 | - | ||
1132 | #ifdef YYPARSE_PARAM |
- | |
1133 | #if defined __STDC__ || defined __cplusplus |
- | |
1134 | int yyparse (void *YYPARSE_PARAM); |
- | |
1135 | #else |
- | |
Line 1136... | Line -... | ||
1136 | int yyparse (); |
- | |
1137 | #endif |
1034 | yymsg = "Deleting"; |
1138 | #else /* ! YYPARSE_PARAM */ |
1035 | YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); |
Line 1139... | Line 1036... | ||
1139 | #if defined __STDC__ || defined __cplusplus |
1036 | |
1140 | int yyparse (void); |
1037 | YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
1141 | #else |
- | |
1142 | int yyparse (); |
1038 | YYUSE (yytype); |
1143 | #endif |
1039 | YY_IGNORE_MAYBE_UNINITIALIZED_END |
Line 1144... | Line -... | ||
1144 | #endif /* ! YYPARSE_PARAM */ |
- | |
1145 | 1040 | } |
|
1146 | 1041 | ||
1147 | 1042 | ||
Line 1148... | Line -... | ||
1148 | /* The look-ahead symbol. */ |
- | |
1149 | int yychar; |
- | |
1150 | - | ||
1151 | /* The semantic value of the look-ahead symbol. */ |
- | |
1152 | YYSTYPE yylval; |
- | |
1153 | - | ||
1154 | /* Number of syntax errors so far. */ |
- | |
1155 | int yynerrs; |
- | |
1156 | - | ||
1157 | - | ||
1158 | - | ||
1159 | /*----------. |
- | |
1160 | | yyparse. | |
- | |
1161 | `----------*/ |
1043 | |
1162 | 1044 | ||
1163 | #ifdef YYPARSE_PARAM |
- | |
1164 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
- | |
1165 | || defined __cplusplus || defined _MSC_VER) |
- | |
1166 | int |
- | |
1167 | yyparse (void *YYPARSE_PARAM) |
- | |
1168 | #else |
- | |
1169 | int |
1045 | /* The lookahead symbol. */ |
1170 | yyparse (YYPARSE_PARAM) |
- | |
1171 | void *YYPARSE_PARAM; |
1046 | int yychar; |
1172 | #endif |
- | |
1173 | #else /* ! YYPARSE_PARAM */ |
- | |
1174 | #if (defined __STDC__ || defined __C99__FUNC__ \ |
1047 | |
1175 | || defined __cplusplus || defined _MSC_VER) |
1048 | /* The semantic value of the lookahead symbol. */ |
1176 | int |
- | |
1177 | yyparse (void) |
- | |
1178 | #else |
- | |
1179 | int |
- | |
1180 | yyparse () |
- | |
1181 | - | ||
1182 | #endif |
- | |
1183 | #endif |
- | |
Line 1184... | Line 1049... | ||
1184 | { |
1049 | YYSTYPE yylval; |
1185 | 1050 | /* Number of syntax errors so far. */ |
|
1186 | int yystate; |
1051 | int yynerrs; |
1187 | int yyn; |
- | |
Line 1188... | Line 1052... | ||
1188 | int yyresult; |
1052 | |
1189 | /* Number of tokens to shift before error messages enabled. */ |
1053 | |
Line 1190... | Line 1054... | ||
1190 | int yyerrstatus; |
1054 | /*----------. |
1191 | /* Look-ahead token as an internal (translated) token number. */ |
1055 | | yyparse. | |
1192 | int yytoken = 0; |
1056 | `----------*/ |
1193 | #if YYERROR_VERBOSE |
1057 | |
Line 1194... | Line 1058... | ||
1194 | /* Buffer for error messages, and its allocated size. */ |
1058 | int |
1195 | char yymsgbuf[128]; |
1059 | yyparse (void) |
1196 | char *yymsg = yymsgbuf; |
1060 | { |
1197 | YYSIZE_T yymsg_alloc = sizeof yymsgbuf; |
1061 | int yystate; |
Line -... | Line 1062... | ||
- | 1062 | /* Number of tokens to shift before error messages enabled. */ |
|
Line 1198... | Line 1063... | ||
1198 | #endif |
1063 | int yyerrstatus; |
- | 1064 | ||
1199 | 1065 | /* The stacks and their tools: |
|
1200 | /* Three stacks and their tools: |
- | |
1201 | `yyss': related to states, |
1066 | 'yyss': related to states. |
1202 | `yyvs': related to semantic values, |
- | |
1203 | `yyls': related to locations. |
1067 | 'yyvs': related to semantic values. |
1204 | 1068 | ||
1205 | Refer to the stacks thru separate pointers, to allow yyoverflow |
1069 | Refer to the stacks through separate pointers, to allow yyoverflow |
Line -... | Line 1070... | ||
- | 1070 | to reallocate them elsewhere. */ |
|
- | 1071 | ||
- | 1072 | /* The state stack. */ |
|
- | 1073 | yytype_int16 yyssa[YYINITDEPTH]; |
|
- | 1074 | yytype_int16 *yyss; |
|
- | 1075 | yytype_int16 *yyssp; |
|
- | 1076 | ||
- | 1077 | /* The semantic value stack. */ |
|
Line 1206... | Line 1078... | ||
1206 | to reallocate them elsewhere. */ |
1078 | YYSTYPE yyvsa[YYINITDEPTH]; |
1207 | 1079 | YYSTYPE *yyvs; |
|
1208 | /* The state stack. */ |
1080 | YYSTYPE *yyvsp; |
Line -... | Line 1081... | ||
- | 1081 | ||
- | 1082 | YYSIZE_T yystacksize; |
|
- | 1083 | ||
- | 1084 | int yyn; |
|
1209 | yytype_int16 yyssa[YYINITDEPTH]; |
1085 | int yyresult; |
Line 1210... | Line 1086... | ||
1210 | yytype_int16 *yyss = yyssa; |
1086 | /* Lookahead token as an internal (translated) token number. */ |
1211 | yytype_int16 *yyssp; |
1087 | int yytoken = 0; |
1212 | 1088 | /* The variables used to return semantic value and location from the |
|
1213 | /* The semantic value stack. */ |
1089 | action routines. */ |
1214 | YYSTYPE yyvsa[YYINITDEPTH]; |
- | |
1215 | YYSTYPE *yyvs = yyvsa; |
- | |
1216 | YYSTYPE *yyvsp; |
- | |
1217 | - | ||
1218 | - | ||
1219 | - | ||
1220 | #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) |
- | |
1221 | - | ||
1222 | YYSIZE_T yystacksize = YYINITDEPTH; |
- | |
1223 | 1090 | YYSTYPE yyval; |
|
Line 1224... | Line 1091... | ||
1224 | /* The variables used to return semantic value and location from the |
1091 | |
1225 | action routines. */ |
1092 | #if YYERROR_VERBOSE |
1226 | YYSTYPE yyval; |
1093 | /* Buffer for error messages, and its allocated size. */ |
Line 1269... | Line 1136... | ||
1269 | these so that the &'s don't force the real ones into |
1136 | these so that the &'s don't force the real ones into |
1270 | memory. */ |
1137 | memory. */ |
1271 | YYSTYPE *yyvs1 = yyvs; |
1138 | YYSTYPE *yyvs1 = yyvs; |
1272 | yytype_int16 *yyss1 = yyss; |
1139 | yytype_int16 *yyss1 = yyss; |
Line 1273... | Line -... | ||
1273 | - | ||
1274 | 1140 | ||
1275 | /* Each stack pointer address is followed by the size of the |
1141 | /* Each stack pointer address is followed by the size of the |
1276 | data in use in that stack, in bytes. This used to be a |
1142 | data in use in that stack, in bytes. This used to be a |
1277 | conditional around just the two extra args, but that might |
1143 | conditional around just the two extra args, but that might |
1278 | be undefined if yyoverflow is a macro. */ |
1144 | be undefined if yyoverflow is a macro. */ |
1279 | yyoverflow (YY_("memory exhausted"), |
1145 | yyoverflow (YY_("memory exhausted"), |
1280 | &yyss1, yysize * sizeof (*yyssp), |
1146 | &yyss1, yysize * sizeof (*yyssp), |
1281 | &yyvs1, yysize * sizeof (*yyvsp), |
- | |
1282 | 1147 | &yyvs1, yysize * sizeof (*yyvsp), |
|
Line 1283... | Line 1148... | ||
1283 | &yystacksize); |
1148 | &yystacksize); |
1284 | 1149 | ||
1285 | yyss = yyss1; |
1150 | yyss = yyss1; |
Line 1300... | Line 1165... | ||
1300 | yytype_int16 *yyss1 = yyss; |
1165 | yytype_int16 *yyss1 = yyss; |
1301 | union yyalloc *yyptr = |
1166 | union yyalloc *yyptr = |
1302 | (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); |
1167 | (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); |
1303 | if (! yyptr) |
1168 | if (! yyptr) |
1304 | goto yyexhaustedlab; |
1169 | goto yyexhaustedlab; |
1305 | YYSTACK_RELOCATE (yyss); |
1170 | YYSTACK_RELOCATE (yyss_alloc, yyss); |
1306 | YYSTACK_RELOCATE (yyvs); |
1171 | YYSTACK_RELOCATE (yyvs_alloc, yyvs); |
1307 | - | ||
1308 | # undef YYSTACK_RELOCATE |
1172 | # undef YYSTACK_RELOCATE |
1309 | if (yyss1 != yyssa) |
1173 | if (yyss1 != yyssa) |
1310 | YYSTACK_FREE (yyss1); |
1174 | YYSTACK_FREE (yyss1); |
1311 | } |
1175 | } |
1312 | # endif |
1176 | # endif |
1313 | #endif /* no yyoverflow */ |
1177 | #endif /* no yyoverflow */ |
Line 1314... | Line 1178... | ||
1314 | 1178 | ||
1315 | yyssp = yyss + yysize - 1; |
1179 | yyssp = yyss + yysize - 1; |
Line 1316... | Line -... | ||
1316 | yyvsp = yyvs + yysize - 1; |
- | |
1317 | 1180 | yyvsp = yyvs + yysize - 1; |
|
1318 | 1181 | ||
Line 1319... | Line 1182... | ||
1319 | YYDPRINTF ((stderr, "Stack size increased to %lu\n", |
1182 | YYDPRINTF ((stderr, "Stack size increased to %lu\n", |
1320 | (unsigned long int) yystacksize)); |
1183 | (unsigned long int) yystacksize)); |
1321 | 1184 | ||
Line 1322... | Line 1185... | ||
1322 | if (yyss + yystacksize - 1 <= yyssp) |
1185 | if (yyss + yystacksize - 1 <= yyssp) |
Line -... | Line 1186... | ||
- | 1186 | YYABORT; |
|
- | 1187 | } |
|
- | 1188 | ||
1323 | YYABORT; |
1189 | YYDPRINTF ((stderr, "Entering state %d\n", yystate)); |
Line 1324... | Line 1190... | ||
1324 | } |
1190 | |
1325 | 1191 | if (yystate == YYFINAL) |
|
1326 | YYDPRINTF ((stderr, "Entering state %d\n", yystate)); |
1192 | YYACCEPT; |
1327 | 1193 | ||
Line 1328... | Line 1194... | ||
1328 | goto yybackup; |
1194 | goto yybackup; |
1329 | 1195 | ||
Line 1330... | Line 1196... | ||
1330 | /*-----------. |
1196 | /*-----------. |
1331 | | yybackup. | |
1197 | | yybackup. | |
1332 | `-----------*/ |
1198 | `-----------*/ |
1333 | yybackup: |
1199 | yybackup: |
Line 1334... | Line 1200... | ||
1334 | 1200 | ||
Line 1335... | Line 1201... | ||
1335 | /* Do appropriate processing given the current state. Read a |
1201 | /* Do appropriate processing given the current state. Read a |
1336 | look-ahead token if we need one and don't already have one. */ |
1202 | lookahead token if we need one and don't already have one. */ |
1337 | 1203 | ||
1338 | /* First try to decide what to do without reference to look-ahead token. */ |
1204 | /* First try to decide what to do without reference to lookahead token. */ |
1339 | yyn = yypact[yystate]; |
1205 | yyn = yypact[yystate]; |
1340 | if (yyn == YYPACT_NINF) |
1206 | if (yypact_value_is_default (yyn)) |
Line 1341... | Line 1207... | ||
1341 | goto yydefault; |
1207 | goto yydefault; |
1342 | 1208 | ||
1343 | /* Not known => get a look-ahead token if don't already have one. */ |
1209 | /* Not known => get a lookahead token if don't already have one. */ |
Line 1366... | Line 1232... | ||
1366 | if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) |
1232 | if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) |
1367 | goto yydefault; |
1233 | goto yydefault; |
1368 | yyn = yytable[yyn]; |
1234 | yyn = yytable[yyn]; |
1369 | if (yyn <= 0) |
1235 | if (yyn <= 0) |
1370 | { |
1236 | { |
1371 | if (yyn == 0 || yyn == YYTABLE_NINF) |
1237 | if (yytable_value_is_error (yyn)) |
1372 | goto yyerrlab; |
1238 | goto yyerrlab; |
1373 | yyn = -yyn; |
1239 | yyn = -yyn; |
1374 | goto yyreduce; |
1240 | goto yyreduce; |
1375 | } |
1241 | } |
Line 1376... | Line -... | ||
1376 | - | ||
1377 | if (yyn == YYFINAL) |
- | |
1378 | YYACCEPT; |
- | |
1379 | 1242 | ||
1380 | /* Count tokens shifted since error; after three, turn off error |
1243 | /* Count tokens shifted since error; after three, turn off error |
1381 | status. */ |
1244 | status. */ |
1382 | if (yyerrstatus) |
1245 | if (yyerrstatus) |
Line 1383... | Line 1246... | ||
1383 | yyerrstatus--; |
1246 | yyerrstatus--; |
1384 | 1247 | ||
Line 1385... | Line 1248... | ||
1385 | /* Shift the look-ahead token. */ |
1248 | /* Shift the lookahead token. */ |
1386 | YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); |
- | |
1387 | 1249 | YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); |
|
Line 1388... | Line 1250... | ||
1388 | /* Discard the shifted token unless it is eof. */ |
1250 | |
- | 1251 | /* Discard the shifted token. */ |
|
1389 | if (yychar != YYEOF) |
1252 | yychar = YYEMPTY; |
- | 1253 | ||
Line 1390... | Line 1254... | ||
1390 | yychar = YYEMPTY; |
1254 | yystate = yyn; |
Line 1391... | Line 1255... | ||
1391 | 1255 | YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
|
Line 1411... | Line 1275... | ||
1411 | yyreduce: |
1275 | yyreduce: |
1412 | /* yyn is the number of a rule to reduce with. */ |
1276 | /* yyn is the number of a rule to reduce with. */ |
1413 | yylen = yyr2[yyn]; |
1277 | yylen = yyr2[yyn]; |
Line 1414... | Line 1278... | ||
1414 | 1278 | ||
1415 | /* If YYLEN is nonzero, implement the default value of the action: |
1279 | /* If YYLEN is nonzero, implement the default value of the action: |
Line 1416... | Line 1280... | ||
1416 | `$$ = $1'. |
1280 | '$$ = $1'. |
1417 | 1281 | ||
1418 | Otherwise, the following line sets YYVAL to garbage. |
1282 | Otherwise, the following line sets YYVAL to garbage. |
1419 | This behavior is undocumented and Bison |
1283 | This behavior is undocumented and Bison |
Line 1425... | Line 1289... | ||
1425 | 1289 | ||
1426 | YY_REDUCE_PRINT (yyn); |
1290 | YY_REDUCE_PRINT (yyn); |
1427 | switch (yyn) |
1291 | switch (yyn) |
1428 | { |
1292 | { |
1429 | case 2: |
1293 | case 2: |
1430 | #line 69 "arparse.y" |
1294 | #line 68 "arparse.y" /* yacc.c:1661 */ |
- | 1295 | { prompt(); } |
|
1431 | { prompt(); } |
1296 | #line 1297 "arparse.c" /* yacc.c:1661 */ |
Line 1432... | Line 1297... | ||
1432 | break; |
1297 | break; |
1433 | 1298 | ||
1434 | case 6: |
1299 | case 6: |
- | 1300 | #line 77 "arparse.y" /* yacc.c:1661 */ |
|
1435 | #line 78 "arparse.y" |
1301 | { prompt(); } |
Line 1436... | Line 1302... | ||
1436 | { prompt(); } |
1302 | #line 1303 "arparse.c" /* yacc.c:1661 */ |
1437 | break; |
1303 | break; |
1438 | 1304 | ||
- | 1305 | case 19: |
|
1439 | case 19: |
1306 | #line 93 "arparse.y" /* yacc.c:1661 */ |
Line 1440... | Line 1307... | ||
1440 | #line 94 "arparse.y" |
1307 | { ar_end(); return 0; } |
1441 | { ar_end(); return 0; } |
1308 | #line 1309 "arparse.c" /* yacc.c:1661 */ |
1442 | break; |
1309 | break; |
- | 1310 | ||
1443 | 1311 | case 21: |
|
Line 1444... | Line 1312... | ||
1444 | case 21: |
1312 | #line 95 "arparse.y" /* yacc.c:1661 */ |
1445 | #line 96 "arparse.y" |
1313 | { yyerror("foo"); } |
1446 | { yyerror("foo"); } |
1314 | #line 1315 "arparse.c" /* yacc.c:1661 */ |
- | 1315 | break; |
|
1447 | break; |
1316 | |
Line 1448... | Line 1317... | ||
1448 | 1317 | case 23: |
|
1449 | case 23: |
1318 | #line 102 "arparse.y" /* yacc.c:1661 */ |
1450 | #line 103 "arparse.y" |
1319 | { ar_extract((yyvsp[0].list)); } |
- | 1320 | #line 1321 "arparse.c" /* yacc.c:1661 */ |
|
1451 | { ar_extract((yyvsp[(2) - (2)].list)); } |
1321 | break; |
Line 1452... | Line 1322... | ||
1452 | break; |
1322 | |
1453 | 1323 | case 24: |
|
1454 | case 24: |
1324 | #line 107 "arparse.y" /* yacc.c:1661 */ |
- | 1325 | { ar_replace((yyvsp[0].list)); } |
|
1455 | #line 108 "arparse.y" |
1326 | #line 1327 "arparse.c" /* yacc.c:1661 */ |
Line 1456... | Line 1327... | ||
1456 | { ar_replace((yyvsp[(2) - (2)].list)); } |
1327 | break; |
1457 | break; |
1328 | |
1458 | 1329 | case 25: |
|
- | 1330 | #line 112 "arparse.y" /* yacc.c:1661 */ |
|
1459 | case 25: |
1331 | { ar_clear(); } |
Line 1460... | Line 1332... | ||
1460 | #line 113 "arparse.y" |
1332 | #line 1333 "arparse.c" /* yacc.c:1661 */ |
1461 | { ar_clear(); } |
1333 | break; |
1462 | break; |
1334 | |
- | 1335 | case 26: |
|
1463 | 1336 | #line 117 "arparse.y" /* yacc.c:1661 */ |
|
Line 1464... | Line 1337... | ||
1464 | case 26: |
1337 | { ar_delete((yyvsp[0].list)); } |
1465 | #line 118 "arparse.y" |
1338 | #line 1339 "arparse.c" /* yacc.c:1661 */ |
1466 | { ar_delete((yyvsp[(2) - (2)].list)); } |
1339 | break; |
- | 1340 | ||
1467 | break; |
1341 | case 27: |
Line 1468... | Line 1342... | ||
1468 | 1342 | #line 121 "arparse.y" /* yacc.c:1661 */ |
|
1469 | case 27: |
1343 | { ar_addmod((yyvsp[0].list)); } |
1470 | #line 122 "arparse.y" |
1344 | #line 1345 "arparse.c" /* yacc.c:1661 */ |
- | 1345 | break; |
|
1471 | { ar_addmod((yyvsp[(2) - (2)].list)); } |
1346 | |
Line 1472... | Line 1347... | ||
1472 | break; |
1347 | case 28: |
1473 | 1348 | #line 126 "arparse.y" /* yacc.c:1661 */ |
|
1474 | case 28: |
1349 | { ar_list(); } |
- | 1350 | #line 1351 "arparse.c" /* yacc.c:1661 */ |
|
1475 | #line 127 "arparse.y" |
1351 | break; |
Line 1476... | Line 1352... | ||
1476 | { ar_list(); } |
1352 | |
1477 | break; |
1353 | case 29: |
1478 | 1354 | #line 131 "arparse.y" /* yacc.c:1661 */ |
|
- | 1355 | { ar_save(); } |
|
1479 | case 29: |
1356 | #line 1357 "arparse.c" /* yacc.c:1661 */ |
Line 1480... | Line 1357... | ||
1480 | #line 132 "arparse.y" |
1357 | break; |
1481 | { ar_save(); } |
1358 | |
1482 | break; |
1359 | case 30: |
- | 1360 | #line 138 "arparse.y" /* yacc.c:1661 */ |
|
1483 | 1361 | { ar_open((yyvsp[0].name),0); } |
|
Line 1484... | Line 1362... | ||
1484 | case 30: |
1362 | #line 1363 "arparse.c" /* yacc.c:1661 */ |
1485 | #line 139 "arparse.y" |
1363 | break; |
1486 | { ar_open((yyvsp[(2) - (2)].name),0); } |
1364 | |
- | 1365 | case 31: |
|
1487 | break; |
1366 | #line 143 "arparse.y" /* yacc.c:1661 */ |
Line 1488... | Line 1367... | ||
1488 | 1367 | { ar_open((yyvsp[0].name),1); } |
|
1489 | case 31: |
1368 | #line 1369 "arparse.c" /* yacc.c:1661 */ |
1490 | #line 144 "arparse.y" |
1369 | break; |
- | 1370 | ||
1491 | { ar_open((yyvsp[(2) - (2)].name),1); } |
1371 | case 32: |
Line 1492... | Line 1372... | ||
1492 | break; |
1372 | #line 149 "arparse.y" /* yacc.c:1661 */ |
1493 | 1373 | { ar_addlib((yyvsp[-1].name),(yyvsp[0].list)); } |
|
1494 | case 32: |
1374 | #line 1375 "arparse.c" /* yacc.c:1661 */ |
- | 1375 | break; |
|
1495 | #line 150 "arparse.y" |
1376 | |
Line 1496... | Line 1377... | ||
1496 | { ar_addlib((yyvsp[(2) - (3)].name),(yyvsp[(3) - (3)].list)); } |
1377 | case 33: |
1497 | break; |
1378 | #line 153 "arparse.y" /* yacc.c:1661 */ |
1498 | 1379 | { ar_directory((yyvsp[-2].name), (yyvsp[-1].list), (yyvsp[0].name)); } |
|
- | 1380 | #line 1381 "arparse.c" /* yacc.c:1661 */ |
|
1499 | case 33: |
1381 | break; |
Line 1500... | Line 1382... | ||
1500 | #line 154 "arparse.y" |
1382 | |
1501 | { ar_directory((yyvsp[(2) - (4)].name), (yyvsp[(3) - (4)].list), (yyvsp[(4) - (4)].name)); } |
1383 | case 34: |
1502 | break; |
1384 | #line 160 "arparse.y" /* yacc.c:1661 */ |
- | 1385 | { (yyval.name) = (yyvsp[0].name); } |
|
1503 | 1386 | #line 1387 "arparse.c" /* yacc.c:1661 */ |
|
Line 1504... | Line 1387... | ||
1504 | case 34: |
1387 | break; |
1505 | #line 161 "arparse.y" |
1388 | |
1506 | { (yyval.name) = (yyvsp[(1) - (1)].name); } |
1389 | case 35: |
1507 | break; |
1390 | #line 161 "arparse.y" /* yacc.c:1661 */ |
1508 | 1391 | { (yyval.name) = 0; } |
|
1509 | case 35: |
1392 | #line 1393 "arparse.c" /* yacc.c:1661 */ |
1510 | #line 162 "arparse.y" |
1393 | break; |
- | 1394 | ||
1511 | { (yyval.name) = 0; } |
1395 | case 36: |
Line 1512... | Line 1396... | ||
1512 | break; |
1396 | #line 166 "arparse.y" /* yacc.c:1661 */ |
1513 | 1397 | { (yyval.list) = (yyvsp[-1].list); } |
|
1514 | case 36: |
1398 | #line 1399 "arparse.c" /* yacc.c:1661 */ |
- | 1399 | break; |
|
1515 | #line 167 "arparse.y" |
1400 | |
Line 1516... | Line 1401... | ||
1516 | { (yyval.list) = (yyvsp[(2) - (3)].list); } |
1401 | case 37: |
1517 | break; |
1402 | #line 168 "arparse.y" /* yacc.c:1661 */ |
1518 | 1403 | { (yyval.list) = 0; } |
|
- | 1404 | #line 1405 "arparse.c" /* yacc.c:1661 */ |
|
1519 | case 37: |
1405 | break; |
Line 1520... | Line -... | ||
1520 | #line 169 "arparse.y" |
- | |
1521 | { (yyval.list) = 0; } |
1406 | |
1522 | break; |
1407 | case 38: |
1523 | 1408 | #line 173 "arparse.y" /* yacc.c:1661 */ |
|
- | 1409 | { struct list *n = (struct list *) malloc(sizeof(struct list)); |
|
- | 1410 | n->next = (yyvsp[-2].list); |
|
- | 1411 | n->name = (yyvsp[0].name); |
|
- | 1412 | (yyval.list) = n; |
|
- | 1413 | } |
|
- | 1414 | #line 1415 "arparse.c" /* yacc.c:1661 */ |
|
- | 1415 | break; |
|
- | 1416 | ||
- | 1417 | case 39: |
|
- | 1418 | #line 178 "arparse.y" /* yacc.c:1661 */ |
|
- | 1419 | { (yyval.list) = 0; } |
|
1524 | case 38: |
1420 | #line 1421 "arparse.c" /* yacc.c:1661 */ |
Line 1525... | Line 1421... | ||
1525 | #line 174 "arparse.y" |
1421 | break; |
1526 | { struct list *n = (struct list *) malloc(sizeof(struct list)); |
1422 | |
1527 | n->next = (yyvsp[(1) - (3)].list); |
1423 | case 42: |
Line 1528... | Line 1424... | ||
1528 | n->name = (yyvsp[(3) - (3)].name); |
1424 | #line 190 "arparse.y" /* yacc.c:1661 */ |
Line 1529... | Line -... | ||
1529 | (yyval.list) = n; |
- | |
1530 | } |
1425 | { verbose = !verbose; } |
1531 | break; |
1426 | #line 1427 "arparse.c" /* yacc.c:1661 */ |
1532 | 1427 | break; |
|
Line 1533... | Line 1428... | ||
1533 | case 39: |
1428 | |
Line 1567... | Line 1462... | ||
1567 | yystate = yydefgoto[yyn - YYNTOKENS]; |
1462 | yystate = yydefgoto[yyn - YYNTOKENS]; |
Line 1568... | Line 1463... | ||
1568 | 1463 | ||
Line 1569... | Line 1464... | ||
1569 | goto yynewstate; |
1464 | goto yynewstate; |
1570 | 1465 | ||
1571 | 1466 | ||
1572 | /*------------------------------------. |
1467 | /*--------------------------------------. |
- | 1468 | | yyerrlab -- here on detecting error. | |
|
- | 1469 | `--------------------------------------*/ |
|
- | 1470 | yyerrlab: |
|
- | 1471 | /* Make sure we have latest lookahead translation. See comments at |
|
1573 | | yyerrlab -- here on detecting error | |
1472 | user semantic actions for why this is necessary. */ |
1574 | `------------------------------------*/ |
1473 | yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar); |
1575 | yyerrlab: |
1474 | |
1576 | /* If not already recovering from an error, report this error. */ |
1475 | /* If not already recovering from an error, report this error. */ |
1577 | if (!yyerrstatus) |
1476 | if (!yyerrstatus) |
1578 | { |
1477 | { |
1579 | ++yynerrs; |
1478 | ++yynerrs; |
- | 1479 | #if ! YYERROR_VERBOSE |
|
- | 1480 | yyerror (YY_("syntax error")); |
|
1580 | #if ! YYERROR_VERBOSE |
1481 | #else |
- | 1482 | # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ |
|
1581 | yyerror (YY_("syntax error")); |
1483 | yyssp, yytoken) |
1582 | #else |
1484 | { |
- | 1485 | char const *yymsgp = YY_("syntax error"); |
|
- | 1486 | int yysyntax_error_status; |
|
- | 1487 | yysyntax_error_status = YYSYNTAX_ERROR; |
|
1583 | { |
1488 | if (yysyntax_error_status == 0) |
1584 | YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); |
- | |
1585 | if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) |
- | |
1586 | { |
- | |
1587 | YYSIZE_T yyalloc = 2 * yysize; |
1489 | yymsgp = yymsg; |
1588 | if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) |
1490 | else if (yysyntax_error_status == 1) |
1589 | yyalloc = YYSTACK_ALLOC_MAXIMUM; |
1491 | { |
1590 | if (yymsg != yymsgbuf) |
1492 | if (yymsg != yymsgbuf) |
1591 | YYSTACK_FREE (yymsg); |
- | |
1592 | yymsg = (char *) YYSTACK_ALLOC (yyalloc); |
- | |
1593 | if (yymsg) |
1493 | YYSTACK_FREE (yymsg); |
1594 | yymsg_alloc = yyalloc; |
1494 | yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); |
1595 | else |
1495 | if (!yymsg) |
1596 | { |
- | |
1597 | yymsg = yymsgbuf; |
- | |
1598 | yymsg_alloc = sizeof yymsgbuf; |
- | |
1599 | } |
- | |
1600 | } |
- | |
1601 | 1496 | { |
|
1602 | if (0 < yysize && yysize <= yymsg_alloc) |
- | |
1603 | { |
1497 | yymsg = yymsgbuf; |
1604 | (void) yysyntax_error (yymsg, yystate, yychar); |
1498 | yymsg_alloc = sizeof yymsgbuf; |
1605 | yyerror (yymsg); |
1499 | yysyntax_error_status = 2; |
1606 | } |
1500 | } |
1607 | else |
- | |
1608 | { |
1501 | else |
1609 | yyerror (YY_("syntax error")); |
1502 | { |
1610 | if (yysize != 0) |
1503 | yysyntax_error_status = YYSYNTAX_ERROR; |
- | 1504 | yymsgp = yymsg; |
|
- | 1505 | } |
|
- | 1506 | } |
|
- | 1507 | yyerror (yymsgp); |
|
- | 1508 | if (yysyntax_error_status == 2) |
|
1611 | goto yyexhaustedlab; |
1509 | goto yyexhaustedlab; |
1612 | } |
1510 | } |
Line 1613... | Line 1511... | ||
1613 | } |
1511 | # undef YYSYNTAX_ERROR |
1614 | #endif |
1512 | #endif |
1615 | } |
1513 | } |
1616 | 1514 | ||
Line 1617... | Line 1515... | ||
1617 | 1515 | ||
1618 | 1516 | ||
1619 | if (yyerrstatus == 3) |
1517 | if (yyerrstatus == 3) |
Line 1633... | Line 1531... | ||
1633 | yytoken, &yylval); |
1531 | yytoken, &yylval); |
1634 | yychar = YYEMPTY; |
1532 | yychar = YYEMPTY; |
1635 | } |
1533 | } |
1636 | } |
1534 | } |
Line 1637... | Line 1535... | ||
1637 | 1535 | ||
1638 | /* Else will try to reuse look-ahead token after shifting the error |
1536 | /* Else will try to reuse lookahead token after shifting the error |
1639 | token. */ |
1537 | token. */ |
Line 1640... | Line 1538... | ||
1640 | goto yyerrlab1; |
1538 | goto yyerrlab1; |
Line 1649... | Line 1547... | ||
1649 | YYERROR and the label yyerrorlab therefore never appears in user |
1547 | YYERROR and the label yyerrorlab therefore never appears in user |
1650 | code. */ |
1548 | code. */ |
1651 | if (/*CONSTCOND*/ 0) |
1549 | if (/*CONSTCOND*/ 0) |
1652 | goto yyerrorlab; |
1550 | goto yyerrorlab; |
Line 1653... | Line 1551... | ||
1653 | 1551 | ||
1654 | /* Do not reclaim the symbols of the rule which action triggered |
1552 | /* Do not reclaim the symbols of the rule whose action triggered |
1655 | this YYERROR. */ |
1553 | this YYERROR. */ |
1656 | YYPOPSTACK (yylen); |
1554 | YYPOPSTACK (yylen); |
1657 | yylen = 0; |
1555 | yylen = 0; |
1658 | YY_STACK_PRINT (yyss, yyssp); |
1556 | YY_STACK_PRINT (yyss, yyssp); |
Line 1667... | Line 1565... | ||
1667 | yyerrstatus = 3; /* Each real token shifted decrements this. */ |
1565 | yyerrstatus = 3; /* Each real token shifted decrements this. */ |
Line 1668... | Line 1566... | ||
1668 | 1566 | ||
1669 | for (;;) |
1567 | for (;;) |
1670 | { |
1568 | { |
1671 | yyn = yypact[yystate]; |
1569 | yyn = yypact[yystate]; |
1672 | if (yyn != YYPACT_NINF) |
1570 | if (!yypact_value_is_default (yyn)) |
1673 | { |
1571 | { |
1674 | yyn += YYTERROR; |
1572 | yyn += YYTERROR; |
1675 | if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) |
1573 | if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) |
1676 | { |
1574 | { |
Line 1690... | Line 1588... | ||
1690 | YYPOPSTACK (1); |
1588 | YYPOPSTACK (1); |
1691 | yystate = *yyssp; |
1589 | yystate = *yyssp; |
1692 | YY_STACK_PRINT (yyss, yyssp); |
1590 | YY_STACK_PRINT (yyss, yyssp); |
1693 | } |
1591 | } |
Line 1694... | Line 1592... | ||
1694 | 1592 | ||
1695 | if (yyn == YYFINAL) |
- | |
1696 | YYACCEPT; |
- | |
1697 | 1593 | YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN |
|
- | 1594 | *++yyvsp = yylval; |
|
Line 1698... | Line 1595... | ||
1698 | *++yyvsp = yylval; |
1595 | YY_IGNORE_MAYBE_UNINITIALIZED_END |
1699 | 1596 | ||
Line 1717... | Line 1614... | ||
1717 | `-----------------------------------*/ |
1614 | `-----------------------------------*/ |
1718 | yyabortlab: |
1615 | yyabortlab: |
1719 | yyresult = 1; |
1616 | yyresult = 1; |
1720 | goto yyreturn; |
1617 | goto yyreturn; |
Line 1721... | Line 1618... | ||
1721 | 1618 | ||
1722 | #ifndef yyoverflow |
1619 | #if !defined yyoverflow || YYERROR_VERBOSE |
1723 | /*-------------------------------------------------. |
1620 | /*-------------------------------------------------. |
1724 | | yyexhaustedlab -- memory exhaustion comes here. | |
1621 | | yyexhaustedlab -- memory exhaustion comes here. | |
1725 | `-------------------------------------------------*/ |
1622 | `-------------------------------------------------*/ |
1726 | yyexhaustedlab: |
1623 | yyexhaustedlab: |
1727 | yyerror (YY_("memory exhausted")); |
1624 | yyerror (YY_("memory exhausted")); |
1728 | yyresult = 2; |
1625 | yyresult = 2; |
1729 | /* Fall through. */ |
1626 | /* Fall through. */ |
Line 1730... | Line 1627... | ||
1730 | #endif |
1627 | #endif |
1731 | 1628 | ||
- | 1629 | yyreturn: |
|
- | 1630 | if (yychar != YYEMPTY) |
|
- | 1631 | { |
|
- | 1632 | /* Make sure we have latest lookahead translation. See comments at |
|
1732 | yyreturn: |
1633 | user semantic actions for why this is necessary. */ |
1733 | if (yychar != YYEOF && yychar != YYEMPTY) |
1634 | yytoken = YYTRANSLATE (yychar); |
- | 1635 | yydestruct ("Cleanup: discarding lookahead", |
|
1734 | yydestruct ("Cleanup: discarding lookahead", |
1636 | yytoken, &yylval); |
1735 | yytoken, &yylval); |
1637 | } |
1736 | /* Do not reclaim the symbols of the rule which action triggered |
1638 | /* Do not reclaim the symbols of the rule whose action triggered |
1737 | this YYABORT or YYACCEPT. */ |
1639 | this YYABORT or YYACCEPT. */ |
1738 | YYPOPSTACK (yylen); |
1640 | YYPOPSTACK (yylen); |
1739 | YY_STACK_PRINT (yyss, yyssp); |
1641 | YY_STACK_PRINT (yyss, yyssp); |
Line 1749... | Line 1651... | ||
1749 | #endif |
1651 | #endif |
1750 | #if YYERROR_VERBOSE |
1652 | #if YYERROR_VERBOSE |
1751 | if (yymsg != yymsgbuf) |
1653 | if (yymsg != yymsgbuf) |
1752 | YYSTACK_FREE (yymsg); |
1654 | YYSTACK_FREE (yymsg); |
1753 | #endif |
1655 | #endif |
1754 | /* Make sure YYID is used. */ |
- | |
1755 | return YYID (yyresult); |
1656 | return yyresult; |
1756 | } |
1657 | } |
1757 | - | ||
1758 | - | ||
1759 | #line 195 "arparse.y" |
1658 | #line 194 "arparse.y" /* yacc.c:1906 */ |
Line 1760... | Line 1659... | ||
1760 | 1659 | ||
1761 | 1660 | ||
1762 | static int |
1661 | static int |
1763 | yyerror (const char *x ATTRIBUTE_UNUSED) |
1662 | yyerror (const char *x ATTRIBUTE_UNUSED) |
Line 1764... | Line 1663... | ||
1764 | { |
1663 | { |
1765 | extern int linenumber; |
1664 | extern int linenumber; |
1766 | 1665 | ||
1767 | printf (_("Syntax error in archive script, line %d\n"), linenumber + 1); |
- |