xref: /netbsd-src/external/gpl3/binutils.old/dist/binutils/rcparse.h (revision e992f068c547fd6e84b3f104dc2340adcc955732)
1 /* A Bison parser, made by GNU Bison 3.8.2.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6    Inc.
7 
8    This program is free software: you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation, either version 3 of the License, or
11    (at your option) any later version.
12 
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17 
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
20 
21 /* As a special exception, you may create a larger work that contains
22    part or all of the Bison parser skeleton and distribute that work
23    under terms of your choice, so long as that work isn't itself a
24    parser generator using the skeleton or a modified version thereof
25    as a parser skeleton.  Alternatively, if you modify or redistribute
26    the parser skeleton itself, you may (at your option) remove this
27    special exception, which will cause the skeleton and the resulting
28    Bison output files to be licensed under the GNU General Public
29    License without this special exception.
30 
31    This special exception was added by the Free Software Foundation in
32    version 2.2 of Bison.  */
33 
34 /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
35    especially those whose name start with YY_ or yy_.  They are
36    private implementation details that can be changed or removed.  */
37 
38 #ifndef YY_YY_RCPARSE_H_INCLUDED
39 # define YY_YY_RCPARSE_H_INCLUDED
40 /* Debug traces.  */
41 #ifndef YYDEBUG
42 # define YYDEBUG 0
43 #endif
44 #if YYDEBUG
45 extern int yydebug;
46 #endif
47 
48 /* Token kinds.  */
49 #ifndef YYTOKENTYPE
50 # define YYTOKENTYPE
51   enum yytokentype
52   {
53     YYEMPTY = -2,
54     YYEOF = 0,                     /* "end of file"  */
55     YYerror = 256,                 /* error  */
56     YYUNDEF = 257,                 /* "invalid token"  */
57     BEG = 258,                     /* BEG  */
58     END = 259,                     /* END  */
59     ACCELERATORS = 260,            /* ACCELERATORS  */
60     VIRTKEY = 261,                 /* VIRTKEY  */
61     ASCII = 262,                   /* ASCII  */
62     NOINVERT = 263,                /* NOINVERT  */
63     SHIFT = 264,                   /* SHIFT  */
64     CONTROL = 265,                 /* CONTROL  */
65     ALT = 266,                     /* ALT  */
66     BITMAP = 267,                  /* BITMAP  */
67     CURSOR = 268,                  /* CURSOR  */
68     DIALOG = 269,                  /* DIALOG  */
69     DIALOGEX = 270,                /* DIALOGEX  */
70     EXSTYLE = 271,                 /* EXSTYLE  */
71     CAPTION = 272,                 /* CAPTION  */
72     CLASS = 273,                   /* CLASS  */
73     STYLE = 274,                   /* STYLE  */
74     AUTO3STATE = 275,              /* AUTO3STATE  */
75     AUTOCHECKBOX = 276,            /* AUTOCHECKBOX  */
76     AUTORADIOBUTTON = 277,         /* AUTORADIOBUTTON  */
77     CHECKBOX = 278,                /* CHECKBOX  */
78     COMBOBOX = 279,                /* COMBOBOX  */
79     CTEXT = 280,                   /* CTEXT  */
80     DEFPUSHBUTTON = 281,           /* DEFPUSHBUTTON  */
81     EDITTEXT = 282,                /* EDITTEXT  */
82     GROUPBOX = 283,                /* GROUPBOX  */
83     LISTBOX = 284,                 /* LISTBOX  */
84     LTEXT = 285,                   /* LTEXT  */
85     PUSHBOX = 286,                 /* PUSHBOX  */
86     PUSHBUTTON = 287,              /* PUSHBUTTON  */
87     RADIOBUTTON = 288,             /* RADIOBUTTON  */
88     RTEXT = 289,                   /* RTEXT  */
89     SCROLLBAR = 290,               /* SCROLLBAR  */
90     STATE3 = 291,                  /* STATE3  */
91     USERBUTTON = 292,              /* USERBUTTON  */
92     BEDIT = 293,                   /* BEDIT  */
93     HEDIT = 294,                   /* HEDIT  */
94     IEDIT = 295,                   /* IEDIT  */
95     FONT = 296,                    /* FONT  */
96     ICON = 297,                    /* ICON  */
97     ANICURSOR = 298,               /* ANICURSOR  */
98     ANIICON = 299,                 /* ANIICON  */
99     DLGINCLUDE = 300,              /* DLGINCLUDE  */
100     DLGINIT = 301,                 /* DLGINIT  */
101     FONTDIR = 302,                 /* FONTDIR  */
102     HTML = 303,                    /* HTML  */
103     MANIFEST = 304,                /* MANIFEST  */
104     PLUGPLAY = 305,                /* PLUGPLAY  */
105     VXD = 306,                     /* VXD  */
106     TOOLBAR = 307,                 /* TOOLBAR  */
107     BUTTON = 308,                  /* BUTTON  */
108     LANGUAGE = 309,                /* LANGUAGE  */
109     CHARACTERISTICS = 310,         /* CHARACTERISTICS  */
110     VERSIONK = 311,                /* VERSIONK  */
111     MENU = 312,                    /* MENU  */
112     MENUEX = 313,                  /* MENUEX  */
113     MENUITEM = 314,                /* MENUITEM  */
114     SEPARATOR = 315,               /* SEPARATOR  */
115     POPUP = 316,                   /* POPUP  */
116     CHECKED = 317,                 /* CHECKED  */
117     GRAYED = 318,                  /* GRAYED  */
118     HELP = 319,                    /* HELP  */
119     INACTIVE = 320,                /* INACTIVE  */
120     OWNERDRAW = 321,               /* OWNERDRAW  */
121     MENUBARBREAK = 322,            /* MENUBARBREAK  */
122     MENUBREAK = 323,               /* MENUBREAK  */
123     MESSAGETABLE = 324,            /* MESSAGETABLE  */
124     RCDATA = 325,                  /* RCDATA  */
125     STRINGTABLE = 326,             /* STRINGTABLE  */
126     VERSIONINFO = 327,             /* VERSIONINFO  */
127     FILEVERSION = 328,             /* FILEVERSION  */
128     PRODUCTVERSION = 329,          /* PRODUCTVERSION  */
129     FILEFLAGSMASK = 330,           /* FILEFLAGSMASK  */
130     FILEFLAGS = 331,               /* FILEFLAGS  */
131     FILEOS = 332,                  /* FILEOS  */
132     FILETYPE = 333,                /* FILETYPE  */
133     FILESUBTYPE = 334,             /* FILESUBTYPE  */
134     BLOCKSTRINGFILEINFO = 335,     /* BLOCKSTRINGFILEINFO  */
135     BLOCKVARFILEINFO = 336,        /* BLOCKVARFILEINFO  */
136     VALUE = 337,                   /* VALUE  */
137     BLOCK = 338,                   /* BLOCK  */
138     MOVEABLE = 339,                /* MOVEABLE  */
139     FIXED = 340,                   /* FIXED  */
140     PURE = 341,                    /* PURE  */
141     IMPURE = 342,                  /* IMPURE  */
142     PRELOAD = 343,                 /* PRELOAD  */
143     LOADONCALL = 344,              /* LOADONCALL  */
144     DISCARDABLE = 345,             /* DISCARDABLE  */
145     NOT = 346,                     /* NOT  */
146     QUOTEDUNISTRING = 347,         /* QUOTEDUNISTRING  */
147     QUOTEDSTRING = 348,            /* QUOTEDSTRING  */
148     STRING = 349,                  /* STRING  */
149     NUMBER = 350,                  /* NUMBER  */
150     SIZEDUNISTRING = 351,          /* SIZEDUNISTRING  */
151     SIZEDSTRING = 352,             /* SIZEDSTRING  */
152     IGNORED_TOKEN = 353,           /* IGNORED_TOKEN  */
153     NEG = 354                      /* NEG  */
154   };
155   typedef enum yytokentype yytoken_kind_t;
156 #endif
157 /* Token kinds.  */
158 #define YYEMPTY -2
159 #define YYEOF 0
160 #define YYerror 256
161 #define YYUNDEF 257
162 #define BEG 258
163 #define END 259
164 #define ACCELERATORS 260
165 #define VIRTKEY 261
166 #define ASCII 262
167 #define NOINVERT 263
168 #define SHIFT 264
169 #define CONTROL 265
170 #define ALT 266
171 #define BITMAP 267
172 #define CURSOR 268
173 #define DIALOG 269
174 #define DIALOGEX 270
175 #define EXSTYLE 271
176 #define CAPTION 272
177 #define CLASS 273
178 #define STYLE 274
179 #define AUTO3STATE 275
180 #define AUTOCHECKBOX 276
181 #define AUTORADIOBUTTON 277
182 #define CHECKBOX 278
183 #define COMBOBOX 279
184 #define CTEXT 280
185 #define DEFPUSHBUTTON 281
186 #define EDITTEXT 282
187 #define GROUPBOX 283
188 #define LISTBOX 284
189 #define LTEXT 285
190 #define PUSHBOX 286
191 #define PUSHBUTTON 287
192 #define RADIOBUTTON 288
193 #define RTEXT 289
194 #define SCROLLBAR 290
195 #define STATE3 291
196 #define USERBUTTON 292
197 #define BEDIT 293
198 #define HEDIT 294
199 #define IEDIT 295
200 #define FONT 296
201 #define ICON 297
202 #define ANICURSOR 298
203 #define ANIICON 299
204 #define DLGINCLUDE 300
205 #define DLGINIT 301
206 #define FONTDIR 302
207 #define HTML 303
208 #define MANIFEST 304
209 #define PLUGPLAY 305
210 #define VXD 306
211 #define TOOLBAR 307
212 #define BUTTON 308
213 #define LANGUAGE 309
214 #define CHARACTERISTICS 310
215 #define VERSIONK 311
216 #define MENU 312
217 #define MENUEX 313
218 #define MENUITEM 314
219 #define SEPARATOR 315
220 #define POPUP 316
221 #define CHECKED 317
222 #define GRAYED 318
223 #define HELP 319
224 #define INACTIVE 320
225 #define OWNERDRAW 321
226 #define MENUBARBREAK 322
227 #define MENUBREAK 323
228 #define MESSAGETABLE 324
229 #define RCDATA 325
230 #define STRINGTABLE 326
231 #define VERSIONINFO 327
232 #define FILEVERSION 328
233 #define PRODUCTVERSION 329
234 #define FILEFLAGSMASK 330
235 #define FILEFLAGS 331
236 #define FILEOS 332
237 #define FILETYPE 333
238 #define FILESUBTYPE 334
239 #define BLOCKSTRINGFILEINFO 335
240 #define BLOCKVARFILEINFO 336
241 #define VALUE 337
242 #define BLOCK 338
243 #define MOVEABLE 339
244 #define FIXED 340
245 #define PURE 341
246 #define IMPURE 342
247 #define PRELOAD 343
248 #define LOADONCALL 344
249 #define DISCARDABLE 345
250 #define NOT 346
251 #define QUOTEDUNISTRING 347
252 #define QUOTEDSTRING 348
253 #define STRING 349
254 #define NUMBER 350
255 #define SIZEDUNISTRING 351
256 #define SIZEDSTRING 352
257 #define IGNORED_TOKEN 353
258 #define NEG 354
259 
260 /* Value type.  */
261 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
262 union YYSTYPE
263 {
264 #line 68 "rcparse.y"
265 
266   rc_accelerator acc;
267   rc_accelerator *pacc;
268   rc_dialog_control *dialog_control;
269   rc_menuitem *menuitem;
270   struct
271   {
272     rc_rcdata_item *first;
273     rc_rcdata_item *last;
274   } rcdata;
275   rc_rcdata_item *rcdata_item;
276   rc_fixed_versioninfo *fixver;
277   rc_ver_info *verinfo;
278   rc_ver_stringtable *verstringtable;
279   rc_ver_stringinfo *verstring;
280   rc_ver_varinfo *vervar;
281   rc_toolbar_item *toobar_item;
282   rc_res_id id;
283   rc_res_res_info res_info;
284   struct
285   {
286     rc_uint_type on;
287     rc_uint_type off;
288   } memflags;
289   struct
290   {
291     rc_uint_type val;
292     /* Nonzero if this number was explicitly specified as long.  */
293     int dword;
294   } i;
295   rc_uint_type il;
296   rc_uint_type is;
297   const char *s;
298   struct
299   {
300     rc_uint_type length;
301     const char *s;
302   } ss;
303   unichar *uni;
304   struct
305   {
306     rc_uint_type length;
307     const unichar *s;
308   } suni;
309 
310 #line 311 "rcparse.h"
311 
312 };
313 typedef union YYSTYPE YYSTYPE;
314 # define YYSTYPE_IS_TRIVIAL 1
315 # define YYSTYPE_IS_DECLARED 1
316 #endif
317 
318 
319 extern YYSTYPE yylval;
320 
321 
322 int yyparse (void);
323 
324 
325 #endif /* !YY_YY_RCPARSE_H_INCLUDED  */
326