1*c9ea9e7aSLionel Sambuc /* A Bison parser, made by GNU Bison 3.0.2. */
2*c9ea9e7aSLionel Sambuc
3*c9ea9e7aSLionel Sambuc /* Bison implementation for Yacc-like parsers in C
4*c9ea9e7aSLionel Sambuc
5*c9ea9e7aSLionel Sambuc Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc.
6*c9ea9e7aSLionel Sambuc
7*c9ea9e7aSLionel Sambuc This program is free software: you can redistribute it and/or modify
8*c9ea9e7aSLionel Sambuc it under the terms of the GNU General Public License as published by
9*c9ea9e7aSLionel Sambuc the Free Software Foundation, either version 3 of the License, or
10*c9ea9e7aSLionel Sambuc (at your option) any later version.
11*c9ea9e7aSLionel Sambuc
12*c9ea9e7aSLionel Sambuc This program is distributed in the hope that it will be useful,
13*c9ea9e7aSLionel Sambuc but WITHOUT ANY WARRANTY; without even the implied warranty of
14*c9ea9e7aSLionel Sambuc MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15*c9ea9e7aSLionel Sambuc GNU General Public License for more details.
16*c9ea9e7aSLionel Sambuc
17*c9ea9e7aSLionel Sambuc You should have received a copy of the GNU General Public License
18*c9ea9e7aSLionel Sambuc along with this program. If not, see <http://www.gnu.org/licenses/>. */
19*c9ea9e7aSLionel Sambuc
20*c9ea9e7aSLionel Sambuc /* As a special exception, you may create a larger work that contains
21*c9ea9e7aSLionel Sambuc part or all of the Bison parser skeleton and distribute that work
22*c9ea9e7aSLionel Sambuc under terms of your choice, so long as that work isn't itself a
23*c9ea9e7aSLionel Sambuc parser generator using the skeleton or a modified version thereof
24*c9ea9e7aSLionel Sambuc as a parser skeleton. Alternatively, if you modify or redistribute
25*c9ea9e7aSLionel Sambuc the parser skeleton itself, you may (at your option) remove this
26*c9ea9e7aSLionel Sambuc special exception, which will cause the skeleton and the resulting
27*c9ea9e7aSLionel Sambuc Bison output files to be licensed under the GNU General Public
28*c9ea9e7aSLionel Sambuc License without this special exception.
29*c9ea9e7aSLionel Sambuc
30*c9ea9e7aSLionel Sambuc This special exception was added by the Free Software Foundation in
31*c9ea9e7aSLionel Sambuc version 2.2 of Bison. */
32*c9ea9e7aSLionel Sambuc
33*c9ea9e7aSLionel Sambuc /* C LALR(1) parser skeleton written by Richard Stallman, by
34*c9ea9e7aSLionel Sambuc simplifying the original so-called "semantic" parser. */
35*c9ea9e7aSLionel Sambuc
36*c9ea9e7aSLionel Sambuc /* All symbols defined below should begin with yy or YY, to avoid
37*c9ea9e7aSLionel Sambuc infringing on user name space. This should be done even for local
38*c9ea9e7aSLionel Sambuc variables, as they might otherwise be expanded by user macros.
39*c9ea9e7aSLionel Sambuc There are some unavoidable exceptions within include files to
40*c9ea9e7aSLionel Sambuc define necessary library symbols; they are noted "INFRINGES ON
41*c9ea9e7aSLionel Sambuc USER NAME SPACE" below. */
42*c9ea9e7aSLionel Sambuc
43*c9ea9e7aSLionel Sambuc /* Identify Bison output. */
44*c9ea9e7aSLionel Sambuc #define YYBISON 1
45*c9ea9e7aSLionel Sambuc
46*c9ea9e7aSLionel Sambuc /* Bison version. */
47*c9ea9e7aSLionel Sambuc #define YYBISON_VERSION "3.0.2"
48*c9ea9e7aSLionel Sambuc
49*c9ea9e7aSLionel Sambuc /* Skeleton name. */
50*c9ea9e7aSLionel Sambuc #define YYSKELETON_NAME "yacc.c"
51*c9ea9e7aSLionel Sambuc
52*c9ea9e7aSLionel Sambuc /* Pure parsers. */
53*c9ea9e7aSLionel Sambuc #define YYPURE 1
54*c9ea9e7aSLionel Sambuc
55*c9ea9e7aSLionel Sambuc /* Push parsers. */
56*c9ea9e7aSLionel Sambuc #define YYPUSH 0
57*c9ea9e7aSLionel Sambuc
58*c9ea9e7aSLionel Sambuc /* Pull parsers. */
59*c9ea9e7aSLionel Sambuc #define YYPULL 1
60*c9ea9e7aSLionel Sambuc
61*c9ea9e7aSLionel Sambuc
62*c9ea9e7aSLionel Sambuc
63*c9ea9e7aSLionel Sambuc
64*c9ea9e7aSLionel Sambuc /* Copy the first part of user declarations. */
65*c9ea9e7aSLionel Sambuc #line 26 "yyscript.y" /* yacc.c:339 */
66*c9ea9e7aSLionel Sambuc
67*c9ea9e7aSLionel Sambuc
68*c9ea9e7aSLionel Sambuc #include "config.h"
69*c9ea9e7aSLionel Sambuc
70*c9ea9e7aSLionel Sambuc #include <stddef.h>
71*c9ea9e7aSLionel Sambuc #include <stdint.h>
72*c9ea9e7aSLionel Sambuc #include <stdlib.h>
73*c9ea9e7aSLionel Sambuc #include <string.h>
74*c9ea9e7aSLionel Sambuc
75*c9ea9e7aSLionel Sambuc #include "script-c.h"
76*c9ea9e7aSLionel Sambuc
77*c9ea9e7aSLionel Sambuc
78*c9ea9e7aSLionel Sambuc #line 79 "yyscript.c" /* yacc.c:339 */
79*c9ea9e7aSLionel Sambuc
80*c9ea9e7aSLionel Sambuc # ifndef YY_NULLPTR
81*c9ea9e7aSLionel Sambuc # if defined __cplusplus && 201103L <= __cplusplus
82*c9ea9e7aSLionel Sambuc # define YY_NULLPTR nullptr
83*c9ea9e7aSLionel Sambuc # else
84*c9ea9e7aSLionel Sambuc # define YY_NULLPTR 0
85*c9ea9e7aSLionel Sambuc # endif
86*c9ea9e7aSLionel Sambuc # endif
87*c9ea9e7aSLionel Sambuc
88*c9ea9e7aSLionel Sambuc /* Enabling verbose error messages. */
89*c9ea9e7aSLionel Sambuc #ifdef YYERROR_VERBOSE
90*c9ea9e7aSLionel Sambuc # undef YYERROR_VERBOSE
91*c9ea9e7aSLionel Sambuc # define YYERROR_VERBOSE 1
92*c9ea9e7aSLionel Sambuc #else
93*c9ea9e7aSLionel Sambuc # define YYERROR_VERBOSE 1
94*c9ea9e7aSLionel Sambuc #endif
95*c9ea9e7aSLionel Sambuc
96*c9ea9e7aSLionel Sambuc /* In a future release of Bison, this section will be replaced
97*c9ea9e7aSLionel Sambuc by #include "y.tab.h". */
98*c9ea9e7aSLionel Sambuc #ifndef YY_YY_Y_TAB_H_INCLUDED
99*c9ea9e7aSLionel Sambuc # define YY_YY_Y_TAB_H_INCLUDED
100*c9ea9e7aSLionel Sambuc /* Debug traces. */
101*c9ea9e7aSLionel Sambuc #ifndef YYDEBUG
102*c9ea9e7aSLionel Sambuc # define YYDEBUG 0
103*c9ea9e7aSLionel Sambuc #endif
104*c9ea9e7aSLionel Sambuc #if YYDEBUG
105*c9ea9e7aSLionel Sambuc extern int yydebug;
106*c9ea9e7aSLionel Sambuc #endif
107*c9ea9e7aSLionel Sambuc
108*c9ea9e7aSLionel Sambuc /* Token type. */
109*c9ea9e7aSLionel Sambuc #ifndef YYTOKENTYPE
110*c9ea9e7aSLionel Sambuc # define YYTOKENTYPE
111*c9ea9e7aSLionel Sambuc enum yytokentype
112*c9ea9e7aSLionel Sambuc {
113*c9ea9e7aSLionel Sambuc PLUSEQ = 258,
114*c9ea9e7aSLionel Sambuc MINUSEQ = 259,
115*c9ea9e7aSLionel Sambuc MULTEQ = 260,
116*c9ea9e7aSLionel Sambuc DIVEQ = 261,
117*c9ea9e7aSLionel Sambuc LSHIFTEQ = 262,
118*c9ea9e7aSLionel Sambuc RSHIFTEQ = 263,
119*c9ea9e7aSLionel Sambuc ANDEQ = 264,
120*c9ea9e7aSLionel Sambuc OREQ = 265,
121*c9ea9e7aSLionel Sambuc OROR = 266,
122*c9ea9e7aSLionel Sambuc ANDAND = 267,
123*c9ea9e7aSLionel Sambuc EQ = 268,
124*c9ea9e7aSLionel Sambuc NE = 269,
125*c9ea9e7aSLionel Sambuc LE = 270,
126*c9ea9e7aSLionel Sambuc GE = 271,
127*c9ea9e7aSLionel Sambuc LSHIFT = 272,
128*c9ea9e7aSLionel Sambuc RSHIFT = 273,
129*c9ea9e7aSLionel Sambuc UNARY = 274,
130*c9ea9e7aSLionel Sambuc STRING = 275,
131*c9ea9e7aSLionel Sambuc QUOTED_STRING = 276,
132*c9ea9e7aSLionel Sambuc INTEGER = 277,
133*c9ea9e7aSLionel Sambuc ABSOLUTE = 278,
134*c9ea9e7aSLionel Sambuc ADDR = 279,
135*c9ea9e7aSLionel Sambuc ALIGN_K = 280,
136*c9ea9e7aSLionel Sambuc ALIGNOF = 281,
137*c9ea9e7aSLionel Sambuc ASSERT_K = 282,
138*c9ea9e7aSLionel Sambuc AS_NEEDED = 283,
139*c9ea9e7aSLionel Sambuc AT = 284,
140*c9ea9e7aSLionel Sambuc BIND = 285,
141*c9ea9e7aSLionel Sambuc BLOCK = 286,
142*c9ea9e7aSLionel Sambuc BYTE = 287,
143*c9ea9e7aSLionel Sambuc CONSTANT = 288,
144*c9ea9e7aSLionel Sambuc CONSTRUCTORS = 289,
145*c9ea9e7aSLionel Sambuc COPY = 290,
146*c9ea9e7aSLionel Sambuc CREATE_OBJECT_SYMBOLS = 291,
147*c9ea9e7aSLionel Sambuc DATA_SEGMENT_ALIGN = 292,
148*c9ea9e7aSLionel Sambuc DATA_SEGMENT_END = 293,
149*c9ea9e7aSLionel Sambuc DATA_SEGMENT_RELRO_END = 294,
150*c9ea9e7aSLionel Sambuc DEFINED = 295,
151*c9ea9e7aSLionel Sambuc DSECT = 296,
152*c9ea9e7aSLionel Sambuc ENTRY = 297,
153*c9ea9e7aSLionel Sambuc EXCLUDE_FILE = 298,
154*c9ea9e7aSLionel Sambuc EXTERN = 299,
155*c9ea9e7aSLionel Sambuc FILL = 300,
156*c9ea9e7aSLionel Sambuc FLOAT = 301,
157*c9ea9e7aSLionel Sambuc FORCE_COMMON_ALLOCATION = 302,
158*c9ea9e7aSLionel Sambuc GLOBAL = 303,
159*c9ea9e7aSLionel Sambuc GROUP = 304,
160*c9ea9e7aSLionel Sambuc HLL = 305,
161*c9ea9e7aSLionel Sambuc INCLUDE = 306,
162*c9ea9e7aSLionel Sambuc INHIBIT_COMMON_ALLOCATION = 307,
163*c9ea9e7aSLionel Sambuc INFO = 308,
164*c9ea9e7aSLionel Sambuc INPUT = 309,
165*c9ea9e7aSLionel Sambuc KEEP = 310,
166*c9ea9e7aSLionel Sambuc LEN = 311,
167*c9ea9e7aSLionel Sambuc LENGTH = 312,
168*c9ea9e7aSLionel Sambuc LOADADDR = 313,
169*c9ea9e7aSLionel Sambuc LOCAL = 314,
170*c9ea9e7aSLionel Sambuc LONG = 315,
171*c9ea9e7aSLionel Sambuc MAP = 316,
172*c9ea9e7aSLionel Sambuc MAX_K = 317,
173*c9ea9e7aSLionel Sambuc MEMORY = 318,
174*c9ea9e7aSLionel Sambuc MIN_K = 319,
175*c9ea9e7aSLionel Sambuc NEXT = 320,
176*c9ea9e7aSLionel Sambuc NOCROSSREFS = 321,
177*c9ea9e7aSLionel Sambuc NOFLOAT = 322,
178*c9ea9e7aSLionel Sambuc NOLOAD = 323,
179*c9ea9e7aSLionel Sambuc ONLY_IF_RO = 324,
180*c9ea9e7aSLionel Sambuc ONLY_IF_RW = 325,
181*c9ea9e7aSLionel Sambuc ORG = 326,
182*c9ea9e7aSLionel Sambuc ORIGIN = 327,
183*c9ea9e7aSLionel Sambuc OUTPUT = 328,
184*c9ea9e7aSLionel Sambuc OUTPUT_ARCH = 329,
185*c9ea9e7aSLionel Sambuc OUTPUT_FORMAT = 330,
186*c9ea9e7aSLionel Sambuc OVERLAY = 331,
187*c9ea9e7aSLionel Sambuc PHDRS = 332,
188*c9ea9e7aSLionel Sambuc PROVIDE = 333,
189*c9ea9e7aSLionel Sambuc PROVIDE_HIDDEN = 334,
190*c9ea9e7aSLionel Sambuc QUAD = 335,
191*c9ea9e7aSLionel Sambuc SEARCH_DIR = 336,
192*c9ea9e7aSLionel Sambuc SECTIONS = 337,
193*c9ea9e7aSLionel Sambuc SEGMENT_START = 338,
194*c9ea9e7aSLionel Sambuc SHORT = 339,
195*c9ea9e7aSLionel Sambuc SIZEOF = 340,
196*c9ea9e7aSLionel Sambuc SIZEOF_HEADERS = 341,
197*c9ea9e7aSLionel Sambuc SORT_BY_ALIGNMENT = 342,
198*c9ea9e7aSLionel Sambuc SORT_BY_NAME = 343,
199*c9ea9e7aSLionel Sambuc SPECIAL = 344,
200*c9ea9e7aSLionel Sambuc SQUAD = 345,
201*c9ea9e7aSLionel Sambuc STARTUP = 346,
202*c9ea9e7aSLionel Sambuc SUBALIGN = 347,
203*c9ea9e7aSLionel Sambuc SYSLIB = 348,
204*c9ea9e7aSLionel Sambuc TARGET_K = 349,
205*c9ea9e7aSLionel Sambuc TRUNCATE = 350,
206*c9ea9e7aSLionel Sambuc VERSIONK = 351,
207*c9ea9e7aSLionel Sambuc OPTION = 352,
208*c9ea9e7aSLionel Sambuc PARSING_LINKER_SCRIPT = 353,
209*c9ea9e7aSLionel Sambuc PARSING_VERSION_SCRIPT = 354,
210*c9ea9e7aSLionel Sambuc PARSING_DEFSYM = 355,
211*c9ea9e7aSLionel Sambuc PARSING_DYNAMIC_LIST = 356
212*c9ea9e7aSLionel Sambuc };
213*c9ea9e7aSLionel Sambuc #endif
214*c9ea9e7aSLionel Sambuc /* Tokens. */
215*c9ea9e7aSLionel Sambuc #define PLUSEQ 258
216*c9ea9e7aSLionel Sambuc #define MINUSEQ 259
217*c9ea9e7aSLionel Sambuc #define MULTEQ 260
218*c9ea9e7aSLionel Sambuc #define DIVEQ 261
219*c9ea9e7aSLionel Sambuc #define LSHIFTEQ 262
220*c9ea9e7aSLionel Sambuc #define RSHIFTEQ 263
221*c9ea9e7aSLionel Sambuc #define ANDEQ 264
222*c9ea9e7aSLionel Sambuc #define OREQ 265
223*c9ea9e7aSLionel Sambuc #define OROR 266
224*c9ea9e7aSLionel Sambuc #define ANDAND 267
225*c9ea9e7aSLionel Sambuc #define EQ 268
226*c9ea9e7aSLionel Sambuc #define NE 269
227*c9ea9e7aSLionel Sambuc #define LE 270
228*c9ea9e7aSLionel Sambuc #define GE 271
229*c9ea9e7aSLionel Sambuc #define LSHIFT 272
230*c9ea9e7aSLionel Sambuc #define RSHIFT 273
231*c9ea9e7aSLionel Sambuc #define UNARY 274
232*c9ea9e7aSLionel Sambuc #define STRING 275
233*c9ea9e7aSLionel Sambuc #define QUOTED_STRING 276
234*c9ea9e7aSLionel Sambuc #define INTEGER 277
235*c9ea9e7aSLionel Sambuc #define ABSOLUTE 278
236*c9ea9e7aSLionel Sambuc #define ADDR 279
237*c9ea9e7aSLionel Sambuc #define ALIGN_K 280
238*c9ea9e7aSLionel Sambuc #define ALIGNOF 281
239*c9ea9e7aSLionel Sambuc #define ASSERT_K 282
240*c9ea9e7aSLionel Sambuc #define AS_NEEDED 283
241*c9ea9e7aSLionel Sambuc #define AT 284
242*c9ea9e7aSLionel Sambuc #define BIND 285
243*c9ea9e7aSLionel Sambuc #define BLOCK 286
244*c9ea9e7aSLionel Sambuc #define BYTE 287
245*c9ea9e7aSLionel Sambuc #define CONSTANT 288
246*c9ea9e7aSLionel Sambuc #define CONSTRUCTORS 289
247*c9ea9e7aSLionel Sambuc #define COPY 290
248*c9ea9e7aSLionel Sambuc #define CREATE_OBJECT_SYMBOLS 291
249*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_ALIGN 292
250*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_END 293
251*c9ea9e7aSLionel Sambuc #define DATA_SEGMENT_RELRO_END 294
252*c9ea9e7aSLionel Sambuc #define DEFINED 295
253*c9ea9e7aSLionel Sambuc #define DSECT 296
254*c9ea9e7aSLionel Sambuc #define ENTRY 297
255*c9ea9e7aSLionel Sambuc #define EXCLUDE_FILE 298
256*c9ea9e7aSLionel Sambuc #define EXTERN 299
257*c9ea9e7aSLionel Sambuc #define FILL 300
258*c9ea9e7aSLionel Sambuc #define FLOAT 301
259*c9ea9e7aSLionel Sambuc #define FORCE_COMMON_ALLOCATION 302
260*c9ea9e7aSLionel Sambuc #define GLOBAL 303
261*c9ea9e7aSLionel Sambuc #define GROUP 304
262*c9ea9e7aSLionel Sambuc #define HLL 305
263*c9ea9e7aSLionel Sambuc #define INCLUDE 306
264*c9ea9e7aSLionel Sambuc #define INHIBIT_COMMON_ALLOCATION 307
265*c9ea9e7aSLionel Sambuc #define INFO 308
266*c9ea9e7aSLionel Sambuc #define INPUT 309
267*c9ea9e7aSLionel Sambuc #define KEEP 310
268*c9ea9e7aSLionel Sambuc #define LEN 311
269*c9ea9e7aSLionel Sambuc #define LENGTH 312
270*c9ea9e7aSLionel Sambuc #define LOADADDR 313
271*c9ea9e7aSLionel Sambuc #define LOCAL 314
272*c9ea9e7aSLionel Sambuc #define LONG 315
273*c9ea9e7aSLionel Sambuc #define MAP 316
274*c9ea9e7aSLionel Sambuc #define MAX_K 317
275*c9ea9e7aSLionel Sambuc #define MEMORY 318
276*c9ea9e7aSLionel Sambuc #define MIN_K 319
277*c9ea9e7aSLionel Sambuc #define NEXT 320
278*c9ea9e7aSLionel Sambuc #define NOCROSSREFS 321
279*c9ea9e7aSLionel Sambuc #define NOFLOAT 322
280*c9ea9e7aSLionel Sambuc #define NOLOAD 323
281*c9ea9e7aSLionel Sambuc #define ONLY_IF_RO 324
282*c9ea9e7aSLionel Sambuc #define ONLY_IF_RW 325
283*c9ea9e7aSLionel Sambuc #define ORG 326
284*c9ea9e7aSLionel Sambuc #define ORIGIN 327
285*c9ea9e7aSLionel Sambuc #define OUTPUT 328
286*c9ea9e7aSLionel Sambuc #define OUTPUT_ARCH 329
287*c9ea9e7aSLionel Sambuc #define OUTPUT_FORMAT 330
288*c9ea9e7aSLionel Sambuc #define OVERLAY 331
289*c9ea9e7aSLionel Sambuc #define PHDRS 332
290*c9ea9e7aSLionel Sambuc #define PROVIDE 333
291*c9ea9e7aSLionel Sambuc #define PROVIDE_HIDDEN 334
292*c9ea9e7aSLionel Sambuc #define QUAD 335
293*c9ea9e7aSLionel Sambuc #define SEARCH_DIR 336
294*c9ea9e7aSLionel Sambuc #define SECTIONS 337
295*c9ea9e7aSLionel Sambuc #define SEGMENT_START 338
296*c9ea9e7aSLionel Sambuc #define SHORT 339
297*c9ea9e7aSLionel Sambuc #define SIZEOF 340
298*c9ea9e7aSLionel Sambuc #define SIZEOF_HEADERS 341
299*c9ea9e7aSLionel Sambuc #define SORT_BY_ALIGNMENT 342
300*c9ea9e7aSLionel Sambuc #define SORT_BY_NAME 343
301*c9ea9e7aSLionel Sambuc #define SPECIAL 344
302*c9ea9e7aSLionel Sambuc #define SQUAD 345
303*c9ea9e7aSLionel Sambuc #define STARTUP 346
304*c9ea9e7aSLionel Sambuc #define SUBALIGN 347
305*c9ea9e7aSLionel Sambuc #define SYSLIB 348
306*c9ea9e7aSLionel Sambuc #define TARGET_K 349
307*c9ea9e7aSLionel Sambuc #define TRUNCATE 350
308*c9ea9e7aSLionel Sambuc #define VERSIONK 351
309*c9ea9e7aSLionel Sambuc #define OPTION 352
310*c9ea9e7aSLionel Sambuc #define PARSING_LINKER_SCRIPT 353
311*c9ea9e7aSLionel Sambuc #define PARSING_VERSION_SCRIPT 354
312*c9ea9e7aSLionel Sambuc #define PARSING_DEFSYM 355
313*c9ea9e7aSLionel Sambuc #define PARSING_DYNAMIC_LIST 356
314*c9ea9e7aSLionel Sambuc
315*c9ea9e7aSLionel Sambuc /* Value type. */
316*c9ea9e7aSLionel Sambuc #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
317*c9ea9e7aSLionel Sambuc typedef union YYSTYPE YYSTYPE;
318*c9ea9e7aSLionel Sambuc union YYSTYPE
319*c9ea9e7aSLionel Sambuc {
320*c9ea9e7aSLionel Sambuc #line 53 "yyscript.y" /* yacc.c:355 */
321*c9ea9e7aSLionel Sambuc
322*c9ea9e7aSLionel Sambuc /* A string. */
323*c9ea9e7aSLionel Sambuc struct Parser_string string;
324*c9ea9e7aSLionel Sambuc /* A number. */
325*c9ea9e7aSLionel Sambuc uint64_t integer;
326*c9ea9e7aSLionel Sambuc /* An expression. */
327*c9ea9e7aSLionel Sambuc Expression_ptr expr;
328*c9ea9e7aSLionel Sambuc /* An output section header. */
329*c9ea9e7aSLionel Sambuc struct Parser_output_section_header output_section_header;
330*c9ea9e7aSLionel Sambuc /* An output section trailer. */
331*c9ea9e7aSLionel Sambuc struct Parser_output_section_trailer output_section_trailer;
332*c9ea9e7aSLionel Sambuc /* A section constraint. */
333*c9ea9e7aSLionel Sambuc enum Section_constraint constraint;
334*c9ea9e7aSLionel Sambuc /* A complete input section specification. */
335*c9ea9e7aSLionel Sambuc struct Input_section_spec input_section_spec;
336*c9ea9e7aSLionel Sambuc /* A list of wildcard specifications, with exclusions. */
337*c9ea9e7aSLionel Sambuc struct Wildcard_sections wildcard_sections;
338*c9ea9e7aSLionel Sambuc /* A single wildcard specification. */
339*c9ea9e7aSLionel Sambuc struct Wildcard_section wildcard_section;
340*c9ea9e7aSLionel Sambuc /* A list of strings. */
341*c9ea9e7aSLionel Sambuc String_list_ptr string_list;
342*c9ea9e7aSLionel Sambuc /* Information for a program header. */
343*c9ea9e7aSLionel Sambuc struct Phdr_info phdr_info;
344*c9ea9e7aSLionel Sambuc /* Used for version scripts and within VERSION {}. */
345*c9ea9e7aSLionel Sambuc struct Version_dependency_list* deplist;
346*c9ea9e7aSLionel Sambuc struct Version_expression_list* versyms;
347*c9ea9e7aSLionel Sambuc struct Version_tree* versnode;
348*c9ea9e7aSLionel Sambuc enum Script_section_type section_type;
349*c9ea9e7aSLionel Sambuc
350*c9ea9e7aSLionel Sambuc #line 351 "yyscript.c" /* yacc.c:355 */
351*c9ea9e7aSLionel Sambuc };
352*c9ea9e7aSLionel Sambuc # define YYSTYPE_IS_TRIVIAL 1
353*c9ea9e7aSLionel Sambuc # define YYSTYPE_IS_DECLARED 1
354*c9ea9e7aSLionel Sambuc #endif
355*c9ea9e7aSLionel Sambuc
356*c9ea9e7aSLionel Sambuc
357*c9ea9e7aSLionel Sambuc
358*c9ea9e7aSLionel Sambuc int yyparse (void* closure);
359*c9ea9e7aSLionel Sambuc
360*c9ea9e7aSLionel Sambuc #endif /* !YY_YY_Y_TAB_H_INCLUDED */
361*c9ea9e7aSLionel Sambuc
362*c9ea9e7aSLionel Sambuc /* Copy the second part of user declarations. */
363*c9ea9e7aSLionel Sambuc
364*c9ea9e7aSLionel Sambuc #line 365 "yyscript.c" /* yacc.c:358 */
365*c9ea9e7aSLionel Sambuc
366*c9ea9e7aSLionel Sambuc #ifdef short
367*c9ea9e7aSLionel Sambuc # undef short
368*c9ea9e7aSLionel Sambuc #endif
369*c9ea9e7aSLionel Sambuc
370*c9ea9e7aSLionel Sambuc #ifdef YYTYPE_UINT8
371*c9ea9e7aSLionel Sambuc typedef YYTYPE_UINT8 yytype_uint8;
372*c9ea9e7aSLionel Sambuc #else
373*c9ea9e7aSLionel Sambuc typedef unsigned char yytype_uint8;
374*c9ea9e7aSLionel Sambuc #endif
375*c9ea9e7aSLionel Sambuc
376*c9ea9e7aSLionel Sambuc #ifdef YYTYPE_INT8
377*c9ea9e7aSLionel Sambuc typedef YYTYPE_INT8 yytype_int8;
378*c9ea9e7aSLionel Sambuc #else
379*c9ea9e7aSLionel Sambuc typedef signed char yytype_int8;
380*c9ea9e7aSLionel Sambuc #endif
381*c9ea9e7aSLionel Sambuc
382*c9ea9e7aSLionel Sambuc #ifdef YYTYPE_UINT16
383*c9ea9e7aSLionel Sambuc typedef YYTYPE_UINT16 yytype_uint16;
384*c9ea9e7aSLionel Sambuc #else
385*c9ea9e7aSLionel Sambuc typedef unsigned short int yytype_uint16;
386*c9ea9e7aSLionel Sambuc #endif
387*c9ea9e7aSLionel Sambuc
388*c9ea9e7aSLionel Sambuc #ifdef YYTYPE_INT16
389*c9ea9e7aSLionel Sambuc typedef YYTYPE_INT16 yytype_int16;
390*c9ea9e7aSLionel Sambuc #else
391*c9ea9e7aSLionel Sambuc typedef short int yytype_int16;
392*c9ea9e7aSLionel Sambuc #endif
393*c9ea9e7aSLionel Sambuc
394*c9ea9e7aSLionel Sambuc #ifndef YYSIZE_T
395*c9ea9e7aSLionel Sambuc # ifdef __SIZE_TYPE__
396*c9ea9e7aSLionel Sambuc # define YYSIZE_T __SIZE_TYPE__
397*c9ea9e7aSLionel Sambuc # elif defined size_t
398*c9ea9e7aSLionel Sambuc # define YYSIZE_T size_t
399*c9ea9e7aSLionel Sambuc # elif ! defined YYSIZE_T
400*c9ea9e7aSLionel Sambuc # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
401*c9ea9e7aSLionel Sambuc # define YYSIZE_T size_t
402*c9ea9e7aSLionel Sambuc # else
403*c9ea9e7aSLionel Sambuc # define YYSIZE_T unsigned int
404*c9ea9e7aSLionel Sambuc # endif
405*c9ea9e7aSLionel Sambuc #endif
406*c9ea9e7aSLionel Sambuc
407*c9ea9e7aSLionel Sambuc #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
408*c9ea9e7aSLionel Sambuc
409*c9ea9e7aSLionel Sambuc #ifndef YY_
410*c9ea9e7aSLionel Sambuc # if defined YYENABLE_NLS && YYENABLE_NLS
411*c9ea9e7aSLionel Sambuc # if ENABLE_NLS
412*c9ea9e7aSLionel Sambuc # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
413*c9ea9e7aSLionel Sambuc # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
414*c9ea9e7aSLionel Sambuc # endif
415*c9ea9e7aSLionel Sambuc # endif
416*c9ea9e7aSLionel Sambuc # ifndef YY_
417*c9ea9e7aSLionel Sambuc # define YY_(Msgid) Msgid
418*c9ea9e7aSLionel Sambuc # endif
419*c9ea9e7aSLionel Sambuc #endif
420*c9ea9e7aSLionel Sambuc
421*c9ea9e7aSLionel Sambuc #ifndef YY_ATTRIBUTE
422*c9ea9e7aSLionel Sambuc # if (defined __GNUC__ \
423*c9ea9e7aSLionel Sambuc && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
424*c9ea9e7aSLionel Sambuc || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
425*c9ea9e7aSLionel Sambuc # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
426*c9ea9e7aSLionel Sambuc # else
427*c9ea9e7aSLionel Sambuc # define YY_ATTRIBUTE(Spec) /* empty */
428*c9ea9e7aSLionel Sambuc # endif
429*c9ea9e7aSLionel Sambuc #endif
430*c9ea9e7aSLionel Sambuc
431*c9ea9e7aSLionel Sambuc #ifndef YY_ATTRIBUTE_PURE
432*c9ea9e7aSLionel Sambuc # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
433*c9ea9e7aSLionel Sambuc #endif
434*c9ea9e7aSLionel Sambuc
435*c9ea9e7aSLionel Sambuc #ifndef YY_ATTRIBUTE_UNUSED
436*c9ea9e7aSLionel Sambuc # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
437*c9ea9e7aSLionel Sambuc #endif
438*c9ea9e7aSLionel Sambuc
439*c9ea9e7aSLionel Sambuc #if !defined _Noreturn \
440*c9ea9e7aSLionel Sambuc && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
441*c9ea9e7aSLionel Sambuc # if defined _MSC_VER && 1200 <= _MSC_VER
442*c9ea9e7aSLionel Sambuc # define _Noreturn __declspec (noreturn)
443*c9ea9e7aSLionel Sambuc # else
444*c9ea9e7aSLionel Sambuc # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
445*c9ea9e7aSLionel Sambuc # endif
446*c9ea9e7aSLionel Sambuc #endif
447*c9ea9e7aSLionel Sambuc
448*c9ea9e7aSLionel Sambuc /* Suppress unused-variable warnings by "using" E. */
449*c9ea9e7aSLionel Sambuc #if ! defined lint || defined __GNUC__
450*c9ea9e7aSLionel Sambuc # define YYUSE(E) ((void) (E))
451*c9ea9e7aSLionel Sambuc #else
452*c9ea9e7aSLionel Sambuc # define YYUSE(E) /* empty */
453*c9ea9e7aSLionel Sambuc #endif
454*c9ea9e7aSLionel Sambuc
455*c9ea9e7aSLionel Sambuc #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
456*c9ea9e7aSLionel Sambuc /* Suppress an incorrect diagnostic about yylval being uninitialized. */
457*c9ea9e7aSLionel Sambuc # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
458*c9ea9e7aSLionel Sambuc _Pragma ("GCC diagnostic push") \
459*c9ea9e7aSLionel Sambuc _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
460*c9ea9e7aSLionel Sambuc _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
461*c9ea9e7aSLionel Sambuc # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
462*c9ea9e7aSLionel Sambuc _Pragma ("GCC diagnostic pop")
463*c9ea9e7aSLionel Sambuc #else
464*c9ea9e7aSLionel Sambuc # define YY_INITIAL_VALUE(Value) Value
465*c9ea9e7aSLionel Sambuc #endif
466*c9ea9e7aSLionel Sambuc #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
467*c9ea9e7aSLionel Sambuc # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
468*c9ea9e7aSLionel Sambuc # define YY_IGNORE_MAYBE_UNINITIALIZED_END
469*c9ea9e7aSLionel Sambuc #endif
470*c9ea9e7aSLionel Sambuc #ifndef YY_INITIAL_VALUE
471*c9ea9e7aSLionel Sambuc # define YY_INITIAL_VALUE(Value) /* Nothing. */
472*c9ea9e7aSLionel Sambuc #endif
473*c9ea9e7aSLionel Sambuc
474*c9ea9e7aSLionel Sambuc
475*c9ea9e7aSLionel Sambuc #if ! defined yyoverflow || YYERROR_VERBOSE
476*c9ea9e7aSLionel Sambuc
477*c9ea9e7aSLionel Sambuc /* The parser invokes alloca or malloc; define the necessary symbols. */
478*c9ea9e7aSLionel Sambuc
479*c9ea9e7aSLionel Sambuc # ifdef YYSTACK_USE_ALLOCA
480*c9ea9e7aSLionel Sambuc # if YYSTACK_USE_ALLOCA
481*c9ea9e7aSLionel Sambuc # ifdef __GNUC__
482*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC __builtin_alloca
483*c9ea9e7aSLionel Sambuc # elif defined __BUILTIN_VA_ARG_INCR
484*c9ea9e7aSLionel Sambuc # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
485*c9ea9e7aSLionel Sambuc # elif defined _AIX
486*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC __alloca
487*c9ea9e7aSLionel Sambuc # elif defined _MSC_VER
488*c9ea9e7aSLionel Sambuc # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
489*c9ea9e7aSLionel Sambuc # define alloca _alloca
490*c9ea9e7aSLionel Sambuc # else
491*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC alloca
492*c9ea9e7aSLionel Sambuc # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
493*c9ea9e7aSLionel Sambuc # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
494*c9ea9e7aSLionel Sambuc /* Use EXIT_SUCCESS as a witness for stdlib.h. */
495*c9ea9e7aSLionel Sambuc # ifndef EXIT_SUCCESS
496*c9ea9e7aSLionel Sambuc # define EXIT_SUCCESS 0
497*c9ea9e7aSLionel Sambuc # endif
498*c9ea9e7aSLionel Sambuc # endif
499*c9ea9e7aSLionel Sambuc # endif
500*c9ea9e7aSLionel Sambuc # endif
501*c9ea9e7aSLionel Sambuc # endif
502*c9ea9e7aSLionel Sambuc
503*c9ea9e7aSLionel Sambuc # ifdef YYSTACK_ALLOC
504*c9ea9e7aSLionel Sambuc /* Pacify GCC's 'empty if-body' warning. */
505*c9ea9e7aSLionel Sambuc # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
506*c9ea9e7aSLionel Sambuc # ifndef YYSTACK_ALLOC_MAXIMUM
507*c9ea9e7aSLionel Sambuc /* The OS might guarantee only one guard page at the bottom of the stack,
508*c9ea9e7aSLionel Sambuc and a page size can be as small as 4096 bytes. So we cannot safely
509*c9ea9e7aSLionel Sambuc invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
510*c9ea9e7aSLionel Sambuc to allow for a few compiler-allocated temporary stack slots. */
511*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
512*c9ea9e7aSLionel Sambuc # endif
513*c9ea9e7aSLionel Sambuc # else
514*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC YYMALLOC
515*c9ea9e7aSLionel Sambuc # define YYSTACK_FREE YYFREE
516*c9ea9e7aSLionel Sambuc # ifndef YYSTACK_ALLOC_MAXIMUM
517*c9ea9e7aSLionel Sambuc # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
518*c9ea9e7aSLionel Sambuc # endif
519*c9ea9e7aSLionel Sambuc # if (defined __cplusplus && ! defined EXIT_SUCCESS \
520*c9ea9e7aSLionel Sambuc && ! ((defined YYMALLOC || defined malloc) \
521*c9ea9e7aSLionel Sambuc && (defined YYFREE || defined free)))
522*c9ea9e7aSLionel Sambuc # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
523*c9ea9e7aSLionel Sambuc # ifndef EXIT_SUCCESS
524*c9ea9e7aSLionel Sambuc # define EXIT_SUCCESS 0
525*c9ea9e7aSLionel Sambuc # endif
526*c9ea9e7aSLionel Sambuc # endif
527*c9ea9e7aSLionel Sambuc # ifndef YYMALLOC
528*c9ea9e7aSLionel Sambuc # define YYMALLOC malloc
529*c9ea9e7aSLionel Sambuc # if ! defined malloc && ! defined EXIT_SUCCESS
530*c9ea9e7aSLionel Sambuc void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
531*c9ea9e7aSLionel Sambuc # endif
532*c9ea9e7aSLionel Sambuc # endif
533*c9ea9e7aSLionel Sambuc # ifndef YYFREE
534*c9ea9e7aSLionel Sambuc # define YYFREE free
535*c9ea9e7aSLionel Sambuc # if ! defined free && ! defined EXIT_SUCCESS
536*c9ea9e7aSLionel Sambuc void free (void *); /* INFRINGES ON USER NAME SPACE */
537*c9ea9e7aSLionel Sambuc # endif
538*c9ea9e7aSLionel Sambuc # endif
539*c9ea9e7aSLionel Sambuc # endif
540*c9ea9e7aSLionel Sambuc #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
541*c9ea9e7aSLionel Sambuc
542*c9ea9e7aSLionel Sambuc
543*c9ea9e7aSLionel Sambuc #if (! defined yyoverflow \
544*c9ea9e7aSLionel Sambuc && (! defined __cplusplus \
545*c9ea9e7aSLionel Sambuc || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
546*c9ea9e7aSLionel Sambuc
547*c9ea9e7aSLionel Sambuc /* A type that is properly aligned for any stack member. */
548*c9ea9e7aSLionel Sambuc union yyalloc
549*c9ea9e7aSLionel Sambuc {
550*c9ea9e7aSLionel Sambuc yytype_int16 yyss_alloc;
551*c9ea9e7aSLionel Sambuc YYSTYPE yyvs_alloc;
552*c9ea9e7aSLionel Sambuc };
553*c9ea9e7aSLionel Sambuc
554*c9ea9e7aSLionel Sambuc /* The size of the maximum gap between one aligned stack and the next. */
555*c9ea9e7aSLionel Sambuc # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
556*c9ea9e7aSLionel Sambuc
557*c9ea9e7aSLionel Sambuc /* The size of an array large to enough to hold all stacks, each with
558*c9ea9e7aSLionel Sambuc N elements. */
559*c9ea9e7aSLionel Sambuc # define YYSTACK_BYTES(N) \
560*c9ea9e7aSLionel Sambuc ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
561*c9ea9e7aSLionel Sambuc + YYSTACK_GAP_MAXIMUM)
562*c9ea9e7aSLionel Sambuc
563*c9ea9e7aSLionel Sambuc # define YYCOPY_NEEDED 1
564*c9ea9e7aSLionel Sambuc
565*c9ea9e7aSLionel Sambuc /* Relocate STACK from its old location to the new one. The
566*c9ea9e7aSLionel Sambuc local variables YYSIZE and YYSTACKSIZE give the old and new number of
567*c9ea9e7aSLionel Sambuc elements in the stack, and YYPTR gives the new location of the
568*c9ea9e7aSLionel Sambuc stack. Advance YYPTR to a properly aligned location for the next
569*c9ea9e7aSLionel Sambuc stack. */
570*c9ea9e7aSLionel Sambuc # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
571*c9ea9e7aSLionel Sambuc do \
572*c9ea9e7aSLionel Sambuc { \
573*c9ea9e7aSLionel Sambuc YYSIZE_T yynewbytes; \
574*c9ea9e7aSLionel Sambuc YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
575*c9ea9e7aSLionel Sambuc Stack = &yyptr->Stack_alloc; \
576*c9ea9e7aSLionel Sambuc yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
577*c9ea9e7aSLionel Sambuc yyptr += yynewbytes / sizeof (*yyptr); \
578*c9ea9e7aSLionel Sambuc } \
579*c9ea9e7aSLionel Sambuc while (0)
580*c9ea9e7aSLionel Sambuc
581*c9ea9e7aSLionel Sambuc #endif
582*c9ea9e7aSLionel Sambuc
583*c9ea9e7aSLionel Sambuc #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
584*c9ea9e7aSLionel Sambuc /* Copy COUNT objects from SRC to DST. The source and destination do
585*c9ea9e7aSLionel Sambuc not overlap. */
586*c9ea9e7aSLionel Sambuc # ifndef YYCOPY
587*c9ea9e7aSLionel Sambuc # if defined __GNUC__ && 1 < __GNUC__
588*c9ea9e7aSLionel Sambuc # define YYCOPY(Dst, Src, Count) \
589*c9ea9e7aSLionel Sambuc __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
590*c9ea9e7aSLionel Sambuc # else
591*c9ea9e7aSLionel Sambuc # define YYCOPY(Dst, Src, Count) \
592*c9ea9e7aSLionel Sambuc do \
593*c9ea9e7aSLionel Sambuc { \
594*c9ea9e7aSLionel Sambuc YYSIZE_T yyi; \
595*c9ea9e7aSLionel Sambuc for (yyi = 0; yyi < (Count); yyi++) \
596*c9ea9e7aSLionel Sambuc (Dst)[yyi] = (Src)[yyi]; \
597*c9ea9e7aSLionel Sambuc } \
598*c9ea9e7aSLionel Sambuc while (0)
599*c9ea9e7aSLionel Sambuc # endif
600*c9ea9e7aSLionel Sambuc # endif
601*c9ea9e7aSLionel Sambuc #endif /* !YYCOPY_NEEDED */
602*c9ea9e7aSLionel Sambuc
603*c9ea9e7aSLionel Sambuc /* YYFINAL -- State number of the termination state. */
604*c9ea9e7aSLionel Sambuc #define YYFINAL 20
605*c9ea9e7aSLionel Sambuc /* YYLAST -- Last index in YYTABLE. */
606*c9ea9e7aSLionel Sambuc #define YYLAST 1329
607*c9ea9e7aSLionel Sambuc
608*c9ea9e7aSLionel Sambuc /* YYNTOKENS -- Number of terminals. */
609*c9ea9e7aSLionel Sambuc #define YYNTOKENS 125
610*c9ea9e7aSLionel Sambuc /* YYNNTS -- Number of nonterminals. */
611*c9ea9e7aSLionel Sambuc #define YYNNTS 71
612*c9ea9e7aSLionel Sambuc /* YYNRULES -- Number of rules. */
613*c9ea9e7aSLionel Sambuc #define YYNRULES 234
614*c9ea9e7aSLionel Sambuc /* YYNSTATES -- Number of states. */
615*c9ea9e7aSLionel Sambuc #define YYNSTATES 527
616*c9ea9e7aSLionel Sambuc
617*c9ea9e7aSLionel Sambuc /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
618*c9ea9e7aSLionel Sambuc by yylex, with out-of-bounds checking. */
619*c9ea9e7aSLionel Sambuc #define YYUNDEFTOK 2
620*c9ea9e7aSLionel Sambuc #define YYMAXUTOK 356
621*c9ea9e7aSLionel Sambuc
622*c9ea9e7aSLionel Sambuc #define YYTRANSLATE(YYX) \
623*c9ea9e7aSLionel Sambuc ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
624*c9ea9e7aSLionel Sambuc
625*c9ea9e7aSLionel Sambuc /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
626*c9ea9e7aSLionel Sambuc as returned by yylex, without out-of-bounds checking. */
627*c9ea9e7aSLionel Sambuc static const yytype_uint8 yytranslate[] =
628*c9ea9e7aSLionel Sambuc {
629*c9ea9e7aSLionel Sambuc 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
630*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
631*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
632*c9ea9e7aSLionel Sambuc 2, 2, 2, 121, 2, 2, 2, 31, 18, 2,
633*c9ea9e7aSLionel Sambuc 115, 116, 29, 27, 119, 28, 2, 30, 2, 2,
634*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 13, 120,
635*c9ea9e7aSLionel Sambuc 21, 7, 22, 12, 2, 2, 2, 2, 2, 2,
636*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
637*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
638*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 17, 2, 2, 2, 2, 2,
639*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 123, 2,
640*c9ea9e7aSLionel Sambuc 2, 122, 2, 2, 2, 2, 2, 2, 2, 2,
641*c9ea9e7aSLionel Sambuc 2, 2, 2, 117, 16, 118, 124, 2, 2, 2,
642*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
643*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
644*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
645*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
646*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
647*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
648*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
649*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
650*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
651*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
652*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
653*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
654*c9ea9e7aSLionel Sambuc 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
655*c9ea9e7aSLionel Sambuc 5, 6, 8, 9, 10, 11, 14, 15, 19, 20,
656*c9ea9e7aSLionel Sambuc 23, 24, 25, 26, 32, 33, 34, 35, 36, 37,
657*c9ea9e7aSLionel Sambuc 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
658*c9ea9e7aSLionel Sambuc 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
659*c9ea9e7aSLionel Sambuc 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
660*c9ea9e7aSLionel Sambuc 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
661*c9ea9e7aSLionel Sambuc 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
662*c9ea9e7aSLionel Sambuc 88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
663*c9ea9e7aSLionel Sambuc 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
664*c9ea9e7aSLionel Sambuc 108, 109, 110, 111, 112, 113, 114
665*c9ea9e7aSLionel Sambuc };
666*c9ea9e7aSLionel Sambuc
667*c9ea9e7aSLionel Sambuc #if YYDEBUG
668*c9ea9e7aSLionel Sambuc /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
669*c9ea9e7aSLionel Sambuc static const yytype_uint16 yyrline[] =
670*c9ea9e7aSLionel Sambuc {
671*c9ea9e7aSLionel Sambuc 0, 231, 231, 232, 233, 234, 239, 240, 245, 246,
672*c9ea9e7aSLionel Sambuc 249, 248, 252, 254, 255, 256, 258, 264, 271, 272,
673*c9ea9e7aSLionel Sambuc 275, 274, 278, 281, 280, 284, 285, 286, 294, 302,
674*c9ea9e7aSLionel Sambuc 302, 308, 310, 312, 318, 319, 324, 326, 329, 328,
675*c9ea9e7aSLionel Sambuc 336, 337, 342, 344, 343, 352, 354, 352, 371, 376,
676*c9ea9e7aSLionel Sambuc 381, 386, 391, 396, 405, 407, 412, 417, 422, 432,
677*c9ea9e7aSLionel Sambuc 433, 440, 441, 448, 449, 456, 457, 459, 461, 467,
678*c9ea9e7aSLionel Sambuc 476, 478, 483, 485, 490, 493, 499, 502, 507, 509,
679*c9ea9e7aSLionel Sambuc 515, 516, 517, 519, 521, 523, 530, 531, 533, 539,
680*c9ea9e7aSLionel Sambuc 541, 543, 545, 547, 554, 556, 562, 569, 578, 583,
681*c9ea9e7aSLionel Sambuc 592, 597, 602, 607, 616, 621, 640, 663, 665, 672,
682*c9ea9e7aSLionel Sambuc 674, 679, 689, 691, 692, 694, 700, 701, 706, 710,
683*c9ea9e7aSLionel Sambuc 712, 717, 720, 723, 727, 729, 731, 735, 737, 739,
684*c9ea9e7aSLionel Sambuc 744, 745, 750, 759, 761, 768, 769, 777, 782, 793,
685*c9ea9e7aSLionel Sambuc 802, 804, 810, 816, 822, 828, 834, 840, 846, 852,
686*c9ea9e7aSLionel Sambuc 854, 860, 860, 870, 872, 874, 876, 878, 880, 882,
687*c9ea9e7aSLionel Sambuc 884, 886, 888, 890, 892, 894, 896, 898, 900, 902,
688*c9ea9e7aSLionel Sambuc 904, 906, 908, 910, 912, 914, 916, 918, 920, 922,
689*c9ea9e7aSLionel Sambuc 924, 926, 928, 930, 932, 934, 936, 938, 940, 942,
690*c9ea9e7aSLionel Sambuc 944, 946, 948, 950, 952, 957, 962, 964, 972, 978,
691*c9ea9e7aSLionel Sambuc 988, 991, 992, 996, 1002, 1006, 1007, 1011, 1015, 1020,
692*c9ea9e7aSLionel Sambuc 1027, 1031, 1039, 1040, 1042, 1044, 1046, 1055, 1060, 1065,
693*c9ea9e7aSLionel Sambuc 1070, 1077, 1076, 1087, 1086, 1093, 1098, 1108, 1110, 1117,
694*c9ea9e7aSLionel Sambuc 1118, 1123, 1124, 1129, 1130
695*c9ea9e7aSLionel Sambuc };
696*c9ea9e7aSLionel Sambuc #endif
697*c9ea9e7aSLionel Sambuc
698*c9ea9e7aSLionel Sambuc #if YYDEBUG || YYERROR_VERBOSE || 1
699*c9ea9e7aSLionel Sambuc /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
700*c9ea9e7aSLionel Sambuc First, the terminals, then, starting at YYNTOKENS, nonterminals. */
701*c9ea9e7aSLionel Sambuc static const char *const yytname[] =
702*c9ea9e7aSLionel Sambuc {
703*c9ea9e7aSLionel Sambuc "$end", "error", "$undefined", "PLUSEQ", "MINUSEQ", "MULTEQ", "DIVEQ",
704*c9ea9e7aSLionel Sambuc "'='", "LSHIFTEQ", "RSHIFTEQ", "ANDEQ", "OREQ", "'?'", "':'", "OROR",
705*c9ea9e7aSLionel Sambuc "ANDAND", "'|'", "'^'", "'&'", "EQ", "NE", "'<'", "'>'", "LE", "GE",
706*c9ea9e7aSLionel Sambuc "LSHIFT", "RSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'", "UNARY", "STRING",
707*c9ea9e7aSLionel Sambuc "QUOTED_STRING", "INTEGER", "ABSOLUTE", "ADDR", "ALIGN_K", "ALIGNOF",
708*c9ea9e7aSLionel Sambuc "ASSERT_K", "AS_NEEDED", "AT", "BIND", "BLOCK", "BYTE", "CONSTANT",
709*c9ea9e7aSLionel Sambuc "CONSTRUCTORS", "COPY", "CREATE_OBJECT_SYMBOLS", "DATA_SEGMENT_ALIGN",
710*c9ea9e7aSLionel Sambuc "DATA_SEGMENT_END", "DATA_SEGMENT_RELRO_END", "DEFINED", "DSECT",
711*c9ea9e7aSLionel Sambuc "ENTRY", "EXCLUDE_FILE", "EXTERN", "FILL", "FLOAT",
712*c9ea9e7aSLionel Sambuc "FORCE_COMMON_ALLOCATION", "GLOBAL", "GROUP", "HLL", "INCLUDE",
713*c9ea9e7aSLionel Sambuc "INHIBIT_COMMON_ALLOCATION", "INFO", "INPUT", "KEEP", "LEN", "LENGTH",
714*c9ea9e7aSLionel Sambuc "LOADADDR", "LOCAL", "LONG", "MAP", "MAX_K", "MEMORY", "MIN_K", "NEXT",
715*c9ea9e7aSLionel Sambuc "NOCROSSREFS", "NOFLOAT", "NOLOAD", "ONLY_IF_RO", "ONLY_IF_RW", "ORG",
716*c9ea9e7aSLionel Sambuc "ORIGIN", "OUTPUT", "OUTPUT_ARCH", "OUTPUT_FORMAT", "OVERLAY", "PHDRS",
717*c9ea9e7aSLionel Sambuc "PROVIDE", "PROVIDE_HIDDEN", "QUAD", "SEARCH_DIR", "SECTIONS",
718*c9ea9e7aSLionel Sambuc "SEGMENT_START", "SHORT", "SIZEOF", "SIZEOF_HEADERS",
719*c9ea9e7aSLionel Sambuc "SORT_BY_ALIGNMENT", "SORT_BY_NAME", "SPECIAL", "SQUAD", "STARTUP",
720*c9ea9e7aSLionel Sambuc "SUBALIGN", "SYSLIB", "TARGET_K", "TRUNCATE", "VERSIONK", "OPTION",
721*c9ea9e7aSLionel Sambuc "PARSING_LINKER_SCRIPT", "PARSING_VERSION_SCRIPT", "PARSING_DEFSYM",
722*c9ea9e7aSLionel Sambuc "PARSING_DYNAMIC_LIST", "'('", "')'", "'{'", "'}'", "','", "';'", "'!'",
723*c9ea9e7aSLionel Sambuc "'o'", "'l'", "'~'", "$accept", "top", "linker_script", "file_cmd",
724*c9ea9e7aSLionel Sambuc "$@1", "$@2", "$@3", "ignore_cmd", "extern_name_list", "$@4",
725*c9ea9e7aSLionel Sambuc "extern_name_list_body", "input_list", "input_list_element", "$@5",
726*c9ea9e7aSLionel Sambuc "sections_block", "section_block_cmd", "$@6", "section_header", "$@7",
727*c9ea9e7aSLionel Sambuc "$@8", "opt_address_and_section_type", "section_type", "opt_at",
728*c9ea9e7aSLionel Sambuc "opt_align", "opt_subalign", "opt_constraint", "section_trailer",
729*c9ea9e7aSLionel Sambuc "opt_memspec", "opt_at_memspec", "opt_phdr", "opt_fill", "section_cmds",
730*c9ea9e7aSLionel Sambuc "section_cmd", "data_length", "input_section_spec",
731*c9ea9e7aSLionel Sambuc "input_section_no_keep", "wildcard_file", "wildcard_sections",
732*c9ea9e7aSLionel Sambuc "wildcard_section", "exclude_names", "wildcard_name",
733*c9ea9e7aSLionel Sambuc "file_or_sections_cmd", "memory_defs", "memory_def", "memory_attr",
734*c9ea9e7aSLionel Sambuc "memory_origin", "memory_length", "phdrs_defs", "phdr_def", "phdr_type",
735*c9ea9e7aSLionel Sambuc "phdr_info", "assignment", "parse_exp", "$@9", "exp", "defsym_expr",
736*c9ea9e7aSLionel Sambuc "dynamic_list_expr", "dynamic_list_nodes", "dynamic_list_node",
737*c9ea9e7aSLionel Sambuc "version_script", "vers_nodes", "vers_node", "verdep", "vers_tag",
738*c9ea9e7aSLionel Sambuc "vers_defns", "$@10", "$@11", "string", "end", "opt_semicolon",
739*c9ea9e7aSLionel Sambuc "opt_comma", YY_NULLPTR
740*c9ea9e7aSLionel Sambuc };
741*c9ea9e7aSLionel Sambuc #endif
742*c9ea9e7aSLionel Sambuc
743*c9ea9e7aSLionel Sambuc # ifdef YYPRINT
744*c9ea9e7aSLionel Sambuc /* YYTOKNUM[NUM] -- (External) token number corresponding to the
745*c9ea9e7aSLionel Sambuc (internal) symbol number NUM (which must be that of a token). */
746*c9ea9e7aSLionel Sambuc static const yytype_uint16 yytoknum[] =
747*c9ea9e7aSLionel Sambuc {
748*c9ea9e7aSLionel Sambuc 0, 256, 257, 258, 259, 260, 261, 61, 262, 263,
749*c9ea9e7aSLionel Sambuc 264, 265, 63, 58, 266, 267, 124, 94, 38, 268,
750*c9ea9e7aSLionel Sambuc 269, 60, 62, 270, 271, 272, 273, 43, 45, 42,
751*c9ea9e7aSLionel Sambuc 47, 37, 274, 275, 276, 277, 278, 279, 280, 281,
752*c9ea9e7aSLionel Sambuc 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
753*c9ea9e7aSLionel Sambuc 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
754*c9ea9e7aSLionel Sambuc 302, 303, 304, 305, 306, 307, 308, 309, 310, 311,
755*c9ea9e7aSLionel Sambuc 312, 313, 314, 315, 316, 317, 318, 319, 320, 321,
756*c9ea9e7aSLionel Sambuc 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
757*c9ea9e7aSLionel Sambuc 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
758*c9ea9e7aSLionel Sambuc 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
759*c9ea9e7aSLionel Sambuc 352, 353, 354, 355, 356, 40, 41, 123, 125, 44,
760*c9ea9e7aSLionel Sambuc 59, 33, 111, 108, 126
761*c9ea9e7aSLionel Sambuc };
762*c9ea9e7aSLionel Sambuc # endif
763*c9ea9e7aSLionel Sambuc
764*c9ea9e7aSLionel Sambuc #define YYPACT_NINF -396
765*c9ea9e7aSLionel Sambuc
766*c9ea9e7aSLionel Sambuc #define yypact_value_is_default(Yystate) \
767*c9ea9e7aSLionel Sambuc (!!((Yystate) == (-396)))
768*c9ea9e7aSLionel Sambuc
769*c9ea9e7aSLionel Sambuc #define YYTABLE_NINF -110
770*c9ea9e7aSLionel Sambuc
771*c9ea9e7aSLionel Sambuc #define yytable_value_is_error(Yytable_value) \
772*c9ea9e7aSLionel Sambuc 0
773*c9ea9e7aSLionel Sambuc
774*c9ea9e7aSLionel Sambuc /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
775*c9ea9e7aSLionel Sambuc STATE-NUM. */
776*c9ea9e7aSLionel Sambuc static const yytype_int16 yypact[] =
777*c9ea9e7aSLionel Sambuc {
778*c9ea9e7aSLionel Sambuc 155, -396, 42, 90, -106, 13, 1169, -396, -396, 122,
779*c9ea9e7aSLionel Sambuc -396, 42, -396, -85, -396, 36, 135, -396, -106, -396,
780*c9ea9e7aSLionel Sambuc -396, -68, -55, -46, -396, -396, 90, -396, -37, -29,
781*c9ea9e7aSLionel Sambuc 4, 19, 29, 46, 52, 69, 35, 78, 54, 82,
782*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, 20, 321, -396, -396, 90, 144,
783*c9ea9e7aSLionel Sambuc 202, -6, 103, -396, 122, -396, 105, -396, -396, 90,
784*c9ea9e7aSLionel Sambuc -396, 102, -396, 185, -396, 90, 90, -396, 90, 90,
785*c9ea9e7aSLionel Sambuc 90, -396, 90, -396, 90, -396, -396, -396, -396, -396,
786*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, -396, -396, -396, 111, 135, 135,
787*c9ea9e7aSLionel Sambuc 118, 143, 127, -396, 1129, 72, 110, 157, 182, 90,
788*c9ea9e7aSLionel Sambuc 185, 210, -396, -63, -396, -396, 84, 186, 108, 40,
789*c9ea9e7aSLionel Sambuc 297, 301, 218, -396, 220, 42, 232, -396, -396, -396,
790*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, -396, -396, -396, 229, 231, -396,
791*c9ea9e7aSLionel Sambuc -396, -396, 90, -3, 1129, 1129, -396, 237, 258, 259,
792*c9ea9e7aSLionel Sambuc 262, 263, 289, 300, 302, 303, 304, 305, 306, 309,
793*c9ea9e7aSLionel Sambuc 332, 333, 334, 337, 338, -396, 1129, 1129, 1129, 1298,
794*c9ea9e7aSLionel Sambuc -396, 335, 90, -396, -396, -5, -396, 120, -396, 339,
795*c9ea9e7aSLionel Sambuc -396, -396, 185, -396, 131, -396, -396, 90, -396, -396,
796*c9ea9e7aSLionel Sambuc 310, -396, -396, -396, 56, -396, 340, -396, 135, 109,
797*c9ea9e7aSLionel Sambuc 143, 343, -396, 25, -396, -396, -396, 1129, 90, 1129,
798*c9ea9e7aSLionel Sambuc 90, 1129, 1129, 90, 1129, 1129, 1129, 90, 90, 90,
799*c9ea9e7aSLionel Sambuc 1129, 1129, 90, 90, 90, 234, -396, -396, 1129, 1129,
800*c9ea9e7aSLionel Sambuc 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129,
801*c9ea9e7aSLionel Sambuc 1129, 1129, 1129, 1129, 1129, 1129, 1129, -396, 341, 90,
802*c9ea9e7aSLionel Sambuc -396, -396, 185, -396, 90, -396, 346, 344, -396, 59,
803*c9ea9e7aSLionel Sambuc -396, 349, 351, -396, -396, -396, 321, -396, 336, 455,
804*c9ea9e7aSLionel Sambuc -396, -396, -396, 718, 353, 260, 356, 411, 744, 358,
805*c9ea9e7aSLionel Sambuc 638, 764, 658, 360, 361, 362, 678, 698, 363, 365,
806*c9ea9e7aSLionel Sambuc 366, -396, 1278, 590, 364, 801, 617, 900, 291, 291,
807*c9ea9e7aSLionel Sambuc 383, 383, 383, 383, 204, 204, 372, 372, -396, -396,
808*c9ea9e7aSLionel Sambuc -396, -396, -396, 125, -396, -27, 467, 90, 368, 59,
809*c9ea9e7aSLionel Sambuc 367, 99, -396, -396, -396, 476, 143, 373, 135, 135,
810*c9ea9e7aSLionel Sambuc -396, -396, -396, 1129, -396, 90, -396, -396, 1129, -396,
811*c9ea9e7aSLionel Sambuc 1129, -396, -396, -396, 1129, 1129, -396, 1129, -396, 1129,
812*c9ea9e7aSLionel Sambuc -396, 90, 369, 51, 374, -396, -396, -396, 446, -396,
813*c9ea9e7aSLionel Sambuc 376, -396, 1037, 452, 1029, -396, 378, 336, 784, 384,
814*c9ea9e7aSLionel Sambuc 821, 847, 867, 887, 924, 1298, 385, -396, -396, -396,
815*c9ea9e7aSLionel Sambuc -396, 495, -396, 390, 391, -396, -396, -396, -396, -396,
816*c9ea9e7aSLionel Sambuc -396, 504, 392, 404, 485, -396, 37, 143, 406, -396,
817*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, -396, -396, -396, -396, 59, 59,
818*c9ea9e7aSLionel Sambuc 531, -396, 512, 1129, 416, 427, 520, 418, -396, 417,
819*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, 420, -396, -396, 422, 90, 423,
820*c9ea9e7aSLionel Sambuc -396, -396, -396, 425, -396, 519, -396, -396, 429, -396,
821*c9ea9e7aSLionel Sambuc -396, 430, -396, 20, 12, -396, 950, 1129, 433, -396,
822*c9ea9e7aSLionel Sambuc -396, 529, 39, -396, -396, -396, 53, 175, 90, -396,
823*c9ea9e7aSLionel Sambuc 507, -396, 15, -396, -396, 970, 1129, -57, -396, -396,
824*c9ea9e7aSLionel Sambuc -396, -396, 543, 435, 436, 440, 441, 443, 447, 450,
825*c9ea9e7aSLionel Sambuc -396, -396, 534, -396, 451, 444, 453, 454, 176, -396,
826*c9ea9e7aSLionel Sambuc -396, -396, 990, -396, -396, -396, -396, -396, 90, -396,
827*c9ea9e7aSLionel Sambuc 187, -396, -396, -396, 90, 97, -396, 187, 50, 50,
828*c9ea9e7aSLionel Sambuc -396, 21, -396, -396, 461, -396, -396, 90, 417, 180,
829*c9ea9e7aSLionel Sambuc -396, 463, 464, 466, -396, -396, -396, -396, -396, -396,
830*c9ea9e7aSLionel Sambuc 187, -396, -396, 187, -396, 181, -396
831*c9ea9e7aSLionel Sambuc };
832*c9ea9e7aSLionel Sambuc
833*c9ea9e7aSLionel Sambuc /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
834*c9ea9e7aSLionel Sambuc Performed when YYTABLE does not specify something else to do. Zero
835*c9ea9e7aSLionel Sambuc means the default is an error. */
836*c9ea9e7aSLionel Sambuc static const yytype_uint8 yydefact[] =
837*c9ea9e7aSLionel Sambuc {
838*c9ea9e7aSLionel Sambuc 0, 7, 0, 0, 0, 0, 2, 227, 228, 212,
839*c9ea9e7aSLionel Sambuc 3, 204, 205, 0, 4, 0, 0, 5, 200, 201,
840*c9ea9e7aSLionel Sambuc 1, 0, 0, 0, 9, 10, 0, 12, 0, 0,
841*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
842*c9ea9e7aSLionel Sambuc 27, 6, 26, 25, 0, 0, 217, 218, 225, 0,
843*c9ea9e7aSLionel Sambuc 0, 0, 0, 206, 212, 151, 0, 202, 151, 0,
844*c9ea9e7aSLionel Sambuc 29, 0, 115, 0, 117, 0, 0, 131, 0, 0,
845*c9ea9e7aSLionel Sambuc 0, 20, 0, 23, 0, 230, 229, 113, 151, 151,
846*c9ea9e7aSLionel Sambuc 151, 151, 151, 151, 151, 151, 151, 0, 0, 0,
847*c9ea9e7aSLionel Sambuc 0, 213, 0, 199, 0, 0, 0, 0, 0, 0,
848*c9ea9e7aSLionel Sambuc 0, 0, 38, 234, 34, 36, 234, 0, 0, 0,
849*c9ea9e7aSLionel Sambuc 0, 0, 0, 41, 0, 0, 0, 141, 142, 143,
850*c9ea9e7aSLionel Sambuc 144, 140, 145, 146, 147, 148, 221, 0, 0, 207,
851*c9ea9e7aSLionel Sambuc 219, 220, 226, 0, 0, 0, 177, 0, 0, 0,
852*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
853*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 182, 0, 0, 0, 152,
854*c9ea9e7aSLionel Sambuc 178, 0, 0, 112, 8, 30, 31, 234, 37, 0,
855*c9ea9e7aSLionel Sambuc 13, 233, 0, 14, 120, 28, 16, 0, 18, 130,
856*c9ea9e7aSLionel Sambuc 0, 151, 151, 19, 0, 22, 0, 15, 0, 214,
857*c9ea9e7aSLionel Sambuc 215, 0, 208, 0, 210, 157, 154, 0, 0, 0,
858*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
859*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 155, 156, 0, 0,
860*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
861*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 203, 0, 0,
862*c9ea9e7aSLionel Sambuc 32, 11, 0, 35, 0, 116, 123, 0, 134, 135,
863*c9ea9e7aSLionel Sambuc 133, 0, 0, 21, 40, 42, 45, 24, 232, 0,
864*c9ea9e7aSLionel Sambuc 223, 209, 211, 0, 0, 0, 0, 0, 0, 0,
865*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
866*c9ea9e7aSLionel Sambuc 0, 153, 0, 175, 174, 173, 172, 171, 165, 166,
867*c9ea9e7aSLionel Sambuc 169, 170, 167, 168, 163, 164, 161, 162, 158, 159,
868*c9ea9e7aSLionel Sambuc 160, 114, 33, 234, 119, 0, 0, 0, 0, 135,
869*c9ea9e7aSLionel Sambuc 0, 135, 149, 150, 43, 0, 231, 0, 0, 0,
870*c9ea9e7aSLionel Sambuc 190, 185, 191, 0, 183, 0, 193, 189, 0, 196,
871*c9ea9e7aSLionel Sambuc 0, 181, 188, 186, 0, 0, 187, 0, 184, 0,
872*c9ea9e7aSLionel Sambuc 39, 0, 0, 0, 0, 151, 137, 132, 0, 136,
873*c9ea9e7aSLionel Sambuc 0, 48, 0, 59, 0, 222, 0, 232, 0, 0,
874*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 176, 0, 121, 125, 124,
875*c9ea9e7aSLionel Sambuc 126, 0, 17, 0, 0, 78, 56, 55, 57, 54,
876*c9ea9e7aSLionel Sambuc 58, 0, 0, 0, 61, 50, 0, 216, 0, 192,
877*c9ea9e7aSLionel Sambuc 198, 194, 195, 179, 180, 197, 122, 151, 135, 135,
878*c9ea9e7aSLionel Sambuc 0, 49, 0, 0, 0, 63, 0, 0, 224, 234,
879*c9ea9e7aSLionel Sambuc 139, 138, 111, 110, 0, 93, 85, 0, 0, 0,
880*c9ea9e7aSLionel Sambuc 91, 89, 92, 0, 90, 71, 88, 79, 0, 81,
881*c9ea9e7aSLionel Sambuc 94, 0, 98, 0, 96, 52, 0, 0, 0, 46,
882*c9ea9e7aSLionel Sambuc 51, 0, 0, 151, 151, 87, 0, 0, 0, 44,
883*c9ea9e7aSLionel Sambuc 73, 151, 0, 80, 60, 0, 0, 65, 53, 128,
884*c9ea9e7aSLionel Sambuc 127, 129, 0, 0, 0, 0, 0, 96, 0, 0,
885*c9ea9e7aSLionel Sambuc 109, 70, 0, 75, 0, 0, 0, 0, 234, 101,
886*c9ea9e7aSLionel Sambuc 104, 62, 0, 66, 67, 68, 47, 151, 0, 84,
887*c9ea9e7aSLionel Sambuc 0, 95, 86, 99, 0, 77, 82, 0, 0, 0,
888*c9ea9e7aSLionel Sambuc 97, 0, 64, 118, 0, 72, 151, 0, 234, 234,
889*c9ea9e7aSLionel Sambuc 108, 0, 0, 0, 100, 83, 76, 74, 69, 103,
890*c9ea9e7aSLionel Sambuc 0, 106, 105, 0, 107, 234, 102
891*c9ea9e7aSLionel Sambuc };
892*c9ea9e7aSLionel Sambuc
893*c9ea9e7aSLionel Sambuc /* YYPGOTO[NTERM-NUM]. */
894*c9ea9e7aSLionel Sambuc static const yytype_int16 yypgoto[] =
895*c9ea9e7aSLionel Sambuc {
896*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, -396, -396, -396, -396, -396, -396,
897*c9ea9e7aSLionel Sambuc -396, -98, 398, -396, -396, -396, -396, -396, -396, -396,
898*c9ea9e7aSLionel Sambuc -396, 196, -396, -396, -396, -396, -396, -396, -396, -396,
899*c9ea9e7aSLionel Sambuc -396, -396, -396, -396, -396, 116, -396, -396, -313, 60,
900*c9ea9e7aSLionel Sambuc -395, 400, -396, -396, -396, -396, -396, -396, -396, -396,
901*c9ea9e7aSLionel Sambuc -299, 188, -44, -396, 136, -396, -396, -396, 567, 471,
902*c9ea9e7aSLionel Sambuc -396, 576, -396, 536, -8, -396, -396, -2, 160, 239,
903*c9ea9e7aSLionel Sambuc -103
904*c9ea9e7aSLionel Sambuc };
905*c9ea9e7aSLionel Sambuc
906*c9ea9e7aSLionel Sambuc /* YYDEFGOTO[NTERM-NUM]. */
907*c9ea9e7aSLionel Sambuc static const yytype_int16 yydefgoto[] =
908*c9ea9e7aSLionel Sambuc {
909*c9ea9e7aSLionel Sambuc -1, 5, 6, 41, 61, 113, 115, 42, 98, 99,
910*c9ea9e7aSLionel Sambuc 165, 103, 104, 169, 184, 254, 350, 314, 315, 457,
911*c9ea9e7aSLionel Sambuc 353, 382, 384, 405, 439, 486, 449, 450, 473, 495,
912*c9ea9e7aSLionel Sambuc 508, 400, 427, 428, 429, 430, 431, 478, 479, 509,
913*c9ea9e7aSLionel Sambuc 480, 43, 106, 245, 306, 371, 462, 109, 179, 249,
914*c9ea9e7aSLionel Sambuc 310, 44, 93, 94, 215, 14, 17, 18, 19, 10,
915*c9ea9e7aSLionel Sambuc 11, 12, 193, 51, 52, 188, 319, 160, 77, 317,
916*c9ea9e7aSLionel Sambuc 172
917*c9ea9e7aSLionel Sambuc };
918*c9ea9e7aSLionel Sambuc
919*c9ea9e7aSLionel Sambuc /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
920*c9ea9e7aSLionel Sambuc positive, shift that token. If negative, reduce the rule whose
921*c9ea9e7aSLionel Sambuc number is the opposite. If YYTABLE_NINF, syntax error. */
922*c9ea9e7aSLionel Sambuc static const yytype_int16 yytable[] =
923*c9ea9e7aSLionel Sambuc {
924*c9ea9e7aSLionel Sambuc 13, 15, 167, 174, 45, 432, 7, 8, 56, 13,
925*c9ea9e7aSLionel Sambuc 346, 16, 349, 20, 96, 78, 79, 80, 81, 82,
926*c9ea9e7aSLionel Sambuc 83, 84, 85, 86, 62, 483, 484, 412, 7, 8,
927*c9ea9e7aSLionel Sambuc 7, 8, 54, 412, 117, 118, 119, 120, 121, 122,
928*c9ea9e7aSLionel Sambuc 123, 124, 125, 55, 413, 485, 87, 58, 7, 8,
929*c9ea9e7aSLionel Sambuc 413, 432, 469, 170, 7, 8, 171, 97, 7, 8,
930*c9ea9e7aSLionel Sambuc 59, 105, 412, 107, 108, 412, 110, 111, 112, 60,
931*c9ea9e7aSLionel Sambuc 114, 475, 116, 7, 8, 7, 8, 513, 63, 413,
932*c9ea9e7aSLionel Sambuc 127, 128, 413, 7, 8, 376, 7, 8, 64, 7,
933*c9ea9e7aSLionel Sambuc 8, 377, 7, 8, 341, 469, 21, 166, 105, 410,
934*c9ea9e7aSLionel Sambuc 411, 308, 510, 378, 506, 130, 131, 180, 459, 460,
935*c9ea9e7aSLionel Sambuc 507, 22, 90, 13, 239, 476, 477, 192, 379, 65,
936*c9ea9e7aSLionel Sambuc 26, 476, 477, 7, 8, 524, 380, -109, 510, 132,
937*c9ea9e7aSLionel Sambuc 191, 194, 7, 8, 66, 368, 369, 251, 252, 75,
938*c9ea9e7aSLionel Sambuc 76, 308, 130, 131, 303, 261, 67, 33, 34, 309,
939*c9ea9e7aSLionel Sambuc 476, 477, 71, 406, 465, 46, 47, 88, 178, 9,
940*c9ea9e7aSLionel Sambuc 238, 68, 461, 240, 7, 8, 132, 69, 46, 47,
941*c9ea9e7aSLionel Sambuc 105, 73, 246, 370, 253, 247, 130, 131, 250, 48,
942*c9ea9e7aSLionel Sambuc 258, 259, 256, 49, 70, 511, 512, 412, 514, 309,
943*c9ea9e7aSLionel Sambuc 161, 262, 48, 72, 50, 244, 264, 74, 266, 412,
944*c9ea9e7aSLionel Sambuc 132, 269, 173, 171, 413, 273, 274, 275, 7, 8,
945*c9ea9e7aSLionel Sambuc 278, 279, 280, 101, 348, 89, 413, 100, 7, 8,
946*c9ea9e7aSLionel Sambuc 7, 8, 468, 91, 176, 95, 102, 177, 126, 162,
947*c9ea9e7aSLionel Sambuc 159, 232, 233, 234, 235, 236, 241, 302, 129, 171,
948*c9ea9e7aSLionel Sambuc 105, 340, 304, 168, 171, 133, 218, 311, 219, 220,
949*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
950*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 1, 2, 3, 4,
951*c9ea9e7aSLionel Sambuc 195, 196, 218, 163, 219, 220, 221, 222, 223, 224,
952*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
953*c9ea9e7aSLionel Sambuc 235, 236, 500, 216, 217, 171, 519, 526, 164, 171,
954*c9ea9e7aSLionel Sambuc 171, 373, 175, 342, 181, 344, 442, 311, 182, 311,
955*c9ea9e7aSLionel Sambuc 356, 357, 226, 227, 228, 229, 230, 231, 232, 233,
956*c9ea9e7aSLionel Sambuc 234, 235, 236, 359, 78, 79, 80, 81, 82, 83,
957*c9ea9e7aSLionel Sambuc 84, 85, 86, 263, 183, 265, 185, 267, 268, 366,
958*c9ea9e7aSLionel Sambuc 270, 271, 272, 7, 8, 248, 276, 277, 187, 189,
959*c9ea9e7aSLionel Sambuc 281, 190, 197, 409, 282, 283, 284, 285, 286, 287,
960*c9ea9e7aSLionel Sambuc 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
961*c9ea9e7aSLionel Sambuc 298, 299, 300, 198, 199, 501, 322, 200, 201, 323,
962*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
963*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 311, 311, 434, 463,
964*c9ea9e7aSLionel Sambuc 464, 234, 235, 236, 202, 518, 520, 474, 230, 231,
965*c9ea9e7aSLionel Sambuc 232, 233, 234, 235, 236, 203, 445, 204, 205, 206,
966*c9ea9e7aSLionel Sambuc 207, 208, 520, 218, 209, 219, 220, 221, 222, 223,
967*c9ea9e7aSLionel Sambuc 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
968*c9ea9e7aSLionel Sambuc 234, 235, 236, 503, 467, 470, 471, 210, 211, 212,
969*c9ea9e7aSLionel Sambuc 470, 354, 213, 214, 242, 237, 316, 301, 257, 358,
970*c9ea9e7aSLionel Sambuc 260, 305, 516, 307, 360, 312, 361, 313, 318, 321,
971*c9ea9e7aSLionel Sambuc 362, 363, 324, 364, 327, 365, 331, 332, 333, 336,
972*c9ea9e7aSLionel Sambuc 343, 374, 338, 345, 337, 367, 504, 347, 470, 351,
973*c9ea9e7aSLionel Sambuc 372, 355, 505, 375, 383, 470, 470, 470, 387, 470,
974*c9ea9e7aSLionel Sambuc 390, 396, 397, 134, 135, 517, 398, 399, 402, 7,
975*c9ea9e7aSLionel Sambuc 8, 136, 137, 138, 139, 140, 141, 401, 470, 403,
976*c9ea9e7aSLionel Sambuc 142, 470, 143, 404, 408, 435, 144, 145, 146, 147,
977*c9ea9e7aSLionel Sambuc 325, 437, 438, 440, 441, 443, 171, 444, 446, 436,
978*c9ea9e7aSLionel Sambuc 447, 448, 458, 412, 451, 452, 148, 149, 456, 472,
979*c9ea9e7aSLionel Sambuc 487, 150, 489, 151, 488, 490, 494, 491, -109, 497,
980*c9ea9e7aSLionel Sambuc 413, 152, 466, 492, 7, 8, 493, 496, 498, 499,
981*c9ea9e7aSLionel Sambuc 243, 414, 153, 455, 154, 155, 415, 515, 416, 521,
982*c9ea9e7aSLionel Sambuc 522, 523, 407, 525, 255, 57, 186, 53, 433, 417,
983*c9ea9e7aSLionel Sambuc 92, 352, 482, 453, 0, 418, 388, 157, 0, 419,
984*c9ea9e7aSLionel Sambuc 158, 0, 0, 0, 420, 220, 221, 222, 223, 224,
985*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
986*c9ea9e7aSLionel Sambuc 235, 236, 33, 34, 421, 0, 0, 0, 422, 0,
987*c9ea9e7aSLionel Sambuc 0, 0, 423, 0, 424, 223, 224, 225, 226, 227,
988*c9ea9e7aSLionel Sambuc 228, 229, 230, 231, 232, 233, 234, 235, 236, 425,
989*c9ea9e7aSLionel Sambuc 218, 426, 219, 220, 221, 222, 223, 224, 225, 226,
990*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
991*c9ea9e7aSLionel Sambuc 218, 0, 219, 220, 221, 222, 223, 224, 225, 226,
992*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
993*c9ea9e7aSLionel Sambuc 218, 0, 219, 220, 221, 222, 223, 224, 225, 226,
994*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
995*c9ea9e7aSLionel Sambuc 218, 0, 219, 220, 221, 222, 223, 224, 225, 226,
996*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
997*c9ea9e7aSLionel Sambuc 218, 0, 219, 220, 221, 222, 223, 224, 225, 226,
998*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
999*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 218, 328, 219, 220,
1000*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1001*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 218, 330, 219, 220,
1002*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1003*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 218, 334, 219, 220,
1004*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1005*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 0, 335, 222, 223,
1006*c9ea9e7aSLionel Sambuc 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
1007*c9ea9e7aSLionel Sambuc 234, 235, 236, 218, 320, 219, 220, 221, 222, 223,
1008*c9ea9e7aSLionel Sambuc 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
1009*c9ea9e7aSLionel Sambuc 234, 235, 236, 0, 0, 0, 0, 0, 0, 218,
1010*c9ea9e7aSLionel Sambuc 326, 219, 220, 221, 222, 223, 224, 225, 226, 227,
1011*c9ea9e7aSLionel Sambuc 228, 229, 230, 231, 232, 233, 234, 235, 236, 218,
1012*c9ea9e7aSLionel Sambuc 329, 219, 220, 221, 222, 223, 224, 225, 226, 227,
1013*c9ea9e7aSLionel Sambuc 228, 229, 230, 231, 232, 233, 234, 235, 236, 218,
1014*c9ea9e7aSLionel Sambuc 389, 219, 220, 221, 222, 223, 224, 225, 226, 227,
1015*c9ea9e7aSLionel Sambuc 228, 229, 230, 231, 232, 233, 234, 235, 236, 224,
1016*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1017*c9ea9e7aSLionel Sambuc 235, 236, 0, 0, 0, 0, 218, 391, 219, 220,
1018*c9ea9e7aSLionel Sambuc 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1019*c9ea9e7aSLionel Sambuc 231, 232, 233, 234, 235, 236, 0, 0, 0, 0,
1020*c9ea9e7aSLionel Sambuc 0, 0, 218, 392, 219, 220, 221, 222, 223, 224,
1021*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1022*c9ea9e7aSLionel Sambuc 235, 236, 218, 393, 219, 220, 221, 222, 223, 224,
1023*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1024*c9ea9e7aSLionel Sambuc 235, 236, 218, 394, 219, 220, 221, 222, 223, 224,
1025*c9ea9e7aSLionel Sambuc 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1026*c9ea9e7aSLionel Sambuc 235, 236, 0, 0, 0, 0, 0, 0, 0, 0,
1027*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1028*c9ea9e7aSLionel Sambuc 395, 218, 385, 219, 220, 221, 222, 223, 224, 225,
1029*c9ea9e7aSLionel Sambuc 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
1030*c9ea9e7aSLionel Sambuc 236, 0, 0, 0, 134, 135, 454, 0, 0, 0,
1031*c9ea9e7aSLionel Sambuc 7, 8, 136, 137, 138, 139, 140, 141, 0, 0,
1032*c9ea9e7aSLionel Sambuc 0, 142, 0, 143, 0, 376, 481, 144, 145, 146,
1033*c9ea9e7aSLionel Sambuc 147, 377, 0, 0, 0, 0, 0, 0, 0, 0,
1034*c9ea9e7aSLionel Sambuc 0, 0, 0, 378, 0, 0, 502, 148, 149, 0,
1035*c9ea9e7aSLionel Sambuc 0, 0, 150, 0, 151, 0, 0, 0, 379, 0,
1036*c9ea9e7aSLionel Sambuc 0, 0, 152, 0, 0, 0, 380, 0, 0, 0,
1037*c9ea9e7aSLionel Sambuc 0, 0, 0, 153, 0, 154, 155, 0, 0, 0,
1038*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 386, 0, 0, 0, 0, 0,
1039*c9ea9e7aSLionel Sambuc 0, 0, 156, 381, 0, 0, 134, 135, 157, 0,
1040*c9ea9e7aSLionel Sambuc 0, 158, 7, 8, 136, 137, 138, 139, 140, 141,
1041*c9ea9e7aSLionel Sambuc 0, 0, 0, 142, 0, 143, 0, 0, 0, 144,
1042*c9ea9e7aSLionel Sambuc 145, 146, 147, 0, 0, 0, 0, 0, 0, 0,
1043*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 148,
1044*c9ea9e7aSLionel Sambuc 149, 0, 7, 8, 150, 0, 151, 0, 0, 21,
1045*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 152, 0, 0, 0, 0, 0,
1046*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 22, 153, 23, 154, 155, 24,
1047*c9ea9e7aSLionel Sambuc 0, 25, 0, 26, 27, 0, 28, 0, 0, 0,
1048*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 156, 29, 0, 0, 0, 0,
1049*c9ea9e7aSLionel Sambuc 157, 0, 0, 158, 0, 0, 30, 31, 0, 32,
1050*c9ea9e7aSLionel Sambuc 33, 34, 0, 35, 36, 0, 0, 0, 0, 0,
1051*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 37, 0, 38, 39,
1052*c9ea9e7aSLionel Sambuc 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
1053*c9ea9e7aSLionel Sambuc 218, 339, 219, 220, 221, 222, 223, 224, 225, 226,
1054*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
1055*c9ea9e7aSLionel Sambuc 218, 0, 219, 220, 221, 222, 223, 224, 225, 226,
1056*c9ea9e7aSLionel Sambuc 227, 228, 229, 230, 231, 232, 233, 234, 235, 236
1057*c9ea9e7aSLionel Sambuc };
1058*c9ea9e7aSLionel Sambuc
1059*c9ea9e7aSLionel Sambuc static const yytype_int16 yycheck[] =
1060*c9ea9e7aSLionel Sambuc {
1061*c9ea9e7aSLionel Sambuc 2, 3, 100, 106, 6, 400, 33, 34, 16, 11,
1062*c9ea9e7aSLionel Sambuc 309, 117, 311, 0, 58, 3, 4, 5, 6, 7,
1063*c9ea9e7aSLionel Sambuc 8, 9, 10, 11, 26, 82, 83, 12, 33, 34,
1064*c9ea9e7aSLionel Sambuc 33, 34, 117, 12, 78, 79, 80, 81, 82, 83,
1065*c9ea9e7aSLionel Sambuc 84, 85, 86, 7, 29, 102, 48, 115, 33, 34,
1066*c9ea9e7aSLionel Sambuc 29, 446, 447, 116, 33, 34, 119, 59, 33, 34,
1067*c9ea9e7aSLionel Sambuc 115, 63, 12, 65, 66, 12, 68, 69, 70, 115,
1068*c9ea9e7aSLionel Sambuc 72, 56, 74, 33, 34, 33, 34, 56, 115, 29,
1069*c9ea9e7aSLionel Sambuc 88, 89, 29, 33, 34, 48, 33, 34, 117, 33,
1070*c9ea9e7aSLionel Sambuc 34, 54, 33, 34, 121, 490, 40, 99, 100, 398,
1071*c9ea9e7aSLionel Sambuc 399, 42, 497, 66, 7, 33, 34, 109, 69, 70,
1072*c9ea9e7aSLionel Sambuc 13, 55, 118, 115, 119, 100, 101, 120, 81, 115,
1073*c9ea9e7aSLionel Sambuc 64, 100, 101, 33, 34, 520, 89, 115, 523, 57,
1074*c9ea9e7aSLionel Sambuc 132, 133, 33, 34, 115, 84, 85, 181, 182, 119,
1075*c9ea9e7aSLionel Sambuc 120, 42, 33, 34, 242, 120, 117, 91, 92, 90,
1076*c9ea9e7aSLionel Sambuc 100, 101, 117, 116, 101, 33, 34, 13, 118, 117,
1077*c9ea9e7aSLionel Sambuc 162, 115, 123, 165, 33, 34, 57, 115, 33, 34,
1078*c9ea9e7aSLionel Sambuc 172, 117, 174, 122, 118, 177, 33, 34, 180, 57,
1079*c9ea9e7aSLionel Sambuc 188, 72, 184, 61, 115, 498, 499, 12, 501, 90,
1080*c9ea9e7aSLionel Sambuc 118, 193, 57, 115, 72, 64, 198, 115, 200, 12,
1081*c9ea9e7aSLionel Sambuc 57, 203, 118, 119, 29, 207, 208, 209, 33, 34,
1082*c9ea9e7aSLionel Sambuc 212, 213, 214, 28, 115, 13, 29, 115, 33, 34,
1083*c9ea9e7aSLionel Sambuc 33, 34, 47, 120, 116, 120, 41, 119, 117, 119,
1084*c9ea9e7aSLionel Sambuc 94, 27, 28, 29, 30, 31, 116, 239, 120, 119,
1085*c9ea9e7aSLionel Sambuc 242, 116, 244, 33, 119, 118, 12, 249, 14, 15,
1086*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1087*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, 111, 112, 113, 114,
1088*c9ea9e7aSLionel Sambuc 134, 135, 12, 116, 14, 15, 16, 17, 18, 19,
1089*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1090*c9ea9e7aSLionel Sambuc 30, 31, 116, 157, 158, 119, 116, 116, 116, 119,
1091*c9ea9e7aSLionel Sambuc 119, 345, 116, 305, 7, 307, 409, 309, 7, 311,
1092*c9ea9e7aSLionel Sambuc 318, 319, 21, 22, 23, 24, 25, 26, 27, 28,
1093*c9ea9e7aSLionel Sambuc 29, 30, 31, 325, 3, 4, 5, 6, 7, 8,
1094*c9ea9e7aSLionel Sambuc 9, 10, 11, 197, 116, 199, 116, 201, 202, 341,
1095*c9ea9e7aSLionel Sambuc 204, 205, 206, 33, 34, 35, 210, 211, 116, 120,
1096*c9ea9e7aSLionel Sambuc 116, 120, 115, 397, 218, 219, 220, 221, 222, 223,
1097*c9ea9e7aSLionel Sambuc 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
1098*c9ea9e7aSLionel Sambuc 234, 235, 236, 115, 115, 478, 116, 115, 115, 119,
1099*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1100*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, 398, 399, 400, 443,
1101*c9ea9e7aSLionel Sambuc 444, 29, 30, 31, 115, 508, 509, 451, 25, 26,
1102*c9ea9e7aSLionel Sambuc 27, 28, 29, 30, 31, 115, 418, 115, 115, 115,
1103*c9ea9e7aSLionel Sambuc 115, 115, 525, 12, 115, 14, 15, 16, 17, 18,
1104*c9ea9e7aSLionel Sambuc 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1105*c9ea9e7aSLionel Sambuc 29, 30, 31, 487, 446, 447, 448, 115, 115, 115,
1106*c9ea9e7aSLionel Sambuc 452, 315, 115, 115, 115, 120, 120, 116, 118, 323,
1107*c9ea9e7aSLionel Sambuc 117, 115, 506, 119, 328, 116, 330, 116, 13, 116,
1108*c9ea9e7aSLionel Sambuc 334, 335, 116, 337, 116, 339, 116, 116, 116, 116,
1109*c9ea9e7aSLionel Sambuc 13, 35, 116, 115, 119, 116, 488, 120, 490, 13,
1110*c9ea9e7aSLionel Sambuc 116, 118, 494, 117, 42, 497, 498, 499, 120, 501,
1111*c9ea9e7aSLionel Sambuc 116, 116, 7, 27, 28, 507, 116, 116, 116, 33,
1112*c9ea9e7aSLionel Sambuc 34, 35, 36, 37, 38, 39, 40, 13, 520, 115,
1113*c9ea9e7aSLionel Sambuc 44, 523, 46, 38, 118, 13, 50, 51, 52, 53,
1114*c9ea9e7aSLionel Sambuc 119, 115, 105, 13, 116, 115, 119, 115, 115, 403,
1115*c9ea9e7aSLionel Sambuc 115, 22, 13, 12, 115, 115, 70, 71, 115, 42,
1116*c9ea9e7aSLionel Sambuc 7, 75, 116, 77, 119, 115, 22, 116, 115, 115,
1117*c9ea9e7aSLionel Sambuc 29, 85, 446, 116, 33, 34, 116, 116, 115, 115,
1118*c9ea9e7aSLionel Sambuc 172, 40, 96, 437, 98, 99, 45, 116, 47, 116,
1119*c9ea9e7aSLionel Sambuc 116, 115, 386, 523, 184, 18, 115, 11, 400, 58,
1120*c9ea9e7aSLionel Sambuc 54, 115, 456, 433, -1, 64, 357, 121, -1, 68,
1121*c9ea9e7aSLionel Sambuc 124, -1, -1, -1, 73, 15, 16, 17, 18, 19,
1122*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1123*c9ea9e7aSLionel Sambuc 30, 31, 91, 92, 93, -1, -1, -1, 97, -1,
1124*c9ea9e7aSLionel Sambuc -1, -1, 101, -1, 103, 18, 19, 20, 21, 22,
1125*c9ea9e7aSLionel Sambuc 23, 24, 25, 26, 27, 28, 29, 30, 31, 118,
1126*c9ea9e7aSLionel Sambuc 12, 120, 14, 15, 16, 17, 18, 19, 20, 21,
1127*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1128*c9ea9e7aSLionel Sambuc 12, -1, 14, 15, 16, 17, 18, 19, 20, 21,
1129*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1130*c9ea9e7aSLionel Sambuc 12, -1, 14, 15, 16, 17, 18, 19, 20, 21,
1131*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1132*c9ea9e7aSLionel Sambuc 12, -1, 14, 15, 16, 17, 18, 19, 20, 21,
1133*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1134*c9ea9e7aSLionel Sambuc 12, -1, 14, 15, 16, 17, 18, 19, 20, 21,
1135*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1136*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, -1, -1, 12, 119, 14, 15,
1137*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1138*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, 12, 119, 14, 15,
1139*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1140*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, 12, 119, 14, 15,
1141*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1142*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, -1, 119, 17, 18,
1143*c9ea9e7aSLionel Sambuc 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1144*c9ea9e7aSLionel Sambuc 29, 30, 31, 12, 116, 14, 15, 16, 17, 18,
1145*c9ea9e7aSLionel Sambuc 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1146*c9ea9e7aSLionel Sambuc 29, 30, 31, -1, -1, -1, -1, -1, -1, 12,
1147*c9ea9e7aSLionel Sambuc 116, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1148*c9ea9e7aSLionel Sambuc 23, 24, 25, 26, 27, 28, 29, 30, 31, 12,
1149*c9ea9e7aSLionel Sambuc 116, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1150*c9ea9e7aSLionel Sambuc 23, 24, 25, 26, 27, 28, 29, 30, 31, 12,
1151*c9ea9e7aSLionel Sambuc 116, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1152*c9ea9e7aSLionel Sambuc 23, 24, 25, 26, 27, 28, 29, 30, 31, 19,
1153*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1154*c9ea9e7aSLionel Sambuc 30, 31, -1, -1, -1, -1, 12, 116, 14, 15,
1155*c9ea9e7aSLionel Sambuc 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1156*c9ea9e7aSLionel Sambuc 26, 27, 28, 29, 30, 31, -1, -1, -1, -1,
1157*c9ea9e7aSLionel Sambuc -1, -1, 12, 116, 14, 15, 16, 17, 18, 19,
1158*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1159*c9ea9e7aSLionel Sambuc 30, 31, 12, 116, 14, 15, 16, 17, 18, 19,
1160*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1161*c9ea9e7aSLionel Sambuc 30, 31, 12, 116, 14, 15, 16, 17, 18, 19,
1162*c9ea9e7aSLionel Sambuc 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1163*c9ea9e7aSLionel Sambuc 30, 31, -1, -1, -1, -1, -1, -1, -1, -1,
1164*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1165*c9ea9e7aSLionel Sambuc 116, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1166*c9ea9e7aSLionel Sambuc 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1167*c9ea9e7aSLionel Sambuc 31, -1, -1, -1, 27, 28, 116, -1, -1, -1,
1168*c9ea9e7aSLionel Sambuc 33, 34, 35, 36, 37, 38, 39, 40, -1, -1,
1169*c9ea9e7aSLionel Sambuc -1, 44, -1, 46, -1, 48, 116, 50, 51, 52,
1170*c9ea9e7aSLionel Sambuc 53, 54, -1, -1, -1, -1, -1, -1, -1, -1,
1171*c9ea9e7aSLionel Sambuc -1, -1, -1, 66, -1, -1, 116, 70, 71, -1,
1172*c9ea9e7aSLionel Sambuc -1, -1, 75, -1, 77, -1, -1, -1, 81, -1,
1173*c9ea9e7aSLionel Sambuc -1, -1, 85, -1, -1, -1, 89, -1, -1, -1,
1174*c9ea9e7aSLionel Sambuc -1, -1, -1, 96, -1, 98, 99, -1, -1, -1,
1175*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, 115, -1, -1, -1, -1, -1,
1176*c9ea9e7aSLionel Sambuc -1, -1, 115, 116, -1, -1, 27, 28, 121, -1,
1177*c9ea9e7aSLionel Sambuc -1, 124, 33, 34, 35, 36, 37, 38, 39, 40,
1178*c9ea9e7aSLionel Sambuc -1, -1, -1, 44, -1, 46, -1, -1, -1, 50,
1179*c9ea9e7aSLionel Sambuc 51, 52, 53, -1, -1, -1, -1, -1, -1, -1,
1180*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, -1, -1, -1, -1, -1, 70,
1181*c9ea9e7aSLionel Sambuc 71, -1, 33, 34, 75, -1, 77, -1, -1, 40,
1182*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
1183*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, 55, 96, 57, 98, 99, 60,
1184*c9ea9e7aSLionel Sambuc -1, 62, -1, 64, 65, -1, 67, -1, -1, -1,
1185*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, 115, 76, -1, -1, -1, -1,
1186*c9ea9e7aSLionel Sambuc 121, -1, -1, 124, -1, -1, 87, 88, -1, 90,
1187*c9ea9e7aSLionel Sambuc 91, 92, -1, 94, 95, -1, -1, -1, -1, -1,
1188*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, -1, -1, 107, -1, 109, 110,
1189*c9ea9e7aSLionel Sambuc -1, -1, -1, -1, -1, -1, -1, -1, -1, 120,
1190*c9ea9e7aSLionel Sambuc 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1191*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1192*c9ea9e7aSLionel Sambuc 12, -1, 14, 15, 16, 17, 18, 19, 20, 21,
1193*c9ea9e7aSLionel Sambuc 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
1194*c9ea9e7aSLionel Sambuc };
1195*c9ea9e7aSLionel Sambuc
1196*c9ea9e7aSLionel Sambuc /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1197*c9ea9e7aSLionel Sambuc symbol of state STATE-NUM. */
1198*c9ea9e7aSLionel Sambuc static const yytype_uint8 yystos[] =
1199*c9ea9e7aSLionel Sambuc {
1200*c9ea9e7aSLionel Sambuc 0, 111, 112, 113, 114, 126, 127, 33, 34, 117,
1201*c9ea9e7aSLionel Sambuc 184, 185, 186, 192, 180, 192, 117, 181, 182, 183,
1202*c9ea9e7aSLionel Sambuc 0, 40, 55, 57, 60, 62, 64, 65, 67, 76,
1203*c9ea9e7aSLionel Sambuc 87, 88, 90, 91, 92, 94, 95, 107, 109, 110,
1204*c9ea9e7aSLionel Sambuc 120, 128, 132, 166, 176, 192, 33, 34, 57, 61,
1205*c9ea9e7aSLionel Sambuc 72, 188, 189, 186, 117, 7, 189, 183, 115, 115,
1206*c9ea9e7aSLionel Sambuc 115, 129, 192, 115, 117, 115, 115, 117, 115, 115,
1207*c9ea9e7aSLionel Sambuc 115, 117, 115, 117, 115, 119, 120, 193, 3, 4,
1208*c9ea9e7aSLionel Sambuc 5, 6, 7, 8, 9, 10, 11, 192, 13, 13,
1209*c9ea9e7aSLionel Sambuc 118, 120, 188, 177, 178, 120, 177, 192, 133, 134,
1210*c9ea9e7aSLionel Sambuc 115, 28, 41, 136, 137, 192, 167, 192, 192, 172,
1211*c9ea9e7aSLionel Sambuc 192, 192, 192, 130, 192, 131, 192, 177, 177, 177,
1212*c9ea9e7aSLionel Sambuc 177, 177, 177, 177, 177, 177, 117, 189, 189, 120,
1213*c9ea9e7aSLionel Sambuc 33, 34, 57, 118, 27, 28, 35, 36, 37, 38,
1214*c9ea9e7aSLionel Sambuc 39, 40, 44, 46, 50, 51, 52, 53, 70, 71,
1215*c9ea9e7aSLionel Sambuc 75, 77, 85, 96, 98, 99, 115, 121, 124, 179,
1216*c9ea9e7aSLionel Sambuc 192, 118, 119, 116, 116, 135, 192, 136, 33, 138,
1217*c9ea9e7aSLionel Sambuc 116, 119, 195, 118, 195, 116, 116, 119, 118, 173,
1218*c9ea9e7aSLionel Sambuc 192, 7, 7, 116, 139, 116, 184, 116, 190, 120,
1219*c9ea9e7aSLionel Sambuc 120, 192, 120, 187, 192, 179, 179, 115, 115, 115,
1220*c9ea9e7aSLionel Sambuc 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
1221*c9ea9e7aSLionel Sambuc 115, 115, 115, 115, 115, 179, 179, 179, 12, 14,
1222*c9ea9e7aSLionel Sambuc 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1223*c9ea9e7aSLionel Sambuc 25, 26, 27, 28, 29, 30, 31, 120, 192, 119,
1224*c9ea9e7aSLionel Sambuc 192, 116, 115, 137, 64, 168, 192, 192, 35, 174,
1225*c9ea9e7aSLionel Sambuc 192, 177, 177, 118, 140, 166, 192, 118, 189, 72,
1226*c9ea9e7aSLionel Sambuc 117, 120, 192, 179, 192, 179, 192, 179, 179, 192,
1227*c9ea9e7aSLionel Sambuc 179, 179, 179, 192, 192, 192, 179, 179, 192, 192,
1228*c9ea9e7aSLionel Sambuc 192, 116, 179, 179, 179, 179, 179, 179, 179, 179,
1229*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 179, 179, 179, 179,
1230*c9ea9e7aSLionel Sambuc 179, 116, 192, 136, 192, 115, 169, 119, 42, 90,
1231*c9ea9e7aSLionel Sambuc 175, 192, 116, 116, 142, 143, 120, 194, 13, 191,
1232*c9ea9e7aSLionel Sambuc 116, 116, 116, 119, 116, 119, 116, 116, 119, 116,
1233*c9ea9e7aSLionel Sambuc 119, 116, 116, 116, 119, 119, 116, 119, 116, 13,
1234*c9ea9e7aSLionel Sambuc 116, 121, 192, 13, 192, 115, 175, 120, 115, 175,
1235*c9ea9e7aSLionel Sambuc 141, 13, 115, 145, 179, 118, 189, 189, 179, 192,
1236*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 192, 116, 84, 85,
1237*c9ea9e7aSLionel Sambuc 122, 170, 116, 177, 35, 117, 48, 54, 66, 81,
1238*c9ea9e7aSLionel Sambuc 89, 116, 146, 42, 147, 13, 115, 120, 194, 116,
1239*c9ea9e7aSLionel Sambuc 116, 116, 116, 116, 116, 116, 116, 7, 116, 116,
1240*c9ea9e7aSLionel Sambuc 156, 13, 116, 115, 38, 148, 116, 146, 118, 177,
1241*c9ea9e7aSLionel Sambuc 175, 175, 12, 29, 40, 45, 47, 58, 64, 68,
1242*c9ea9e7aSLionel Sambuc 73, 93, 97, 101, 103, 118, 120, 157, 158, 159,
1243*c9ea9e7aSLionel Sambuc 160, 161, 165, 176, 192, 13, 179, 115, 105, 149,
1244*c9ea9e7aSLionel Sambuc 13, 116, 195, 115, 115, 192, 115, 115, 22, 151,
1245*c9ea9e7aSLionel Sambuc 152, 115, 115, 193, 116, 179, 115, 144, 13, 69,
1246*c9ea9e7aSLionel Sambuc 70, 123, 171, 177, 177, 101, 160, 192, 47, 165,
1247*c9ea9e7aSLionel Sambuc 192, 192, 42, 153, 177, 56, 100, 101, 162, 163,
1248*c9ea9e7aSLionel Sambuc 165, 116, 179, 82, 83, 102, 150, 7, 119, 116,
1249*c9ea9e7aSLionel Sambuc 115, 116, 116, 116, 22, 154, 116, 115, 115, 115,
1250*c9ea9e7aSLionel Sambuc 116, 195, 116, 177, 192, 192, 7, 13, 155, 164,
1251*c9ea9e7aSLionel Sambuc 165, 163, 163, 56, 163, 116, 177, 192, 195, 116,
1252*c9ea9e7aSLionel Sambuc 195, 116, 116, 115, 165, 164, 116
1253*c9ea9e7aSLionel Sambuc };
1254*c9ea9e7aSLionel Sambuc
1255*c9ea9e7aSLionel Sambuc /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1256*c9ea9e7aSLionel Sambuc static const yytype_uint8 yyr1[] =
1257*c9ea9e7aSLionel Sambuc {
1258*c9ea9e7aSLionel Sambuc 0, 125, 126, 126, 126, 126, 127, 127, 128, 128,
1259*c9ea9e7aSLionel Sambuc 129, 128, 128, 128, 128, 128, 128, 128, 128, 128,
1260*c9ea9e7aSLionel Sambuc 130, 128, 128, 131, 128, 128, 128, 128, 132, 134,
1261*c9ea9e7aSLionel Sambuc 133, 135, 135, 135, 136, 136, 137, 137, 138, 137,
1262*c9ea9e7aSLionel Sambuc 139, 139, 140, 141, 140, 143, 144, 142, 145, 145,
1263*c9ea9e7aSLionel Sambuc 145, 145, 145, 145, 146, 146, 146, 146, 146, 147,
1264*c9ea9e7aSLionel Sambuc 147, 148, 148, 149, 149, 150, 150, 150, 150, 151,
1265*c9ea9e7aSLionel Sambuc 152, 152, 153, 153, 154, 154, 155, 155, 156, 156,
1266*c9ea9e7aSLionel Sambuc 157, 157, 157, 157, 157, 157, 157, 157, 157, 158,
1267*c9ea9e7aSLionel Sambuc 158, 158, 158, 158, 159, 159, 160, 160, 161, 161,
1268*c9ea9e7aSLionel Sambuc 162, 162, 162, 162, 163, 163, 163, 164, 164, 165,
1269*c9ea9e7aSLionel Sambuc 165, 165, 166, 166, 166, 166, 167, 167, 168, 168,
1270*c9ea9e7aSLionel Sambuc 168, 169, 169, 169, 170, 170, 170, 171, 171, 171,
1271*c9ea9e7aSLionel Sambuc 172, 172, 173, 174, 174, 175, 175, 175, 175, 175,
1272*c9ea9e7aSLionel Sambuc 176, 176, 176, 176, 176, 176, 176, 176, 176, 176,
1273*c9ea9e7aSLionel Sambuc 176, 178, 177, 179, 179, 179, 179, 179, 179, 179,
1274*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 179, 179, 179, 179,
1275*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 179, 179, 179, 179,
1276*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 179, 179, 179, 179,
1277*c9ea9e7aSLionel Sambuc 179, 179, 179, 179, 179, 179, 179, 179, 179, 180,
1278*c9ea9e7aSLionel Sambuc 181, 182, 182, 183, 184, 185, 185, 186, 186, 186,
1279*c9ea9e7aSLionel Sambuc 187, 187, 188, 188, 188, 188, 188, 189, 189, 189,
1280*c9ea9e7aSLionel Sambuc 189, 190, 189, 191, 189, 189, 189, 192, 192, 193,
1281*c9ea9e7aSLionel Sambuc 193, 194, 194, 195, 195
1282*c9ea9e7aSLionel Sambuc };
1283*c9ea9e7aSLionel Sambuc
1284*c9ea9e7aSLionel Sambuc /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
1285*c9ea9e7aSLionel Sambuc static const yytype_uint8 yyr2[] =
1286*c9ea9e7aSLionel Sambuc {
1287*c9ea9e7aSLionel Sambuc 0, 2, 2, 2, 2, 2, 2, 0, 4, 1,
1288*c9ea9e7aSLionel Sambuc 0, 5, 1, 4, 4, 4, 4, 8, 4, 4,
1289*c9ea9e7aSLionel Sambuc 0, 5, 4, 0, 5, 1, 1, 1, 4, 0,
1290*c9ea9e7aSLionel Sambuc 2, 1, 2, 3, 1, 3, 1, 2, 0, 5,
1291*c9ea9e7aSLionel Sambuc 2, 0, 1, 0, 7, 0, 0, 7, 1, 3,
1292*c9ea9e7aSLionel Sambuc 2, 4, 4, 5, 1, 1, 1, 1, 1, 0,
1293*c9ea9e7aSLionel Sambuc 4, 0, 4, 0, 4, 0, 1, 1, 1, 5,
1294*c9ea9e7aSLionel Sambuc 2, 0, 3, 0, 3, 0, 2, 0, 0, 2,
1295*c9ea9e7aSLionel Sambuc 2, 1, 4, 6, 4, 1, 4, 2, 1, 1,
1296*c9ea9e7aSLionel Sambuc 1, 1, 1, 1, 1, 4, 1, 4, 1, 4,
1297*c9ea9e7aSLionel Sambuc 3, 1, 6, 4, 1, 4, 4, 3, 1, 1,
1298*c9ea9e7aSLionel Sambuc 1, 1, 4, 2, 6, 2, 3, 0, 10, 2,
1299*c9ea9e7aSLionel Sambuc 0, 3, 4, 0, 1, 1, 1, 1, 1, 1,
1300*c9ea9e7aSLionel Sambuc 2, 0, 4, 1, 1, 0, 2, 2, 5, 5,
1301*c9ea9e7aSLionel Sambuc 3, 3, 3, 3, 3, 3, 3, 3, 3, 6,
1302*c9ea9e7aSLionel Sambuc 6, 0, 2, 3, 2, 2, 2, 2, 3, 3,
1303*c9ea9e7aSLionel Sambuc 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1304*c9ea9e7aSLionel Sambuc 3, 3, 3, 3, 3, 3, 5, 1, 1, 6,
1305*c9ea9e7aSLionel Sambuc 6, 4, 1, 4, 4, 4, 4, 4, 4, 4,
1306*c9ea9e7aSLionel Sambuc 4, 4, 6, 4, 6, 6, 4, 6, 6, 3,
1307*c9ea9e7aSLionel Sambuc 1, 1, 2, 5, 1, 1, 2, 4, 5, 6,
1308*c9ea9e7aSLionel Sambuc 1, 2, 0, 2, 4, 4, 8, 1, 1, 3,
1309*c9ea9e7aSLionel Sambuc 3, 0, 7, 0, 9, 1, 3, 1, 1, 1,
1310*c9ea9e7aSLionel Sambuc 1, 1, 0, 1, 0
1311*c9ea9e7aSLionel Sambuc };
1312*c9ea9e7aSLionel Sambuc
1313*c9ea9e7aSLionel Sambuc
1314*c9ea9e7aSLionel Sambuc #define yyerrok (yyerrstatus = 0)
1315*c9ea9e7aSLionel Sambuc #define yyclearin (yychar = YYEMPTY)
1316*c9ea9e7aSLionel Sambuc #define YYEMPTY (-2)
1317*c9ea9e7aSLionel Sambuc #define YYEOF 0
1318*c9ea9e7aSLionel Sambuc
1319*c9ea9e7aSLionel Sambuc #define YYACCEPT goto yyacceptlab
1320*c9ea9e7aSLionel Sambuc #define YYABORT goto yyabortlab
1321*c9ea9e7aSLionel Sambuc #define YYERROR goto yyerrorlab
1322*c9ea9e7aSLionel Sambuc
1323*c9ea9e7aSLionel Sambuc
1324*c9ea9e7aSLionel Sambuc #define YYRECOVERING() (!!yyerrstatus)
1325*c9ea9e7aSLionel Sambuc
1326*c9ea9e7aSLionel Sambuc #define YYBACKUP(Token, Value) \
1327*c9ea9e7aSLionel Sambuc do \
1328*c9ea9e7aSLionel Sambuc if (yychar == YYEMPTY) \
1329*c9ea9e7aSLionel Sambuc { \
1330*c9ea9e7aSLionel Sambuc yychar = (Token); \
1331*c9ea9e7aSLionel Sambuc yylval = (Value); \
1332*c9ea9e7aSLionel Sambuc YYPOPSTACK (yylen); \
1333*c9ea9e7aSLionel Sambuc yystate = *yyssp; \
1334*c9ea9e7aSLionel Sambuc goto yybackup; \
1335*c9ea9e7aSLionel Sambuc } \
1336*c9ea9e7aSLionel Sambuc else \
1337*c9ea9e7aSLionel Sambuc { \
1338*c9ea9e7aSLionel Sambuc yyerror (closure, YY_("syntax error: cannot back up")); \
1339*c9ea9e7aSLionel Sambuc YYERROR; \
1340*c9ea9e7aSLionel Sambuc } \
1341*c9ea9e7aSLionel Sambuc while (0)
1342*c9ea9e7aSLionel Sambuc
1343*c9ea9e7aSLionel Sambuc /* Error token number */
1344*c9ea9e7aSLionel Sambuc #define YYTERROR 1
1345*c9ea9e7aSLionel Sambuc #define YYERRCODE 256
1346*c9ea9e7aSLionel Sambuc
1347*c9ea9e7aSLionel Sambuc
1348*c9ea9e7aSLionel Sambuc
1349*c9ea9e7aSLionel Sambuc /* Enable debugging if requested. */
1350*c9ea9e7aSLionel Sambuc #if YYDEBUG
1351*c9ea9e7aSLionel Sambuc
1352*c9ea9e7aSLionel Sambuc # ifndef YYFPRINTF
1353*c9ea9e7aSLionel Sambuc # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1354*c9ea9e7aSLionel Sambuc # define YYFPRINTF fprintf
1355*c9ea9e7aSLionel Sambuc # endif
1356*c9ea9e7aSLionel Sambuc
1357*c9ea9e7aSLionel Sambuc # define YYDPRINTF(Args) \
1358*c9ea9e7aSLionel Sambuc do { \
1359*c9ea9e7aSLionel Sambuc if (yydebug) \
1360*c9ea9e7aSLionel Sambuc YYFPRINTF Args; \
1361*c9ea9e7aSLionel Sambuc } while (0)
1362*c9ea9e7aSLionel Sambuc
1363*c9ea9e7aSLionel Sambuc /* This macro is provided for backward compatibility. */
1364*c9ea9e7aSLionel Sambuc #ifndef YY_LOCATION_PRINT
1365*c9ea9e7aSLionel Sambuc # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1366*c9ea9e7aSLionel Sambuc #endif
1367*c9ea9e7aSLionel Sambuc
1368*c9ea9e7aSLionel Sambuc
1369*c9ea9e7aSLionel Sambuc # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1370*c9ea9e7aSLionel Sambuc do { \
1371*c9ea9e7aSLionel Sambuc if (yydebug) \
1372*c9ea9e7aSLionel Sambuc { \
1373*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "%s ", Title); \
1374*c9ea9e7aSLionel Sambuc yy_symbol_print (stderr, \
1375*c9ea9e7aSLionel Sambuc Type, Value, closure); \
1376*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "\n"); \
1377*c9ea9e7aSLionel Sambuc } \
1378*c9ea9e7aSLionel Sambuc } while (0)
1379*c9ea9e7aSLionel Sambuc
1380*c9ea9e7aSLionel Sambuc
1381*c9ea9e7aSLionel Sambuc /*----------------------------------------.
1382*c9ea9e7aSLionel Sambuc | Print this symbol's value on YYOUTPUT. |
1383*c9ea9e7aSLionel Sambuc `----------------------------------------*/
1384*c9ea9e7aSLionel Sambuc
1385*c9ea9e7aSLionel Sambuc static void
yy_symbol_value_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,void * closure)1386*c9ea9e7aSLionel Sambuc yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, void* closure)
1387*c9ea9e7aSLionel Sambuc {
1388*c9ea9e7aSLionel Sambuc FILE *yyo = yyoutput;
1389*c9ea9e7aSLionel Sambuc YYUSE (yyo);
1390*c9ea9e7aSLionel Sambuc YYUSE (closure);
1391*c9ea9e7aSLionel Sambuc if (!yyvaluep)
1392*c9ea9e7aSLionel Sambuc return;
1393*c9ea9e7aSLionel Sambuc # ifdef YYPRINT
1394*c9ea9e7aSLionel Sambuc if (yytype < YYNTOKENS)
1395*c9ea9e7aSLionel Sambuc YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1396*c9ea9e7aSLionel Sambuc # endif
1397*c9ea9e7aSLionel Sambuc YYUSE (yytype);
1398*c9ea9e7aSLionel Sambuc }
1399*c9ea9e7aSLionel Sambuc
1400*c9ea9e7aSLionel Sambuc
1401*c9ea9e7aSLionel Sambuc /*--------------------------------.
1402*c9ea9e7aSLionel Sambuc | Print this symbol on YYOUTPUT. |
1403*c9ea9e7aSLionel Sambuc `--------------------------------*/
1404*c9ea9e7aSLionel Sambuc
1405*c9ea9e7aSLionel Sambuc static void
yy_symbol_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,void * closure)1406*c9ea9e7aSLionel Sambuc yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, void* closure)
1407*c9ea9e7aSLionel Sambuc {
1408*c9ea9e7aSLionel Sambuc YYFPRINTF (yyoutput, "%s %s (",
1409*c9ea9e7aSLionel Sambuc yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
1410*c9ea9e7aSLionel Sambuc
1411*c9ea9e7aSLionel Sambuc yy_symbol_value_print (yyoutput, yytype, yyvaluep, closure);
1412*c9ea9e7aSLionel Sambuc YYFPRINTF (yyoutput, ")");
1413*c9ea9e7aSLionel Sambuc }
1414*c9ea9e7aSLionel Sambuc
1415*c9ea9e7aSLionel Sambuc /*------------------------------------------------------------------.
1416*c9ea9e7aSLionel Sambuc | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1417*c9ea9e7aSLionel Sambuc | TOP (included). |
1418*c9ea9e7aSLionel Sambuc `------------------------------------------------------------------*/
1419*c9ea9e7aSLionel Sambuc
1420*c9ea9e7aSLionel Sambuc static void
yy_stack_print(yytype_int16 * yybottom,yytype_int16 * yytop)1421*c9ea9e7aSLionel Sambuc yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
1422*c9ea9e7aSLionel Sambuc {
1423*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "Stack now");
1424*c9ea9e7aSLionel Sambuc for (; yybottom <= yytop; yybottom++)
1425*c9ea9e7aSLionel Sambuc {
1426*c9ea9e7aSLionel Sambuc int yybot = *yybottom;
1427*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, " %d", yybot);
1428*c9ea9e7aSLionel Sambuc }
1429*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "\n");
1430*c9ea9e7aSLionel Sambuc }
1431*c9ea9e7aSLionel Sambuc
1432*c9ea9e7aSLionel Sambuc # define YY_STACK_PRINT(Bottom, Top) \
1433*c9ea9e7aSLionel Sambuc do { \
1434*c9ea9e7aSLionel Sambuc if (yydebug) \
1435*c9ea9e7aSLionel Sambuc yy_stack_print ((Bottom), (Top)); \
1436*c9ea9e7aSLionel Sambuc } while (0)
1437*c9ea9e7aSLionel Sambuc
1438*c9ea9e7aSLionel Sambuc
1439*c9ea9e7aSLionel Sambuc /*------------------------------------------------.
1440*c9ea9e7aSLionel Sambuc | Report that the YYRULE is going to be reduced. |
1441*c9ea9e7aSLionel Sambuc `------------------------------------------------*/
1442*c9ea9e7aSLionel Sambuc
1443*c9ea9e7aSLionel Sambuc static void
yy_reduce_print(yytype_int16 * yyssp,YYSTYPE * yyvsp,int yyrule,void * closure)1444*c9ea9e7aSLionel Sambuc yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, int yyrule, void* closure)
1445*c9ea9e7aSLionel Sambuc {
1446*c9ea9e7aSLionel Sambuc unsigned long int yylno = yyrline[yyrule];
1447*c9ea9e7aSLionel Sambuc int yynrhs = yyr2[yyrule];
1448*c9ea9e7aSLionel Sambuc int yyi;
1449*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
1450*c9ea9e7aSLionel Sambuc yyrule - 1, yylno);
1451*c9ea9e7aSLionel Sambuc /* The symbols being reduced. */
1452*c9ea9e7aSLionel Sambuc for (yyi = 0; yyi < yynrhs; yyi++)
1453*c9ea9e7aSLionel Sambuc {
1454*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, " $%d = ", yyi + 1);
1455*c9ea9e7aSLionel Sambuc yy_symbol_print (stderr,
1456*c9ea9e7aSLionel Sambuc yystos[yyssp[yyi + 1 - yynrhs]],
1457*c9ea9e7aSLionel Sambuc &(yyvsp[(yyi + 1) - (yynrhs)])
1458*c9ea9e7aSLionel Sambuc , closure);
1459*c9ea9e7aSLionel Sambuc YYFPRINTF (stderr, "\n");
1460*c9ea9e7aSLionel Sambuc }
1461*c9ea9e7aSLionel Sambuc }
1462*c9ea9e7aSLionel Sambuc
1463*c9ea9e7aSLionel Sambuc # define YY_REDUCE_PRINT(Rule) \
1464*c9ea9e7aSLionel Sambuc do { \
1465*c9ea9e7aSLionel Sambuc if (yydebug) \
1466*c9ea9e7aSLionel Sambuc yy_reduce_print (yyssp, yyvsp, Rule, closure); \
1467*c9ea9e7aSLionel Sambuc } while (0)
1468*c9ea9e7aSLionel Sambuc
1469*c9ea9e7aSLionel Sambuc /* Nonzero means print parse trace. It is left uninitialized so that
1470*c9ea9e7aSLionel Sambuc multiple parsers can coexist. */
1471*c9ea9e7aSLionel Sambuc int yydebug;
1472*c9ea9e7aSLionel Sambuc #else /* !YYDEBUG */
1473*c9ea9e7aSLionel Sambuc # define YYDPRINTF(Args)
1474*c9ea9e7aSLionel Sambuc # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1475*c9ea9e7aSLionel Sambuc # define YY_STACK_PRINT(Bottom, Top)
1476*c9ea9e7aSLionel Sambuc # define YY_REDUCE_PRINT(Rule)
1477*c9ea9e7aSLionel Sambuc #endif /* !YYDEBUG */
1478*c9ea9e7aSLionel Sambuc
1479*c9ea9e7aSLionel Sambuc
1480*c9ea9e7aSLionel Sambuc /* YYINITDEPTH -- initial size of the parser's stacks. */
1481*c9ea9e7aSLionel Sambuc #ifndef YYINITDEPTH
1482*c9ea9e7aSLionel Sambuc # define YYINITDEPTH 200
1483*c9ea9e7aSLionel Sambuc #endif
1484*c9ea9e7aSLionel Sambuc
1485*c9ea9e7aSLionel Sambuc /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1486*c9ea9e7aSLionel Sambuc if the built-in stack extension method is used).
1487*c9ea9e7aSLionel Sambuc
1488*c9ea9e7aSLionel Sambuc Do not make this value too large; the results are undefined if
1489*c9ea9e7aSLionel Sambuc YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1490*c9ea9e7aSLionel Sambuc evaluated with infinite-precision integer arithmetic. */
1491*c9ea9e7aSLionel Sambuc
1492*c9ea9e7aSLionel Sambuc #ifndef YYMAXDEPTH
1493*c9ea9e7aSLionel Sambuc # define YYMAXDEPTH 10000
1494*c9ea9e7aSLionel Sambuc #endif
1495*c9ea9e7aSLionel Sambuc
1496*c9ea9e7aSLionel Sambuc
1497*c9ea9e7aSLionel Sambuc #if YYERROR_VERBOSE
1498*c9ea9e7aSLionel Sambuc
1499*c9ea9e7aSLionel Sambuc # ifndef yystrlen
1500*c9ea9e7aSLionel Sambuc # if defined __GLIBC__ && defined _STRING_H
1501*c9ea9e7aSLionel Sambuc # define yystrlen strlen
1502*c9ea9e7aSLionel Sambuc # else
1503*c9ea9e7aSLionel Sambuc /* Return the length of YYSTR. */
1504*c9ea9e7aSLionel Sambuc static YYSIZE_T
yystrlen(const char * yystr)1505*c9ea9e7aSLionel Sambuc yystrlen (const char *yystr)
1506*c9ea9e7aSLionel Sambuc {
1507*c9ea9e7aSLionel Sambuc YYSIZE_T yylen;
1508*c9ea9e7aSLionel Sambuc for (yylen = 0; yystr[yylen]; yylen++)
1509*c9ea9e7aSLionel Sambuc continue;
1510*c9ea9e7aSLionel Sambuc return yylen;
1511*c9ea9e7aSLionel Sambuc }
1512*c9ea9e7aSLionel Sambuc # endif
1513*c9ea9e7aSLionel Sambuc # endif
1514*c9ea9e7aSLionel Sambuc
1515*c9ea9e7aSLionel Sambuc # ifndef yystpcpy
1516*c9ea9e7aSLionel Sambuc # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1517*c9ea9e7aSLionel Sambuc # define yystpcpy stpcpy
1518*c9ea9e7aSLionel Sambuc # else
1519*c9ea9e7aSLionel Sambuc /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1520*c9ea9e7aSLionel Sambuc YYDEST. */
1521*c9ea9e7aSLionel Sambuc static char *
yystpcpy(char * yydest,const char * yysrc)1522*c9ea9e7aSLionel Sambuc yystpcpy (char *yydest, const char *yysrc)
1523*c9ea9e7aSLionel Sambuc {
1524*c9ea9e7aSLionel Sambuc char *yyd = yydest;
1525*c9ea9e7aSLionel Sambuc const char *yys = yysrc;
1526*c9ea9e7aSLionel Sambuc
1527*c9ea9e7aSLionel Sambuc while ((*yyd++ = *yys++) != '\0')
1528*c9ea9e7aSLionel Sambuc continue;
1529*c9ea9e7aSLionel Sambuc
1530*c9ea9e7aSLionel Sambuc return yyd - 1;
1531*c9ea9e7aSLionel Sambuc }
1532*c9ea9e7aSLionel Sambuc # endif
1533*c9ea9e7aSLionel Sambuc # endif
1534*c9ea9e7aSLionel Sambuc
1535*c9ea9e7aSLionel Sambuc # ifndef yytnamerr
1536*c9ea9e7aSLionel Sambuc /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
1537*c9ea9e7aSLionel Sambuc quotes and backslashes, so that it's suitable for yyerror. The
1538*c9ea9e7aSLionel Sambuc heuristic is that double-quoting is unnecessary unless the string
1539*c9ea9e7aSLionel Sambuc contains an apostrophe, a comma, or backslash (other than
1540*c9ea9e7aSLionel Sambuc backslash-backslash). YYSTR is taken from yytname. If YYRES is
1541*c9ea9e7aSLionel Sambuc null, do not copy; instead, return the length of what the result
1542*c9ea9e7aSLionel Sambuc would have been. */
1543*c9ea9e7aSLionel Sambuc static YYSIZE_T
yytnamerr(char * yyres,const char * yystr)1544*c9ea9e7aSLionel Sambuc yytnamerr (char *yyres, const char *yystr)
1545*c9ea9e7aSLionel Sambuc {
1546*c9ea9e7aSLionel Sambuc if (*yystr == '"')
1547*c9ea9e7aSLionel Sambuc {
1548*c9ea9e7aSLionel Sambuc YYSIZE_T yyn = 0;
1549*c9ea9e7aSLionel Sambuc char const *yyp = yystr;
1550*c9ea9e7aSLionel Sambuc
1551*c9ea9e7aSLionel Sambuc for (;;)
1552*c9ea9e7aSLionel Sambuc switch (*++yyp)
1553*c9ea9e7aSLionel Sambuc {
1554*c9ea9e7aSLionel Sambuc case '\'':
1555*c9ea9e7aSLionel Sambuc case ',':
1556*c9ea9e7aSLionel Sambuc goto do_not_strip_quotes;
1557*c9ea9e7aSLionel Sambuc
1558*c9ea9e7aSLionel Sambuc case '\\':
1559*c9ea9e7aSLionel Sambuc if (*++yyp != '\\')
1560*c9ea9e7aSLionel Sambuc goto do_not_strip_quotes;
1561*c9ea9e7aSLionel Sambuc /* Fall through. */
1562*c9ea9e7aSLionel Sambuc default:
1563*c9ea9e7aSLionel Sambuc if (yyres)
1564*c9ea9e7aSLionel Sambuc yyres[yyn] = *yyp;
1565*c9ea9e7aSLionel Sambuc yyn++;
1566*c9ea9e7aSLionel Sambuc break;
1567*c9ea9e7aSLionel Sambuc
1568*c9ea9e7aSLionel Sambuc case '"':
1569*c9ea9e7aSLionel Sambuc if (yyres)
1570*c9ea9e7aSLionel Sambuc yyres[yyn] = '\0';
1571*c9ea9e7aSLionel Sambuc return yyn;
1572*c9ea9e7aSLionel Sambuc }
1573*c9ea9e7aSLionel Sambuc do_not_strip_quotes: ;
1574*c9ea9e7aSLionel Sambuc }
1575*c9ea9e7aSLionel Sambuc
1576*c9ea9e7aSLionel Sambuc if (! yyres)
1577*c9ea9e7aSLionel Sambuc return yystrlen (yystr);
1578*c9ea9e7aSLionel Sambuc
1579*c9ea9e7aSLionel Sambuc return yystpcpy (yyres, yystr) - yyres;
1580*c9ea9e7aSLionel Sambuc }
1581*c9ea9e7aSLionel Sambuc # endif
1582*c9ea9e7aSLionel Sambuc
1583*c9ea9e7aSLionel Sambuc /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
1584*c9ea9e7aSLionel Sambuc about the unexpected token YYTOKEN for the state stack whose top is
1585*c9ea9e7aSLionel Sambuc YYSSP.
1586*c9ea9e7aSLionel Sambuc
1587*c9ea9e7aSLionel Sambuc Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is
1588*c9ea9e7aSLionel Sambuc not large enough to hold the message. In that case, also set
1589*c9ea9e7aSLionel Sambuc *YYMSG_ALLOC to the required number of bytes. Return 2 if the
1590*c9ea9e7aSLionel Sambuc required number of bytes is too large to store. */
1591*c9ea9e7aSLionel Sambuc static int
yysyntax_error(YYSIZE_T * yymsg_alloc,char ** yymsg,yytype_int16 * yyssp,int yytoken)1592*c9ea9e7aSLionel Sambuc yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
1593*c9ea9e7aSLionel Sambuc yytype_int16 *yyssp, int yytoken)
1594*c9ea9e7aSLionel Sambuc {
1595*c9ea9e7aSLionel Sambuc YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
1596*c9ea9e7aSLionel Sambuc YYSIZE_T yysize = yysize0;
1597*c9ea9e7aSLionel Sambuc enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
1598*c9ea9e7aSLionel Sambuc /* Internationalized format string. */
1599*c9ea9e7aSLionel Sambuc const char *yyformat = YY_NULLPTR;
1600*c9ea9e7aSLionel Sambuc /* Arguments of yyformat. */
1601*c9ea9e7aSLionel Sambuc char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
1602*c9ea9e7aSLionel Sambuc /* Number of reported tokens (one for the "unexpected", one per
1603*c9ea9e7aSLionel Sambuc "expected"). */
1604*c9ea9e7aSLionel Sambuc int yycount = 0;
1605*c9ea9e7aSLionel Sambuc
1606*c9ea9e7aSLionel Sambuc /* There are many possibilities here to consider:
1607*c9ea9e7aSLionel Sambuc - If this state is a consistent state with a default action, then
1608*c9ea9e7aSLionel Sambuc the only way this function was invoked is if the default action
1609*c9ea9e7aSLionel Sambuc is an error action. In that case, don't check for expected
1610*c9ea9e7aSLionel Sambuc tokens because there are none.
1611*c9ea9e7aSLionel Sambuc - The only way there can be no lookahead present (in yychar) is if
1612*c9ea9e7aSLionel Sambuc this state is a consistent state with a default action. Thus,
1613*c9ea9e7aSLionel Sambuc detecting the absence of a lookahead is sufficient to determine
1614*c9ea9e7aSLionel Sambuc that there is no unexpected or expected token to report. In that
1615*c9ea9e7aSLionel Sambuc case, just report a simple "syntax error".
1616*c9ea9e7aSLionel Sambuc - Don't assume there isn't a lookahead just because this state is a
1617*c9ea9e7aSLionel Sambuc consistent state with a default action. There might have been a
1618*c9ea9e7aSLionel Sambuc previous inconsistent state, consistent state with a non-default
1619*c9ea9e7aSLionel Sambuc action, or user semantic action that manipulated yychar.
1620*c9ea9e7aSLionel Sambuc - Of course, the expected token list depends on states to have
1621*c9ea9e7aSLionel Sambuc correct lookahead information, and it depends on the parser not
1622*c9ea9e7aSLionel Sambuc to perform extra reductions after fetching a lookahead from the
1623*c9ea9e7aSLionel Sambuc scanner and before detecting a syntax error. Thus, state merging
1624*c9ea9e7aSLionel Sambuc (from LALR or IELR) and default reductions corrupt the expected
1625*c9ea9e7aSLionel Sambuc token list. However, the list is correct for canonical LR with
1626*c9ea9e7aSLionel Sambuc one exception: it will still contain any token that will not be
1627*c9ea9e7aSLionel Sambuc accepted due to an error action in a later state.
1628*c9ea9e7aSLionel Sambuc */
1629*c9ea9e7aSLionel Sambuc if (yytoken != YYEMPTY)
1630*c9ea9e7aSLionel Sambuc {
1631*c9ea9e7aSLionel Sambuc int yyn = yypact[*yyssp];
1632*c9ea9e7aSLionel Sambuc yyarg[yycount++] = yytname[yytoken];
1633*c9ea9e7aSLionel Sambuc if (!yypact_value_is_default (yyn))
1634*c9ea9e7aSLionel Sambuc {
1635*c9ea9e7aSLionel Sambuc /* Start YYX at -YYN if negative to avoid negative indexes in
1636*c9ea9e7aSLionel Sambuc YYCHECK. In other words, skip the first -YYN actions for
1637*c9ea9e7aSLionel Sambuc this state because they are default actions. */
1638*c9ea9e7aSLionel Sambuc int yyxbegin = yyn < 0 ? -yyn : 0;
1639*c9ea9e7aSLionel Sambuc /* Stay within bounds of both yycheck and yytname. */
1640*c9ea9e7aSLionel Sambuc int yychecklim = YYLAST - yyn + 1;
1641*c9ea9e7aSLionel Sambuc int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1642*c9ea9e7aSLionel Sambuc int yyx;
1643*c9ea9e7aSLionel Sambuc
1644*c9ea9e7aSLionel Sambuc for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1645*c9ea9e7aSLionel Sambuc if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
1646*c9ea9e7aSLionel Sambuc && !yytable_value_is_error (yytable[yyx + yyn]))
1647*c9ea9e7aSLionel Sambuc {
1648*c9ea9e7aSLionel Sambuc if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
1649*c9ea9e7aSLionel Sambuc {
1650*c9ea9e7aSLionel Sambuc yycount = 1;
1651*c9ea9e7aSLionel Sambuc yysize = yysize0;
1652*c9ea9e7aSLionel Sambuc break;
1653*c9ea9e7aSLionel Sambuc }
1654*c9ea9e7aSLionel Sambuc yyarg[yycount++] = yytname[yyx];
1655*c9ea9e7aSLionel Sambuc {
1656*c9ea9e7aSLionel Sambuc YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
1657*c9ea9e7aSLionel Sambuc if (! (yysize <= yysize1
1658*c9ea9e7aSLionel Sambuc && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1659*c9ea9e7aSLionel Sambuc return 2;
1660*c9ea9e7aSLionel Sambuc yysize = yysize1;
1661*c9ea9e7aSLionel Sambuc }
1662*c9ea9e7aSLionel Sambuc }
1663*c9ea9e7aSLionel Sambuc }
1664*c9ea9e7aSLionel Sambuc }
1665*c9ea9e7aSLionel Sambuc
1666*c9ea9e7aSLionel Sambuc switch (yycount)
1667*c9ea9e7aSLionel Sambuc {
1668*c9ea9e7aSLionel Sambuc # define YYCASE_(N, S) \
1669*c9ea9e7aSLionel Sambuc case N: \
1670*c9ea9e7aSLionel Sambuc yyformat = S; \
1671*c9ea9e7aSLionel Sambuc break
1672*c9ea9e7aSLionel Sambuc YYCASE_(0, YY_("syntax error"));
1673*c9ea9e7aSLionel Sambuc YYCASE_(1, YY_("syntax error, unexpected %s"));
1674*c9ea9e7aSLionel Sambuc YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
1675*c9ea9e7aSLionel Sambuc YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
1676*c9ea9e7aSLionel Sambuc YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
1677*c9ea9e7aSLionel Sambuc YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
1678*c9ea9e7aSLionel Sambuc # undef YYCASE_
1679*c9ea9e7aSLionel Sambuc }
1680*c9ea9e7aSLionel Sambuc
1681*c9ea9e7aSLionel Sambuc {
1682*c9ea9e7aSLionel Sambuc YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
1683*c9ea9e7aSLionel Sambuc if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
1684*c9ea9e7aSLionel Sambuc return 2;
1685*c9ea9e7aSLionel Sambuc yysize = yysize1;
1686*c9ea9e7aSLionel Sambuc }
1687*c9ea9e7aSLionel Sambuc
1688*c9ea9e7aSLionel Sambuc if (*yymsg_alloc < yysize)
1689*c9ea9e7aSLionel Sambuc {
1690*c9ea9e7aSLionel Sambuc *yymsg_alloc = 2 * yysize;
1691*c9ea9e7aSLionel Sambuc if (! (yysize <= *yymsg_alloc
1692*c9ea9e7aSLionel Sambuc && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
1693*c9ea9e7aSLionel Sambuc *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
1694*c9ea9e7aSLionel Sambuc return 1;
1695*c9ea9e7aSLionel Sambuc }
1696*c9ea9e7aSLionel Sambuc
1697*c9ea9e7aSLionel Sambuc /* Avoid sprintf, as that infringes on the user's name space.
1698*c9ea9e7aSLionel Sambuc Don't have undefined behavior even if the translation
1699*c9ea9e7aSLionel Sambuc produced a string with the wrong number of "%s"s. */
1700*c9ea9e7aSLionel Sambuc {
1701*c9ea9e7aSLionel Sambuc char *yyp = *yymsg;
1702*c9ea9e7aSLionel Sambuc int yyi = 0;
1703*c9ea9e7aSLionel Sambuc while ((*yyp = *yyformat) != '\0')
1704*c9ea9e7aSLionel Sambuc if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
1705*c9ea9e7aSLionel Sambuc {
1706*c9ea9e7aSLionel Sambuc yyp += yytnamerr (yyp, yyarg[yyi++]);
1707*c9ea9e7aSLionel Sambuc yyformat += 2;
1708*c9ea9e7aSLionel Sambuc }
1709*c9ea9e7aSLionel Sambuc else
1710*c9ea9e7aSLionel Sambuc {
1711*c9ea9e7aSLionel Sambuc yyp++;
1712*c9ea9e7aSLionel Sambuc yyformat++;
1713*c9ea9e7aSLionel Sambuc }
1714*c9ea9e7aSLionel Sambuc }
1715*c9ea9e7aSLionel Sambuc return 0;
1716*c9ea9e7aSLionel Sambuc }
1717*c9ea9e7aSLionel Sambuc #endif /* YYERROR_VERBOSE */
1718*c9ea9e7aSLionel Sambuc
1719*c9ea9e7aSLionel Sambuc /*-----------------------------------------------.
1720*c9ea9e7aSLionel Sambuc | Release the memory associated to this symbol. |
1721*c9ea9e7aSLionel Sambuc `-----------------------------------------------*/
1722*c9ea9e7aSLionel Sambuc
1723*c9ea9e7aSLionel Sambuc static void
yydestruct(const char * yymsg,int yytype,YYSTYPE * yyvaluep,void * closure)1724*c9ea9e7aSLionel Sambuc yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, void* closure)
1725*c9ea9e7aSLionel Sambuc {
1726*c9ea9e7aSLionel Sambuc YYUSE (yyvaluep);
1727*c9ea9e7aSLionel Sambuc YYUSE (closure);
1728*c9ea9e7aSLionel Sambuc if (!yymsg)
1729*c9ea9e7aSLionel Sambuc yymsg = "Deleting";
1730*c9ea9e7aSLionel Sambuc YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
1731*c9ea9e7aSLionel Sambuc
1732*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1733*c9ea9e7aSLionel Sambuc YYUSE (yytype);
1734*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_END
1735*c9ea9e7aSLionel Sambuc }
1736*c9ea9e7aSLionel Sambuc
1737*c9ea9e7aSLionel Sambuc
1738*c9ea9e7aSLionel Sambuc
1739*c9ea9e7aSLionel Sambuc
1740*c9ea9e7aSLionel Sambuc /*----------.
1741*c9ea9e7aSLionel Sambuc | yyparse. |
1742*c9ea9e7aSLionel Sambuc `----------*/
1743*c9ea9e7aSLionel Sambuc
1744*c9ea9e7aSLionel Sambuc int
yyparse(void * closure)1745*c9ea9e7aSLionel Sambuc yyparse (void* closure)
1746*c9ea9e7aSLionel Sambuc {
1747*c9ea9e7aSLionel Sambuc /* The lookahead symbol. */
1748*c9ea9e7aSLionel Sambuc int yychar;
1749*c9ea9e7aSLionel Sambuc
1750*c9ea9e7aSLionel Sambuc
1751*c9ea9e7aSLionel Sambuc /* The semantic value of the lookahead symbol. */
1752*c9ea9e7aSLionel Sambuc /* Default value used for initialization, for pacifying older GCCs
1753*c9ea9e7aSLionel Sambuc or non-GCC compilers. */
1754*c9ea9e7aSLionel Sambuc YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
1755*c9ea9e7aSLionel Sambuc YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
1756*c9ea9e7aSLionel Sambuc
1757*c9ea9e7aSLionel Sambuc /* Number of syntax errors so far. */
1758*c9ea9e7aSLionel Sambuc int yynerrs;
1759*c9ea9e7aSLionel Sambuc
1760*c9ea9e7aSLionel Sambuc int yystate;
1761*c9ea9e7aSLionel Sambuc /* Number of tokens to shift before error messages enabled. */
1762*c9ea9e7aSLionel Sambuc int yyerrstatus;
1763*c9ea9e7aSLionel Sambuc
1764*c9ea9e7aSLionel Sambuc /* The stacks and their tools:
1765*c9ea9e7aSLionel Sambuc 'yyss': related to states.
1766*c9ea9e7aSLionel Sambuc 'yyvs': related to semantic values.
1767*c9ea9e7aSLionel Sambuc
1768*c9ea9e7aSLionel Sambuc Refer to the stacks through separate pointers, to allow yyoverflow
1769*c9ea9e7aSLionel Sambuc to reallocate them elsewhere. */
1770*c9ea9e7aSLionel Sambuc
1771*c9ea9e7aSLionel Sambuc /* The state stack. */
1772*c9ea9e7aSLionel Sambuc yytype_int16 yyssa[YYINITDEPTH];
1773*c9ea9e7aSLionel Sambuc yytype_int16 *yyss;
1774*c9ea9e7aSLionel Sambuc yytype_int16 *yyssp;
1775*c9ea9e7aSLionel Sambuc
1776*c9ea9e7aSLionel Sambuc /* The semantic value stack. */
1777*c9ea9e7aSLionel Sambuc YYSTYPE yyvsa[YYINITDEPTH];
1778*c9ea9e7aSLionel Sambuc YYSTYPE *yyvs;
1779*c9ea9e7aSLionel Sambuc YYSTYPE *yyvsp;
1780*c9ea9e7aSLionel Sambuc
1781*c9ea9e7aSLionel Sambuc YYSIZE_T yystacksize;
1782*c9ea9e7aSLionel Sambuc
1783*c9ea9e7aSLionel Sambuc int yyn;
1784*c9ea9e7aSLionel Sambuc int yyresult;
1785*c9ea9e7aSLionel Sambuc /* Lookahead token as an internal (translated) token number. */
1786*c9ea9e7aSLionel Sambuc int yytoken = 0;
1787*c9ea9e7aSLionel Sambuc /* The variables used to return semantic value and location from the
1788*c9ea9e7aSLionel Sambuc action routines. */
1789*c9ea9e7aSLionel Sambuc YYSTYPE yyval;
1790*c9ea9e7aSLionel Sambuc
1791*c9ea9e7aSLionel Sambuc #if YYERROR_VERBOSE
1792*c9ea9e7aSLionel Sambuc /* Buffer for error messages, and its allocated size. */
1793*c9ea9e7aSLionel Sambuc char yymsgbuf[128];
1794*c9ea9e7aSLionel Sambuc char *yymsg = yymsgbuf;
1795*c9ea9e7aSLionel Sambuc YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
1796*c9ea9e7aSLionel Sambuc #endif
1797*c9ea9e7aSLionel Sambuc
1798*c9ea9e7aSLionel Sambuc #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
1799*c9ea9e7aSLionel Sambuc
1800*c9ea9e7aSLionel Sambuc /* The number of symbols on the RHS of the reduced rule.
1801*c9ea9e7aSLionel Sambuc Keep to zero when no symbol should be popped. */
1802*c9ea9e7aSLionel Sambuc int yylen = 0;
1803*c9ea9e7aSLionel Sambuc
1804*c9ea9e7aSLionel Sambuc yyssp = yyss = yyssa;
1805*c9ea9e7aSLionel Sambuc yyvsp = yyvs = yyvsa;
1806*c9ea9e7aSLionel Sambuc yystacksize = YYINITDEPTH;
1807*c9ea9e7aSLionel Sambuc
1808*c9ea9e7aSLionel Sambuc YYDPRINTF ((stderr, "Starting parse\n"));
1809*c9ea9e7aSLionel Sambuc
1810*c9ea9e7aSLionel Sambuc yystate = 0;
1811*c9ea9e7aSLionel Sambuc yyerrstatus = 0;
1812*c9ea9e7aSLionel Sambuc yynerrs = 0;
1813*c9ea9e7aSLionel Sambuc yychar = YYEMPTY; /* Cause a token to be read. */
1814*c9ea9e7aSLionel Sambuc goto yysetstate;
1815*c9ea9e7aSLionel Sambuc
1816*c9ea9e7aSLionel Sambuc /*------------------------------------------------------------.
1817*c9ea9e7aSLionel Sambuc | yynewstate -- Push a new state, which is found in yystate. |
1818*c9ea9e7aSLionel Sambuc `------------------------------------------------------------*/
1819*c9ea9e7aSLionel Sambuc yynewstate:
1820*c9ea9e7aSLionel Sambuc /* In all cases, when you get here, the value and location stacks
1821*c9ea9e7aSLionel Sambuc have just been pushed. So pushing a state here evens the stacks. */
1822*c9ea9e7aSLionel Sambuc yyssp++;
1823*c9ea9e7aSLionel Sambuc
1824*c9ea9e7aSLionel Sambuc yysetstate:
1825*c9ea9e7aSLionel Sambuc *yyssp = yystate;
1826*c9ea9e7aSLionel Sambuc
1827*c9ea9e7aSLionel Sambuc if (yyss + yystacksize - 1 <= yyssp)
1828*c9ea9e7aSLionel Sambuc {
1829*c9ea9e7aSLionel Sambuc /* Get the current used size of the three stacks, in elements. */
1830*c9ea9e7aSLionel Sambuc YYSIZE_T yysize = yyssp - yyss + 1;
1831*c9ea9e7aSLionel Sambuc
1832*c9ea9e7aSLionel Sambuc #ifdef yyoverflow
1833*c9ea9e7aSLionel Sambuc {
1834*c9ea9e7aSLionel Sambuc /* Give user a chance to reallocate the stack. Use copies of
1835*c9ea9e7aSLionel Sambuc these so that the &'s don't force the real ones into
1836*c9ea9e7aSLionel Sambuc memory. */
1837*c9ea9e7aSLionel Sambuc YYSTYPE *yyvs1 = yyvs;
1838*c9ea9e7aSLionel Sambuc yytype_int16 *yyss1 = yyss;
1839*c9ea9e7aSLionel Sambuc
1840*c9ea9e7aSLionel Sambuc /* Each stack pointer address is followed by the size of the
1841*c9ea9e7aSLionel Sambuc data in use in that stack, in bytes. This used to be a
1842*c9ea9e7aSLionel Sambuc conditional around just the two extra args, but that might
1843*c9ea9e7aSLionel Sambuc be undefined if yyoverflow is a macro. */
1844*c9ea9e7aSLionel Sambuc yyoverflow (YY_("memory exhausted"),
1845*c9ea9e7aSLionel Sambuc &yyss1, yysize * sizeof (*yyssp),
1846*c9ea9e7aSLionel Sambuc &yyvs1, yysize * sizeof (*yyvsp),
1847*c9ea9e7aSLionel Sambuc &yystacksize);
1848*c9ea9e7aSLionel Sambuc
1849*c9ea9e7aSLionel Sambuc yyss = yyss1;
1850*c9ea9e7aSLionel Sambuc yyvs = yyvs1;
1851*c9ea9e7aSLionel Sambuc }
1852*c9ea9e7aSLionel Sambuc #else /* no yyoverflow */
1853*c9ea9e7aSLionel Sambuc # ifndef YYSTACK_RELOCATE
1854*c9ea9e7aSLionel Sambuc goto yyexhaustedlab;
1855*c9ea9e7aSLionel Sambuc # else
1856*c9ea9e7aSLionel Sambuc /* Extend the stack our own way. */
1857*c9ea9e7aSLionel Sambuc if (YYMAXDEPTH <= yystacksize)
1858*c9ea9e7aSLionel Sambuc goto yyexhaustedlab;
1859*c9ea9e7aSLionel Sambuc yystacksize *= 2;
1860*c9ea9e7aSLionel Sambuc if (YYMAXDEPTH < yystacksize)
1861*c9ea9e7aSLionel Sambuc yystacksize = YYMAXDEPTH;
1862*c9ea9e7aSLionel Sambuc
1863*c9ea9e7aSLionel Sambuc {
1864*c9ea9e7aSLionel Sambuc yytype_int16 *yyss1 = yyss;
1865*c9ea9e7aSLionel Sambuc union yyalloc *yyptr =
1866*c9ea9e7aSLionel Sambuc (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1867*c9ea9e7aSLionel Sambuc if (! yyptr)
1868*c9ea9e7aSLionel Sambuc goto yyexhaustedlab;
1869*c9ea9e7aSLionel Sambuc YYSTACK_RELOCATE (yyss_alloc, yyss);
1870*c9ea9e7aSLionel Sambuc YYSTACK_RELOCATE (yyvs_alloc, yyvs);
1871*c9ea9e7aSLionel Sambuc # undef YYSTACK_RELOCATE
1872*c9ea9e7aSLionel Sambuc if (yyss1 != yyssa)
1873*c9ea9e7aSLionel Sambuc YYSTACK_FREE (yyss1);
1874*c9ea9e7aSLionel Sambuc }
1875*c9ea9e7aSLionel Sambuc # endif
1876*c9ea9e7aSLionel Sambuc #endif /* no yyoverflow */
1877*c9ea9e7aSLionel Sambuc
1878*c9ea9e7aSLionel Sambuc yyssp = yyss + yysize - 1;
1879*c9ea9e7aSLionel Sambuc yyvsp = yyvs + yysize - 1;
1880*c9ea9e7aSLionel Sambuc
1881*c9ea9e7aSLionel Sambuc YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1882*c9ea9e7aSLionel Sambuc (unsigned long int) yystacksize));
1883*c9ea9e7aSLionel Sambuc
1884*c9ea9e7aSLionel Sambuc if (yyss + yystacksize - 1 <= yyssp)
1885*c9ea9e7aSLionel Sambuc YYABORT;
1886*c9ea9e7aSLionel Sambuc }
1887*c9ea9e7aSLionel Sambuc
1888*c9ea9e7aSLionel Sambuc YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1889*c9ea9e7aSLionel Sambuc
1890*c9ea9e7aSLionel Sambuc if (yystate == YYFINAL)
1891*c9ea9e7aSLionel Sambuc YYACCEPT;
1892*c9ea9e7aSLionel Sambuc
1893*c9ea9e7aSLionel Sambuc goto yybackup;
1894*c9ea9e7aSLionel Sambuc
1895*c9ea9e7aSLionel Sambuc /*-----------.
1896*c9ea9e7aSLionel Sambuc | yybackup. |
1897*c9ea9e7aSLionel Sambuc `-----------*/
1898*c9ea9e7aSLionel Sambuc yybackup:
1899*c9ea9e7aSLionel Sambuc
1900*c9ea9e7aSLionel Sambuc /* Do appropriate processing given the current state. Read a
1901*c9ea9e7aSLionel Sambuc lookahead token if we need one and don't already have one. */
1902*c9ea9e7aSLionel Sambuc
1903*c9ea9e7aSLionel Sambuc /* First try to decide what to do without reference to lookahead token. */
1904*c9ea9e7aSLionel Sambuc yyn = yypact[yystate];
1905*c9ea9e7aSLionel Sambuc if (yypact_value_is_default (yyn))
1906*c9ea9e7aSLionel Sambuc goto yydefault;
1907*c9ea9e7aSLionel Sambuc
1908*c9ea9e7aSLionel Sambuc /* Not known => get a lookahead token if don't already have one. */
1909*c9ea9e7aSLionel Sambuc
1910*c9ea9e7aSLionel Sambuc /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
1911*c9ea9e7aSLionel Sambuc if (yychar == YYEMPTY)
1912*c9ea9e7aSLionel Sambuc {
1913*c9ea9e7aSLionel Sambuc YYDPRINTF ((stderr, "Reading a token: "));
1914*c9ea9e7aSLionel Sambuc yychar = yylex (&yylval, closure);
1915*c9ea9e7aSLionel Sambuc }
1916*c9ea9e7aSLionel Sambuc
1917*c9ea9e7aSLionel Sambuc if (yychar <= YYEOF)
1918*c9ea9e7aSLionel Sambuc {
1919*c9ea9e7aSLionel Sambuc yychar = yytoken = YYEOF;
1920*c9ea9e7aSLionel Sambuc YYDPRINTF ((stderr, "Now at end of input.\n"));
1921*c9ea9e7aSLionel Sambuc }
1922*c9ea9e7aSLionel Sambuc else
1923*c9ea9e7aSLionel Sambuc {
1924*c9ea9e7aSLionel Sambuc yytoken = YYTRANSLATE (yychar);
1925*c9ea9e7aSLionel Sambuc YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
1926*c9ea9e7aSLionel Sambuc }
1927*c9ea9e7aSLionel Sambuc
1928*c9ea9e7aSLionel Sambuc /* If the proper action on seeing token YYTOKEN is to reduce or to
1929*c9ea9e7aSLionel Sambuc detect an error, take that action. */
1930*c9ea9e7aSLionel Sambuc yyn += yytoken;
1931*c9ea9e7aSLionel Sambuc if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
1932*c9ea9e7aSLionel Sambuc goto yydefault;
1933*c9ea9e7aSLionel Sambuc yyn = yytable[yyn];
1934*c9ea9e7aSLionel Sambuc if (yyn <= 0)
1935*c9ea9e7aSLionel Sambuc {
1936*c9ea9e7aSLionel Sambuc if (yytable_value_is_error (yyn))
1937*c9ea9e7aSLionel Sambuc goto yyerrlab;
1938*c9ea9e7aSLionel Sambuc yyn = -yyn;
1939*c9ea9e7aSLionel Sambuc goto yyreduce;
1940*c9ea9e7aSLionel Sambuc }
1941*c9ea9e7aSLionel Sambuc
1942*c9ea9e7aSLionel Sambuc /* Count tokens shifted since error; after three, turn off error
1943*c9ea9e7aSLionel Sambuc status. */
1944*c9ea9e7aSLionel Sambuc if (yyerrstatus)
1945*c9ea9e7aSLionel Sambuc yyerrstatus--;
1946*c9ea9e7aSLionel Sambuc
1947*c9ea9e7aSLionel Sambuc /* Shift the lookahead token. */
1948*c9ea9e7aSLionel Sambuc YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1949*c9ea9e7aSLionel Sambuc
1950*c9ea9e7aSLionel Sambuc /* Discard the shifted token. */
1951*c9ea9e7aSLionel Sambuc yychar = YYEMPTY;
1952*c9ea9e7aSLionel Sambuc
1953*c9ea9e7aSLionel Sambuc yystate = yyn;
1954*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1955*c9ea9e7aSLionel Sambuc *++yyvsp = yylval;
1956*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_END
1957*c9ea9e7aSLionel Sambuc
1958*c9ea9e7aSLionel Sambuc goto yynewstate;
1959*c9ea9e7aSLionel Sambuc
1960*c9ea9e7aSLionel Sambuc
1961*c9ea9e7aSLionel Sambuc /*-----------------------------------------------------------.
1962*c9ea9e7aSLionel Sambuc | yydefault -- do the default action for the current state. |
1963*c9ea9e7aSLionel Sambuc `-----------------------------------------------------------*/
1964*c9ea9e7aSLionel Sambuc yydefault:
1965*c9ea9e7aSLionel Sambuc yyn = yydefact[yystate];
1966*c9ea9e7aSLionel Sambuc if (yyn == 0)
1967*c9ea9e7aSLionel Sambuc goto yyerrlab;
1968*c9ea9e7aSLionel Sambuc goto yyreduce;
1969*c9ea9e7aSLionel Sambuc
1970*c9ea9e7aSLionel Sambuc
1971*c9ea9e7aSLionel Sambuc /*-----------------------------.
1972*c9ea9e7aSLionel Sambuc | yyreduce -- Do a reduction. |
1973*c9ea9e7aSLionel Sambuc `-----------------------------*/
1974*c9ea9e7aSLionel Sambuc yyreduce:
1975*c9ea9e7aSLionel Sambuc /* yyn is the number of a rule to reduce with. */
1976*c9ea9e7aSLionel Sambuc yylen = yyr2[yyn];
1977*c9ea9e7aSLionel Sambuc
1978*c9ea9e7aSLionel Sambuc /* If YYLEN is nonzero, implement the default value of the action:
1979*c9ea9e7aSLionel Sambuc '$$ = $1'.
1980*c9ea9e7aSLionel Sambuc
1981*c9ea9e7aSLionel Sambuc Otherwise, the following line sets YYVAL to garbage.
1982*c9ea9e7aSLionel Sambuc This behavior is undocumented and Bison
1983*c9ea9e7aSLionel Sambuc users should not rely upon it. Assigning to YYVAL
1984*c9ea9e7aSLionel Sambuc unconditionally makes the parser a bit smaller, and it avoids a
1985*c9ea9e7aSLionel Sambuc GCC warning that YYVAL may be used uninitialized. */
1986*c9ea9e7aSLionel Sambuc yyval = yyvsp[1-yylen];
1987*c9ea9e7aSLionel Sambuc
1988*c9ea9e7aSLionel Sambuc
1989*c9ea9e7aSLionel Sambuc YY_REDUCE_PRINT (yyn);
1990*c9ea9e7aSLionel Sambuc switch (yyn)
1991*c9ea9e7aSLionel Sambuc {
1992*c9ea9e7aSLionel Sambuc case 9:
1993*c9ea9e7aSLionel Sambuc #line 247 "yyscript.y" /* yacc.c:1646 */
1994*c9ea9e7aSLionel Sambuc { script_set_common_allocation(closure, 1); }
1995*c9ea9e7aSLionel Sambuc #line 1996 "yyscript.c" /* yacc.c:1646 */
1996*c9ea9e7aSLionel Sambuc break;
1997*c9ea9e7aSLionel Sambuc
1998*c9ea9e7aSLionel Sambuc case 10:
1999*c9ea9e7aSLionel Sambuc #line 249 "yyscript.y" /* yacc.c:1646 */
2000*c9ea9e7aSLionel Sambuc { script_start_group(closure); }
2001*c9ea9e7aSLionel Sambuc #line 2002 "yyscript.c" /* yacc.c:1646 */
2002*c9ea9e7aSLionel Sambuc break;
2003*c9ea9e7aSLionel Sambuc
2004*c9ea9e7aSLionel Sambuc case 11:
2005*c9ea9e7aSLionel Sambuc #line 251 "yyscript.y" /* yacc.c:1646 */
2006*c9ea9e7aSLionel Sambuc { script_end_group(closure); }
2007*c9ea9e7aSLionel Sambuc #line 2008 "yyscript.c" /* yacc.c:1646 */
2008*c9ea9e7aSLionel Sambuc break;
2009*c9ea9e7aSLionel Sambuc
2010*c9ea9e7aSLionel Sambuc case 12:
2011*c9ea9e7aSLionel Sambuc #line 253 "yyscript.y" /* yacc.c:1646 */
2012*c9ea9e7aSLionel Sambuc { script_set_common_allocation(closure, 0); }
2013*c9ea9e7aSLionel Sambuc #line 2014 "yyscript.c" /* yacc.c:1646 */
2014*c9ea9e7aSLionel Sambuc break;
2015*c9ea9e7aSLionel Sambuc
2016*c9ea9e7aSLionel Sambuc case 15:
2017*c9ea9e7aSLionel Sambuc #line 257 "yyscript.y" /* yacc.c:1646 */
2018*c9ea9e7aSLionel Sambuc { script_parse_option(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2019*c9ea9e7aSLionel Sambuc #line 2020 "yyscript.c" /* yacc.c:1646 */
2020*c9ea9e7aSLionel Sambuc break;
2021*c9ea9e7aSLionel Sambuc
2022*c9ea9e7aSLionel Sambuc case 16:
2023*c9ea9e7aSLionel Sambuc #line 259 "yyscript.y" /* yacc.c:1646 */
2024*c9ea9e7aSLionel Sambuc {
2025*c9ea9e7aSLionel Sambuc if (!script_check_output_format(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length,
2026*c9ea9e7aSLionel Sambuc NULL, 0, NULL, 0))
2027*c9ea9e7aSLionel Sambuc YYABORT;
2028*c9ea9e7aSLionel Sambuc }
2029*c9ea9e7aSLionel Sambuc #line 2030 "yyscript.c" /* yacc.c:1646 */
2030*c9ea9e7aSLionel Sambuc break;
2031*c9ea9e7aSLionel Sambuc
2032*c9ea9e7aSLionel Sambuc case 17:
2033*c9ea9e7aSLionel Sambuc #line 265 "yyscript.y" /* yacc.c:1646 */
2034*c9ea9e7aSLionel Sambuc {
2035*c9ea9e7aSLionel Sambuc if (!script_check_output_format(closure, (yyvsp[-5].string).value, (yyvsp[-5].string).length,
2036*c9ea9e7aSLionel Sambuc (yyvsp[-3].string).value, (yyvsp[-3].string).length,
2037*c9ea9e7aSLionel Sambuc (yyvsp[-1].string).value, (yyvsp[-1].string).length))
2038*c9ea9e7aSLionel Sambuc YYABORT;
2039*c9ea9e7aSLionel Sambuc }
2040*c9ea9e7aSLionel Sambuc #line 2041 "yyscript.c" /* yacc.c:1646 */
2041*c9ea9e7aSLionel Sambuc break;
2042*c9ea9e7aSLionel Sambuc
2043*c9ea9e7aSLionel Sambuc case 19:
2044*c9ea9e7aSLionel Sambuc #line 273 "yyscript.y" /* yacc.c:1646 */
2045*c9ea9e7aSLionel Sambuc { script_add_search_dir(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2046*c9ea9e7aSLionel Sambuc #line 2047 "yyscript.c" /* yacc.c:1646 */
2047*c9ea9e7aSLionel Sambuc break;
2048*c9ea9e7aSLionel Sambuc
2049*c9ea9e7aSLionel Sambuc case 20:
2050*c9ea9e7aSLionel Sambuc #line 275 "yyscript.y" /* yacc.c:1646 */
2051*c9ea9e7aSLionel Sambuc { script_start_sections(closure); }
2052*c9ea9e7aSLionel Sambuc #line 2053 "yyscript.c" /* yacc.c:1646 */
2053*c9ea9e7aSLionel Sambuc break;
2054*c9ea9e7aSLionel Sambuc
2055*c9ea9e7aSLionel Sambuc case 21:
2056*c9ea9e7aSLionel Sambuc #line 277 "yyscript.y" /* yacc.c:1646 */
2057*c9ea9e7aSLionel Sambuc { script_finish_sections(closure); }
2058*c9ea9e7aSLionel Sambuc #line 2059 "yyscript.c" /* yacc.c:1646 */
2059*c9ea9e7aSLionel Sambuc break;
2060*c9ea9e7aSLionel Sambuc
2061*c9ea9e7aSLionel Sambuc case 22:
2062*c9ea9e7aSLionel Sambuc #line 279 "yyscript.y" /* yacc.c:1646 */
2063*c9ea9e7aSLionel Sambuc { script_set_target(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2064*c9ea9e7aSLionel Sambuc #line 2065 "yyscript.c" /* yacc.c:1646 */
2065*c9ea9e7aSLionel Sambuc break;
2066*c9ea9e7aSLionel Sambuc
2067*c9ea9e7aSLionel Sambuc case 23:
2068*c9ea9e7aSLionel Sambuc #line 281 "yyscript.y" /* yacc.c:1646 */
2069*c9ea9e7aSLionel Sambuc { script_push_lex_into_version_mode(closure); }
2070*c9ea9e7aSLionel Sambuc #line 2071 "yyscript.c" /* yacc.c:1646 */
2071*c9ea9e7aSLionel Sambuc break;
2072*c9ea9e7aSLionel Sambuc
2073*c9ea9e7aSLionel Sambuc case 24:
2074*c9ea9e7aSLionel Sambuc #line 283 "yyscript.y" /* yacc.c:1646 */
2075*c9ea9e7aSLionel Sambuc { script_pop_lex_mode(closure); }
2076*c9ea9e7aSLionel Sambuc #line 2077 "yyscript.c" /* yacc.c:1646 */
2077*c9ea9e7aSLionel Sambuc break;
2078*c9ea9e7aSLionel Sambuc
2079*c9ea9e7aSLionel Sambuc case 29:
2080*c9ea9e7aSLionel Sambuc #line 302 "yyscript.y" /* yacc.c:1646 */
2081*c9ea9e7aSLionel Sambuc { script_push_lex_into_expression_mode(closure); }
2082*c9ea9e7aSLionel Sambuc #line 2083 "yyscript.c" /* yacc.c:1646 */
2083*c9ea9e7aSLionel Sambuc break;
2084*c9ea9e7aSLionel Sambuc
2085*c9ea9e7aSLionel Sambuc case 30:
2086*c9ea9e7aSLionel Sambuc #line 304 "yyscript.y" /* yacc.c:1646 */
2087*c9ea9e7aSLionel Sambuc { script_pop_lex_mode(closure); }
2088*c9ea9e7aSLionel Sambuc #line 2089 "yyscript.c" /* yacc.c:1646 */
2089*c9ea9e7aSLionel Sambuc break;
2090*c9ea9e7aSLionel Sambuc
2091*c9ea9e7aSLionel Sambuc case 31:
2092*c9ea9e7aSLionel Sambuc #line 309 "yyscript.y" /* yacc.c:1646 */
2093*c9ea9e7aSLionel Sambuc { script_add_extern(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2094*c9ea9e7aSLionel Sambuc #line 2095 "yyscript.c" /* yacc.c:1646 */
2095*c9ea9e7aSLionel Sambuc break;
2096*c9ea9e7aSLionel Sambuc
2097*c9ea9e7aSLionel Sambuc case 32:
2098*c9ea9e7aSLionel Sambuc #line 311 "yyscript.y" /* yacc.c:1646 */
2099*c9ea9e7aSLionel Sambuc { script_add_extern(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2100*c9ea9e7aSLionel Sambuc #line 2101 "yyscript.c" /* yacc.c:1646 */
2101*c9ea9e7aSLionel Sambuc break;
2102*c9ea9e7aSLionel Sambuc
2103*c9ea9e7aSLionel Sambuc case 33:
2104*c9ea9e7aSLionel Sambuc #line 313 "yyscript.y" /* yacc.c:1646 */
2105*c9ea9e7aSLionel Sambuc { script_add_extern(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2106*c9ea9e7aSLionel Sambuc #line 2107 "yyscript.c" /* yacc.c:1646 */
2107*c9ea9e7aSLionel Sambuc break;
2108*c9ea9e7aSLionel Sambuc
2109*c9ea9e7aSLionel Sambuc case 36:
2110*c9ea9e7aSLionel Sambuc #line 325 "yyscript.y" /* yacc.c:1646 */
2111*c9ea9e7aSLionel Sambuc { script_add_file(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2112*c9ea9e7aSLionel Sambuc #line 2113 "yyscript.c" /* yacc.c:1646 */
2113*c9ea9e7aSLionel Sambuc break;
2114*c9ea9e7aSLionel Sambuc
2115*c9ea9e7aSLionel Sambuc case 37:
2116*c9ea9e7aSLionel Sambuc #line 327 "yyscript.y" /* yacc.c:1646 */
2117*c9ea9e7aSLionel Sambuc { script_add_library(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2118*c9ea9e7aSLionel Sambuc #line 2119 "yyscript.c" /* yacc.c:1646 */
2119*c9ea9e7aSLionel Sambuc break;
2120*c9ea9e7aSLionel Sambuc
2121*c9ea9e7aSLionel Sambuc case 38:
2122*c9ea9e7aSLionel Sambuc #line 329 "yyscript.y" /* yacc.c:1646 */
2123*c9ea9e7aSLionel Sambuc { script_start_as_needed(closure); }
2124*c9ea9e7aSLionel Sambuc #line 2125 "yyscript.c" /* yacc.c:1646 */
2125*c9ea9e7aSLionel Sambuc break;
2126*c9ea9e7aSLionel Sambuc
2127*c9ea9e7aSLionel Sambuc case 39:
2128*c9ea9e7aSLionel Sambuc #line 331 "yyscript.y" /* yacc.c:1646 */
2129*c9ea9e7aSLionel Sambuc { script_end_as_needed(closure); }
2130*c9ea9e7aSLionel Sambuc #line 2131 "yyscript.c" /* yacc.c:1646 */
2131*c9ea9e7aSLionel Sambuc break;
2132*c9ea9e7aSLionel Sambuc
2133*c9ea9e7aSLionel Sambuc case 43:
2134*c9ea9e7aSLionel Sambuc #line 344 "yyscript.y" /* yacc.c:1646 */
2135*c9ea9e7aSLionel Sambuc { script_start_output_section(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length, &(yyvsp[0].output_section_header)); }
2136*c9ea9e7aSLionel Sambuc #line 2137 "yyscript.c" /* yacc.c:1646 */
2137*c9ea9e7aSLionel Sambuc break;
2138*c9ea9e7aSLionel Sambuc
2139*c9ea9e7aSLionel Sambuc case 44:
2140*c9ea9e7aSLionel Sambuc #line 346 "yyscript.y" /* yacc.c:1646 */
2141*c9ea9e7aSLionel Sambuc { script_finish_output_section(closure, &(yyvsp[0].output_section_trailer)); }
2142*c9ea9e7aSLionel Sambuc #line 2143 "yyscript.c" /* yacc.c:1646 */
2143*c9ea9e7aSLionel Sambuc break;
2144*c9ea9e7aSLionel Sambuc
2145*c9ea9e7aSLionel Sambuc case 45:
2146*c9ea9e7aSLionel Sambuc #line 352 "yyscript.y" /* yacc.c:1646 */
2147*c9ea9e7aSLionel Sambuc { script_push_lex_into_expression_mode(closure); }
2148*c9ea9e7aSLionel Sambuc #line 2149 "yyscript.c" /* yacc.c:1646 */
2149*c9ea9e7aSLionel Sambuc break;
2150*c9ea9e7aSLionel Sambuc
2151*c9ea9e7aSLionel Sambuc case 46:
2152*c9ea9e7aSLionel Sambuc #line 354 "yyscript.y" /* yacc.c:1646 */
2153*c9ea9e7aSLionel Sambuc { script_pop_lex_mode(closure); }
2154*c9ea9e7aSLionel Sambuc #line 2155 "yyscript.c" /* yacc.c:1646 */
2155*c9ea9e7aSLionel Sambuc break;
2156*c9ea9e7aSLionel Sambuc
2157*c9ea9e7aSLionel Sambuc case 47:
2158*c9ea9e7aSLionel Sambuc #line 356 "yyscript.y" /* yacc.c:1646 */
2159*c9ea9e7aSLionel Sambuc {
2160*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = (yyvsp[-5].output_section_header).address;
2161*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = (yyvsp[-5].output_section_header).section_type;
2162*c9ea9e7aSLionel Sambuc (yyval.output_section_header).load_address = (yyvsp[-4].expr);
2163*c9ea9e7aSLionel Sambuc (yyval.output_section_header).align = (yyvsp[-3].expr);
2164*c9ea9e7aSLionel Sambuc (yyval.output_section_header).subalign = (yyvsp[-2].expr);
2165*c9ea9e7aSLionel Sambuc (yyval.output_section_header).constraint = (yyvsp[0].constraint);
2166*c9ea9e7aSLionel Sambuc }
2167*c9ea9e7aSLionel Sambuc #line 2168 "yyscript.c" /* yacc.c:1646 */
2168*c9ea9e7aSLionel Sambuc break;
2169*c9ea9e7aSLionel Sambuc
2170*c9ea9e7aSLionel Sambuc case 48:
2171*c9ea9e7aSLionel Sambuc #line 372 "yyscript.y" /* yacc.c:1646 */
2172*c9ea9e7aSLionel Sambuc {
2173*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = NULL;
2174*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = SCRIPT_SECTION_TYPE_NONE;
2175*c9ea9e7aSLionel Sambuc }
2176*c9ea9e7aSLionel Sambuc #line 2177 "yyscript.c" /* yacc.c:1646 */
2177*c9ea9e7aSLionel Sambuc break;
2178*c9ea9e7aSLionel Sambuc
2179*c9ea9e7aSLionel Sambuc case 49:
2180*c9ea9e7aSLionel Sambuc #line 377 "yyscript.y" /* yacc.c:1646 */
2181*c9ea9e7aSLionel Sambuc {
2182*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = NULL;
2183*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = SCRIPT_SECTION_TYPE_NONE;
2184*c9ea9e7aSLionel Sambuc }
2185*c9ea9e7aSLionel Sambuc #line 2186 "yyscript.c" /* yacc.c:1646 */
2186*c9ea9e7aSLionel Sambuc break;
2187*c9ea9e7aSLionel Sambuc
2188*c9ea9e7aSLionel Sambuc case 50:
2189*c9ea9e7aSLionel Sambuc #line 382 "yyscript.y" /* yacc.c:1646 */
2190*c9ea9e7aSLionel Sambuc {
2191*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = (yyvsp[-1].expr);
2192*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = SCRIPT_SECTION_TYPE_NONE;
2193*c9ea9e7aSLionel Sambuc }
2194*c9ea9e7aSLionel Sambuc #line 2195 "yyscript.c" /* yacc.c:1646 */
2195*c9ea9e7aSLionel Sambuc break;
2196*c9ea9e7aSLionel Sambuc
2197*c9ea9e7aSLionel Sambuc case 51:
2198*c9ea9e7aSLionel Sambuc #line 387 "yyscript.y" /* yacc.c:1646 */
2199*c9ea9e7aSLionel Sambuc {
2200*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = (yyvsp[-3].expr);
2201*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = SCRIPT_SECTION_TYPE_NONE;
2202*c9ea9e7aSLionel Sambuc }
2203*c9ea9e7aSLionel Sambuc #line 2204 "yyscript.c" /* yacc.c:1646 */
2204*c9ea9e7aSLionel Sambuc break;
2205*c9ea9e7aSLionel Sambuc
2206*c9ea9e7aSLionel Sambuc case 52:
2207*c9ea9e7aSLionel Sambuc #line 392 "yyscript.y" /* yacc.c:1646 */
2208*c9ea9e7aSLionel Sambuc {
2209*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = NULL;
2210*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = (yyvsp[-2].section_type);
2211*c9ea9e7aSLionel Sambuc }
2212*c9ea9e7aSLionel Sambuc #line 2213 "yyscript.c" /* yacc.c:1646 */
2213*c9ea9e7aSLionel Sambuc break;
2214*c9ea9e7aSLionel Sambuc
2215*c9ea9e7aSLionel Sambuc case 53:
2216*c9ea9e7aSLionel Sambuc #line 397 "yyscript.y" /* yacc.c:1646 */
2217*c9ea9e7aSLionel Sambuc {
2218*c9ea9e7aSLionel Sambuc (yyval.output_section_header).address = (yyvsp[-4].expr);
2219*c9ea9e7aSLionel Sambuc (yyval.output_section_header).section_type = (yyvsp[-2].section_type);
2220*c9ea9e7aSLionel Sambuc }
2221*c9ea9e7aSLionel Sambuc #line 2222 "yyscript.c" /* yacc.c:1646 */
2222*c9ea9e7aSLionel Sambuc break;
2223*c9ea9e7aSLionel Sambuc
2224*c9ea9e7aSLionel Sambuc case 54:
2225*c9ea9e7aSLionel Sambuc #line 406 "yyscript.y" /* yacc.c:1646 */
2226*c9ea9e7aSLionel Sambuc { (yyval.section_type) = SCRIPT_SECTION_TYPE_NOLOAD; }
2227*c9ea9e7aSLionel Sambuc #line 2228 "yyscript.c" /* yacc.c:1646 */
2228*c9ea9e7aSLionel Sambuc break;
2229*c9ea9e7aSLionel Sambuc
2230*c9ea9e7aSLionel Sambuc case 55:
2231*c9ea9e7aSLionel Sambuc #line 408 "yyscript.y" /* yacc.c:1646 */
2232*c9ea9e7aSLionel Sambuc {
2233*c9ea9e7aSLionel Sambuc yyerror(closure, "DSECT section type is unsupported");
2234*c9ea9e7aSLionel Sambuc (yyval.section_type) = SCRIPT_SECTION_TYPE_DSECT;
2235*c9ea9e7aSLionel Sambuc }
2236*c9ea9e7aSLionel Sambuc #line 2237 "yyscript.c" /* yacc.c:1646 */
2237*c9ea9e7aSLionel Sambuc break;
2238*c9ea9e7aSLionel Sambuc
2239*c9ea9e7aSLionel Sambuc case 56:
2240*c9ea9e7aSLionel Sambuc #line 413 "yyscript.y" /* yacc.c:1646 */
2241*c9ea9e7aSLionel Sambuc {
2242*c9ea9e7aSLionel Sambuc yyerror(closure, "COPY section type is unsupported");
2243*c9ea9e7aSLionel Sambuc (yyval.section_type) = SCRIPT_SECTION_TYPE_COPY;
2244*c9ea9e7aSLionel Sambuc }
2245*c9ea9e7aSLionel Sambuc #line 2246 "yyscript.c" /* yacc.c:1646 */
2246*c9ea9e7aSLionel Sambuc break;
2247*c9ea9e7aSLionel Sambuc
2248*c9ea9e7aSLionel Sambuc case 57:
2249*c9ea9e7aSLionel Sambuc #line 418 "yyscript.y" /* yacc.c:1646 */
2250*c9ea9e7aSLionel Sambuc {
2251*c9ea9e7aSLionel Sambuc yyerror(closure, "INFO section type is unsupported");
2252*c9ea9e7aSLionel Sambuc (yyval.section_type) = SCRIPT_SECTION_TYPE_INFO;
2253*c9ea9e7aSLionel Sambuc }
2254*c9ea9e7aSLionel Sambuc #line 2255 "yyscript.c" /* yacc.c:1646 */
2255*c9ea9e7aSLionel Sambuc break;
2256*c9ea9e7aSLionel Sambuc
2257*c9ea9e7aSLionel Sambuc case 58:
2258*c9ea9e7aSLionel Sambuc #line 423 "yyscript.y" /* yacc.c:1646 */
2259*c9ea9e7aSLionel Sambuc {
2260*c9ea9e7aSLionel Sambuc yyerror(closure, "OVERLAY section type is unsupported");
2261*c9ea9e7aSLionel Sambuc (yyval.section_type) = SCRIPT_SECTION_TYPE_OVERLAY;
2262*c9ea9e7aSLionel Sambuc }
2263*c9ea9e7aSLionel Sambuc #line 2264 "yyscript.c" /* yacc.c:1646 */
2264*c9ea9e7aSLionel Sambuc break;
2265*c9ea9e7aSLionel Sambuc
2266*c9ea9e7aSLionel Sambuc case 59:
2267*c9ea9e7aSLionel Sambuc #line 432 "yyscript.y" /* yacc.c:1646 */
2268*c9ea9e7aSLionel Sambuc { (yyval.expr) = NULL; }
2269*c9ea9e7aSLionel Sambuc #line 2270 "yyscript.c" /* yacc.c:1646 */
2270*c9ea9e7aSLionel Sambuc break;
2271*c9ea9e7aSLionel Sambuc
2272*c9ea9e7aSLionel Sambuc case 60:
2273*c9ea9e7aSLionel Sambuc #line 434 "yyscript.y" /* yacc.c:1646 */
2274*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[-1].expr); }
2275*c9ea9e7aSLionel Sambuc #line 2276 "yyscript.c" /* yacc.c:1646 */
2276*c9ea9e7aSLionel Sambuc break;
2277*c9ea9e7aSLionel Sambuc
2278*c9ea9e7aSLionel Sambuc case 61:
2279*c9ea9e7aSLionel Sambuc #line 440 "yyscript.y" /* yacc.c:1646 */
2280*c9ea9e7aSLionel Sambuc { (yyval.expr) = NULL; }
2281*c9ea9e7aSLionel Sambuc #line 2282 "yyscript.c" /* yacc.c:1646 */
2282*c9ea9e7aSLionel Sambuc break;
2283*c9ea9e7aSLionel Sambuc
2284*c9ea9e7aSLionel Sambuc case 62:
2285*c9ea9e7aSLionel Sambuc #line 442 "yyscript.y" /* yacc.c:1646 */
2286*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[-1].expr); }
2287*c9ea9e7aSLionel Sambuc #line 2288 "yyscript.c" /* yacc.c:1646 */
2288*c9ea9e7aSLionel Sambuc break;
2289*c9ea9e7aSLionel Sambuc
2290*c9ea9e7aSLionel Sambuc case 63:
2291*c9ea9e7aSLionel Sambuc #line 448 "yyscript.y" /* yacc.c:1646 */
2292*c9ea9e7aSLionel Sambuc { (yyval.expr) = NULL; }
2293*c9ea9e7aSLionel Sambuc #line 2294 "yyscript.c" /* yacc.c:1646 */
2294*c9ea9e7aSLionel Sambuc break;
2295*c9ea9e7aSLionel Sambuc
2296*c9ea9e7aSLionel Sambuc case 64:
2297*c9ea9e7aSLionel Sambuc #line 450 "yyscript.y" /* yacc.c:1646 */
2298*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[-1].expr); }
2299*c9ea9e7aSLionel Sambuc #line 2300 "yyscript.c" /* yacc.c:1646 */
2300*c9ea9e7aSLionel Sambuc break;
2301*c9ea9e7aSLionel Sambuc
2302*c9ea9e7aSLionel Sambuc case 65:
2303*c9ea9e7aSLionel Sambuc #line 456 "yyscript.y" /* yacc.c:1646 */
2304*c9ea9e7aSLionel Sambuc { (yyval.constraint) = CONSTRAINT_NONE; }
2305*c9ea9e7aSLionel Sambuc #line 2306 "yyscript.c" /* yacc.c:1646 */
2306*c9ea9e7aSLionel Sambuc break;
2307*c9ea9e7aSLionel Sambuc
2308*c9ea9e7aSLionel Sambuc case 66:
2309*c9ea9e7aSLionel Sambuc #line 458 "yyscript.y" /* yacc.c:1646 */
2310*c9ea9e7aSLionel Sambuc { (yyval.constraint) = CONSTRAINT_ONLY_IF_RO; }
2311*c9ea9e7aSLionel Sambuc #line 2312 "yyscript.c" /* yacc.c:1646 */
2312*c9ea9e7aSLionel Sambuc break;
2313*c9ea9e7aSLionel Sambuc
2314*c9ea9e7aSLionel Sambuc case 67:
2315*c9ea9e7aSLionel Sambuc #line 460 "yyscript.y" /* yacc.c:1646 */
2316*c9ea9e7aSLionel Sambuc { (yyval.constraint) = CONSTRAINT_ONLY_IF_RW; }
2317*c9ea9e7aSLionel Sambuc #line 2318 "yyscript.c" /* yacc.c:1646 */
2318*c9ea9e7aSLionel Sambuc break;
2319*c9ea9e7aSLionel Sambuc
2320*c9ea9e7aSLionel Sambuc case 68:
2321*c9ea9e7aSLionel Sambuc #line 462 "yyscript.y" /* yacc.c:1646 */
2322*c9ea9e7aSLionel Sambuc { (yyval.constraint) = CONSTRAINT_SPECIAL; }
2323*c9ea9e7aSLionel Sambuc #line 2324 "yyscript.c" /* yacc.c:1646 */
2324*c9ea9e7aSLionel Sambuc break;
2325*c9ea9e7aSLionel Sambuc
2326*c9ea9e7aSLionel Sambuc case 69:
2327*c9ea9e7aSLionel Sambuc #line 468 "yyscript.y" /* yacc.c:1646 */
2328*c9ea9e7aSLionel Sambuc {
2329*c9ea9e7aSLionel Sambuc (yyval.output_section_trailer).fill = (yyvsp[-1].expr);
2330*c9ea9e7aSLionel Sambuc (yyval.output_section_trailer).phdrs = (yyvsp[-2].string_list);
2331*c9ea9e7aSLionel Sambuc }
2332*c9ea9e7aSLionel Sambuc #line 2333 "yyscript.c" /* yacc.c:1646 */
2333*c9ea9e7aSLionel Sambuc break;
2334*c9ea9e7aSLionel Sambuc
2335*c9ea9e7aSLionel Sambuc case 70:
2336*c9ea9e7aSLionel Sambuc #line 477 "yyscript.y" /* yacc.c:1646 */
2337*c9ea9e7aSLionel Sambuc { script_set_section_region(closure, (yyvsp[0].string).value, (yyvsp[0].string).length, 1); }
2338*c9ea9e7aSLionel Sambuc #line 2339 "yyscript.c" /* yacc.c:1646 */
2339*c9ea9e7aSLionel Sambuc break;
2340*c9ea9e7aSLionel Sambuc
2341*c9ea9e7aSLionel Sambuc case 72:
2342*c9ea9e7aSLionel Sambuc #line 484 "yyscript.y" /* yacc.c:1646 */
2343*c9ea9e7aSLionel Sambuc { script_set_section_region(closure, (yyvsp[0].string).value, (yyvsp[0].string).length, 0); }
2344*c9ea9e7aSLionel Sambuc #line 2345 "yyscript.c" /* yacc.c:1646 */
2345*c9ea9e7aSLionel Sambuc break;
2346*c9ea9e7aSLionel Sambuc
2347*c9ea9e7aSLionel Sambuc case 74:
2348*c9ea9e7aSLionel Sambuc #line 491 "yyscript.y" /* yacc.c:1646 */
2349*c9ea9e7aSLionel Sambuc { (yyval.string_list) = script_string_list_push_back((yyvsp[-2].string_list), (yyvsp[0].string).value, (yyvsp[0].string).length); }
2350*c9ea9e7aSLionel Sambuc #line 2351 "yyscript.c" /* yacc.c:1646 */
2351*c9ea9e7aSLionel Sambuc break;
2352*c9ea9e7aSLionel Sambuc
2353*c9ea9e7aSLionel Sambuc case 75:
2354*c9ea9e7aSLionel Sambuc #line 493 "yyscript.y" /* yacc.c:1646 */
2355*c9ea9e7aSLionel Sambuc { (yyval.string_list) = NULL; }
2356*c9ea9e7aSLionel Sambuc #line 2357 "yyscript.c" /* yacc.c:1646 */
2357*c9ea9e7aSLionel Sambuc break;
2358*c9ea9e7aSLionel Sambuc
2359*c9ea9e7aSLionel Sambuc case 76:
2360*c9ea9e7aSLionel Sambuc #line 500 "yyscript.y" /* yacc.c:1646 */
2361*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[0].expr); }
2362*c9ea9e7aSLionel Sambuc #line 2363 "yyscript.c" /* yacc.c:1646 */
2363*c9ea9e7aSLionel Sambuc break;
2364*c9ea9e7aSLionel Sambuc
2365*c9ea9e7aSLionel Sambuc case 77:
2366*c9ea9e7aSLionel Sambuc #line 502 "yyscript.y" /* yacc.c:1646 */
2367*c9ea9e7aSLionel Sambuc { (yyval.expr) = NULL; }
2368*c9ea9e7aSLionel Sambuc #line 2369 "yyscript.c" /* yacc.c:1646 */
2369*c9ea9e7aSLionel Sambuc break;
2370*c9ea9e7aSLionel Sambuc
2371*c9ea9e7aSLionel Sambuc case 82:
2372*c9ea9e7aSLionel Sambuc #line 518 "yyscript.y" /* yacc.c:1646 */
2373*c9ea9e7aSLionel Sambuc { script_add_data(closure, (yyvsp[-3].integer), (yyvsp[-1].expr)); }
2374*c9ea9e7aSLionel Sambuc #line 2375 "yyscript.c" /* yacc.c:1646 */
2375*c9ea9e7aSLionel Sambuc break;
2376*c9ea9e7aSLionel Sambuc
2377*c9ea9e7aSLionel Sambuc case 83:
2378*c9ea9e7aSLionel Sambuc #line 520 "yyscript.y" /* yacc.c:1646 */
2379*c9ea9e7aSLionel Sambuc { script_add_assertion(closure, (yyvsp[-3].expr), (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2380*c9ea9e7aSLionel Sambuc #line 2381 "yyscript.c" /* yacc.c:1646 */
2381*c9ea9e7aSLionel Sambuc break;
2382*c9ea9e7aSLionel Sambuc
2383*c9ea9e7aSLionel Sambuc case 84:
2384*c9ea9e7aSLionel Sambuc #line 522 "yyscript.y" /* yacc.c:1646 */
2385*c9ea9e7aSLionel Sambuc { script_add_fill(closure, (yyvsp[-1].expr)); }
2386*c9ea9e7aSLionel Sambuc #line 2387 "yyscript.c" /* yacc.c:1646 */
2387*c9ea9e7aSLionel Sambuc break;
2388*c9ea9e7aSLionel Sambuc
2389*c9ea9e7aSLionel Sambuc case 85:
2390*c9ea9e7aSLionel Sambuc #line 524 "yyscript.y" /* yacc.c:1646 */
2391*c9ea9e7aSLionel Sambuc {
2392*c9ea9e7aSLionel Sambuc /* The GNU linker uses CONSTRUCTORS for the a.out object
2393*c9ea9e7aSLionel Sambuc file format. It does nothing when using ELF. Since
2394*c9ea9e7aSLionel Sambuc some ELF linker scripts use it although it does
2395*c9ea9e7aSLionel Sambuc nothing, we accept it and ignore it. */
2396*c9ea9e7aSLionel Sambuc }
2397*c9ea9e7aSLionel Sambuc #line 2398 "yyscript.c" /* yacc.c:1646 */
2398*c9ea9e7aSLionel Sambuc break;
2399*c9ea9e7aSLionel Sambuc
2400*c9ea9e7aSLionel Sambuc case 87:
2401*c9ea9e7aSLionel Sambuc #line 532 "yyscript.y" /* yacc.c:1646 */
2402*c9ea9e7aSLionel Sambuc { script_include_directive(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2403*c9ea9e7aSLionel Sambuc #line 2404 "yyscript.c" /* yacc.c:1646 */
2404*c9ea9e7aSLionel Sambuc break;
2405*c9ea9e7aSLionel Sambuc
2406*c9ea9e7aSLionel Sambuc case 89:
2407*c9ea9e7aSLionel Sambuc #line 540 "yyscript.y" /* yacc.c:1646 */
2408*c9ea9e7aSLionel Sambuc { (yyval.integer) = QUAD; }
2409*c9ea9e7aSLionel Sambuc #line 2410 "yyscript.c" /* yacc.c:1646 */
2410*c9ea9e7aSLionel Sambuc break;
2411*c9ea9e7aSLionel Sambuc
2412*c9ea9e7aSLionel Sambuc case 90:
2413*c9ea9e7aSLionel Sambuc #line 542 "yyscript.y" /* yacc.c:1646 */
2414*c9ea9e7aSLionel Sambuc { (yyval.integer) = SQUAD; }
2415*c9ea9e7aSLionel Sambuc #line 2416 "yyscript.c" /* yacc.c:1646 */
2416*c9ea9e7aSLionel Sambuc break;
2417*c9ea9e7aSLionel Sambuc
2418*c9ea9e7aSLionel Sambuc case 91:
2419*c9ea9e7aSLionel Sambuc #line 544 "yyscript.y" /* yacc.c:1646 */
2420*c9ea9e7aSLionel Sambuc { (yyval.integer) = LONG; }
2421*c9ea9e7aSLionel Sambuc #line 2422 "yyscript.c" /* yacc.c:1646 */
2422*c9ea9e7aSLionel Sambuc break;
2423*c9ea9e7aSLionel Sambuc
2424*c9ea9e7aSLionel Sambuc case 92:
2425*c9ea9e7aSLionel Sambuc #line 546 "yyscript.y" /* yacc.c:1646 */
2426*c9ea9e7aSLionel Sambuc { (yyval.integer) = SHORT; }
2427*c9ea9e7aSLionel Sambuc #line 2428 "yyscript.c" /* yacc.c:1646 */
2428*c9ea9e7aSLionel Sambuc break;
2429*c9ea9e7aSLionel Sambuc
2430*c9ea9e7aSLionel Sambuc case 93:
2431*c9ea9e7aSLionel Sambuc #line 548 "yyscript.y" /* yacc.c:1646 */
2432*c9ea9e7aSLionel Sambuc { (yyval.integer) = BYTE; }
2433*c9ea9e7aSLionel Sambuc #line 2434 "yyscript.c" /* yacc.c:1646 */
2434*c9ea9e7aSLionel Sambuc break;
2435*c9ea9e7aSLionel Sambuc
2436*c9ea9e7aSLionel Sambuc case 94:
2437*c9ea9e7aSLionel Sambuc #line 555 "yyscript.y" /* yacc.c:1646 */
2438*c9ea9e7aSLionel Sambuc { script_add_input_section(closure, &(yyvsp[0].input_section_spec), 0); }
2439*c9ea9e7aSLionel Sambuc #line 2440 "yyscript.c" /* yacc.c:1646 */
2440*c9ea9e7aSLionel Sambuc break;
2441*c9ea9e7aSLionel Sambuc
2442*c9ea9e7aSLionel Sambuc case 95:
2443*c9ea9e7aSLionel Sambuc #line 557 "yyscript.y" /* yacc.c:1646 */
2444*c9ea9e7aSLionel Sambuc { script_add_input_section(closure, &(yyvsp[-1].input_section_spec), 1); }
2445*c9ea9e7aSLionel Sambuc #line 2446 "yyscript.c" /* yacc.c:1646 */
2446*c9ea9e7aSLionel Sambuc break;
2447*c9ea9e7aSLionel Sambuc
2448*c9ea9e7aSLionel Sambuc case 96:
2449*c9ea9e7aSLionel Sambuc #line 563 "yyscript.y" /* yacc.c:1646 */
2450*c9ea9e7aSLionel Sambuc {
2451*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).file.name = (yyvsp[0].string);
2452*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).file.sort = SORT_WILDCARD_NONE;
2453*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).input_sections.sections = NULL;
2454*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).input_sections.exclude = NULL;
2455*c9ea9e7aSLionel Sambuc }
2456*c9ea9e7aSLionel Sambuc #line 2457 "yyscript.c" /* yacc.c:1646 */
2457*c9ea9e7aSLionel Sambuc break;
2458*c9ea9e7aSLionel Sambuc
2459*c9ea9e7aSLionel Sambuc case 97:
2460*c9ea9e7aSLionel Sambuc #line 570 "yyscript.y" /* yacc.c:1646 */
2461*c9ea9e7aSLionel Sambuc {
2462*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).file = (yyvsp[-3].wildcard_section);
2463*c9ea9e7aSLionel Sambuc (yyval.input_section_spec).input_sections = (yyvsp[-1].wildcard_sections);
2464*c9ea9e7aSLionel Sambuc }
2465*c9ea9e7aSLionel Sambuc #line 2466 "yyscript.c" /* yacc.c:1646 */
2466*c9ea9e7aSLionel Sambuc break;
2467*c9ea9e7aSLionel Sambuc
2468*c9ea9e7aSLionel Sambuc case 98:
2469*c9ea9e7aSLionel Sambuc #line 579 "yyscript.y" /* yacc.c:1646 */
2470*c9ea9e7aSLionel Sambuc {
2471*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).name = (yyvsp[0].string);
2472*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_NONE;
2473*c9ea9e7aSLionel Sambuc }
2474*c9ea9e7aSLionel Sambuc #line 2475 "yyscript.c" /* yacc.c:1646 */
2475*c9ea9e7aSLionel Sambuc break;
2476*c9ea9e7aSLionel Sambuc
2477*c9ea9e7aSLionel Sambuc case 99:
2478*c9ea9e7aSLionel Sambuc #line 584 "yyscript.y" /* yacc.c:1646 */
2479*c9ea9e7aSLionel Sambuc {
2480*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).name = (yyvsp[-1].string);
2481*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_BY_NAME;
2482*c9ea9e7aSLionel Sambuc }
2483*c9ea9e7aSLionel Sambuc #line 2484 "yyscript.c" /* yacc.c:1646 */
2484*c9ea9e7aSLionel Sambuc break;
2485*c9ea9e7aSLionel Sambuc
2486*c9ea9e7aSLionel Sambuc case 100:
2487*c9ea9e7aSLionel Sambuc #line 593 "yyscript.y" /* yacc.c:1646 */
2488*c9ea9e7aSLionel Sambuc {
2489*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).sections = script_string_sort_list_add((yyvsp[-2].wildcard_sections).sections, &(yyvsp[0].wildcard_section));
2490*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).exclude = (yyvsp[-2].wildcard_sections).exclude;
2491*c9ea9e7aSLionel Sambuc }
2492*c9ea9e7aSLionel Sambuc #line 2493 "yyscript.c" /* yacc.c:1646 */
2493*c9ea9e7aSLionel Sambuc break;
2494*c9ea9e7aSLionel Sambuc
2495*c9ea9e7aSLionel Sambuc case 101:
2496*c9ea9e7aSLionel Sambuc #line 598 "yyscript.y" /* yacc.c:1646 */
2497*c9ea9e7aSLionel Sambuc {
2498*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).sections = script_new_string_sort_list(&(yyvsp[0].wildcard_section));
2499*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).exclude = NULL;
2500*c9ea9e7aSLionel Sambuc }
2501*c9ea9e7aSLionel Sambuc #line 2502 "yyscript.c" /* yacc.c:1646 */
2502*c9ea9e7aSLionel Sambuc break;
2503*c9ea9e7aSLionel Sambuc
2504*c9ea9e7aSLionel Sambuc case 102:
2505*c9ea9e7aSLionel Sambuc #line 603 "yyscript.y" /* yacc.c:1646 */
2506*c9ea9e7aSLionel Sambuc {
2507*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).sections = (yyvsp[-5].wildcard_sections).sections;
2508*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).exclude = script_string_list_append((yyvsp[-5].wildcard_sections).exclude, (yyvsp[-1].string_list));
2509*c9ea9e7aSLionel Sambuc }
2510*c9ea9e7aSLionel Sambuc #line 2511 "yyscript.c" /* yacc.c:1646 */
2511*c9ea9e7aSLionel Sambuc break;
2512*c9ea9e7aSLionel Sambuc
2513*c9ea9e7aSLionel Sambuc case 103:
2514*c9ea9e7aSLionel Sambuc #line 608 "yyscript.y" /* yacc.c:1646 */
2515*c9ea9e7aSLionel Sambuc {
2516*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).sections = NULL;
2517*c9ea9e7aSLionel Sambuc (yyval.wildcard_sections).exclude = (yyvsp[-1].string_list);
2518*c9ea9e7aSLionel Sambuc }
2519*c9ea9e7aSLionel Sambuc #line 2520 "yyscript.c" /* yacc.c:1646 */
2520*c9ea9e7aSLionel Sambuc break;
2521*c9ea9e7aSLionel Sambuc
2522*c9ea9e7aSLionel Sambuc case 104:
2523*c9ea9e7aSLionel Sambuc #line 617 "yyscript.y" /* yacc.c:1646 */
2524*c9ea9e7aSLionel Sambuc {
2525*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).name = (yyvsp[0].string);
2526*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_NONE;
2527*c9ea9e7aSLionel Sambuc }
2528*c9ea9e7aSLionel Sambuc #line 2529 "yyscript.c" /* yacc.c:1646 */
2529*c9ea9e7aSLionel Sambuc break;
2530*c9ea9e7aSLionel Sambuc
2531*c9ea9e7aSLionel Sambuc case 105:
2532*c9ea9e7aSLionel Sambuc #line 622 "yyscript.y" /* yacc.c:1646 */
2533*c9ea9e7aSLionel Sambuc {
2534*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).name = (yyvsp[-1].wildcard_section).name;
2535*c9ea9e7aSLionel Sambuc switch ((yyvsp[-1].wildcard_section).sort)
2536*c9ea9e7aSLionel Sambuc {
2537*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_NONE:
2538*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_BY_NAME;
2539*c9ea9e7aSLionel Sambuc break;
2540*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_NAME:
2541*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_NAME_BY_ALIGNMENT:
2542*c9ea9e7aSLionel Sambuc break;
2543*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_ALIGNMENT:
2544*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_ALIGNMENT_BY_NAME:
2545*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_BY_NAME_BY_ALIGNMENT;
2546*c9ea9e7aSLionel Sambuc break;
2547*c9ea9e7aSLionel Sambuc default:
2548*c9ea9e7aSLionel Sambuc abort();
2549*c9ea9e7aSLionel Sambuc }
2550*c9ea9e7aSLionel Sambuc }
2551*c9ea9e7aSLionel Sambuc #line 2552 "yyscript.c" /* yacc.c:1646 */
2552*c9ea9e7aSLionel Sambuc break;
2553*c9ea9e7aSLionel Sambuc
2554*c9ea9e7aSLionel Sambuc case 106:
2555*c9ea9e7aSLionel Sambuc #line 641 "yyscript.y" /* yacc.c:1646 */
2556*c9ea9e7aSLionel Sambuc {
2557*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).name = (yyvsp[-1].wildcard_section).name;
2558*c9ea9e7aSLionel Sambuc switch ((yyvsp[-1].wildcard_section).sort)
2559*c9ea9e7aSLionel Sambuc {
2560*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_NONE:
2561*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_BY_ALIGNMENT;
2562*c9ea9e7aSLionel Sambuc break;
2563*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_ALIGNMENT:
2564*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_ALIGNMENT_BY_NAME:
2565*c9ea9e7aSLionel Sambuc break;
2566*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_NAME:
2567*c9ea9e7aSLionel Sambuc case SORT_WILDCARD_BY_NAME_BY_ALIGNMENT:
2568*c9ea9e7aSLionel Sambuc (yyval.wildcard_section).sort = SORT_WILDCARD_BY_ALIGNMENT_BY_NAME;
2569*c9ea9e7aSLionel Sambuc break;
2570*c9ea9e7aSLionel Sambuc default:
2571*c9ea9e7aSLionel Sambuc abort();
2572*c9ea9e7aSLionel Sambuc }
2573*c9ea9e7aSLionel Sambuc }
2574*c9ea9e7aSLionel Sambuc #line 2575 "yyscript.c" /* yacc.c:1646 */
2575*c9ea9e7aSLionel Sambuc break;
2576*c9ea9e7aSLionel Sambuc
2577*c9ea9e7aSLionel Sambuc case 107:
2578*c9ea9e7aSLionel Sambuc #line 664 "yyscript.y" /* yacc.c:1646 */
2579*c9ea9e7aSLionel Sambuc { (yyval.string_list) = script_string_list_push_back((yyvsp[-2].string_list), (yyvsp[0].string).value, (yyvsp[0].string).length); }
2580*c9ea9e7aSLionel Sambuc #line 2581 "yyscript.c" /* yacc.c:1646 */
2581*c9ea9e7aSLionel Sambuc break;
2582*c9ea9e7aSLionel Sambuc
2583*c9ea9e7aSLionel Sambuc case 108:
2584*c9ea9e7aSLionel Sambuc #line 666 "yyscript.y" /* yacc.c:1646 */
2585*c9ea9e7aSLionel Sambuc { (yyval.string_list) = script_new_string_list((yyvsp[0].string).value, (yyvsp[0].string).length); }
2586*c9ea9e7aSLionel Sambuc #line 2587 "yyscript.c" /* yacc.c:1646 */
2587*c9ea9e7aSLionel Sambuc break;
2588*c9ea9e7aSLionel Sambuc
2589*c9ea9e7aSLionel Sambuc case 109:
2590*c9ea9e7aSLionel Sambuc #line 673 "yyscript.y" /* yacc.c:1646 */
2591*c9ea9e7aSLionel Sambuc { (yyval.string) = (yyvsp[0].string); }
2592*c9ea9e7aSLionel Sambuc #line 2593 "yyscript.c" /* yacc.c:1646 */
2593*c9ea9e7aSLionel Sambuc break;
2594*c9ea9e7aSLionel Sambuc
2595*c9ea9e7aSLionel Sambuc case 110:
2596*c9ea9e7aSLionel Sambuc #line 675 "yyscript.y" /* yacc.c:1646 */
2597*c9ea9e7aSLionel Sambuc {
2598*c9ea9e7aSLionel Sambuc (yyval.string).value = "*";
2599*c9ea9e7aSLionel Sambuc (yyval.string).length = 1;
2600*c9ea9e7aSLionel Sambuc }
2601*c9ea9e7aSLionel Sambuc #line 2602 "yyscript.c" /* yacc.c:1646 */
2602*c9ea9e7aSLionel Sambuc break;
2603*c9ea9e7aSLionel Sambuc
2604*c9ea9e7aSLionel Sambuc case 111:
2605*c9ea9e7aSLionel Sambuc #line 680 "yyscript.y" /* yacc.c:1646 */
2606*c9ea9e7aSLionel Sambuc {
2607*c9ea9e7aSLionel Sambuc (yyval.string).value = "?";
2608*c9ea9e7aSLionel Sambuc (yyval.string).length = 1;
2609*c9ea9e7aSLionel Sambuc }
2610*c9ea9e7aSLionel Sambuc #line 2611 "yyscript.c" /* yacc.c:1646 */
2611*c9ea9e7aSLionel Sambuc break;
2612*c9ea9e7aSLionel Sambuc
2613*c9ea9e7aSLionel Sambuc case 112:
2614*c9ea9e7aSLionel Sambuc #line 690 "yyscript.y" /* yacc.c:1646 */
2615*c9ea9e7aSLionel Sambuc { script_set_entry(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2616*c9ea9e7aSLionel Sambuc #line 2617 "yyscript.c" /* yacc.c:1646 */
2617*c9ea9e7aSLionel Sambuc break;
2618*c9ea9e7aSLionel Sambuc
2619*c9ea9e7aSLionel Sambuc case 114:
2620*c9ea9e7aSLionel Sambuc #line 693 "yyscript.y" /* yacc.c:1646 */
2621*c9ea9e7aSLionel Sambuc { script_add_assertion(closure, (yyvsp[-3].expr), (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
2622*c9ea9e7aSLionel Sambuc #line 2623 "yyscript.c" /* yacc.c:1646 */
2623*c9ea9e7aSLionel Sambuc break;
2624*c9ea9e7aSLionel Sambuc
2625*c9ea9e7aSLionel Sambuc case 115:
2626*c9ea9e7aSLionel Sambuc #line 695 "yyscript.y" /* yacc.c:1646 */
2627*c9ea9e7aSLionel Sambuc { script_include_directive(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2628*c9ea9e7aSLionel Sambuc #line 2629 "yyscript.c" /* yacc.c:1646 */
2629*c9ea9e7aSLionel Sambuc break;
2630*c9ea9e7aSLionel Sambuc
2631*c9ea9e7aSLionel Sambuc case 118:
2632*c9ea9e7aSLionel Sambuc #line 707 "yyscript.y" /* yacc.c:1646 */
2633*c9ea9e7aSLionel Sambuc { script_add_memory(closure, (yyvsp[-9].string).value, (yyvsp[-9].string).length, (yyvsp[-8].integer), (yyvsp[-4].expr), (yyvsp[0].expr)); }
2634*c9ea9e7aSLionel Sambuc #line 2635 "yyscript.c" /* yacc.c:1646 */
2635*c9ea9e7aSLionel Sambuc break;
2636*c9ea9e7aSLionel Sambuc
2637*c9ea9e7aSLionel Sambuc case 119:
2638*c9ea9e7aSLionel Sambuc #line 711 "yyscript.y" /* yacc.c:1646 */
2639*c9ea9e7aSLionel Sambuc { script_include_directive(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2640*c9ea9e7aSLionel Sambuc #line 2641 "yyscript.c" /* yacc.c:1646 */
2641*c9ea9e7aSLionel Sambuc break;
2642*c9ea9e7aSLionel Sambuc
2643*c9ea9e7aSLionel Sambuc case 121:
2644*c9ea9e7aSLionel Sambuc #line 718 "yyscript.y" /* yacc.c:1646 */
2645*c9ea9e7aSLionel Sambuc { (yyval.integer) = script_parse_memory_attr(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length, 0); }
2646*c9ea9e7aSLionel Sambuc #line 2647 "yyscript.c" /* yacc.c:1646 */
2647*c9ea9e7aSLionel Sambuc break;
2648*c9ea9e7aSLionel Sambuc
2649*c9ea9e7aSLionel Sambuc case 122:
2650*c9ea9e7aSLionel Sambuc #line 721 "yyscript.y" /* yacc.c:1646 */
2651*c9ea9e7aSLionel Sambuc { (yyval.integer) = script_parse_memory_attr(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length, 1); }
2652*c9ea9e7aSLionel Sambuc #line 2653 "yyscript.c" /* yacc.c:1646 */
2653*c9ea9e7aSLionel Sambuc break;
2654*c9ea9e7aSLionel Sambuc
2655*c9ea9e7aSLionel Sambuc case 123:
2656*c9ea9e7aSLionel Sambuc #line 723 "yyscript.y" /* yacc.c:1646 */
2657*c9ea9e7aSLionel Sambuc { (yyval.integer) = 0; }
2658*c9ea9e7aSLionel Sambuc #line 2659 "yyscript.c" /* yacc.c:1646 */
2659*c9ea9e7aSLionel Sambuc break;
2660*c9ea9e7aSLionel Sambuc
2661*c9ea9e7aSLionel Sambuc case 132:
2662*c9ea9e7aSLionel Sambuc #line 751 "yyscript.y" /* yacc.c:1646 */
2663*c9ea9e7aSLionel Sambuc { script_add_phdr(closure, (yyvsp[-3].string).value, (yyvsp[-3].string).length, (yyvsp[-2].integer), &(yyvsp[-1].phdr_info)); }
2664*c9ea9e7aSLionel Sambuc #line 2665 "yyscript.c" /* yacc.c:1646 */
2665*c9ea9e7aSLionel Sambuc break;
2666*c9ea9e7aSLionel Sambuc
2667*c9ea9e7aSLionel Sambuc case 133:
2668*c9ea9e7aSLionel Sambuc #line 760 "yyscript.y" /* yacc.c:1646 */
2669*c9ea9e7aSLionel Sambuc { (yyval.integer) = script_phdr_string_to_type(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2670*c9ea9e7aSLionel Sambuc #line 2671 "yyscript.c" /* yacc.c:1646 */
2671*c9ea9e7aSLionel Sambuc break;
2672*c9ea9e7aSLionel Sambuc
2673*c9ea9e7aSLionel Sambuc case 134:
2674*c9ea9e7aSLionel Sambuc #line 762 "yyscript.y" /* yacc.c:1646 */
2675*c9ea9e7aSLionel Sambuc { (yyval.integer) = (yyvsp[0].integer); }
2676*c9ea9e7aSLionel Sambuc #line 2677 "yyscript.c" /* yacc.c:1646 */
2677*c9ea9e7aSLionel Sambuc break;
2678*c9ea9e7aSLionel Sambuc
2679*c9ea9e7aSLionel Sambuc case 135:
2680*c9ea9e7aSLionel Sambuc #line 768 "yyscript.y" /* yacc.c:1646 */
2681*c9ea9e7aSLionel Sambuc { memset(&(yyval.phdr_info), 0, sizeof(struct Phdr_info)); }
2682*c9ea9e7aSLionel Sambuc #line 2683 "yyscript.c" /* yacc.c:1646 */
2683*c9ea9e7aSLionel Sambuc break;
2684*c9ea9e7aSLionel Sambuc
2685*c9ea9e7aSLionel Sambuc case 136:
2686*c9ea9e7aSLionel Sambuc #line 770 "yyscript.y" /* yacc.c:1646 */
2687*c9ea9e7aSLionel Sambuc {
2688*c9ea9e7aSLionel Sambuc (yyval.phdr_info) = (yyvsp[0].phdr_info);
2689*c9ea9e7aSLionel Sambuc if ((yyvsp[-1].string).length == 7 && strncmp((yyvsp[-1].string).value, "FILEHDR", 7) == 0)
2690*c9ea9e7aSLionel Sambuc (yyval.phdr_info).includes_filehdr = 1;
2691*c9ea9e7aSLionel Sambuc else
2692*c9ea9e7aSLionel Sambuc yyerror(closure, "PHDRS syntax error");
2693*c9ea9e7aSLionel Sambuc }
2694*c9ea9e7aSLionel Sambuc #line 2695 "yyscript.c" /* yacc.c:1646 */
2695*c9ea9e7aSLionel Sambuc break;
2696*c9ea9e7aSLionel Sambuc
2697*c9ea9e7aSLionel Sambuc case 137:
2698*c9ea9e7aSLionel Sambuc #line 778 "yyscript.y" /* yacc.c:1646 */
2699*c9ea9e7aSLionel Sambuc {
2700*c9ea9e7aSLionel Sambuc (yyval.phdr_info) = (yyvsp[0].phdr_info);
2701*c9ea9e7aSLionel Sambuc (yyval.phdr_info).includes_phdrs = 1;
2702*c9ea9e7aSLionel Sambuc }
2703*c9ea9e7aSLionel Sambuc #line 2704 "yyscript.c" /* yacc.c:1646 */
2704*c9ea9e7aSLionel Sambuc break;
2705*c9ea9e7aSLionel Sambuc
2706*c9ea9e7aSLionel Sambuc case 138:
2707*c9ea9e7aSLionel Sambuc #line 783 "yyscript.y" /* yacc.c:1646 */
2708*c9ea9e7aSLionel Sambuc {
2709*c9ea9e7aSLionel Sambuc (yyval.phdr_info) = (yyvsp[0].phdr_info);
2710*c9ea9e7aSLionel Sambuc if ((yyvsp[-4].string).length == 5 && strncmp((yyvsp[-4].string).value, "FLAGS", 5) == 0)
2711*c9ea9e7aSLionel Sambuc {
2712*c9ea9e7aSLionel Sambuc (yyval.phdr_info).is_flags_valid = 1;
2713*c9ea9e7aSLionel Sambuc (yyval.phdr_info).flags = (yyvsp[-2].integer);
2714*c9ea9e7aSLionel Sambuc }
2715*c9ea9e7aSLionel Sambuc else
2716*c9ea9e7aSLionel Sambuc yyerror(closure, "PHDRS syntax error");
2717*c9ea9e7aSLionel Sambuc }
2718*c9ea9e7aSLionel Sambuc #line 2719 "yyscript.c" /* yacc.c:1646 */
2719*c9ea9e7aSLionel Sambuc break;
2720*c9ea9e7aSLionel Sambuc
2721*c9ea9e7aSLionel Sambuc case 139:
2722*c9ea9e7aSLionel Sambuc #line 794 "yyscript.y" /* yacc.c:1646 */
2723*c9ea9e7aSLionel Sambuc {
2724*c9ea9e7aSLionel Sambuc (yyval.phdr_info) = (yyvsp[0].phdr_info);
2725*c9ea9e7aSLionel Sambuc (yyval.phdr_info).load_address = (yyvsp[-2].expr);
2726*c9ea9e7aSLionel Sambuc }
2727*c9ea9e7aSLionel Sambuc #line 2728 "yyscript.c" /* yacc.c:1646 */
2728*c9ea9e7aSLionel Sambuc break;
2729*c9ea9e7aSLionel Sambuc
2730*c9ea9e7aSLionel Sambuc case 140:
2731*c9ea9e7aSLionel Sambuc #line 803 "yyscript.y" /* yacc.c:1646 */
2732*c9ea9e7aSLionel Sambuc { script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, (yyvsp[0].expr), 0, 0); }
2733*c9ea9e7aSLionel Sambuc #line 2734 "yyscript.c" /* yacc.c:1646 */
2734*c9ea9e7aSLionel Sambuc break;
2735*c9ea9e7aSLionel Sambuc
2736*c9ea9e7aSLionel Sambuc case 141:
2737*c9ea9e7aSLionel Sambuc #line 805 "yyscript.y" /* yacc.c:1646 */
2738*c9ea9e7aSLionel Sambuc {
2739*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2740*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_add(s, (yyvsp[0].expr));
2741*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2742*c9ea9e7aSLionel Sambuc }
2743*c9ea9e7aSLionel Sambuc #line 2744 "yyscript.c" /* yacc.c:1646 */
2744*c9ea9e7aSLionel Sambuc break;
2745*c9ea9e7aSLionel Sambuc
2746*c9ea9e7aSLionel Sambuc case 142:
2747*c9ea9e7aSLionel Sambuc #line 811 "yyscript.y" /* yacc.c:1646 */
2748*c9ea9e7aSLionel Sambuc {
2749*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2750*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_sub(s, (yyvsp[0].expr));
2751*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2752*c9ea9e7aSLionel Sambuc }
2753*c9ea9e7aSLionel Sambuc #line 2754 "yyscript.c" /* yacc.c:1646 */
2754*c9ea9e7aSLionel Sambuc break;
2755*c9ea9e7aSLionel Sambuc
2756*c9ea9e7aSLionel Sambuc case 143:
2757*c9ea9e7aSLionel Sambuc #line 817 "yyscript.y" /* yacc.c:1646 */
2758*c9ea9e7aSLionel Sambuc {
2759*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2760*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_mult(s, (yyvsp[0].expr));
2761*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2762*c9ea9e7aSLionel Sambuc }
2763*c9ea9e7aSLionel Sambuc #line 2764 "yyscript.c" /* yacc.c:1646 */
2764*c9ea9e7aSLionel Sambuc break;
2765*c9ea9e7aSLionel Sambuc
2766*c9ea9e7aSLionel Sambuc case 144:
2767*c9ea9e7aSLionel Sambuc #line 823 "yyscript.y" /* yacc.c:1646 */
2768*c9ea9e7aSLionel Sambuc {
2769*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2770*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_div(s, (yyvsp[0].expr));
2771*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2772*c9ea9e7aSLionel Sambuc }
2773*c9ea9e7aSLionel Sambuc #line 2774 "yyscript.c" /* yacc.c:1646 */
2774*c9ea9e7aSLionel Sambuc break;
2775*c9ea9e7aSLionel Sambuc
2776*c9ea9e7aSLionel Sambuc case 145:
2777*c9ea9e7aSLionel Sambuc #line 829 "yyscript.y" /* yacc.c:1646 */
2778*c9ea9e7aSLionel Sambuc {
2779*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2780*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_lshift(s, (yyvsp[0].expr));
2781*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2782*c9ea9e7aSLionel Sambuc }
2783*c9ea9e7aSLionel Sambuc #line 2784 "yyscript.c" /* yacc.c:1646 */
2784*c9ea9e7aSLionel Sambuc break;
2785*c9ea9e7aSLionel Sambuc
2786*c9ea9e7aSLionel Sambuc case 146:
2787*c9ea9e7aSLionel Sambuc #line 835 "yyscript.y" /* yacc.c:1646 */
2788*c9ea9e7aSLionel Sambuc {
2789*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2790*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_rshift(s, (yyvsp[0].expr));
2791*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2792*c9ea9e7aSLionel Sambuc }
2793*c9ea9e7aSLionel Sambuc #line 2794 "yyscript.c" /* yacc.c:1646 */
2794*c9ea9e7aSLionel Sambuc break;
2795*c9ea9e7aSLionel Sambuc
2796*c9ea9e7aSLionel Sambuc case 147:
2797*c9ea9e7aSLionel Sambuc #line 841 "yyscript.y" /* yacc.c:1646 */
2798*c9ea9e7aSLionel Sambuc {
2799*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2800*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_bitwise_and(s, (yyvsp[0].expr));
2801*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2802*c9ea9e7aSLionel Sambuc }
2803*c9ea9e7aSLionel Sambuc #line 2804 "yyscript.c" /* yacc.c:1646 */
2804*c9ea9e7aSLionel Sambuc break;
2805*c9ea9e7aSLionel Sambuc
2806*c9ea9e7aSLionel Sambuc case 148:
2807*c9ea9e7aSLionel Sambuc #line 847 "yyscript.y" /* yacc.c:1646 */
2808*c9ea9e7aSLionel Sambuc {
2809*c9ea9e7aSLionel Sambuc Expression_ptr s = script_exp_string((yyvsp[-2].string).value, (yyvsp[-2].string).length);
2810*c9ea9e7aSLionel Sambuc Expression_ptr e = script_exp_binary_bitwise_or(s, (yyvsp[0].expr));
2811*c9ea9e7aSLionel Sambuc script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, e, 0, 0);
2812*c9ea9e7aSLionel Sambuc }
2813*c9ea9e7aSLionel Sambuc #line 2814 "yyscript.c" /* yacc.c:1646 */
2814*c9ea9e7aSLionel Sambuc break;
2815*c9ea9e7aSLionel Sambuc
2816*c9ea9e7aSLionel Sambuc case 149:
2817*c9ea9e7aSLionel Sambuc #line 853 "yyscript.y" /* yacc.c:1646 */
2818*c9ea9e7aSLionel Sambuc { script_set_symbol(closure, (yyvsp[-3].string).value, (yyvsp[-3].string).length, (yyvsp[-1].expr), 1, 0); }
2819*c9ea9e7aSLionel Sambuc #line 2820 "yyscript.c" /* yacc.c:1646 */
2820*c9ea9e7aSLionel Sambuc break;
2821*c9ea9e7aSLionel Sambuc
2822*c9ea9e7aSLionel Sambuc case 150:
2823*c9ea9e7aSLionel Sambuc #line 855 "yyscript.y" /* yacc.c:1646 */
2824*c9ea9e7aSLionel Sambuc { script_set_symbol(closure, (yyvsp[-3].string).value, (yyvsp[-3].string).length, (yyvsp[-1].expr), 1, 1); }
2825*c9ea9e7aSLionel Sambuc #line 2826 "yyscript.c" /* yacc.c:1646 */
2826*c9ea9e7aSLionel Sambuc break;
2827*c9ea9e7aSLionel Sambuc
2828*c9ea9e7aSLionel Sambuc case 151:
2829*c9ea9e7aSLionel Sambuc #line 860 "yyscript.y" /* yacc.c:1646 */
2830*c9ea9e7aSLionel Sambuc { script_push_lex_into_expression_mode(closure); }
2831*c9ea9e7aSLionel Sambuc #line 2832 "yyscript.c" /* yacc.c:1646 */
2832*c9ea9e7aSLionel Sambuc break;
2833*c9ea9e7aSLionel Sambuc
2834*c9ea9e7aSLionel Sambuc case 152:
2835*c9ea9e7aSLionel Sambuc #line 862 "yyscript.y" /* yacc.c:1646 */
2836*c9ea9e7aSLionel Sambuc {
2837*c9ea9e7aSLionel Sambuc script_pop_lex_mode(closure);
2838*c9ea9e7aSLionel Sambuc (yyval.expr) = (yyvsp[0].expr);
2839*c9ea9e7aSLionel Sambuc }
2840*c9ea9e7aSLionel Sambuc #line 2841 "yyscript.c" /* yacc.c:1646 */
2841*c9ea9e7aSLionel Sambuc break;
2842*c9ea9e7aSLionel Sambuc
2843*c9ea9e7aSLionel Sambuc case 153:
2844*c9ea9e7aSLionel Sambuc #line 871 "yyscript.y" /* yacc.c:1646 */
2845*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[-1].expr); }
2846*c9ea9e7aSLionel Sambuc #line 2847 "yyscript.c" /* yacc.c:1646 */
2847*c9ea9e7aSLionel Sambuc break;
2848*c9ea9e7aSLionel Sambuc
2849*c9ea9e7aSLionel Sambuc case 154:
2850*c9ea9e7aSLionel Sambuc #line 873 "yyscript.y" /* yacc.c:1646 */
2851*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_unary_minus((yyvsp[0].expr)); }
2852*c9ea9e7aSLionel Sambuc #line 2853 "yyscript.c" /* yacc.c:1646 */
2853*c9ea9e7aSLionel Sambuc break;
2854*c9ea9e7aSLionel Sambuc
2855*c9ea9e7aSLionel Sambuc case 155:
2856*c9ea9e7aSLionel Sambuc #line 875 "yyscript.y" /* yacc.c:1646 */
2857*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_unary_logical_not((yyvsp[0].expr)); }
2858*c9ea9e7aSLionel Sambuc #line 2859 "yyscript.c" /* yacc.c:1646 */
2859*c9ea9e7aSLionel Sambuc break;
2860*c9ea9e7aSLionel Sambuc
2861*c9ea9e7aSLionel Sambuc case 156:
2862*c9ea9e7aSLionel Sambuc #line 877 "yyscript.y" /* yacc.c:1646 */
2863*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_unary_bitwise_not((yyvsp[0].expr)); }
2864*c9ea9e7aSLionel Sambuc #line 2865 "yyscript.c" /* yacc.c:1646 */
2865*c9ea9e7aSLionel Sambuc break;
2866*c9ea9e7aSLionel Sambuc
2867*c9ea9e7aSLionel Sambuc case 157:
2868*c9ea9e7aSLionel Sambuc #line 879 "yyscript.y" /* yacc.c:1646 */
2869*c9ea9e7aSLionel Sambuc { (yyval.expr) = (yyvsp[0].expr); }
2870*c9ea9e7aSLionel Sambuc #line 2871 "yyscript.c" /* yacc.c:1646 */
2871*c9ea9e7aSLionel Sambuc break;
2872*c9ea9e7aSLionel Sambuc
2873*c9ea9e7aSLionel Sambuc case 158:
2874*c9ea9e7aSLionel Sambuc #line 881 "yyscript.y" /* yacc.c:1646 */
2875*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_mult((yyvsp[-2].expr), (yyvsp[0].expr)); }
2876*c9ea9e7aSLionel Sambuc #line 2877 "yyscript.c" /* yacc.c:1646 */
2877*c9ea9e7aSLionel Sambuc break;
2878*c9ea9e7aSLionel Sambuc
2879*c9ea9e7aSLionel Sambuc case 159:
2880*c9ea9e7aSLionel Sambuc #line 883 "yyscript.y" /* yacc.c:1646 */
2881*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_div((yyvsp[-2].expr), (yyvsp[0].expr)); }
2882*c9ea9e7aSLionel Sambuc #line 2883 "yyscript.c" /* yacc.c:1646 */
2883*c9ea9e7aSLionel Sambuc break;
2884*c9ea9e7aSLionel Sambuc
2885*c9ea9e7aSLionel Sambuc case 160:
2886*c9ea9e7aSLionel Sambuc #line 885 "yyscript.y" /* yacc.c:1646 */
2887*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_mod((yyvsp[-2].expr), (yyvsp[0].expr)); }
2888*c9ea9e7aSLionel Sambuc #line 2889 "yyscript.c" /* yacc.c:1646 */
2889*c9ea9e7aSLionel Sambuc break;
2890*c9ea9e7aSLionel Sambuc
2891*c9ea9e7aSLionel Sambuc case 161:
2892*c9ea9e7aSLionel Sambuc #line 887 "yyscript.y" /* yacc.c:1646 */
2893*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_add((yyvsp[-2].expr), (yyvsp[0].expr)); }
2894*c9ea9e7aSLionel Sambuc #line 2895 "yyscript.c" /* yacc.c:1646 */
2895*c9ea9e7aSLionel Sambuc break;
2896*c9ea9e7aSLionel Sambuc
2897*c9ea9e7aSLionel Sambuc case 162:
2898*c9ea9e7aSLionel Sambuc #line 889 "yyscript.y" /* yacc.c:1646 */
2899*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_sub((yyvsp[-2].expr), (yyvsp[0].expr)); }
2900*c9ea9e7aSLionel Sambuc #line 2901 "yyscript.c" /* yacc.c:1646 */
2901*c9ea9e7aSLionel Sambuc break;
2902*c9ea9e7aSLionel Sambuc
2903*c9ea9e7aSLionel Sambuc case 163:
2904*c9ea9e7aSLionel Sambuc #line 891 "yyscript.y" /* yacc.c:1646 */
2905*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_lshift((yyvsp[-2].expr), (yyvsp[0].expr)); }
2906*c9ea9e7aSLionel Sambuc #line 2907 "yyscript.c" /* yacc.c:1646 */
2907*c9ea9e7aSLionel Sambuc break;
2908*c9ea9e7aSLionel Sambuc
2909*c9ea9e7aSLionel Sambuc case 164:
2910*c9ea9e7aSLionel Sambuc #line 893 "yyscript.y" /* yacc.c:1646 */
2911*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_rshift((yyvsp[-2].expr), (yyvsp[0].expr)); }
2912*c9ea9e7aSLionel Sambuc #line 2913 "yyscript.c" /* yacc.c:1646 */
2913*c9ea9e7aSLionel Sambuc break;
2914*c9ea9e7aSLionel Sambuc
2915*c9ea9e7aSLionel Sambuc case 165:
2916*c9ea9e7aSLionel Sambuc #line 895 "yyscript.y" /* yacc.c:1646 */
2917*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_eq((yyvsp[-2].expr), (yyvsp[0].expr)); }
2918*c9ea9e7aSLionel Sambuc #line 2919 "yyscript.c" /* yacc.c:1646 */
2919*c9ea9e7aSLionel Sambuc break;
2920*c9ea9e7aSLionel Sambuc
2921*c9ea9e7aSLionel Sambuc case 166:
2922*c9ea9e7aSLionel Sambuc #line 897 "yyscript.y" /* yacc.c:1646 */
2923*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_ne((yyvsp[-2].expr), (yyvsp[0].expr)); }
2924*c9ea9e7aSLionel Sambuc #line 2925 "yyscript.c" /* yacc.c:1646 */
2925*c9ea9e7aSLionel Sambuc break;
2926*c9ea9e7aSLionel Sambuc
2927*c9ea9e7aSLionel Sambuc case 167:
2928*c9ea9e7aSLionel Sambuc #line 899 "yyscript.y" /* yacc.c:1646 */
2929*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_le((yyvsp[-2].expr), (yyvsp[0].expr)); }
2930*c9ea9e7aSLionel Sambuc #line 2931 "yyscript.c" /* yacc.c:1646 */
2931*c9ea9e7aSLionel Sambuc break;
2932*c9ea9e7aSLionel Sambuc
2933*c9ea9e7aSLionel Sambuc case 168:
2934*c9ea9e7aSLionel Sambuc #line 901 "yyscript.y" /* yacc.c:1646 */
2935*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_ge((yyvsp[-2].expr), (yyvsp[0].expr)); }
2936*c9ea9e7aSLionel Sambuc #line 2937 "yyscript.c" /* yacc.c:1646 */
2937*c9ea9e7aSLionel Sambuc break;
2938*c9ea9e7aSLionel Sambuc
2939*c9ea9e7aSLionel Sambuc case 169:
2940*c9ea9e7aSLionel Sambuc #line 903 "yyscript.y" /* yacc.c:1646 */
2941*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_lt((yyvsp[-2].expr), (yyvsp[0].expr)); }
2942*c9ea9e7aSLionel Sambuc #line 2943 "yyscript.c" /* yacc.c:1646 */
2943*c9ea9e7aSLionel Sambuc break;
2944*c9ea9e7aSLionel Sambuc
2945*c9ea9e7aSLionel Sambuc case 170:
2946*c9ea9e7aSLionel Sambuc #line 905 "yyscript.y" /* yacc.c:1646 */
2947*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_gt((yyvsp[-2].expr), (yyvsp[0].expr)); }
2948*c9ea9e7aSLionel Sambuc #line 2949 "yyscript.c" /* yacc.c:1646 */
2949*c9ea9e7aSLionel Sambuc break;
2950*c9ea9e7aSLionel Sambuc
2951*c9ea9e7aSLionel Sambuc case 171:
2952*c9ea9e7aSLionel Sambuc #line 907 "yyscript.y" /* yacc.c:1646 */
2953*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_bitwise_and((yyvsp[-2].expr), (yyvsp[0].expr)); }
2954*c9ea9e7aSLionel Sambuc #line 2955 "yyscript.c" /* yacc.c:1646 */
2955*c9ea9e7aSLionel Sambuc break;
2956*c9ea9e7aSLionel Sambuc
2957*c9ea9e7aSLionel Sambuc case 172:
2958*c9ea9e7aSLionel Sambuc #line 909 "yyscript.y" /* yacc.c:1646 */
2959*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_bitwise_xor((yyvsp[-2].expr), (yyvsp[0].expr)); }
2960*c9ea9e7aSLionel Sambuc #line 2961 "yyscript.c" /* yacc.c:1646 */
2961*c9ea9e7aSLionel Sambuc break;
2962*c9ea9e7aSLionel Sambuc
2963*c9ea9e7aSLionel Sambuc case 173:
2964*c9ea9e7aSLionel Sambuc #line 911 "yyscript.y" /* yacc.c:1646 */
2965*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_bitwise_or((yyvsp[-2].expr), (yyvsp[0].expr)); }
2966*c9ea9e7aSLionel Sambuc #line 2967 "yyscript.c" /* yacc.c:1646 */
2967*c9ea9e7aSLionel Sambuc break;
2968*c9ea9e7aSLionel Sambuc
2969*c9ea9e7aSLionel Sambuc case 174:
2970*c9ea9e7aSLionel Sambuc #line 913 "yyscript.y" /* yacc.c:1646 */
2971*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_logical_and((yyvsp[-2].expr), (yyvsp[0].expr)); }
2972*c9ea9e7aSLionel Sambuc #line 2973 "yyscript.c" /* yacc.c:1646 */
2973*c9ea9e7aSLionel Sambuc break;
2974*c9ea9e7aSLionel Sambuc
2975*c9ea9e7aSLionel Sambuc case 175:
2976*c9ea9e7aSLionel Sambuc #line 915 "yyscript.y" /* yacc.c:1646 */
2977*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_binary_logical_or((yyvsp[-2].expr), (yyvsp[0].expr)); }
2978*c9ea9e7aSLionel Sambuc #line 2979 "yyscript.c" /* yacc.c:1646 */
2979*c9ea9e7aSLionel Sambuc break;
2980*c9ea9e7aSLionel Sambuc
2981*c9ea9e7aSLionel Sambuc case 176:
2982*c9ea9e7aSLionel Sambuc #line 917 "yyscript.y" /* yacc.c:1646 */
2983*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_trinary_cond((yyvsp[-4].expr), (yyvsp[-2].expr), (yyvsp[0].expr)); }
2984*c9ea9e7aSLionel Sambuc #line 2985 "yyscript.c" /* yacc.c:1646 */
2985*c9ea9e7aSLionel Sambuc break;
2986*c9ea9e7aSLionel Sambuc
2987*c9ea9e7aSLionel Sambuc case 177:
2988*c9ea9e7aSLionel Sambuc #line 919 "yyscript.y" /* yacc.c:1646 */
2989*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_integer((yyvsp[0].integer)); }
2990*c9ea9e7aSLionel Sambuc #line 2991 "yyscript.c" /* yacc.c:1646 */
2991*c9ea9e7aSLionel Sambuc break;
2992*c9ea9e7aSLionel Sambuc
2993*c9ea9e7aSLionel Sambuc case 178:
2994*c9ea9e7aSLionel Sambuc #line 921 "yyscript.y" /* yacc.c:1646 */
2995*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_symbol(closure, (yyvsp[0].string).value, (yyvsp[0].string).length); }
2996*c9ea9e7aSLionel Sambuc #line 2997 "yyscript.c" /* yacc.c:1646 */
2997*c9ea9e7aSLionel Sambuc break;
2998*c9ea9e7aSLionel Sambuc
2999*c9ea9e7aSLionel Sambuc case 179:
3000*c9ea9e7aSLionel Sambuc #line 923 "yyscript.y" /* yacc.c:1646 */
3001*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_max((yyvsp[-3].expr), (yyvsp[-1].expr)); }
3002*c9ea9e7aSLionel Sambuc #line 3003 "yyscript.c" /* yacc.c:1646 */
3003*c9ea9e7aSLionel Sambuc break;
3004*c9ea9e7aSLionel Sambuc
3005*c9ea9e7aSLionel Sambuc case 180:
3006*c9ea9e7aSLionel Sambuc #line 925 "yyscript.y" /* yacc.c:1646 */
3007*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_min((yyvsp[-3].expr), (yyvsp[-1].expr)); }
3008*c9ea9e7aSLionel Sambuc #line 3009 "yyscript.c" /* yacc.c:1646 */
3009*c9ea9e7aSLionel Sambuc break;
3010*c9ea9e7aSLionel Sambuc
3011*c9ea9e7aSLionel Sambuc case 181:
3012*c9ea9e7aSLionel Sambuc #line 927 "yyscript.y" /* yacc.c:1646 */
3013*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_defined((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3014*c9ea9e7aSLionel Sambuc #line 3015 "yyscript.c" /* yacc.c:1646 */
3015*c9ea9e7aSLionel Sambuc break;
3016*c9ea9e7aSLionel Sambuc
3017*c9ea9e7aSLionel Sambuc case 182:
3018*c9ea9e7aSLionel Sambuc #line 929 "yyscript.y" /* yacc.c:1646 */
3019*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_sizeof_headers(); }
3020*c9ea9e7aSLionel Sambuc #line 3021 "yyscript.c" /* yacc.c:1646 */
3021*c9ea9e7aSLionel Sambuc break;
3022*c9ea9e7aSLionel Sambuc
3023*c9ea9e7aSLionel Sambuc case 183:
3024*c9ea9e7aSLionel Sambuc #line 931 "yyscript.y" /* yacc.c:1646 */
3025*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_alignof((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3026*c9ea9e7aSLionel Sambuc #line 3027 "yyscript.c" /* yacc.c:1646 */
3027*c9ea9e7aSLionel Sambuc break;
3028*c9ea9e7aSLionel Sambuc
3029*c9ea9e7aSLionel Sambuc case 184:
3030*c9ea9e7aSLionel Sambuc #line 933 "yyscript.y" /* yacc.c:1646 */
3031*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_sizeof((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3032*c9ea9e7aSLionel Sambuc #line 3033 "yyscript.c" /* yacc.c:1646 */
3033*c9ea9e7aSLionel Sambuc break;
3034*c9ea9e7aSLionel Sambuc
3035*c9ea9e7aSLionel Sambuc case 185:
3036*c9ea9e7aSLionel Sambuc #line 935 "yyscript.y" /* yacc.c:1646 */
3037*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_addr((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3038*c9ea9e7aSLionel Sambuc #line 3039 "yyscript.c" /* yacc.c:1646 */
3039*c9ea9e7aSLionel Sambuc break;
3040*c9ea9e7aSLionel Sambuc
3041*c9ea9e7aSLionel Sambuc case 186:
3042*c9ea9e7aSLionel Sambuc #line 937 "yyscript.y" /* yacc.c:1646 */
3043*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_loadaddr((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3044*c9ea9e7aSLionel Sambuc #line 3045 "yyscript.c" /* yacc.c:1646 */
3045*c9ea9e7aSLionel Sambuc break;
3046*c9ea9e7aSLionel Sambuc
3047*c9ea9e7aSLionel Sambuc case 187:
3048*c9ea9e7aSLionel Sambuc #line 939 "yyscript.y" /* yacc.c:1646 */
3049*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_origin(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3050*c9ea9e7aSLionel Sambuc #line 3051 "yyscript.c" /* yacc.c:1646 */
3051*c9ea9e7aSLionel Sambuc break;
3052*c9ea9e7aSLionel Sambuc
3053*c9ea9e7aSLionel Sambuc case 188:
3054*c9ea9e7aSLionel Sambuc #line 941 "yyscript.y" /* yacc.c:1646 */
3055*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_length(closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3056*c9ea9e7aSLionel Sambuc #line 3057 "yyscript.c" /* yacc.c:1646 */
3057*c9ea9e7aSLionel Sambuc break;
3058*c9ea9e7aSLionel Sambuc
3059*c9ea9e7aSLionel Sambuc case 189:
3060*c9ea9e7aSLionel Sambuc #line 943 "yyscript.y" /* yacc.c:1646 */
3061*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_constant((yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3062*c9ea9e7aSLionel Sambuc #line 3063 "yyscript.c" /* yacc.c:1646 */
3063*c9ea9e7aSLionel Sambuc break;
3064*c9ea9e7aSLionel Sambuc
3065*c9ea9e7aSLionel Sambuc case 190:
3066*c9ea9e7aSLionel Sambuc #line 945 "yyscript.y" /* yacc.c:1646 */
3067*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_absolute((yyvsp[-1].expr)); }
3068*c9ea9e7aSLionel Sambuc #line 3069 "yyscript.c" /* yacc.c:1646 */
3069*c9ea9e7aSLionel Sambuc break;
3070*c9ea9e7aSLionel Sambuc
3071*c9ea9e7aSLionel Sambuc case 191:
3072*c9ea9e7aSLionel Sambuc #line 947 "yyscript.y" /* yacc.c:1646 */
3073*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_align(script_exp_string(".", 1), (yyvsp[-1].expr)); }
3074*c9ea9e7aSLionel Sambuc #line 3075 "yyscript.c" /* yacc.c:1646 */
3075*c9ea9e7aSLionel Sambuc break;
3076*c9ea9e7aSLionel Sambuc
3077*c9ea9e7aSLionel Sambuc case 192:
3078*c9ea9e7aSLionel Sambuc #line 949 "yyscript.y" /* yacc.c:1646 */
3079*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_align((yyvsp[-3].expr), (yyvsp[-1].expr)); }
3080*c9ea9e7aSLionel Sambuc #line 3081 "yyscript.c" /* yacc.c:1646 */
3081*c9ea9e7aSLionel Sambuc break;
3082*c9ea9e7aSLionel Sambuc
3083*c9ea9e7aSLionel Sambuc case 193:
3084*c9ea9e7aSLionel Sambuc #line 951 "yyscript.y" /* yacc.c:1646 */
3085*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_align(script_exp_string(".", 1), (yyvsp[-1].expr)); }
3086*c9ea9e7aSLionel Sambuc #line 3087 "yyscript.c" /* yacc.c:1646 */
3087*c9ea9e7aSLionel Sambuc break;
3088*c9ea9e7aSLionel Sambuc
3089*c9ea9e7aSLionel Sambuc case 194:
3090*c9ea9e7aSLionel Sambuc #line 953 "yyscript.y" /* yacc.c:1646 */
3091*c9ea9e7aSLionel Sambuc {
3092*c9ea9e7aSLionel Sambuc script_data_segment_align(closure);
3093*c9ea9e7aSLionel Sambuc (yyval.expr) = script_exp_function_data_segment_align((yyvsp[-3].expr), (yyvsp[-1].expr));
3094*c9ea9e7aSLionel Sambuc }
3095*c9ea9e7aSLionel Sambuc #line 3096 "yyscript.c" /* yacc.c:1646 */
3096*c9ea9e7aSLionel Sambuc break;
3097*c9ea9e7aSLionel Sambuc
3098*c9ea9e7aSLionel Sambuc case 195:
3099*c9ea9e7aSLionel Sambuc #line 958 "yyscript.y" /* yacc.c:1646 */
3100*c9ea9e7aSLionel Sambuc {
3101*c9ea9e7aSLionel Sambuc script_data_segment_relro_end(closure);
3102*c9ea9e7aSLionel Sambuc (yyval.expr) = script_exp_function_data_segment_relro_end((yyvsp[-3].expr), (yyvsp[-1].expr));
3103*c9ea9e7aSLionel Sambuc }
3104*c9ea9e7aSLionel Sambuc #line 3105 "yyscript.c" /* yacc.c:1646 */
3105*c9ea9e7aSLionel Sambuc break;
3106*c9ea9e7aSLionel Sambuc
3107*c9ea9e7aSLionel Sambuc case 196:
3108*c9ea9e7aSLionel Sambuc #line 963 "yyscript.y" /* yacc.c:1646 */
3109*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_data_segment_end((yyvsp[-1].expr)); }
3110*c9ea9e7aSLionel Sambuc #line 3111 "yyscript.c" /* yacc.c:1646 */
3111*c9ea9e7aSLionel Sambuc break;
3112*c9ea9e7aSLionel Sambuc
3113*c9ea9e7aSLionel Sambuc case 197:
3114*c9ea9e7aSLionel Sambuc #line 965 "yyscript.y" /* yacc.c:1646 */
3115*c9ea9e7aSLionel Sambuc {
3116*c9ea9e7aSLionel Sambuc (yyval.expr) = script_exp_function_segment_start((yyvsp[-3].string).value, (yyvsp[-3].string).length, (yyvsp[-1].expr));
3117*c9ea9e7aSLionel Sambuc /* We need to take note of any SEGMENT_START expressions
3118*c9ea9e7aSLionel Sambuc because they change the behaviour of -Ttext, -Tdata and
3119*c9ea9e7aSLionel Sambuc -Tbss options. */
3120*c9ea9e7aSLionel Sambuc script_saw_segment_start_expression(closure);
3121*c9ea9e7aSLionel Sambuc }
3122*c9ea9e7aSLionel Sambuc #line 3123 "yyscript.c" /* yacc.c:1646 */
3123*c9ea9e7aSLionel Sambuc break;
3124*c9ea9e7aSLionel Sambuc
3125*c9ea9e7aSLionel Sambuc case 198:
3126*c9ea9e7aSLionel Sambuc #line 973 "yyscript.y" /* yacc.c:1646 */
3127*c9ea9e7aSLionel Sambuc { (yyval.expr) = script_exp_function_assert((yyvsp[-3].expr), (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3128*c9ea9e7aSLionel Sambuc #line 3129 "yyscript.c" /* yacc.c:1646 */
3129*c9ea9e7aSLionel Sambuc break;
3130*c9ea9e7aSLionel Sambuc
3131*c9ea9e7aSLionel Sambuc case 199:
3132*c9ea9e7aSLionel Sambuc #line 979 "yyscript.y" /* yacc.c:1646 */
3133*c9ea9e7aSLionel Sambuc { script_set_symbol(closure, (yyvsp[-2].string).value, (yyvsp[-2].string).length, (yyvsp[0].expr), 0, 0); }
3134*c9ea9e7aSLionel Sambuc #line 3135 "yyscript.c" /* yacc.c:1646 */
3135*c9ea9e7aSLionel Sambuc break;
3136*c9ea9e7aSLionel Sambuc
3137*c9ea9e7aSLionel Sambuc case 203:
3138*c9ea9e7aSLionel Sambuc #line 997 "yyscript.y" /* yacc.c:1646 */
3139*c9ea9e7aSLionel Sambuc { script_new_vers_node (closure, NULL, (yyvsp[-3].versyms)); }
3140*c9ea9e7aSLionel Sambuc #line 3141 "yyscript.c" /* yacc.c:1646 */
3141*c9ea9e7aSLionel Sambuc break;
3142*c9ea9e7aSLionel Sambuc
3143*c9ea9e7aSLionel Sambuc case 207:
3144*c9ea9e7aSLionel Sambuc #line 1012 "yyscript.y" /* yacc.c:1646 */
3145*c9ea9e7aSLionel Sambuc {
3146*c9ea9e7aSLionel Sambuc script_register_vers_node (closure, NULL, 0, (yyvsp[-2].versnode), NULL);
3147*c9ea9e7aSLionel Sambuc }
3148*c9ea9e7aSLionel Sambuc #line 3149 "yyscript.c" /* yacc.c:1646 */
3149*c9ea9e7aSLionel Sambuc break;
3150*c9ea9e7aSLionel Sambuc
3151*c9ea9e7aSLionel Sambuc case 208:
3152*c9ea9e7aSLionel Sambuc #line 1016 "yyscript.y" /* yacc.c:1646 */
3153*c9ea9e7aSLionel Sambuc {
3154*c9ea9e7aSLionel Sambuc script_register_vers_node (closure, (yyvsp[-4].string).value, (yyvsp[-4].string).length, (yyvsp[-2].versnode),
3155*c9ea9e7aSLionel Sambuc NULL);
3156*c9ea9e7aSLionel Sambuc }
3157*c9ea9e7aSLionel Sambuc #line 3158 "yyscript.c" /* yacc.c:1646 */
3158*c9ea9e7aSLionel Sambuc break;
3159*c9ea9e7aSLionel Sambuc
3160*c9ea9e7aSLionel Sambuc case 209:
3161*c9ea9e7aSLionel Sambuc #line 1021 "yyscript.y" /* yacc.c:1646 */
3162*c9ea9e7aSLionel Sambuc {
3163*c9ea9e7aSLionel Sambuc script_register_vers_node (closure, (yyvsp[-5].string).value, (yyvsp[-5].string).length, (yyvsp[-3].versnode), (yyvsp[-1].deplist));
3164*c9ea9e7aSLionel Sambuc }
3165*c9ea9e7aSLionel Sambuc #line 3166 "yyscript.c" /* yacc.c:1646 */
3166*c9ea9e7aSLionel Sambuc break;
3167*c9ea9e7aSLionel Sambuc
3168*c9ea9e7aSLionel Sambuc case 210:
3169*c9ea9e7aSLionel Sambuc #line 1028 "yyscript.y" /* yacc.c:1646 */
3170*c9ea9e7aSLionel Sambuc {
3171*c9ea9e7aSLionel Sambuc (yyval.deplist) = script_add_vers_depend (closure, NULL, (yyvsp[0].string).value, (yyvsp[0].string).length);
3172*c9ea9e7aSLionel Sambuc }
3173*c9ea9e7aSLionel Sambuc #line 3174 "yyscript.c" /* yacc.c:1646 */
3174*c9ea9e7aSLionel Sambuc break;
3175*c9ea9e7aSLionel Sambuc
3176*c9ea9e7aSLionel Sambuc case 211:
3177*c9ea9e7aSLionel Sambuc #line 1032 "yyscript.y" /* yacc.c:1646 */
3178*c9ea9e7aSLionel Sambuc {
3179*c9ea9e7aSLionel Sambuc (yyval.deplist) = script_add_vers_depend (closure, (yyvsp[-1].deplist), (yyvsp[0].string).value, (yyvsp[0].string).length);
3180*c9ea9e7aSLionel Sambuc }
3181*c9ea9e7aSLionel Sambuc #line 3182 "yyscript.c" /* yacc.c:1646 */
3182*c9ea9e7aSLionel Sambuc break;
3183*c9ea9e7aSLionel Sambuc
3184*c9ea9e7aSLionel Sambuc case 212:
3185*c9ea9e7aSLionel Sambuc #line 1039 "yyscript.y" /* yacc.c:1646 */
3186*c9ea9e7aSLionel Sambuc { (yyval.versnode) = script_new_vers_node (closure, NULL, NULL); }
3187*c9ea9e7aSLionel Sambuc #line 3188 "yyscript.c" /* yacc.c:1646 */
3188*c9ea9e7aSLionel Sambuc break;
3189*c9ea9e7aSLionel Sambuc
3190*c9ea9e7aSLionel Sambuc case 213:
3191*c9ea9e7aSLionel Sambuc #line 1041 "yyscript.y" /* yacc.c:1646 */
3192*c9ea9e7aSLionel Sambuc { (yyval.versnode) = script_new_vers_node (closure, (yyvsp[-1].versyms), NULL); }
3193*c9ea9e7aSLionel Sambuc #line 3194 "yyscript.c" /* yacc.c:1646 */
3194*c9ea9e7aSLionel Sambuc break;
3195*c9ea9e7aSLionel Sambuc
3196*c9ea9e7aSLionel Sambuc case 214:
3197*c9ea9e7aSLionel Sambuc #line 1043 "yyscript.y" /* yacc.c:1646 */
3198*c9ea9e7aSLionel Sambuc { (yyval.versnode) = script_new_vers_node (closure, (yyvsp[-1].versyms), NULL); }
3199*c9ea9e7aSLionel Sambuc #line 3200 "yyscript.c" /* yacc.c:1646 */
3200*c9ea9e7aSLionel Sambuc break;
3201*c9ea9e7aSLionel Sambuc
3202*c9ea9e7aSLionel Sambuc case 215:
3203*c9ea9e7aSLionel Sambuc #line 1045 "yyscript.y" /* yacc.c:1646 */
3204*c9ea9e7aSLionel Sambuc { (yyval.versnode) = script_new_vers_node (closure, NULL, (yyvsp[-1].versyms)); }
3205*c9ea9e7aSLionel Sambuc #line 3206 "yyscript.c" /* yacc.c:1646 */
3206*c9ea9e7aSLionel Sambuc break;
3207*c9ea9e7aSLionel Sambuc
3208*c9ea9e7aSLionel Sambuc case 216:
3209*c9ea9e7aSLionel Sambuc #line 1047 "yyscript.y" /* yacc.c:1646 */
3210*c9ea9e7aSLionel Sambuc { (yyval.versnode) = script_new_vers_node (closure, (yyvsp[-5].versyms), (yyvsp[-1].versyms)); }
3211*c9ea9e7aSLionel Sambuc #line 3212 "yyscript.c" /* yacc.c:1646 */
3212*c9ea9e7aSLionel Sambuc break;
3213*c9ea9e7aSLionel Sambuc
3214*c9ea9e7aSLionel Sambuc case 217:
3215*c9ea9e7aSLionel Sambuc #line 1056 "yyscript.y" /* yacc.c:1646 */
3216*c9ea9e7aSLionel Sambuc {
3217*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, NULL, (yyvsp[0].string).value,
3218*c9ea9e7aSLionel Sambuc (yyvsp[0].string).length, 0);
3219*c9ea9e7aSLionel Sambuc }
3220*c9ea9e7aSLionel Sambuc #line 3221 "yyscript.c" /* yacc.c:1646 */
3221*c9ea9e7aSLionel Sambuc break;
3222*c9ea9e7aSLionel Sambuc
3223*c9ea9e7aSLionel Sambuc case 218:
3224*c9ea9e7aSLionel Sambuc #line 1061 "yyscript.y" /* yacc.c:1646 */
3225*c9ea9e7aSLionel Sambuc {
3226*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, NULL, (yyvsp[0].string).value,
3227*c9ea9e7aSLionel Sambuc (yyvsp[0].string).length, 1);
3228*c9ea9e7aSLionel Sambuc }
3229*c9ea9e7aSLionel Sambuc #line 3230 "yyscript.c" /* yacc.c:1646 */
3230*c9ea9e7aSLionel Sambuc break;
3231*c9ea9e7aSLionel Sambuc
3232*c9ea9e7aSLionel Sambuc case 219:
3233*c9ea9e7aSLionel Sambuc #line 1066 "yyscript.y" /* yacc.c:1646 */
3234*c9ea9e7aSLionel Sambuc {
3235*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, (yyvsp[-2].versyms), (yyvsp[0].string).value,
3236*c9ea9e7aSLionel Sambuc (yyvsp[0].string).length, 0);
3237*c9ea9e7aSLionel Sambuc }
3238*c9ea9e7aSLionel Sambuc #line 3239 "yyscript.c" /* yacc.c:1646 */
3239*c9ea9e7aSLionel Sambuc break;
3240*c9ea9e7aSLionel Sambuc
3241*c9ea9e7aSLionel Sambuc case 220:
3242*c9ea9e7aSLionel Sambuc #line 1071 "yyscript.y" /* yacc.c:1646 */
3243*c9ea9e7aSLionel Sambuc {
3244*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, (yyvsp[-2].versyms), (yyvsp[0].string).value,
3245*c9ea9e7aSLionel Sambuc (yyvsp[0].string).length, 1);
3246*c9ea9e7aSLionel Sambuc }
3247*c9ea9e7aSLionel Sambuc #line 3248 "yyscript.c" /* yacc.c:1646 */
3248*c9ea9e7aSLionel Sambuc break;
3249*c9ea9e7aSLionel Sambuc
3250*c9ea9e7aSLionel Sambuc case 221:
3251*c9ea9e7aSLionel Sambuc #line 1077 "yyscript.y" /* yacc.c:1646 */
3252*c9ea9e7aSLionel Sambuc { version_script_push_lang (closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3253*c9ea9e7aSLionel Sambuc #line 3254 "yyscript.c" /* yacc.c:1646 */
3254*c9ea9e7aSLionel Sambuc break;
3255*c9ea9e7aSLionel Sambuc
3256*c9ea9e7aSLionel Sambuc case 222:
3257*c9ea9e7aSLionel Sambuc #line 1079 "yyscript.y" /* yacc.c:1646 */
3258*c9ea9e7aSLionel Sambuc {
3259*c9ea9e7aSLionel Sambuc (yyval.versyms) = (yyvsp[-2].versyms);
3260*c9ea9e7aSLionel Sambuc version_script_pop_lang(closure);
3261*c9ea9e7aSLionel Sambuc }
3262*c9ea9e7aSLionel Sambuc #line 3263 "yyscript.c" /* yacc.c:1646 */
3263*c9ea9e7aSLionel Sambuc break;
3264*c9ea9e7aSLionel Sambuc
3265*c9ea9e7aSLionel Sambuc case 223:
3266*c9ea9e7aSLionel Sambuc #line 1087 "yyscript.y" /* yacc.c:1646 */
3267*c9ea9e7aSLionel Sambuc { version_script_push_lang (closure, (yyvsp[-1].string).value, (yyvsp[-1].string).length); }
3268*c9ea9e7aSLionel Sambuc #line 3269 "yyscript.c" /* yacc.c:1646 */
3269*c9ea9e7aSLionel Sambuc break;
3270*c9ea9e7aSLionel Sambuc
3271*c9ea9e7aSLionel Sambuc case 224:
3272*c9ea9e7aSLionel Sambuc #line 1089 "yyscript.y" /* yacc.c:1646 */
3273*c9ea9e7aSLionel Sambuc {
3274*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_merge_expressions ((yyvsp[-8].versyms), (yyvsp[-2].versyms));
3275*c9ea9e7aSLionel Sambuc version_script_pop_lang(closure);
3276*c9ea9e7aSLionel Sambuc }
3277*c9ea9e7aSLionel Sambuc #line 3278 "yyscript.c" /* yacc.c:1646 */
3278*c9ea9e7aSLionel Sambuc break;
3279*c9ea9e7aSLionel Sambuc
3280*c9ea9e7aSLionel Sambuc case 225:
3281*c9ea9e7aSLionel Sambuc #line 1094 "yyscript.y" /* yacc.c:1646 */
3282*c9ea9e7aSLionel Sambuc {
3283*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, NULL, "extern",
3284*c9ea9e7aSLionel Sambuc sizeof("extern") - 1, 1);
3285*c9ea9e7aSLionel Sambuc }
3286*c9ea9e7aSLionel Sambuc #line 3287 "yyscript.c" /* yacc.c:1646 */
3287*c9ea9e7aSLionel Sambuc break;
3288*c9ea9e7aSLionel Sambuc
3289*c9ea9e7aSLionel Sambuc case 226:
3290*c9ea9e7aSLionel Sambuc #line 1099 "yyscript.y" /* yacc.c:1646 */
3291*c9ea9e7aSLionel Sambuc {
3292*c9ea9e7aSLionel Sambuc (yyval.versyms) = script_new_vers_pattern (closure, (yyvsp[-2].versyms), "extern",
3293*c9ea9e7aSLionel Sambuc sizeof("extern") - 1, 1);
3294*c9ea9e7aSLionel Sambuc }
3295*c9ea9e7aSLionel Sambuc #line 3296 "yyscript.c" /* yacc.c:1646 */
3296*c9ea9e7aSLionel Sambuc break;
3297*c9ea9e7aSLionel Sambuc
3298*c9ea9e7aSLionel Sambuc case 227:
3299*c9ea9e7aSLionel Sambuc #line 1109 "yyscript.y" /* yacc.c:1646 */
3300*c9ea9e7aSLionel Sambuc { (yyval.string) = (yyvsp[0].string); }
3301*c9ea9e7aSLionel Sambuc #line 3302 "yyscript.c" /* yacc.c:1646 */
3302*c9ea9e7aSLionel Sambuc break;
3303*c9ea9e7aSLionel Sambuc
3304*c9ea9e7aSLionel Sambuc case 228:
3305*c9ea9e7aSLionel Sambuc #line 1111 "yyscript.y" /* yacc.c:1646 */
3306*c9ea9e7aSLionel Sambuc { (yyval.string) = (yyvsp[0].string); }
3307*c9ea9e7aSLionel Sambuc #line 3308 "yyscript.c" /* yacc.c:1646 */
3308*c9ea9e7aSLionel Sambuc break;
3309*c9ea9e7aSLionel Sambuc
3310*c9ea9e7aSLionel Sambuc
3311*c9ea9e7aSLionel Sambuc #line 3312 "yyscript.c" /* yacc.c:1646 */
3312*c9ea9e7aSLionel Sambuc default: break;
3313*c9ea9e7aSLionel Sambuc }
3314*c9ea9e7aSLionel Sambuc /* User semantic actions sometimes alter yychar, and that requires
3315*c9ea9e7aSLionel Sambuc that yytoken be updated with the new translation. We take the
3316*c9ea9e7aSLionel Sambuc approach of translating immediately before every use of yytoken.
3317*c9ea9e7aSLionel Sambuc One alternative is translating here after every semantic action,
3318*c9ea9e7aSLionel Sambuc but that translation would be missed if the semantic action invokes
3319*c9ea9e7aSLionel Sambuc YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
3320*c9ea9e7aSLionel Sambuc if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
3321*c9ea9e7aSLionel Sambuc incorrect destructor might then be invoked immediately. In the
3322*c9ea9e7aSLionel Sambuc case of YYERROR or YYBACKUP, subsequent parser actions might lead
3323*c9ea9e7aSLionel Sambuc to an incorrect destructor call or verbose syntax error message
3324*c9ea9e7aSLionel Sambuc before the lookahead is translated. */
3325*c9ea9e7aSLionel Sambuc YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
3326*c9ea9e7aSLionel Sambuc
3327*c9ea9e7aSLionel Sambuc YYPOPSTACK (yylen);
3328*c9ea9e7aSLionel Sambuc yylen = 0;
3329*c9ea9e7aSLionel Sambuc YY_STACK_PRINT (yyss, yyssp);
3330*c9ea9e7aSLionel Sambuc
3331*c9ea9e7aSLionel Sambuc *++yyvsp = yyval;
3332*c9ea9e7aSLionel Sambuc
3333*c9ea9e7aSLionel Sambuc /* Now 'shift' the result of the reduction. Determine what state
3334*c9ea9e7aSLionel Sambuc that goes to, based on the state we popped back to and the rule
3335*c9ea9e7aSLionel Sambuc number reduced by. */
3336*c9ea9e7aSLionel Sambuc
3337*c9ea9e7aSLionel Sambuc yyn = yyr1[yyn];
3338*c9ea9e7aSLionel Sambuc
3339*c9ea9e7aSLionel Sambuc yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
3340*c9ea9e7aSLionel Sambuc if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
3341*c9ea9e7aSLionel Sambuc yystate = yytable[yystate];
3342*c9ea9e7aSLionel Sambuc else
3343*c9ea9e7aSLionel Sambuc yystate = yydefgoto[yyn - YYNTOKENS];
3344*c9ea9e7aSLionel Sambuc
3345*c9ea9e7aSLionel Sambuc goto yynewstate;
3346*c9ea9e7aSLionel Sambuc
3347*c9ea9e7aSLionel Sambuc
3348*c9ea9e7aSLionel Sambuc /*--------------------------------------.
3349*c9ea9e7aSLionel Sambuc | yyerrlab -- here on detecting error. |
3350*c9ea9e7aSLionel Sambuc `--------------------------------------*/
3351*c9ea9e7aSLionel Sambuc yyerrlab:
3352*c9ea9e7aSLionel Sambuc /* Make sure we have latest lookahead translation. See comments at
3353*c9ea9e7aSLionel Sambuc user semantic actions for why this is necessary. */
3354*c9ea9e7aSLionel Sambuc yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
3355*c9ea9e7aSLionel Sambuc
3356*c9ea9e7aSLionel Sambuc /* If not already recovering from an error, report this error. */
3357*c9ea9e7aSLionel Sambuc if (!yyerrstatus)
3358*c9ea9e7aSLionel Sambuc {
3359*c9ea9e7aSLionel Sambuc ++yynerrs;
3360*c9ea9e7aSLionel Sambuc #if ! YYERROR_VERBOSE
3361*c9ea9e7aSLionel Sambuc yyerror (closure, YY_("syntax error"));
3362*c9ea9e7aSLionel Sambuc #else
3363*c9ea9e7aSLionel Sambuc # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
3364*c9ea9e7aSLionel Sambuc yyssp, yytoken)
3365*c9ea9e7aSLionel Sambuc {
3366*c9ea9e7aSLionel Sambuc char const *yymsgp = YY_("syntax error");
3367*c9ea9e7aSLionel Sambuc int yysyntax_error_status;
3368*c9ea9e7aSLionel Sambuc yysyntax_error_status = YYSYNTAX_ERROR;
3369*c9ea9e7aSLionel Sambuc if (yysyntax_error_status == 0)
3370*c9ea9e7aSLionel Sambuc yymsgp = yymsg;
3371*c9ea9e7aSLionel Sambuc else if (yysyntax_error_status == 1)
3372*c9ea9e7aSLionel Sambuc {
3373*c9ea9e7aSLionel Sambuc if (yymsg != yymsgbuf)
3374*c9ea9e7aSLionel Sambuc YYSTACK_FREE (yymsg);
3375*c9ea9e7aSLionel Sambuc yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
3376*c9ea9e7aSLionel Sambuc if (!yymsg)
3377*c9ea9e7aSLionel Sambuc {
3378*c9ea9e7aSLionel Sambuc yymsg = yymsgbuf;
3379*c9ea9e7aSLionel Sambuc yymsg_alloc = sizeof yymsgbuf;
3380*c9ea9e7aSLionel Sambuc yysyntax_error_status = 2;
3381*c9ea9e7aSLionel Sambuc }
3382*c9ea9e7aSLionel Sambuc else
3383*c9ea9e7aSLionel Sambuc {
3384*c9ea9e7aSLionel Sambuc yysyntax_error_status = YYSYNTAX_ERROR;
3385*c9ea9e7aSLionel Sambuc yymsgp = yymsg;
3386*c9ea9e7aSLionel Sambuc }
3387*c9ea9e7aSLionel Sambuc }
3388*c9ea9e7aSLionel Sambuc yyerror (closure, yymsgp);
3389*c9ea9e7aSLionel Sambuc if (yysyntax_error_status == 2)
3390*c9ea9e7aSLionel Sambuc goto yyexhaustedlab;
3391*c9ea9e7aSLionel Sambuc }
3392*c9ea9e7aSLionel Sambuc # undef YYSYNTAX_ERROR
3393*c9ea9e7aSLionel Sambuc #endif
3394*c9ea9e7aSLionel Sambuc }
3395*c9ea9e7aSLionel Sambuc
3396*c9ea9e7aSLionel Sambuc
3397*c9ea9e7aSLionel Sambuc
3398*c9ea9e7aSLionel Sambuc if (yyerrstatus == 3)
3399*c9ea9e7aSLionel Sambuc {
3400*c9ea9e7aSLionel Sambuc /* If just tried and failed to reuse lookahead token after an
3401*c9ea9e7aSLionel Sambuc error, discard it. */
3402*c9ea9e7aSLionel Sambuc
3403*c9ea9e7aSLionel Sambuc if (yychar <= YYEOF)
3404*c9ea9e7aSLionel Sambuc {
3405*c9ea9e7aSLionel Sambuc /* Return failure if at end of input. */
3406*c9ea9e7aSLionel Sambuc if (yychar == YYEOF)
3407*c9ea9e7aSLionel Sambuc YYABORT;
3408*c9ea9e7aSLionel Sambuc }
3409*c9ea9e7aSLionel Sambuc else
3410*c9ea9e7aSLionel Sambuc {
3411*c9ea9e7aSLionel Sambuc yydestruct ("Error: discarding",
3412*c9ea9e7aSLionel Sambuc yytoken, &yylval, closure);
3413*c9ea9e7aSLionel Sambuc yychar = YYEMPTY;
3414*c9ea9e7aSLionel Sambuc }
3415*c9ea9e7aSLionel Sambuc }
3416*c9ea9e7aSLionel Sambuc
3417*c9ea9e7aSLionel Sambuc /* Else will try to reuse lookahead token after shifting the error
3418*c9ea9e7aSLionel Sambuc token. */
3419*c9ea9e7aSLionel Sambuc goto yyerrlab1;
3420*c9ea9e7aSLionel Sambuc
3421*c9ea9e7aSLionel Sambuc
3422*c9ea9e7aSLionel Sambuc /*---------------------------------------------------.
3423*c9ea9e7aSLionel Sambuc | yyerrorlab -- error raised explicitly by YYERROR. |
3424*c9ea9e7aSLionel Sambuc `---------------------------------------------------*/
3425*c9ea9e7aSLionel Sambuc yyerrorlab:
3426*c9ea9e7aSLionel Sambuc
3427*c9ea9e7aSLionel Sambuc /* Pacify compilers like GCC when the user code never invokes
3428*c9ea9e7aSLionel Sambuc YYERROR and the label yyerrorlab therefore never appears in user
3429*c9ea9e7aSLionel Sambuc code. */
3430*c9ea9e7aSLionel Sambuc if (/*CONSTCOND*/ 0)
3431*c9ea9e7aSLionel Sambuc goto yyerrorlab;
3432*c9ea9e7aSLionel Sambuc
3433*c9ea9e7aSLionel Sambuc /* Do not reclaim the symbols of the rule whose action triggered
3434*c9ea9e7aSLionel Sambuc this YYERROR. */
3435*c9ea9e7aSLionel Sambuc YYPOPSTACK (yylen);
3436*c9ea9e7aSLionel Sambuc yylen = 0;
3437*c9ea9e7aSLionel Sambuc YY_STACK_PRINT (yyss, yyssp);
3438*c9ea9e7aSLionel Sambuc yystate = *yyssp;
3439*c9ea9e7aSLionel Sambuc goto yyerrlab1;
3440*c9ea9e7aSLionel Sambuc
3441*c9ea9e7aSLionel Sambuc
3442*c9ea9e7aSLionel Sambuc /*-------------------------------------------------------------.
3443*c9ea9e7aSLionel Sambuc | yyerrlab1 -- common code for both syntax error and YYERROR. |
3444*c9ea9e7aSLionel Sambuc `-------------------------------------------------------------*/
3445*c9ea9e7aSLionel Sambuc yyerrlab1:
3446*c9ea9e7aSLionel Sambuc yyerrstatus = 3; /* Each real token shifted decrements this. */
3447*c9ea9e7aSLionel Sambuc
3448*c9ea9e7aSLionel Sambuc for (;;)
3449*c9ea9e7aSLionel Sambuc {
3450*c9ea9e7aSLionel Sambuc yyn = yypact[yystate];
3451*c9ea9e7aSLionel Sambuc if (!yypact_value_is_default (yyn))
3452*c9ea9e7aSLionel Sambuc {
3453*c9ea9e7aSLionel Sambuc yyn += YYTERROR;
3454*c9ea9e7aSLionel Sambuc if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
3455*c9ea9e7aSLionel Sambuc {
3456*c9ea9e7aSLionel Sambuc yyn = yytable[yyn];
3457*c9ea9e7aSLionel Sambuc if (0 < yyn)
3458*c9ea9e7aSLionel Sambuc break;
3459*c9ea9e7aSLionel Sambuc }
3460*c9ea9e7aSLionel Sambuc }
3461*c9ea9e7aSLionel Sambuc
3462*c9ea9e7aSLionel Sambuc /* Pop the current state because it cannot handle the error token. */
3463*c9ea9e7aSLionel Sambuc if (yyssp == yyss)
3464*c9ea9e7aSLionel Sambuc YYABORT;
3465*c9ea9e7aSLionel Sambuc
3466*c9ea9e7aSLionel Sambuc
3467*c9ea9e7aSLionel Sambuc yydestruct ("Error: popping",
3468*c9ea9e7aSLionel Sambuc yystos[yystate], yyvsp, closure);
3469*c9ea9e7aSLionel Sambuc YYPOPSTACK (1);
3470*c9ea9e7aSLionel Sambuc yystate = *yyssp;
3471*c9ea9e7aSLionel Sambuc YY_STACK_PRINT (yyss, yyssp);
3472*c9ea9e7aSLionel Sambuc }
3473*c9ea9e7aSLionel Sambuc
3474*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
3475*c9ea9e7aSLionel Sambuc *++yyvsp = yylval;
3476*c9ea9e7aSLionel Sambuc YY_IGNORE_MAYBE_UNINITIALIZED_END
3477*c9ea9e7aSLionel Sambuc
3478*c9ea9e7aSLionel Sambuc
3479*c9ea9e7aSLionel Sambuc /* Shift the error token. */
3480*c9ea9e7aSLionel Sambuc YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
3481*c9ea9e7aSLionel Sambuc
3482*c9ea9e7aSLionel Sambuc yystate = yyn;
3483*c9ea9e7aSLionel Sambuc goto yynewstate;
3484*c9ea9e7aSLionel Sambuc
3485*c9ea9e7aSLionel Sambuc
3486*c9ea9e7aSLionel Sambuc /*-------------------------------------.
3487*c9ea9e7aSLionel Sambuc | yyacceptlab -- YYACCEPT comes here. |
3488*c9ea9e7aSLionel Sambuc `-------------------------------------*/
3489*c9ea9e7aSLionel Sambuc yyacceptlab:
3490*c9ea9e7aSLionel Sambuc yyresult = 0;
3491*c9ea9e7aSLionel Sambuc goto yyreturn;
3492*c9ea9e7aSLionel Sambuc
3493*c9ea9e7aSLionel Sambuc /*-----------------------------------.
3494*c9ea9e7aSLionel Sambuc | yyabortlab -- YYABORT comes here. |
3495*c9ea9e7aSLionel Sambuc `-----------------------------------*/
3496*c9ea9e7aSLionel Sambuc yyabortlab:
3497*c9ea9e7aSLionel Sambuc yyresult = 1;
3498*c9ea9e7aSLionel Sambuc goto yyreturn;
3499*c9ea9e7aSLionel Sambuc
3500*c9ea9e7aSLionel Sambuc #if !defined yyoverflow || YYERROR_VERBOSE
3501*c9ea9e7aSLionel Sambuc /*-------------------------------------------------.
3502*c9ea9e7aSLionel Sambuc | yyexhaustedlab -- memory exhaustion comes here. |
3503*c9ea9e7aSLionel Sambuc `-------------------------------------------------*/
3504*c9ea9e7aSLionel Sambuc yyexhaustedlab:
3505*c9ea9e7aSLionel Sambuc yyerror (closure, YY_("memory exhausted"));
3506*c9ea9e7aSLionel Sambuc yyresult = 2;
3507*c9ea9e7aSLionel Sambuc /* Fall through. */
3508*c9ea9e7aSLionel Sambuc #endif
3509*c9ea9e7aSLionel Sambuc
3510*c9ea9e7aSLionel Sambuc yyreturn:
3511*c9ea9e7aSLionel Sambuc if (yychar != YYEMPTY)
3512*c9ea9e7aSLionel Sambuc {
3513*c9ea9e7aSLionel Sambuc /* Make sure we have latest lookahead translation. See comments at
3514*c9ea9e7aSLionel Sambuc user semantic actions for why this is necessary. */
3515*c9ea9e7aSLionel Sambuc yytoken = YYTRANSLATE (yychar);
3516*c9ea9e7aSLionel Sambuc yydestruct ("Cleanup: discarding lookahead",
3517*c9ea9e7aSLionel Sambuc yytoken, &yylval, closure);
3518*c9ea9e7aSLionel Sambuc }
3519*c9ea9e7aSLionel Sambuc /* Do not reclaim the symbols of the rule whose action triggered
3520*c9ea9e7aSLionel Sambuc this YYABORT or YYACCEPT. */
3521*c9ea9e7aSLionel Sambuc YYPOPSTACK (yylen);
3522*c9ea9e7aSLionel Sambuc YY_STACK_PRINT (yyss, yyssp);
3523*c9ea9e7aSLionel Sambuc while (yyssp != yyss)
3524*c9ea9e7aSLionel Sambuc {
3525*c9ea9e7aSLionel Sambuc yydestruct ("Cleanup: popping",
3526*c9ea9e7aSLionel Sambuc yystos[*yyssp], yyvsp, closure);
3527*c9ea9e7aSLionel Sambuc YYPOPSTACK (1);
3528*c9ea9e7aSLionel Sambuc }
3529*c9ea9e7aSLionel Sambuc #ifndef yyoverflow
3530*c9ea9e7aSLionel Sambuc if (yyss != yyssa)
3531*c9ea9e7aSLionel Sambuc YYSTACK_FREE (yyss);
3532*c9ea9e7aSLionel Sambuc #endif
3533*c9ea9e7aSLionel Sambuc #if YYERROR_VERBOSE
3534*c9ea9e7aSLionel Sambuc if (yymsg != yymsgbuf)
3535*c9ea9e7aSLionel Sambuc YYSTACK_FREE (yymsg);
3536*c9ea9e7aSLionel Sambuc #endif
3537*c9ea9e7aSLionel Sambuc return yyresult;
3538*c9ea9e7aSLionel Sambuc }
3539*c9ea9e7aSLionel Sambuc #line 1133 "yyscript.y" /* yacc.c:1906 */
3540*c9ea9e7aSLionel Sambuc
3541