summaryrefslogtreecommitdiff
path: root/binutils/rcparse.c
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2010-10-19 21:13:25 +0000
committerDimitry Andric <dim@FreeBSD.org>2010-10-19 21:13:25 +0000
commit7a815afd9b5121ee0f65dc1e1de1c0de6de97679 (patch)
treef61b968a46c92e81f6de581582cb064bf9dca27d /binutils/rcparse.c
parent42f6b9ffef1927d55d15075d9e810435c590c404 (diff)
Notes
Diffstat (limited to 'binutils/rcparse.c')
-rw-r--r--binutils/rcparse.c4997
1 files changed, 2820 insertions, 2177 deletions
diff --git a/binutils/rcparse.c b/binutils/rcparse.c
index 3c5d23433690..a34e0bfca5b5 100644
--- a/binutils/rcparse.c
+++ b/binutils/rcparse.c
@@ -1,95 +1,239 @@
-/* A Bison parser, made from rcparse.y
- by GNU bison 1.35. */
-
-#define YYBISON 1 /* Identify Bison output. */
-
-# define BEG 257
-# define END 258
-# define ACCELERATORS 259
-# define VIRTKEY 260
-# define ASCII 261
-# define NOINVERT 262
-# define SHIFT 263
-# define CONTROL 264
-# define ALT 265
-# define BITMAP 266
-# define CURSOR 267
-# define DIALOG 268
-# define DIALOGEX 269
-# define EXSTYLE 270
-# define CAPTION 271
-# define CLASS 272
-# define STYLE 273
-# define AUTO3STATE 274
-# define AUTOCHECKBOX 275
-# define AUTORADIOBUTTON 276
-# define CHECKBOX 277
-# define COMBOBOX 278
-# define CTEXT 279
-# define DEFPUSHBUTTON 280
-# define EDITTEXT 281
-# define GROUPBOX 282
-# define LISTBOX 283
-# define LTEXT 284
-# define PUSHBOX 285
-# define PUSHBUTTON 286
-# define RADIOBUTTON 287
-# define RTEXT 288
-# define SCROLLBAR 289
-# define STATE3 290
-# define USERBUTTON 291
-# define BEDIT 292
-# define HEDIT 293
-# define IEDIT 294
-# define FONT 295
-# define ICON 296
-# define LANGUAGE 297
-# define CHARACTERISTICS 298
-# define VERSIONK 299
-# define MENU 300
-# define MENUEX 301
-# define MENUITEM 302
-# define SEPARATOR 303
-# define POPUP 304
-# define CHECKED 305
-# define GRAYED 306
-# define HELP 307
-# define INACTIVE 308
-# define MENUBARBREAK 309
-# define MENUBREAK 310
-# define MESSAGETABLE 311
-# define RCDATA 312
-# define STRINGTABLE 313
-# define VERSIONINFO 314
-# define FILEVERSION 315
-# define PRODUCTVERSION 316
-# define FILEFLAGSMASK 317
-# define FILEFLAGS 318
-# define FILEOS 319
-# define FILETYPE 320
-# define FILESUBTYPE 321
-# define BLOCKSTRINGFILEINFO 322
-# define BLOCKVARFILEINFO 323
-# define VALUE 324
-# define BLOCK 325
-# define MOVEABLE 326
-# define FIXED 327
-# define PURE 328
-# define IMPURE 329
-# define PRELOAD 330
-# define LOADONCALL 331
-# define DISCARDABLE 332
-# define NOT 333
-# define QUOTEDSTRING 334
-# define STRING 335
-# define NUMBER 336
-# define SIZEDSTRING 337
-# define IGNORED_TOKEN 338
-# define NEG 339
+/* A Bison parser, made by GNU Bison 2.1. */
+/* Skeleton parser for Yacc-like parsing with Bison,
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
+
+/* As a special exception, when this file is copied by Bison into a
+ Bison output file, you may use that output file without restriction.
+ This special exception was added by the Free Software Foundation
+ in version 1.24 of Bison. */
+
+/* Written by Richard Stallman by simplifying the original so called
+ ``semantic'' parser. */
+
+/* All symbols defined below should begin with yy or YY, to avoid
+ infringing on user name space. This should be done even for local
+ variables, as they might otherwise be expanded by user macros.
+ There are some unavoidable exceptions within include files to
+ define necessary library symbols; they are noted "INFRINGES ON
+ USER NAME SPACE" below. */
+
+/* Identify Bison output. */
+#define YYBISON 1
+
+/* Bison version. */
+#define YYBISON_VERSION "2.1"
+
+/* Skeleton name. */
+#define YYSKELETON_NAME "yacc.c"
+
+/* Pure parsers. */
+#define YYPURE 0
+
+/* Using locations. */
+#define YYLSP_NEEDED 0
+
+
+
+/* Tokens. */
+#ifndef YYTOKENTYPE
+# define YYTOKENTYPE
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
+ know about them. */
+ enum yytokentype {
+ BEG = 258,
+ END = 259,
+ ACCELERATORS = 260,
+ VIRTKEY = 261,
+ ASCII = 262,
+ NOINVERT = 263,
+ SHIFT = 264,
+ CONTROL = 265,
+ ALT = 266,
+ BITMAP = 267,
+ CURSOR = 268,
+ DIALOG = 269,
+ DIALOGEX = 270,
+ EXSTYLE = 271,
+ CAPTION = 272,
+ CLASS = 273,
+ STYLE = 274,
+ AUTO3STATE = 275,
+ AUTOCHECKBOX = 276,
+ AUTORADIOBUTTON = 277,
+ CHECKBOX = 278,
+ COMBOBOX = 279,
+ CTEXT = 280,
+ DEFPUSHBUTTON = 281,
+ EDITTEXT = 282,
+ GROUPBOX = 283,
+ LISTBOX = 284,
+ LTEXT = 285,
+ PUSHBOX = 286,
+ PUSHBUTTON = 287,
+ RADIOBUTTON = 288,
+ RTEXT = 289,
+ SCROLLBAR = 290,
+ STATE3 = 291,
+ USERBUTTON = 292,
+ BEDIT = 293,
+ HEDIT = 294,
+ IEDIT = 295,
+ FONT = 296,
+ ICON = 297,
+ LANGUAGE = 298,
+ CHARACTERISTICS = 299,
+ VERSIONK = 300,
+ MENU = 301,
+ MENUEX = 302,
+ MENUITEM = 303,
+ SEPARATOR = 304,
+ POPUP = 305,
+ CHECKED = 306,
+ GRAYED = 307,
+ HELP = 308,
+ INACTIVE = 309,
+ MENUBARBREAK = 310,
+ MENUBREAK = 311,
+ MESSAGETABLE = 312,
+ RCDATA = 313,
+ STRINGTABLE = 314,
+ VERSIONINFO = 315,
+ FILEVERSION = 316,
+ PRODUCTVERSION = 317,
+ FILEFLAGSMASK = 318,
+ FILEFLAGS = 319,
+ FILEOS = 320,
+ FILETYPE = 321,
+ FILESUBTYPE = 322,
+ BLOCKSTRINGFILEINFO = 323,
+ BLOCKVARFILEINFO = 324,
+ VALUE = 325,
+ BLOCK = 326,
+ MOVEABLE = 327,
+ FIXED = 328,
+ PURE = 329,
+ IMPURE = 330,
+ PRELOAD = 331,
+ LOADONCALL = 332,
+ DISCARDABLE = 333,
+ NOT = 334,
+ QUOTEDSTRING = 335,
+ STRING = 336,
+ NUMBER = 337,
+ SIZEDSTRING = 338,
+ IGNORED_TOKEN = 339,
+ NEG = 340
+ };
+#endif
+/* Tokens. */
+#define BEG 258
+#define END 259
+#define ACCELERATORS 260
+#define VIRTKEY 261
+#define ASCII 262
+#define NOINVERT 263
+#define SHIFT 264
+#define CONTROL 265
+#define ALT 266
+#define BITMAP 267
+#define CURSOR 268
+#define DIALOG 269
+#define DIALOGEX 270
+#define EXSTYLE 271
+#define CAPTION 272
+#define CLASS 273
+#define STYLE 274
+#define AUTO3STATE 275
+#define AUTOCHECKBOX 276
+#define AUTORADIOBUTTON 277
+#define CHECKBOX 278
+#define COMBOBOX 279
+#define CTEXT 280
+#define DEFPUSHBUTTON 281
+#define EDITTEXT 282
+#define GROUPBOX 283
+#define LISTBOX 284
+#define LTEXT 285
+#define PUSHBOX 286
+#define PUSHBUTTON 287
+#define RADIOBUTTON 288
+#define RTEXT 289
+#define SCROLLBAR 290
+#define STATE3 291
+#define USERBUTTON 292
+#define BEDIT 293
+#define HEDIT 294
+#define IEDIT 295
+#define FONT 296
+#define ICON 297
+#define LANGUAGE 298
+#define CHARACTERISTICS 299
+#define VERSIONK 300
+#define MENU 301
+#define MENUEX 302
+#define MENUITEM 303
+#define SEPARATOR 304
+#define POPUP 305
+#define CHECKED 306
+#define GRAYED 307
+#define HELP 308
+#define INACTIVE 309
+#define MENUBARBREAK 310
+#define MENUBREAK 311
+#define MESSAGETABLE 312
+#define RCDATA 313
+#define STRINGTABLE 314
+#define VERSIONINFO 315
+#define FILEVERSION 316
+#define PRODUCTVERSION 317
+#define FILEFLAGSMASK 318
+#define FILEFLAGS 319
+#define FILEOS 320
+#define FILETYPE 321
+#define FILESUBTYPE 322
+#define BLOCKSTRINGFILEINFO 323
+#define BLOCKVARFILEINFO 324
+#define VALUE 325
+#define BLOCK 326
+#define MOVEABLE 327
+#define FIXED 328
+#define PURE 329
+#define IMPURE 330
+#define PRELOAD 331
+#define LOADONCALL 332
+#define DISCARDABLE 333
+#define NOT 334
+#define QUOTEDSTRING 335
+#define STRING 336
+#define NUMBER 337
+#define SIZEDSTRING 338
+#define IGNORED_TOKEN 339
+#define NEG 340
+
+
+
+
+/* Copy the first part of user declarations. */
#line 1 "rcparse.y"
/* rcparse.y -- parser for Windows rc files
- Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+ Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005
+ Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of GNU Binutils.
@@ -106,8 +250,8 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
- 02111-1307, USA. */
+ Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+ 02110-1301, USA. */
/* This is a parser for Windows rc files. It is based on the parser
by Gunther Ebert <gunther.ebert@ixos-leipzig.de>. */
@@ -143,16 +287,35 @@ static unsigned long base_style;
static unsigned long default_style;
static unsigned long class;
static struct res_id res_text_field;
+static unichar null_unichar;
/* This is used for COMBOBOX, LISTBOX and EDITTEXT which
do not allow resource 'text' field in control definition. */
-static const struct res_id res_null_text = { 1, {{0, L""}}};
+static const struct res_id res_null_text = { 1, {{0, &null_unichar}}};
-#line 63 "rcparse.y"
-#ifndef YYSTYPE
-typedef union
-{
+
+/* Enabling traces. */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+
+/* Enabling verbose error messages. */
+#ifdef YYERROR_VERBOSE
+# undef YYERROR_VERBOSE
+# define YYERROR_VERBOSE 1
+#else
+# define YYERROR_VERBOSE 0
+#endif
+
+/* Enabling the token table. */
+#ifndef YYTOKEN_TABLE
+# define YYTOKEN_TABLE 0
+#endif
+
+#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
+#line 66 "rcparse.y"
+typedef union YYSTYPE {
struct accelerator acc;
struct accelerator *pacc;
struct dialog_control *dialog_control;
@@ -189,687 +352,61 @@ typedef union
unsigned long length;
const char *s;
} ss;
-} yystype;
-# define YYSTYPE yystype
+} YYSTYPE;
+/* Line 196 of yacc.c. */
+#line 358 "rcparse.c"
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif
-#ifndef YYDEBUG
-# define YYDEBUG 0
-#endif
-
-#define YYFINAL 499
-#define YYFLAG -32768
-#define YYNTBASE 99
-/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */
-#define YYTRANSLATE(x) ((unsigned)(x) <= 339 ? yytranslate[x] : 189)
+/* Copy the second part of user declarations. */
-/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */
-static const char yytranslate[] =
-{
- 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 92, 87, 2,
- 97, 98, 90, 88, 95, 89, 2, 91, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 96, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 86, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 85, 2, 93, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 1, 3, 4, 5,
- 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
- 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
- 76, 77, 78, 79, 80, 81, 82, 83, 84, 94
-};
-#if YYDEBUG
-static const short yyprhs[] =
-{
- 0, 0, 1, 4, 7, 10, 13, 16, 19, 22,
- 25, 28, 31, 34, 37, 40, 43, 46, 53, 54,
- 57, 60, 65, 67, 69, 71, 75, 78, 80, 82,
- 84, 86, 88, 90, 95, 100, 101, 115, 116, 130,
- 131, 146, 147, 151, 152, 156, 160, 164, 168, 172,
- 178, 185, 193, 202, 206, 210, 215, 219, 220, 223,
- 224, 229, 230, 235, 236, 241, 242, 247, 248, 253,
- 254, 258, 270, 283, 296, 310, 311, 316, 317, 322,
- 323, 327, 328, 333, 334, 339, 346, 355, 366, 378,
- 379, 384, 385, 389, 390, 395, 396, 401, 402, 407,
- 408, 413, 414, 419, 420, 424, 425, 430, 431, 447,
- 454, 463, 473, 474, 477, 479, 482, 483, 487, 488,
- 492, 493, 497, 498, 502, 507, 512, 516, 523, 524,
- 527, 532, 535, 542, 543, 547, 550, 552, 554, 556,
- 558, 560, 562, 569, 570, 573, 576, 580, 586, 589,
- 595, 602, 610, 620, 625, 632, 633, 636, 637, 639,
- 641, 643, 647, 651, 652, 659, 660, 664, 669, 676,
- 681, 688, 689, 696, 703, 707, 711, 715, 719, 723,
- 724, 733, 741, 742, 748, 749, 753, 755, 757, 759,
- 762, 765, 768, 770, 771, 774, 778, 783, 787, 788,
- 791, 792, 795, 797, 799, 801, 803, 805, 807, 809,
- 811, 813, 815, 818, 822, 827, 829, 833, 834, 836,
- 839, 841, 843, 847, 850, 853, 857, 861, 865, 869,
- 873, 877, 881, 885, 888, 890, 892, 896, 899, 903,
- 907, 911, 915, 919, 923, 927
-};
-static const short yyrhs[] =
-{
- -1, 99, 100, 0, 99, 106, 0, 99, 107, 0,
- 99, 108, 0, 99, 146, 0, 99, 147, 0, 99,
- 148, 0, 99, 149, 0, 99, 154, 0, 99, 157,
- 0, 99, 158, 0, 99, 163, 0, 99, 166, 0,
- 99, 167, 0, 99, 84, 0, 172, 5, 175, 3,
- 101, 4, 0, 0, 101, 102, 0, 103, 186, 0,
- 103, 186, 95, 104, 0, 80, 0, 187, 0, 105,
- 0, 104, 95, 105, 0, 104, 105, 0, 6, 0,
- 7, 0, 8, 0, 9, 0, 10, 0, 11, 0,
- 172, 12, 177, 179, 0, 172, 13, 176, 179, 0,
- 0, 172, 14, 177, 112, 187, 183, 183, 183, 109,
- 113, 3, 114, 4, 0, 0, 172, 15, 177, 112,
- 187, 183, 183, 183, 110, 113, 3, 114, 4, 0,
- 0, 172, 15, 177, 112, 187, 183, 183, 183, 183,
- 111, 113, 3, 114, 4, 0, 0, 16, 96, 184,
- 0, 0, 113, 17, 80, 0, 113, 18, 172, 0,
- 113, 19, 180, 0, 113, 16, 184, 0, 113, 18,
- 80, 0, 113, 41, 184, 95, 80, 0, 113, 41,
- 184, 95, 80, 183, 0, 113, 41, 184, 95, 80,
- 183, 183, 0, 113, 41, 184, 95, 80, 183, 183,
- 183, 0, 113, 46, 172, 0, 113, 44, 184, 0,
- 113, 43, 184, 183, 0, 113, 45, 184, 0, 0,
- 114, 115, 0, 0, 20, 138, 116, 137, 0, 0,
- 21, 138, 117, 137, 0, 0, 22, 138, 118, 137,
- 0, 0, 38, 138, 119, 137, 0, 0, 23, 138,
- 120, 137, 0, 0, 24, 121, 137, 0, 10, 138,
- 184, 183, 140, 183, 183, 183, 183, 182, 139, 0,
- 10, 138, 184, 183, 140, 183, 183, 183, 183, 183,
- 183, 139, 0, 10, 138, 184, 95, 80, 140, 183,
- 183, 183, 183, 182, 139, 0, 10, 138, 184, 95,
- 80, 140, 183, 183, 183, 183, 183, 183, 139, 0,
- 0, 25, 138, 122, 137, 0, 0, 26, 138, 123,
- 137, 0, 0, 27, 124, 137, 0, 0, 28, 138,
- 125, 137, 0, 0, 39, 138, 126, 137, 0, 42,
- 174, 184, 183, 183, 139, 0, 42, 174, 184, 183,
- 183, 183, 183, 139, 0, 42, 174, 184, 183, 183,
- 183, 183, 142, 182, 139, 0, 42, 174, 184, 183,
- 183, 183, 183, 142, 183, 183, 139, 0, 0, 40,
- 138, 127, 137, 0, 0, 29, 128, 137, 0, 0,
- 30, 138, 129, 137, 0, 0, 31, 138, 130, 137,
- 0, 0, 32, 138, 131, 137, 0, 0, 33, 138,
- 132, 137, 0, 0, 34, 138, 133, 137, 0, 0,
- 35, 134, 137, 0, 0, 36, 138, 135, 137, 0,
- 0, 37, 174, 184, 95, 184, 95, 184, 95, 184,
- 95, 184, 95, 136, 180, 182, 0, 184, 183, 183,
- 183, 183, 139, 0, 184, 183, 183, 183, 183, 144,
- 182, 139, 0, 184, 183, 183, 183, 183, 144, 183,
- 183, 139, 0, 0, 187, 95, 0, 80, 0, 80,
- 95, 0, 0, 3, 159, 4, 0, 0, 95, 141,
- 180, 0, 0, 95, 143, 180, 0, 0, 95, 145,
- 180, 0, 172, 41, 176, 179, 0, 172, 42, 176,
- 179, 0, 43, 184, 183, 0, 172, 46, 175, 3,
- 150, 4, 0, 0, 150, 151, 0, 48, 80, 183,
- 152, 0, 48, 49, 0, 50, 80, 152, 3, 150,
- 4, 0, 0, 152, 95, 153, 0, 152, 153, 0,
- 51, 0, 52, 0, 53, 0, 54, 0, 55, 0,
- 56, 0, 172, 47, 175, 3, 155, 4, 0, 0,
- 155, 156, 0, 48, 80, 0, 48, 80, 183, 0,
- 48, 80, 183, 183, 182, 0, 48, 49, 0, 50,
- 80, 3, 155, 4, 0, 50, 80, 183, 3, 155,
- 4, 0, 50, 80, 183, 183, 3, 155, 4, 0,
- 50, 80, 183, 183, 183, 182, 3, 155, 4, 0,
- 172, 57, 177, 179, 0, 172, 58, 175, 3, 159,
- 4, 0, 0, 160, 161, 0, 0, 162, 0, 83,
- 0, 185, 0, 162, 95, 83, 0, 162, 95, 185,
- 0, 0, 59, 175, 3, 164, 165, 4, 0, 0,
- 165, 184, 80, 0, 165, 184, 95, 80, 0, 172,
- 172, 175, 3, 159, 4, 0, 172, 172, 175, 179,
- 0, 172, 60, 168, 3, 169, 4, 0, 0, 168,
- 61, 184, 183, 183, 183, 0, 168, 62, 184, 183,
- 183, 183, 0, 168, 63, 184, 0, 168, 64, 184,
- 0, 168, 65, 184, 0, 168, 66, 184, 0, 168,
- 67, 184, 0, 0, 169, 68, 3, 71, 3, 170,
- 4, 4, 0, 169, 69, 3, 70, 80, 171, 4,
- 0, 0, 170, 70, 80, 95, 80, 0, 0, 171,
- 183, 183, 0, 187, 0, 81, 0, 80, 0, 80,
- 95, 0, 81, 95, 0, 187, 95, 0, 173, 0,
- 0, 175, 178, 0, 175, 44, 184, 0, 175, 43,
- 184, 183, 0, 175, 45, 184, 0, 0, 176, 178,
- 0, 0, 177, 178, 0, 72, 0, 73, 0, 74,
- 0, 75, 0, 76, 0, 77, 0, 78, 0, 80,
- 0, 81, 0, 181, 0, 79, 181, 0, 180, 85,
- 181, 0, 180, 85, 79, 181, 0, 82, 0, 97,
- 184, 98, 0, 0, 183, 0, 95, 184, 0, 185,
- 0, 82, 0, 97, 185, 98, 0, 93, 185, 0,
- 89, 185, 0, 185, 90, 185, 0, 185, 91, 185,
- 0, 185, 92, 185, 0, 185, 88, 185, 0, 185,
- 89, 185, 0, 185, 87, 185, 0, 185, 86, 185,
- 0, 185, 85, 185, 0, 95, 187, 0, 188, 0,
- 82, 0, 97, 185, 98, 0, 93, 185, 0, 188,
- 90, 185, 0, 188, 91, 185, 0, 188, 92, 185,
- 0, 188, 88, 185, 0, 188, 89, 185, 0, 188,
- 87, 185, 0, 188, 86, 185, 0, 188, 85, 185,
- 0
-};
+/* Line 219 of yacc.c. */
+#line 370 "rcparse.c"
+#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
+# define YYSIZE_T __SIZE_TYPE__
#endif
-
-#if YYDEBUG
-/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
-static const short yyrline[] =
-{
- 0, 159, 161, 162, 163, 164, 165, 166, 167, 168,
- 169, 170, 171, 172, 173, 174, 175, 180, 190, 195,
- 215, 221, 232, 254, 263, 268, 273, 279, 284, 289,
- 293, 297, 301, 309, 321, 333, 333, 359, 359, 386,
- 386, 416, 421, 427, 429, 435, 439, 444, 448, 452,
- 465, 480, 495, 510, 514, 518, 522, 528, 530, 540,
- 540, 552, 552, 563, 563, 574, 574, 588, 588, 599,
- 599, 612, 623, 632, 645, 656, 656, 667, 667, 678,
- 678, 689, 689, 700, 700, 714, 719, 725, 731, 737,
- 737, 751, 751, 762, 762, 773, 773, 783, 783, 794,
- 794, 805, 805, 816, 816, 827, 827, 838, 838, 855,
- 867, 878, 889, 894, 899, 903, 909, 914, 922, 922,
- 928, 928, 934, 934, 942, 954, 967, 976, 986, 991,
- 1007, 1012, 1016, 1022, 1027, 1031, 1037, 1042, 1046, 1050,
- 1054, 1058, 1066, 1076, 1081, 1097, 1102, 1106, 1110, 1114,
- 1118, 1122, 1126, 1135, 1147, 1160, 1160, 1171, 1177, 1183,
- 1192, 1200, 1209, 1222, 1222, 1228, 1230, 1237, 1249, 1257,
- 1268, 1278, 1285, 1291, 1297, 1302, 1307, 1312, 1317, 1330,
- 1335, 1339, 1345, 1350, 1356, 1361, 1369, 1375, 1390, 1395,
- 1399, 1406, 1412, 1428, 1436, 1442, 1447, 1452, 1461, 1468,
- 1478, 1485, 1496, 1502, 1507, 1512, 1517, 1522, 1527, 1536,
- 1541, 1557, 1562, 1566, 1570, 1576, 1581, 1589, 1594, 1602,
- 1611, 1620, 1625, 1629, 1634, 1639, 1644, 1649, 1654, 1659,
- 1664, 1669, 1674, 1684, 1693, 1704, 1709, 1713, 1718, 1723,
- 1728, 1733, 1738, 1743, 1748, 1753
-};
+#if ! defined (YYSIZE_T) && defined (size_t)
+# define YYSIZE_T size_t
#endif
-
-
-#if (YYDEBUG) || defined YYERROR_VERBOSE
-
-/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */
-static const char *const yytname[] =
-{
- "$", "error", "$undefined.", "BEG", "END", "ACCELERATORS", "VIRTKEY",
- "ASCII", "NOINVERT", "SHIFT", "CONTROL", "ALT", "BITMAP", "CURSOR",
- "DIALOG", "DIALOGEX", "EXSTYLE", "CAPTION", "CLASS", "STYLE",
- "AUTO3STATE", "AUTOCHECKBOX", "AUTORADIOBUTTON", "CHECKBOX", "COMBOBOX",
- "CTEXT", "DEFPUSHBUTTON", "EDITTEXT", "GROUPBOX", "LISTBOX", "LTEXT",
- "PUSHBOX", "PUSHBUTTON", "RADIOBUTTON", "RTEXT", "SCROLLBAR", "STATE3",
- "USERBUTTON", "BEDIT", "HEDIT", "IEDIT", "FONT", "ICON", "LANGUAGE",
- "CHARACTERISTICS", "VERSIONK", "MENU", "MENUEX", "MENUITEM",
- "SEPARATOR", "POPUP", "CHECKED", "GRAYED", "HELP", "INACTIVE",
- "MENUBARBREAK", "MENUBREAK", "MESSAGETABLE", "RCDATA", "STRINGTABLE",
- "VERSIONINFO", "FILEVERSION", "PRODUCTVERSION", "FILEFLAGSMASK",
- "FILEFLAGS", "FILEOS", "FILETYPE", "FILESUBTYPE", "BLOCKSTRINGFILEINFO",
- "BLOCKVARFILEINFO", "VALUE", "BLOCK", "MOVEABLE", "FIXED", "PURE",
- "IMPURE", "PRELOAD", "LOADONCALL", "DISCARDABLE", "NOT", "QUOTEDSTRING",
- "STRING", "NUMBER", "SIZEDSTRING", "IGNORED_TOKEN", "'|'", "'^'", "'&'",
- "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "NEG", "','", "'='", "'('",
- "')'", "input", "accelerator", "acc_entries", "acc_entry", "acc_event",
- "acc_options", "acc_option", "bitmap", "cursor", "dialog", "@1", "@2",
- "@3", "exstyle", "styles", "controls", "control", "@4", "@5", "@6",
- "@7", "@8", "@9", "@10", "@11", "@12", "@13", "@14", "@15", "@16",
- "@17", "@18", "@19", "@20", "@21", "@22", "@23", "@24",
- "control_params", "optresidc", "opt_control_data", "control_styleexpr",
- "@25", "icon_styleexpr", "@26", "control_params_styleexpr", "@27",
- "font", "icon", "language", "menu", "menuitems", "menuitem",
- "menuitem_flags", "menuitem_flag", "menuex", "menuexitems",
- "menuexitem", "messagetable", "rcdata", "optrcdata_data", "@28",
- "optrcdata_data_int", "rcdata_data", "stringtable", "@29",
- "string_data", "user", "versioninfo", "fixedverinfo", "verblocks",
- "vervals", "vertrans", "id", "resname", "resref", "suboptions",
- "memflags_move_discard", "memflags_move", "memflag", "file_name",
- "styleexpr", "parennumber", "optcnumexpr", "cnumexpr", "numexpr",
- "sizednumexpr", "cposnumexpr", "posnumexpr", "sizedposnumexpr", 0
-};
+#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+#endif
+#if ! defined (YYSIZE_T)
+# define YYSIZE_T unsigned int
#endif
-/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-static const short yyr1[] =
-{
- 0, 99, 99, 99, 99, 99, 99, 99, 99, 99,
- 99, 99, 99, 99, 99, 99, 99, 100, 101, 101,
- 102, 102, 103, 103, 104, 104, 104, 105, 105, 105,
- 105, 105, 105, 106, 107, 109, 108, 110, 108, 111,
- 108, 112, 112, 113, 113, 113, 113, 113, 113, 113,
- 113, 113, 113, 113, 113, 113, 113, 114, 114, 116,
- 115, 117, 115, 118, 115, 119, 115, 120, 115, 121,
- 115, 115, 115, 115, 115, 122, 115, 123, 115, 124,
- 115, 125, 115, 126, 115, 115, 115, 115, 115, 127,
- 115, 128, 115, 129, 115, 130, 115, 131, 115, 132,
- 115, 133, 115, 134, 115, 135, 115, 136, 115, 137,
- 137, 137, 138, 138, 138, 138, 139, 139, 141, 140,
- 143, 142, 145, 144, 146, 147, 148, 149, 150, 150,
- 151, 151, 151, 152, 152, 152, 153, 153, 153, 153,
- 153, 153, 154, 155, 155, 156, 156, 156, 156, 156,
- 156, 156, 156, 157, 158, 160, 159, 161, 161, 162,
- 162, 162, 162, 164, 163, 165, 165, 165, 166, 166,
- 167, 168, 168, 168, 168, 168, 168, 168, 168, 169,
- 169, 169, 170, 170, 171, 171, 172, 172, 173, 173,
- 173, 174, 174, 175, 175, 175, 175, 175, 176, 176,
- 177, 177, 178, 178, 178, 178, 178, 178, 178, 179,
- 179, 180, 180, 180, 180, 181, 181, 182, 182, 183,
- 184, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 186, 187, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188
-};
-
-/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
-static const short yyr2[] =
-{
- 0, 0, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 2, 2, 2, 2, 6, 0, 2,
- 2, 4, 1, 1, 1, 3, 2, 1, 1, 1,
- 1, 1, 1, 4, 4, 0, 13, 0, 13, 0,
- 14, 0, 3, 0, 3, 3, 3, 3, 3, 5,
- 6, 7, 8, 3, 3, 4, 3, 0, 2, 0,
- 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
- 3, 11, 12, 12, 13, 0, 4, 0, 4, 0,
- 3, 0, 4, 0, 4, 6, 8, 10, 11, 0,
- 4, 0, 3, 0, 4, 0, 4, 0, 4, 0,
- 4, 0, 4, 0, 3, 0, 4, 0, 15, 6,
- 8, 9, 0, 2, 1, 2, 0, 3, 0, 3,
- 0, 3, 0, 3, 4, 4, 3, 6, 0, 2,
- 4, 2, 6, 0, 3, 2, 1, 1, 1, 1,
- 1, 1, 6, 0, 2, 2, 3, 5, 2, 5,
- 6, 7, 9, 4, 6, 0, 2, 0, 1, 1,
- 1, 3, 3, 0, 6, 0, 3, 4, 6, 4,
- 6, 0, 6, 6, 3, 3, 3, 3, 3, 0,
- 8, 7, 0, 5, 0, 3, 1, 1, 1, 2,
- 2, 2, 1, 0, 2, 3, 4, 3, 0, 2,
- 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 2, 3, 4, 1, 3, 0, 1, 2,
- 1, 1, 3, 2, 2, 3, 3, 3, 3, 3,
- 3, 3, 3, 2, 1, 1, 3, 2, 3, 3,
- 3, 3, 3, 3, 3, 3
-};
-
-/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE
- doesn't specify something else to do. Zero means the default is an
- error. */
-static const short yydefact[] =
-{
- 1, 0, 0, 193, 187, 235, 16, 0, 0, 2,
- 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 0, 186, 234, 221, 0, 0, 0,
- 0, 220, 0, 237, 0, 193, 200, 198, 200, 200,
- 198, 198, 193, 193, 200, 193, 171, 193, 0, 0,
- 0, 0, 0, 0, 0, 0, 224, 223, 0, 0,
- 126, 0, 0, 0, 0, 0, 0, 0, 0, 163,
- 0, 0, 0, 202, 203, 204, 205, 206, 207, 208,
- 194, 236, 0, 0, 0, 41, 41, 0, 0, 0,
- 0, 0, 0, 0, 0, 245, 244, 243, 241, 242,
- 238, 239, 240, 222, 219, 232, 231, 230, 228, 229,
- 225, 226, 227, 165, 0, 195, 197, 18, 209, 210,
- 201, 33, 199, 34, 0, 0, 0, 124, 125, 128,
- 143, 153, 155, 179, 0, 0, 0, 0, 0, 0,
- 0, 155, 169, 0, 196, 0, 0, 0, 0, 0,
- 0, 0, 157, 0, 0, 0, 174, 175, 176, 177,
- 178, 0, 164, 0, 17, 22, 19, 0, 23, 42,
- 0, 0, 127, 0, 0, 129, 142, 0, 0, 144,
- 154, 159, 156, 158, 160, 170, 0, 0, 0, 0,
- 168, 166, 0, 0, 20, 0, 0, 131, 0, 133,
- 148, 145, 0, 0, 0, 0, 0, 0, 167, 233,
- 0, 35, 37, 133, 0, 146, 143, 0, 161, 162,
- 0, 0, 172, 173, 27, 28, 29, 30, 31, 32,
- 21, 24, 43, 43, 39, 130, 128, 136, 137, 138,
- 139, 140, 141, 0, 135, 217, 0, 143, 0, 182,
- 184, 0, 26, 0, 0, 43, 0, 134, 147, 218,
- 149, 0, 143, 217, 0, 0, 25, 57, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 57, 0, 132,
- 150, 0, 0, 0, 0, 181, 0, 0, 47, 44,
- 48, 45, 0, 215, 0, 46, 211, 0, 0, 54,
- 56, 53, 0, 57, 151, 143, 180, 0, 185, 36,
- 112, 112, 112, 112, 112, 69, 112, 112, 79, 112,
- 91, 112, 112, 112, 112, 112, 103, 112, 0, 112,
- 112, 112, 0, 58, 212, 0, 0, 0, 55, 38,
- 0, 0, 0, 114, 0, 0, 59, 61, 63, 67,
- 0, 75, 77, 0, 81, 0, 93, 95, 97, 99,
- 101, 0, 105, 188, 0, 192, 0, 0, 65, 83,
- 89, 0, 216, 0, 213, 49, 40, 152, 183, 115,
- 0, 113, 0, 0, 0, 0, 70, 0, 0, 0,
- 80, 0, 92, 0, 0, 0, 0, 0, 104, 0,
- 189, 190, 0, 191, 0, 0, 0, 0, 214, 50,
- 0, 0, 60, 62, 64, 68, 0, 76, 78, 82,
- 94, 96, 98, 100, 102, 106, 0, 66, 84, 90,
- 0, 51, 0, 118, 0, 0, 0, 116, 52, 0,
- 0, 0, 0, 0, 155, 85, 0, 0, 119, 0,
- 116, 0, 0, 116, 0, 0, 122, 109, 217, 0,
- 117, 120, 86, 217, 0, 217, 0, 116, 218, 0,
- 0, 116, 218, 217, 116, 218, 123, 110, 116, 0,
- 121, 87, 116, 116, 218, 71, 116, 111, 0, 88,
- 73, 116, 72, 107, 74, 0, 217, 108, 0, 0
-};
-
-static const short yydefgoto[] =
-{
- 1, 9, 145, 166, 167, 230, 231, 10, 11, 12,
- 232, 233, 255, 125, 253, 287, 333, 382, 383, 384,
- 404, 385, 350, 388, 389, 353, 391, 405, 406, 355,
- 393, 394, 395, 396, 397, 361, 399, 495, 386, 344,
- 445, 434, 440, 463, 470, 458, 466, 13, 14, 15,
- 16, 149, 175, 214, 244, 17, 150, 179, 18, 19,
- 151, 152, 182, 183, 20, 113, 143, 21, 22, 93,
- 153, 264, 265, 23, 365, 366, 32, 84, 83, 80,
- 121, 295, 296, 258, 259, 387, 31, 194, 345, 25
-};
-
-static const short yypact[] =
-{
- -32768, 13, 265,-32768,-32768,-32768,-32768, 265, 265,-32768,
- -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768, 110,-32768, 567,-32768, 265, 265, 265,
- -70, 605, 300,-32768, 657,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 265, 265,
- 265, 265, 265, 265, 265, 265,-32768,-32768, 671, 265,
- -32768, 265, 265, 265, 265, 265, 265, 265, 265,-32768,
- 265, 265, 265,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768, 307, 698, 698, 224, 224, 698, 698, 323,
- 345, 698, 445, 195, 244, 694, 700, 217, 89, 89,
- -32768,-32768,-32768,-32768,-32768, 694, 700, 217, 89, 89,
- -32768,-32768,-32768,-32768, -70,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768, -42, 141, 141,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768, 265, 265, 265, 265, 265, 265,
- 265,-32768,-32768, -1,-32768, 5, 265, -70, -70, 3,
- 34, 51, 186, 39, -70, -70,-32768,-32768,-32768,-32768,
- -32768, 54,-32768, 10,-32768,-32768,-32768, -12,-32768,-32768,
- -70, -70,-32768, -35, 11,-32768,-32768, -31, 31,-32768,
- -32768,-32768,-32768, 23, 605,-32768, 128, 137, -70, -70,
- -32768,-32768, 68, 141, 58, -70, -70,-32768, -70,-32768,
- -32768, -70, 8, 516, 28, 85, -70, -70,-32768,-32768,
- 787,-32768, -70,-32768, 158, -70,-32768, 9,-32768, 605,
- 156, 80,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- 22,-32768,-32768,-32768,-32768, 359,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768, 748,-32768, -70, 115,-32768, 14,-32768,
- -32768, 787,-32768, 529, 540,-32768, 123,-32768,-32768,-32768,
- -32768, 124,-32768, -70, 30, 6,-32768,-32768, 265, 86,
- 65, 96, 265, 265, 265, 265, 256,-32768, 549,-32768,
- -32768, 138, 166, 178, 105,-32768, -70, 604,-32768,-32768,
- -32768,-32768, 57,-32768, 265, 104,-32768, 100, -70,-32768,
- -32768,-32768, 641,-32768,-32768,-32768,-32768, 107,-32768,-32768,
- 170, 170, 170, 170, 170,-32768, 170, 170,-32768, 170,
- -32768, 170, 170, 170, 170, 170,-32768, 170, 140, 170,
- 170, 170, 140,-32768,-32768, 106, 108, 139,-32768,-32768,
- 678, 146, 148, 131, 265, 134,-32768,-32768,-32768,-32768,
- 265,-32768,-32768, 265,-32768, 265,-32768,-32768,-32768,-32768,
- -32768, 265,-32768, 147, 150,-32768, 265, 153,-32768,-32768,
- -32768, 265,-32768, 57,-32768, -70,-32768,-32768,-32768,-32768,
- 159,-32768, 265, 265, 265, 265,-32768, -70, 265, 265,
- -32768, 265,-32768, 265, 265, 265, 265, 265,-32768, 265,
- -32768,-32768, 169,-32768, 265, 265, 265, -70,-32768, -70,
- 346, 181,-32768,-32768,-32768,-32768, -70,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768,-32768,-32768, 265,-32768,-32768,-32768,
- -70, -70, 181,-32768, -70, -70, 183, 18,-32768, -70,
- 96, -70, -70, 265,-32768,-32768, -70, -70, 104, -70,
- 19, 187, 228, 21, -70, -70,-32768,-32768, -70, 265,
- -32768,-32768,-32768, -70, -70, -70, 96, 240, -70, 189,
- 96, 240, -70, -70, 240, -70, 104,-32768, 240, 265,
- 104,-32768, 240, 240, -70,-32768, 240,-32768, 190,-32768,
- -32768, 240,-32768,-32768,-32768, 96, -59,-32768, 251,-32768
-};
-
-static const short yypgoto[] =
-{
- -32768,-32768,-32768,-32768,-32768,-32768, -207,-32768,-32768,-32768,
- -32768,-32768,-32768, 179, -218, -191,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 145, 410,
- 129, -151,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- -32768, 50,-32768, 77, 48,-32768, -212,-32768,-32768,-32768,
- -140,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
- -32768,-32768,-32768, -21,-32768, -39, 288, 7, 82, 424,
- 343, -424, -284, -257, 29, -2, 12,-32768, 4,-32768
-};
-
-
-#define YYLAST 804
-
-
-static const short yytable[] =
-{
- 30, 161, 47, 162, 246, 24, 282, 172, 334, 164,
- 285, 216, 247, 498, 197, 254, 448, 262, 200, 33,
- 34, 444, 444, 252, 444, 59, 336, 24, 224, 225,
- 226, 227, 228, 229, 283, 261, 59, 278, 176, 56,
- 57, 58, 476, 185, 266, 198, 480, 87, 88, 201,
- 281, 173, 374, 174, 146, 180, 2, 104, 190, 60,
- 95, 96, 97, 98, 99, 100, 101, 102, 114, 115,
- 116, 496, 3, 105, 106, 107, 108, 109, 110, 111,
- 112, 26, 177, 193, 178, 165, 302, 5, 27, 408,
- 191, 199, 28, 341, 4, 5, 29, 6, 7, 220,
- 284, 59, 8, 59, 59, 192, 7, 186, 187, 59,
- 8, 202, 340, 59, 456, 35, 461, 251, 203, 260,
- 85, 86, 36, 37, 38, 39, 91, 279, 280, 147,
- 148, 204, 154, 155, 156, 157, 158, 159, 160, 293,
- 205, 163, 304, 144, 169, 290, 4, 5, 208, 168,
- 377, 40, 41, 210, 294, 221, 42, 43, 7, 249,
- 250, 236, 8, 177, 184, 178, 289, 44, 45, 305,
- 46, 173, 177, 174, 178, 292, 170, 171, 293, 66,
- 67, 68, 306, 188, 189, 307, 177, 373, 178, 336,
- 293, 4, 5, 294, 177, 337, 178, 209, 133, 195,
- 196, 467, 342, 7, 372, 294, 471, 8, 474, 237,
- 238, 239, 240, 241, 242, 219, 483, 206, 207, 375,
- 363, 364, 5, 5, 211, 212, 379, 213, 378, 381,
- 215, 217, 460, 7, 7, 222, 223, 8, 8, 497,
- 124, 234, 400, 444, 245, 401, 248, 141, 403, 291,
- 343, 499, 5, 243, 410, 301, 134, 135, 136, 137,
- 138, 139, 140, 7, 426, 126, 288, 8, 26, 181,
- 297, 298, 299, 300, 24, 27, 433, 263, 443, 28,
- 24, 439, 459, 29, 479, 493, 256, 70, 71, 72,
- 235, 257, 335, 371, 286, 0, 73, 74, 75, 76,
- 77, 78, 79, 69, 452, 64, 65, 66, 67, 68,
- 117, 0, 0, 0, 0, 308, 73, 74, 75, 76,
- 77, 78, 79, 82, 118, 119, 129, 338, 0, 0,
- 89, 90, 367, 92, 0, 94, 367, 4, 5, 0,
- 0, 0, 380, 70, 71, 72, 0, 26, 130, 7,
- 70, 71, 72, 8, 27, 0, 0, 0, 28, 0,
- 0, 0, 29, 0, 402, 0, 70, 71, 72, 407,
- 0, 0, 73, 74, 75, 76, 77, 78, 79, 73,
- 74, 75, 76, 77, 78, 79, 0, 0, 70, 71,
- 72, 0, 0, 0, 0, 73, 74, 75, 76, 77,
- 78, 79, 0, 0, 409, 0, 0, 0, 104, 411,
- 237, 238, 239, 240, 241, 242, 416, 73, 74, 75,
- 76, 77, 78, 79, 436, 0, 432, 123, 26, 0,
- 127, 128, 0, 0, 131, 27, 430, 142, 431, 28,
- 0, 451, 0, 29, 0, 435, 0, 0, 132, 0,
- 0, 0, 0, 0, 243, 0, 0, 469, 0, 437,
- 438, 0, 0, 441, 442, 0, 446, 0, 447, 0,
- 449, 450, 0, 0, 0, 453, 454, 488, 455, 0,
- 0, 0, 0, 464, 465, 0, 0, 468, 70, 71,
- 72, 0, 472, 473, 475, 0, 0, 478, 390, 0,
- 392, 482, 484, 0, 486, 0, 398, 120, 122, 120,
- 120, 122, 122, 491, 0, 120, 0, 73, 74, 75,
- 76, 77, 78, 79, 0, 0, 0, 412, 413, 414,
- 415, 0, 267, 417, 418, 0, 419, 0, 420, 421,
- 422, 423, 424, 277, 425, 268, 269, 270, 271, 427,
- 428, 429, 303, 0, 0, 0, 268, 269, 270, 271,
- 0, 0, 0, 0, 0, 268, 269, 270, 271, 0,
- 272, 0, 273, 274, 275, 276, 0, 0, 0, 457,
- 0, 272, 462, 273, 274, 275, 276, 0, 0, 0,
- 272, 0, 273, 274, 275, 276, 477, 0, 26, 218,
- 481, 0, 0, 485, 0, 27, 0, 487, 309, 28,
- 0, 489, 490, 29, 310, 492, 0, 0, 0, 0,
- 494, 0, 0, 0, 311, 312, 313, 314, 315, 316,
- 317, 318, 319, 320, 321, 322, 323, 324, 325, 326,
- 327, 328, 329, 330, 331, 339, 332, 0, 0, 0,
- 0, 310, 48, 49, 50, 51, 52, 53, 54, 55,
- 0, 311, 312, 313, 314, 315, 316, 317, 318, 319,
- 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
- 330, 331, 376, 332, 0, 0, 0, 0, 310, 0,
- 61, 62, 63, 64, 65, 66, 67, 68, 311, 312,
- 313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
- 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
- 332, 346, 347, 348, 349, 0, 351, 352, 0, 354,
- 0, 356, 357, 358, 359, 360, 0, 362, 0, 368,
- 369, 370, 61, 62, 63, 64, 65, 66, 67, 68,
- 0, 0, 0, 0, 0, 81, 61, 62, 63, 64,
- 65, 66, 67, 68, 0, 0, 0, 0, 0, 103,
- 73, 74, 75, 76, 77, 78, 79, 0, 118, 119,
- 62, 63, 64, 65, 66, 67, 68, 63, 64, 65,
- 66, 67, 68, 224, 225, 226, 227, 228, 229, 237,
- 238, 239, 240, 241, 242
-};
-
-static const short yycheck[] =
-{
- 2, 141, 23, 4, 216, 1, 263, 4, 292, 4,
- 4, 3, 3, 0, 49, 233, 440, 3, 49, 7,
- 8, 3, 3, 230, 3, 95, 85, 23, 6, 7,
- 8, 9, 10, 11, 4, 247, 95, 255, 4, 27,
- 28, 29, 466, 4, 251, 80, 470, 40, 41, 80,
- 262, 48, 336, 50, 96, 4, 43, 59, 4, 30,
- 48, 49, 50, 51, 52, 53, 54, 55, 70, 71,
- 72, 495, 59, 61, 62, 63, 64, 65, 66, 67,
- 68, 82, 48, 95, 50, 80, 277, 82, 89, 373,
- 80, 80, 93, 305, 81, 82, 97, 84, 93, 71,
- 70, 95, 97, 95, 95, 95, 93, 68, 69, 95,
- 97, 80, 303, 95, 95, 5, 95, 95, 95, 4,
- 38, 39, 12, 13, 14, 15, 44, 4, 4, 125,
- 126, 3, 134, 135, 136, 137, 138, 139, 140, 82,
- 3, 143, 4, 114, 146, 80, 81, 82, 80, 145,
- 4, 41, 42, 95, 97, 70, 46, 47, 93, 3,
- 80, 3, 97, 48, 152, 50, 80, 57, 58, 3,
- 60, 48, 48, 50, 50, 79, 147, 148, 82, 90,
- 91, 92, 4, 154, 155, 80, 48, 79, 50, 85,
- 82, 81, 82, 97, 48, 95, 50, 193, 3, 170,
- 171, 458, 95, 93, 98, 97, 463, 97, 465, 51,
- 52, 53, 54, 55, 56, 203, 473, 188, 189, 80,
- 80, 81, 82, 82, 195, 196, 95, 198, 80, 95,
- 201, 202, 4, 93, 93, 206, 207, 97, 97, 496,
- 16, 212, 95, 3, 215, 95, 217, 3, 95, 270,
- 80, 0, 82, 95, 95, 276, 61, 62, 63, 64,
- 65, 66, 67, 93, 95, 86, 268, 97, 82, 83,
- 272, 273, 274, 275, 270, 89, 95, 248, 95, 93,
- 276, 432, 95, 97, 95, 95, 236, 43, 44, 45,
- 213, 243, 294, 332, 265, -1, 72, 73, 74, 75,
- 76, 77, 78, 3, 444, 88, 89, 90, 91, 92,
- 3, -1, -1, -1, -1, 286, 72, 73, 74, 75,
- 76, 77, 78, 35, 80, 81, 3, 298, -1, -1,
- 42, 43, 328, 45, -1, 47, 332, 81, 82, -1,
- -1, -1, 344, 43, 44, 45, -1, 82, 3, 93,
- 43, 44, 45, 97, 89, -1, -1, -1, 93, -1,
- -1, -1, 97, -1, 366, -1, 43, 44, 45, 371,
- -1, -1, 72, 73, 74, 75, 76, 77, 78, 72,
- 73, 74, 75, 76, 77, 78, -1, -1, 43, 44,
- 45, -1, -1, -1, -1, 72, 73, 74, 75, 76,
- 77, 78, -1, -1, 375, -1, -1, -1, 410, 380,
- 51, 52, 53, 54, 55, 56, 387, 72, 73, 74,
- 75, 76, 77, 78, 426, -1, 80, 84, 82, -1,
- 87, 88, -1, -1, 91, 89, 407, 94, 409, 93,
- -1, 443, -1, 97, -1, 416, -1, -1, 3, -1,
- -1, -1, -1, -1, 95, -1, -1, 459, -1, 430,
- 431, -1, -1, 434, 435, -1, 437, -1, 439, -1,
- 441, 442, -1, -1, -1, 446, 447, 479, 449, -1,
- -1, -1, -1, 454, 455, -1, -1, 458, 43, 44,
- 45, -1, 463, 464, 465, -1, -1, 468, 353, -1,
- 355, 472, 473, -1, 475, -1, 361, 83, 84, 85,
- 86, 87, 88, 484, -1, 91, -1, 72, 73, 74,
- 75, 76, 77, 78, -1, -1, -1, 382, 383, 384,
- 385, -1, 3, 388, 389, -1, 391, -1, 393, 394,
- 395, 396, 397, 3, 399, 16, 17, 18, 19, 404,
- 405, 406, 3, -1, -1, -1, 16, 17, 18, 19,
- -1, -1, -1, -1, -1, 16, 17, 18, 19, -1,
- 41, -1, 43, 44, 45, 46, -1, -1, -1, 450,
- -1, 41, 453, 43, 44, 45, 46, -1, -1, -1,
- 41, -1, 43, 44, 45, 46, 467, -1, 82, 83,
- 471, -1, -1, 474, -1, 89, -1, 478, 4, 93,
- -1, 482, 483, 97, 10, 486, -1, -1, -1, -1,
- 491, -1, -1, -1, 20, 21, 22, 23, 24, 25,
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
- 36, 37, 38, 39, 40, 4, 42, -1, -1, -1,
- -1, 10, 85, 86, 87, 88, 89, 90, 91, 92,
- -1, 20, 21, 22, 23, 24, 25, 26, 27, 28,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 4, 42, -1, -1, -1, -1, 10, -1,
- 85, 86, 87, 88, 89, 90, 91, 92, 20, 21,
- 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
- 32, 33, 34, 35, 36, 37, 38, 39, 40, -1,
- 42, 311, 312, 313, 314, -1, 316, 317, -1, 319,
- -1, 321, 322, 323, 324, 325, -1, 327, -1, 329,
- 330, 331, 85, 86, 87, 88, 89, 90, 91, 92,
- -1, -1, -1, -1, -1, 98, 85, 86, 87, 88,
- 89, 90, 91, 92, -1, -1, -1, -1, -1, 98,
- 72, 73, 74, 75, 76, 77, 78, -1, 80, 81,
- 86, 87, 88, 89, 90, 91, 92, 87, 88, 89,
- 90, 91, 92, 6, 7, 8, 9, 10, 11, 51,
- 52, 53, 54, 55, 56
-};
-/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
-#line 3 "/usr/share/bison-1.35/bison.simple"
-
-/* Skeleton output parser for bison,
-
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software
- Foundation, Inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-/* As a special exception, when this file is copied by Bison into a
- Bison output file, you may use that output file without restriction.
- This special exception was added by the Free Software Foundation
- in version 1.24 of Bison. */
-
-/* This is the parser code that is written into each bison parser when
- the %semantic_parser declaration is not specified in the grammar.
- It was written by Richard Stallman by simplifying the hairy parser
- used when %semantic_parser is specified. */
-
-/* All symbols defined below should begin with yy or YY, to avoid
- infringing on user name space. This should be done even for local
- variables, as they might otherwise be expanded by user macros.
- There are some unavoidable exceptions within include files to
- define necessary library symbols; they are noted "INFRINGES ON
- USER NAME SPACE" below. */
+#ifndef YY_
+# if YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_(msgid) dgettext ("bison-runtime", msgid)
+# endif
+# endif
+# ifndef YY_
+# define YY_(msgid) msgid
+# endif
+#endif
-#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE)
+#if ! defined (yyoverflow) || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
-# if YYSTACK_USE_ALLOCA
-# define YYSTACK_ALLOC alloca
-# else
-# ifndef YYSTACK_USE_ALLOCA
-# if defined (alloca) || defined (_ALLOCA_H)
-# define YYSTACK_ALLOC alloca
+# ifdef YYSTACK_USE_ALLOCA
+# if YYSTACK_USE_ALLOCA
+# ifdef __GNUC__
+# define YYSTACK_ALLOC __builtin_alloca
# else
-# ifdef __GNUC__
-# define YYSTACK_ALLOC __builtin_alloca
+# define YYSTACK_ALLOC alloca
+# if defined (__STDC__) || defined (__cplusplus)
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# define YYINCLUDED_STDLIB_H
# endif
# endif
# endif
@@ -878,57 +415,74 @@ static const short yycheck[] =
# ifdef YYSTACK_ALLOC
/* Pacify GCC's `empty if-body' warning. */
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+# ifndef YYSTACK_ALLOC_MAXIMUM
+ /* The OS might guarantee only one guard page at the bottom of the stack,
+ and a page size can be as small as 4096 bytes. So we cannot safely
+ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
+ to allow for a few compiler-allocated temporary stack slots. */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
+# endif
# else
-# if defined (__STDC__) || defined (__cplusplus)
-# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
+# define YYSTACK_ALLOC YYMALLOC
+# define YYSTACK_FREE YYFREE
+# ifndef YYSTACK_ALLOC_MAXIMUM
+# define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
+# endif
+# ifdef __cplusplus
+extern "C" {
+# endif
+# ifndef YYMALLOC
+# define YYMALLOC malloc
+# if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
+ && (defined (__STDC__) || defined (__cplusplus)))
+void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# ifndef YYFREE
+# define YYFREE free
+# if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
+ && (defined (__STDC__) || defined (__cplusplus)))
+void free (void *); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# ifdef __cplusplus
+}
# endif
-# define YYSTACK_ALLOC malloc
-# define YYSTACK_FREE free
# endif
-#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */
+#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
#if (! defined (yyoverflow) \
&& (! defined (__cplusplus) \
- || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+ || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
- short yyss;
+ short int yyss;
YYSTYPE yyvs;
-# if YYLSP_NEEDED
- YYLTYPE yyls;
-# endif
-};
+ };
/* The size of the maximum gap between one aligned stack and the next. */
-# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1)
+# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
/* The size of an array large to enough to hold all stacks, each with
N elements. */
-# if YYLSP_NEEDED
-# define YYSTACK_BYTES(N) \
- ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
- + 2 * YYSTACK_GAP_MAX)
-# else
-# define YYSTACK_BYTES(N) \
- ((N) * (sizeof (short) + sizeof (YYSTYPE)) \
- + YYSTACK_GAP_MAX)
-# endif
+# define YYSTACK_BYTES(N) \
+ ((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
+ + YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
-# if 1 < __GNUC__
+# if defined (__GNUC__) && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
- register YYSIZE_T yyi; \
+ YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
@@ -947,98 +501,823 @@ union yyalloc
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack, Stack, yysize); \
Stack = &yyptr->Stack; \
- yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \
+ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)
#endif
+#if defined (__STDC__) || defined (__cplusplus)
+ typedef signed char yysigned_char;
+#else
+ typedef short int yysigned_char;
+#endif
-#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-# define YYSIZE_T __SIZE_TYPE__
+/* YYFINAL -- State number of the termination state. */
+#define YYFINAL 2
+/* YYLAST -- Last index in YYTABLE. */
+#define YYLAST 792
+
+/* YYNTOKENS -- Number of terminals. */
+#define YYNTOKENS 99
+/* YYNNTS -- Number of nonterminals. */
+#define YYNNTS 91
+/* YYNRULES -- Number of rules. */
+#define YYNRULES 247
+/* YYNRULES -- Number of states. */
+#define YYNSTATES 500
+
+/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
+#define YYUNDEFTOK 2
+#define YYMAXUTOK 340
+
+#define YYTRANSLATE(YYX) \
+ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
+
+/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
+static const unsigned char yytranslate[] =
+{
+ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 92, 87, 2,
+ 97, 98, 90, 88, 95, 89, 2, 91, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 96, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 86, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 85, 2, 93, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
+ 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
+ 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
+ 94
+};
+
+#if YYDEBUG
+/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
+ YYRHS. */
+static const unsigned short int yyprhs[] =
+{
+ 0, 0, 3, 4, 7, 10, 13, 16, 19, 22,
+ 25, 28, 31, 34, 37, 40, 43, 46, 49, 56,
+ 57, 60, 63, 68, 70, 72, 74, 78, 81, 83,
+ 85, 87, 89, 91, 93, 98, 103, 104, 118, 119,
+ 133, 134, 149, 150, 154, 155, 159, 163, 167, 171,
+ 175, 181, 188, 196, 205, 209, 213, 218, 222, 223,
+ 226, 227, 232, 233, 238, 239, 244, 245, 250, 251,
+ 256, 257, 261, 273, 286, 299, 313, 314, 319, 320,
+ 325, 326, 330, 331, 336, 337, 342, 349, 358, 369,
+ 381, 382, 387, 388, 392, 393, 398, 399, 404, 405,
+ 410, 411, 416, 417, 422, 423, 427, 428, 433, 434,
+ 450, 457, 466, 476, 477, 480, 482, 485, 486, 490,
+ 491, 495, 496, 500, 501, 505, 510, 515, 519, 526,
+ 527, 530, 535, 538, 545, 546, 550, 553, 555, 557,
+ 559, 561, 563, 565, 572, 573, 576, 579, 583, 589,
+ 592, 598, 605, 613, 623, 628, 635, 640, 641, 644,
+ 645, 647, 649, 651, 655, 659, 660, 667, 668, 672,
+ 677, 684, 689, 696, 697, 704, 711, 715, 719, 723,
+ 727, 731, 732, 741, 749, 750, 756, 757, 761, 763,
+ 765, 767, 770, 773, 776, 778, 779, 782, 786, 791,
+ 795, 796, 799, 800, 803, 805, 807, 809, 811, 813,
+ 815, 817, 819, 821, 823, 826, 830, 835, 837, 841,
+ 842, 844, 847, 849, 851, 855, 858, 861, 865, 869,
+ 873, 877, 881, 885, 889, 893, 896, 898, 900, 904,
+ 907, 911, 915, 919, 923, 927, 931, 935
+};
+
+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
+static const short int yyrhs[] =
+{
+ 100, 0, -1, -1, 100, 101, -1, 100, 107, -1,
+ 100, 108, -1, 100, 109, -1, 100, 147, -1, 100,
+ 148, -1, 100, 149, -1, 100, 150, -1, 100, 155,
+ -1, 100, 158, -1, 100, 159, -1, 100, 164, -1,
+ 100, 167, -1, 100, 168, -1, 100, 84, -1, 173,
+ 5, 176, 3, 102, 4, -1, -1, 102, 103, -1,
+ 104, 187, -1, 104, 187, 95, 105, -1, 80, -1,
+ 188, -1, 106, -1, 105, 95, 106, -1, 105, 106,
+ -1, 6, -1, 7, -1, 8, -1, 9, -1, 10,
+ -1, 11, -1, 173, 12, 178, 180, -1, 173, 13,
+ 177, 180, -1, -1, 173, 14, 178, 113, 188, 184,
+ 184, 184, 110, 114, 3, 115, 4, -1, -1, 173,
+ 15, 178, 113, 188, 184, 184, 184, 111, 114, 3,
+ 115, 4, -1, -1, 173, 15, 178, 113, 188, 184,
+ 184, 184, 184, 112, 114, 3, 115, 4, -1, -1,
+ 16, 96, 185, -1, -1, 114, 17, 80, -1, 114,
+ 18, 173, -1, 114, 19, 181, -1, 114, 16, 185,
+ -1, 114, 18, 80, -1, 114, 41, 185, 95, 80,
+ -1, 114, 41, 185, 95, 80, 184, -1, 114, 41,
+ 185, 95, 80, 184, 184, -1, 114, 41, 185, 95,
+ 80, 184, 184, 184, -1, 114, 46, 173, -1, 114,
+ 44, 185, -1, 114, 43, 185, 184, -1, 114, 45,
+ 185, -1, -1, 115, 116, -1, -1, 20, 139, 117,
+ 138, -1, -1, 21, 139, 118, 138, -1, -1, 22,
+ 139, 119, 138, -1, -1, 38, 139, 120, 138, -1,
+ -1, 23, 139, 121, 138, -1, -1, 24, 122, 138,
+ -1, 10, 139, 185, 184, 141, 184, 184, 184, 184,
+ 183, 140, -1, 10, 139, 185, 184, 141, 184, 184,
+ 184, 184, 184, 184, 140, -1, 10, 139, 185, 95,
+ 80, 141, 184, 184, 184, 184, 183, 140, -1, 10,
+ 139, 185, 95, 80, 141, 184, 184, 184, 184, 184,
+ 184, 140, -1, -1, 25, 139, 123, 138, -1, -1,
+ 26, 139, 124, 138, -1, -1, 27, 125, 138, -1,
+ -1, 28, 139, 126, 138, -1, -1, 39, 139, 127,
+ 138, -1, 42, 175, 185, 184, 184, 140, -1, 42,
+ 175, 185, 184, 184, 184, 184, 140, -1, 42, 175,
+ 185, 184, 184, 184, 184, 143, 183, 140, -1, 42,
+ 175, 185, 184, 184, 184, 184, 143, 184, 184, 140,
+ -1, -1, 40, 139, 128, 138, -1, -1, 29, 129,
+ 138, -1, -1, 30, 139, 130, 138, -1, -1, 31,
+ 139, 131, 138, -1, -1, 32, 139, 132, 138, -1,
+ -1, 33, 139, 133, 138, -1, -1, 34, 139, 134,
+ 138, -1, -1, 35, 135, 138, -1, -1, 36, 139,
+ 136, 138, -1, -1, 37, 175, 185, 95, 185, 95,
+ 185, 95, 185, 95, 185, 95, 137, 181, 183, -1,
+ 185, 184, 184, 184, 184, 140, -1, 185, 184, 184,
+ 184, 184, 145, 183, 140, -1, 185, 184, 184, 184,
+ 184, 145, 184, 184, 140, -1, -1, 188, 95, -1,
+ 80, -1, 80, 95, -1, -1, 3, 160, 4, -1,
+ -1, 95, 142, 181, -1, -1, 95, 144, 181, -1,
+ -1, 95, 146, 181, -1, 173, 41, 177, 180, -1,
+ 173, 42, 177, 180, -1, 43, 185, 184, -1, 173,
+ 46, 176, 3, 151, 4, -1, -1, 151, 152, -1,
+ 48, 80, 184, 153, -1, 48, 49, -1, 50, 80,
+ 153, 3, 151, 4, -1, -1, 153, 95, 154, -1,
+ 153, 154, -1, 51, -1, 52, -1, 53, -1, 54,
+ -1, 55, -1, 56, -1, 173, 47, 176, 3, 156,
+ 4, -1, -1, 156, 157, -1, 48, 80, -1, 48,
+ 80, 184, -1, 48, 80, 184, 184, 183, -1, 48,
+ 49, -1, 50, 80, 3, 156, 4, -1, 50, 80,
+ 184, 3, 156, 4, -1, 50, 80, 184, 184, 3,
+ 156, 4, -1, 50, 80, 184, 184, 184, 183, 3,
+ 156, 4, -1, 173, 57, 178, 180, -1, 173, 58,
+ 176, 3, 160, 4, -1, 173, 58, 176, 180, -1,
+ -1, 161, 162, -1, -1, 163, -1, 83, -1, 186,
+ -1, 163, 95, 83, -1, 163, 95, 186, -1, -1,
+ 59, 176, 3, 165, 166, 4, -1, -1, 166, 185,
+ 80, -1, 166, 185, 95, 80, -1, 173, 173, 176,
+ 3, 160, 4, -1, 173, 173, 176, 180, -1, 173,
+ 60, 169, 3, 170, 4, -1, -1, 169, 61, 185,
+ 184, 184, 184, -1, 169, 62, 185, 184, 184, 184,
+ -1, 169, 63, 185, -1, 169, 64, 185, -1, 169,
+ 65, 185, -1, 169, 66, 185, -1, 169, 67, 185,
+ -1, -1, 170, 68, 3, 71, 3, 171, 4, 4,
+ -1, 170, 69, 3, 70, 80, 172, 4, -1, -1,
+ 171, 70, 80, 95, 80, -1, -1, 172, 184, 184,
+ -1, 188, -1, 81, -1, 80, -1, 80, 95, -1,
+ 81, 95, -1, 188, 95, -1, 174, -1, -1, 176,
+ 179, -1, 176, 44, 185, -1, 176, 43, 185, 184,
+ -1, 176, 45, 185, -1, -1, 177, 179, -1, -1,
+ 178, 179, -1, 72, -1, 73, -1, 74, -1, 75,
+ -1, 76, -1, 77, -1, 78, -1, 80, -1, 81,
+ -1, 182, -1, 79, 182, -1, 181, 85, 182, -1,
+ 181, 85, 79, 182, -1, 82, -1, 97, 185, 98,
+ -1, -1, 184, -1, 95, 185, -1, 186, -1, 82,
+ -1, 97, 186, 98, -1, 93, 186, -1, 89, 186,
+ -1, 186, 90, 186, -1, 186, 91, 186, -1, 186,
+ 92, 186, -1, 186, 88, 186, -1, 186, 89, 186,
+ -1, 186, 87, 186, -1, 186, 86, 186, -1, 186,
+ 85, 186, -1, 95, 188, -1, 189, -1, 82, -1,
+ 97, 186, 98, -1, 93, 186, -1, 189, 90, 186,
+ -1, 189, 91, 186, -1, 189, 92, 186, -1, 189,
+ 88, 186, -1, 189, 89, 186, -1, 189, 87, 186,
+ -1, 189, 86, 186, -1, 189, 85, 186, -1
+};
+
+/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
+static const unsigned short int yyrline[] =
+{
+ 0, 161, 161, 163, 164, 165, 166, 167, 168, 169,
+ 170, 171, 172, 173, 174, 175, 176, 177, 183, 194,
+ 197, 218, 223, 235, 256, 266, 270, 275, 282, 286,
+ 291, 295, 299, 303, 312, 324, 338, 336, 363, 361,
+ 390, 388, 420, 423, 429, 431, 437, 441, 446, 450,
+ 454, 467, 482, 497, 512, 516, 520, 524, 530, 532,
+ 544, 543, 555, 554, 566, 565, 577, 576, 591, 590,
+ 602, 601, 614, 625, 634, 647, 659, 658, 670, 669,
+ 681, 680, 692, 691, 703, 702, 716, 721, 727, 733,
+ 740, 739, 754, 753, 765, 764, 776, 775, 786, 785,
+ 797, 796, 808, 807, 819, 818, 830, 829, 842, 840,
+ 858, 869, 880, 893, 896, 901, 905, 913, 916, 926,
+ 925, 932, 931, 938, 937, 945, 957, 970, 979, 990,
+ 993, 1010, 1014, 1018, 1026, 1029, 1033, 1040, 1044, 1048,
+ 1052, 1056, 1060, 1069, 1080, 1083, 1100, 1104, 1108, 1112,
+ 1116, 1120, 1124, 1128, 1138, 1150, 1157, 1170, 1170, 1182,
+ 1186, 1193, 1201, 1209, 1218, 1233, 1232, 1237, 1239, 1246,
+ 1259, 1266, 1278, 1289, 1294, 1300, 1306, 1311, 1316, 1321,
+ 1326, 1341, 1344, 1348, 1356, 1359, 1367, 1370, 1379, 1384,
+ 1400, 1404, 1408, 1416, 1421, 1439, 1445, 1451, 1456, 1461,
+ 1472, 1477, 1489, 1494, 1506, 1511, 1516, 1521, 1526, 1531,
+ 1536, 1546, 1550, 1567, 1571, 1575, 1579, 1586, 1590, 1600,
+ 1603, 1612, 1621, 1630, 1634, 1638, 1643, 1648, 1653, 1658,
+ 1663, 1668, 1673, 1678, 1683, 1694, 1703, 1714, 1718, 1722,
+ 1727, 1732, 1737, 1742, 1747, 1752, 1757, 1762
+};
#endif
-#if ! defined (YYSIZE_T) && defined (size_t)
-# define YYSIZE_T size_t
+
+#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
+/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+static const char *const yytname[] =
+{
+ "$end", "error", "$undefined", "BEG", "END", "ACCELERATORS", "VIRTKEY",
+ "ASCII", "NOINVERT", "SHIFT", "CONTROL", "ALT", "BITMAP", "CURSOR",
+ "DIALOG", "DIALOGEX", "EXSTYLE", "CAPTION", "CLASS", "STYLE",
+ "AUTO3STATE", "AUTOCHECKBOX", "AUTORADIOBUTTON", "CHECKBOX", "COMBOBOX",
+ "CTEXT", "DEFPUSHBUTTON", "EDITTEXT", "GROUPBOX", "LISTBOX", "LTEXT",
+ "PUSHBOX", "PUSHBUTTON", "RADIOBUTTON", "RTEXT", "SCROLLBAR", "STATE3",
+ "USERBUTTON", "BEDIT", "HEDIT", "IEDIT", "FONT", "ICON", "LANGUAGE",
+ "CHARACTERISTICS", "VERSIONK", "MENU", "MENUEX", "MENUITEM", "SEPARATOR",
+ "POPUP", "CHECKED", "GRAYED", "HELP", "INACTIVE", "MENUBARBREAK",
+ "MENUBREAK", "MESSAGETABLE", "RCDATA", "STRINGTABLE", "VERSIONINFO",
+ "FILEVERSION", "PRODUCTVERSION", "FILEFLAGSMASK", "FILEFLAGS", "FILEOS",
+ "FILETYPE", "FILESUBTYPE", "BLOCKSTRINGFILEINFO", "BLOCKVARFILEINFO",
+ "VALUE", "BLOCK", "MOVEABLE", "FIXED", "PURE", "IMPURE", "PRELOAD",
+ "LOADONCALL", "DISCARDABLE", "NOT", "QUOTEDSTRING", "STRING", "NUMBER",
+ "SIZEDSTRING", "IGNORED_TOKEN", "'|'", "'^'", "'&'", "'+'", "'-'", "'*'",
+ "'/'", "'%'", "'~'", "NEG", "','", "'='", "'('", "')'", "$accept",
+ "input", "accelerator", "acc_entries", "acc_entry", "acc_event",
+ "acc_options", "acc_option", "bitmap", "cursor", "dialog", "@1", "@2",
+ "@3", "exstyle", "styles", "controls", "control", "@4", "@5", "@6", "@7",
+ "@8", "@9", "@10", "@11", "@12", "@13", "@14", "@15", "@16", "@17",
+ "@18", "@19", "@20", "@21", "@22", "@23", "@24", "control_params",
+ "optresidc", "opt_control_data", "control_styleexpr", "@25",
+ "icon_styleexpr", "@26", "control_params_styleexpr", "@27", "font",
+ "icon", "language", "menu", "menuitems", "menuitem", "menuitem_flags",
+ "menuitem_flag", "menuex", "menuexitems", "menuexitem", "messagetable",
+ "rcdata", "optrcdata_data", "@28", "optrcdata_data_int", "rcdata_data",
+ "stringtable", "@29", "string_data", "user", "versioninfo",
+ "fixedverinfo", "verblocks", "vervals", "vertrans", "id", "resname",
+ "resref", "suboptions", "memflags_move_discard", "memflags_move",
+ "memflag", "file_name", "styleexpr", "parennumber", "optcnumexpr",
+ "cnumexpr", "numexpr", "sizednumexpr", "cposnumexpr", "posnumexpr",
+ "sizedposnumexpr", 0
+};
#endif
-#if ! defined (YYSIZE_T)
-# if defined (__STDC__) || defined (__cplusplus)
-# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-# define YYSIZE_T size_t
+
+# ifdef YYPRINT
+/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
+ token YYLEX-NUM. */
+static const unsigned short int yytoknum[] =
+{
+ 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 124, 94, 38, 43, 45,
+ 42, 47, 37, 126, 340, 44, 61, 40, 41
+};
# endif
-#endif
-#if ! defined (YYSIZE_T)
-# define YYSIZE_T unsigned int
-#endif
+
+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
+static const unsigned char yyr1[] =
+{
+ 0, 99, 100, 100, 100, 100, 100, 100, 100, 100,
+ 100, 100, 100, 100, 100, 100, 100, 100, 101, 102,
+ 102, 103, 103, 104, 104, 105, 105, 105, 106, 106,
+ 106, 106, 106, 106, 107, 108, 110, 109, 111, 109,
+ 112, 109, 113, 113, 114, 114, 114, 114, 114, 114,
+ 114, 114, 114, 114, 114, 114, 114, 114, 115, 115,
+ 117, 116, 118, 116, 119, 116, 120, 116, 121, 116,
+ 122, 116, 116, 116, 116, 116, 123, 116, 124, 116,
+ 125, 116, 126, 116, 127, 116, 116, 116, 116, 116,
+ 128, 116, 129, 116, 130, 116, 131, 116, 132, 116,
+ 133, 116, 134, 116, 135, 116, 136, 116, 137, 116,
+ 138, 138, 138, 139, 139, 139, 139, 140, 140, 142,
+ 141, 144, 143, 146, 145, 147, 148, 149, 150, 151,
+ 151, 152, 152, 152, 153, 153, 153, 154, 154, 154,
+ 154, 154, 154, 155, 156, 156, 157, 157, 157, 157,
+ 157, 157, 157, 157, 158, 159, 159, 161, 160, 162,
+ 162, 163, 163, 163, 163, 165, 164, 166, 166, 166,
+ 167, 167, 168, 169, 169, 169, 169, 169, 169, 169,
+ 169, 170, 170, 170, 171, 171, 172, 172, 173, 173,
+ 174, 174, 174, 175, 175, 176, 176, 176, 176, 176,
+ 177, 177, 178, 178, 179, 179, 179, 179, 179, 179,
+ 179, 180, 180, 181, 181, 181, 181, 182, 182, 183,
+ 183, 184, 185, 186, 186, 186, 186, 186, 186, 186,
+ 186, 186, 186, 186, 186, 187, 188, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189
+};
+
+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
+static const unsigned char yyr2[] =
+{
+ 0, 2, 0, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 6, 0,
+ 2, 2, 4, 1, 1, 1, 3, 2, 1, 1,
+ 1, 1, 1, 1, 4, 4, 0, 13, 0, 13,
+ 0, 14, 0, 3, 0, 3, 3, 3, 3, 3,
+ 5, 6, 7, 8, 3, 3, 4, 3, 0, 2,
+ 0, 4, 0, 4, 0, 4, 0, 4, 0, 4,
+ 0, 3, 11, 12, 12, 13, 0, 4, 0, 4,
+ 0, 3, 0, 4, 0, 4, 6, 8, 10, 11,
+ 0, 4, 0, 3, 0, 4, 0, 4, 0, 4,
+ 0, 4, 0, 4, 0, 3, 0, 4, 0, 15,
+ 6, 8, 9, 0, 2, 1, 2, 0, 3, 0,
+ 3, 0, 3, 0, 3, 4, 4, 3, 6, 0,
+ 2, 4, 2, 6, 0, 3, 2, 1, 1, 1,
+ 1, 1, 1, 6, 0, 2, 2, 3, 5, 2,
+ 5, 6, 7, 9, 4, 6, 4, 0, 2, 0,
+ 1, 1, 1, 3, 3, 0, 6, 0, 3, 4,
+ 6, 4, 6, 0, 6, 6, 3, 3, 3, 3,
+ 3, 0, 8, 7, 0, 5, 0, 3, 1, 1,
+ 1, 2, 2, 2, 1, 0, 2, 3, 4, 3,
+ 0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 2, 3, 4, 1, 3, 0,
+ 1, 2, 1, 1, 3, 2, 2, 3, 3, 3,
+ 3, 3, 3, 3, 3, 2, 1, 1, 3, 2,
+ 3, 3, 3, 3, 3, 3, 3, 3
+};
+
+/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
+ STATE-NUM when YYTABLE doesn't specify something else to do. Zero
+ means the default is an error. */
+static const unsigned char yydefact[] =
+{
+ 2, 0, 1, 0, 195, 189, 237, 17, 0, 0,
+ 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 0, 188, 236, 223, 0, 0,
+ 0, 0, 222, 0, 239, 0, 195, 202, 200, 202,
+ 202, 200, 200, 195, 195, 202, 195, 173, 195, 0,
+ 0, 0, 0, 0, 0, 0, 0, 226, 225, 0,
+ 0, 127, 0, 0, 0, 0, 0, 0, 0, 0,
+ 165, 0, 0, 0, 204, 205, 206, 207, 208, 209,
+ 210, 196, 238, 0, 0, 0, 42, 42, 0, 0,
+ 0, 0, 0, 0, 0, 0, 247, 246, 245, 243,
+ 244, 240, 241, 242, 224, 221, 234, 233, 232, 230,
+ 231, 227, 228, 229, 167, 0, 197, 199, 19, 211,
+ 212, 203, 34, 201, 35, 0, 0, 0, 125, 126,
+ 129, 144, 154, 157, 156, 181, 0, 0, 0, 0,
+ 0, 0, 0, 157, 171, 0, 198, 0, 0, 0,
+ 0, 0, 0, 0, 159, 0, 0, 0, 176, 177,
+ 178, 179, 180, 0, 166, 0, 18, 23, 20, 0,
+ 24, 43, 0, 0, 128, 0, 0, 130, 143, 0,
+ 0, 145, 155, 161, 158, 160, 162, 172, 0, 0,
+ 0, 0, 170, 168, 0, 0, 21, 0, 0, 132,
+ 0, 134, 149, 146, 0, 0, 0, 0, 0, 0,
+ 169, 235, 0, 36, 38, 134, 0, 147, 144, 0,
+ 163, 164, 0, 0, 174, 175, 28, 29, 30, 31,
+ 32, 33, 22, 25, 44, 44, 40, 131, 129, 137,
+ 138, 139, 140, 141, 142, 0, 136, 219, 0, 144,
+ 0, 184, 186, 0, 27, 0, 0, 44, 0, 135,
+ 148, 220, 150, 0, 144, 219, 0, 0, 26, 58,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 58,
+ 0, 133, 151, 0, 0, 0, 0, 183, 0, 0,
+ 48, 45, 49, 46, 0, 217, 0, 47, 213, 0,
+ 0, 55, 57, 54, 0, 58, 152, 144, 182, 0,
+ 187, 37, 113, 113, 113, 113, 113, 70, 113, 113,
+ 80, 113, 92, 113, 113, 113, 113, 113, 104, 113,
+ 0, 113, 113, 113, 0, 59, 214, 0, 0, 0,
+ 56, 39, 0, 0, 0, 115, 0, 0, 60, 62,
+ 64, 68, 0, 76, 78, 0, 82, 0, 94, 96,
+ 98, 100, 102, 0, 106, 190, 0, 194, 0, 0,
+ 66, 84, 90, 0, 218, 0, 215, 50, 41, 153,
+ 185, 116, 0, 114, 0, 0, 0, 0, 71, 0,
+ 0, 0, 81, 0, 93, 0, 0, 0, 0, 0,
+ 105, 0, 191, 192, 0, 193, 0, 0, 0, 0,
+ 216, 51, 0, 0, 61, 63, 65, 69, 0, 77,
+ 79, 83, 95, 97, 99, 101, 103, 107, 0, 67,
+ 85, 91, 0, 52, 0, 119, 0, 0, 0, 117,
+ 53, 0, 0, 0, 0, 0, 157, 86, 0, 0,
+ 120, 0, 117, 0, 0, 117, 0, 0, 123, 110,
+ 219, 0, 118, 121, 87, 219, 0, 219, 0, 117,
+ 220, 0, 0, 117, 220, 219, 117, 220, 124, 111,
+ 117, 0, 122, 88, 117, 117, 220, 72, 117, 112,
+ 0, 89, 74, 117, 73, 108, 75, 0, 219, 109
+};
+
+/* YYDEFGOTO[NTERM-NUM]. */
+static const short int yydefgoto[] =
+{
+ -1, 1, 10, 147, 168, 169, 232, 233, 11, 12,
+ 13, 234, 235, 257, 126, 255, 289, 335, 384, 385,
+ 386, 406, 387, 352, 390, 391, 355, 393, 407, 408,
+ 357, 395, 396, 397, 398, 399, 363, 401, 497, 388,
+ 346, 447, 436, 442, 465, 472, 460, 468, 14, 15,
+ 16, 17, 151, 177, 216, 246, 18, 152, 181, 19,
+ 20, 153, 154, 184, 185, 21, 114, 145, 22, 23,
+ 94, 155, 266, 267, 24, 367, 368, 33, 85, 84,
+ 81, 122, 297, 298, 260, 261, 389, 32, 196, 347,
+ 26
+};
+
+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+ STATE-NUM. */
+#define YYPACT_NINF -426
+static const short int yypact[] =
+{
+ -426, 12, -426, 287, -426, -426, -426, -426, 287, 287,
+ -426, -426, -426, -426, -426, -426, -426, -426, -426, -426,
+ -426, -426, -426, -426, 106, -426, 585, -426, 287, 287,
+ 287, -80, 675, 83, -426, 637, -426, -426, -426, -426,
+ -426, -426, -426, -426, -426, -426, -426, -426, -426, 287,
+ 287, 287, 287, 287, 287, 287, 287, -426, -426, 651,
+ 287, -426, 287, 287, 287, 287, 287, 287, 287, 287,
+ -426, 287, 287, 287, -426, -426, -426, -426, -426, -426,
+ -426, -426, -426, 286, 678, 678, 188, 188, 678, 678,
+ 323, 375, 678, 210, 128, 274, 682, 688, 302, 89,
+ 89, -426, -426, -426, -426, -426, 682, 688, 302, 89,
+ 89, -426, -426, -426, -426, -80, -426, -426, -426, -426,
+ -426, -426, -426, -426, -426, -70, 142, 142, -426, -426,
+ -426, -426, -426, -426, -426, -426, 287, 287, 287, 287,
+ 287, 287, 287, -426, -426, 2, -426, 5, 287, -80,
+ -80, 33, 40, 47, 373, 38, -80, -80, -426, -426,
+ -426, -426, -426, 49, -426, 17, -426, -426, -426, -41,
+ -426, -426, -80, -80, -426, -44, -24, -426, -426, -35,
+ 36, -426, -426, -426, -426, -13, 675, -426, 129, 138,
+ -80, -80, -426, -426, 69, 142, 73, -80, -80, -426,
+ -80, -426, -426, -80, 8, 454, 111, 97, -80, -80,
+ -426, -426, 775, -426, -80, -426, 119, -80, -426, 13,
+ -426, 675, 183, 116, -426, -426, -426, -426, -426, -426,
+ -426, -426, 22, -426, -426, -426, -426, 245, -426, -426,
+ -426, -426, -426, -426, -426, 736, -426, -80, 96, -426,
+ 15, -426, -426, 775, -426, 370, 512, -426, 158, -426,
+ -426, -426, -426, 172, -426, -80, 34, 6, -426, -426,
+ 287, 125, 227, 72, 287, 287, 287, 287, 260, -426,
+ 523, -426, -426, 179, 207, 229, 131, -426, -80, 584,
+ -426, -426, -426, -426, 43, -426, 287, 159, -426, 151,
+ -80, -426, -426, -426, 621, -426, -426, -426, -426, 153,
+ -426, -426, 141, 141, 141, 141, 141, -426, 141, 141,
+ -426, 141, -426, 141, 141, 141, 141, 141, -426, 141,
+ 230, 141, 141, 141, 230, -426, -426, 160, 133, 169,
+ -426, -426, 658, 193, 189, 164, 287, 173, -426, -426,
+ -426, -426, 287, -426, -426, 287, -426, 287, -426, -426,
+ -426, -426, -426, 287, -426, 175, 181, -426, 287, 184,
+ -426, -426, -426, 287, -426, 43, -426, -80, -426, -426,
+ -426, -426, 185, -426, 287, 287, 287, 287, -426, -80,
+ 287, 287, -426, 287, -426, 287, 287, 287, 287, 287,
+ -426, 287, -426, -426, 197, -426, 287, 287, 287, -80,
+ -426, -80, 341, 199, -426, -426, -426, -426, -80, -426,
+ -426, -426, -426, -426, -426, -426, -426, -426, 287, -426,
+ -426, -426, -80, -80, 199, -426, -80, -80, 208, 18,
+ -426, -80, 72, -80, -80, 287, -426, -426, -80, -80,
+ 159, -80, 19, 211, 298, 20, -80, -80, -426, -426,
+ -80, 287, -426, -426, -426, -80, -80, -80, 72, 310,
+ -80, 219, 72, 310, -80, -80, 310, -80, 159, -426,
+ 310, 287, 159, -426, 310, 310, -80, -426, 310, -426,
+ 220, -426, -426, 310, -426, -426, -426, 72, -37, -426
+};
+
+/* YYPGOTO[NTERM-NUM]. */
+static const short int yypgoto[] =
+{
+ -426, -426, -426, -426, -426, -426, -426, -207, -426, -426,
+ -426, -426, -426, -426, 218, -222, -255, -426, -426, -426,
+ -426, -426, -426, -426, -426, -426, -426, -426, -426, -426,
+ -426, -426, -426, -426, -426, -426, -426, -426, -426, 126,
+ 388, 107, -113, -426, -426, -426, -426, -426, -426, -426,
+ -426, -426, 84, -426, 110, 87, -426, -215, -426, -426,
+ -426, -142, -426, -426, -426, -426, -426, -426, -426, -426,
+ -426, -426, -426, -426, -22, -426, 0, 397, 82, 212,
+ 548, 486, -425, -286, -258, 28, -3, 11, -426, 3,
+ -426
+};
+
+/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
+ positive, shift that token. If negative, reduce the rule which
+ number is the opposite. If zero, do what YYDEFACT says.
+ If YYTABLE_NINF, syntax error. */
+#define YYTABLE_NINF -1
+static const unsigned short int yytable[] =
+{
+ 31, 163, 48, 248, 25, 199, 164, 284, 336, 166,
+ 287, 218, 2, 256, 202, 60, 249, 450, 264, 34,
+ 35, 446, 446, 446, 304, 254, 148, 25, 226, 227,
+ 228, 229, 230, 231, 263, 280, 200, 174, 285, 57,
+ 58, 59, 187, 478, 178, 203, 268, 482, 338, 283,
+ 342, 182, 376, 192, 195, 3, 201, 105, 60, 61,
+ 96, 97, 98, 99, 100, 101, 102, 103, 115, 116,
+ 117, 4, 498, 106, 107, 108, 109, 110, 111, 112,
+ 113, 175, 205, 176, 27, 167, 70, 6, 179, 410,
+ 180, 28, 343, 5, 6, 29, 7, 193, 8, 30,
+ 262, 60, 9, 60, 286, 8, 188, 189, 60, 9,
+ 60, 36, 194, 60, 458, 463, 204, 253, 37, 38,
+ 39, 40, 238, 88, 89, 295, 71, 72, 73, 149,
+ 150, 135, 206, 156, 157, 158, 159, 160, 161, 162,
+ 296, 207, 165, 146, 179, 171, 180, 41, 42, 210,
+ 170, 294, 43, 44, 295, 74, 75, 76, 77, 78,
+ 79, 80, 281, 45, 46, 186, 47, 223, 212, 296,
+ 239, 240, 241, 242, 243, 244, 282, 172, 173, 67,
+ 68, 69, 222, 306, 190, 191, 251, 5, 6, 136,
+ 137, 138, 139, 140, 141, 142, 252, 379, 211, 8,
+ 197, 198, 469, 9, 125, 291, 175, 473, 176, 476,
+ 307, 309, 375, 133, 245, 295, 221, 485, 208, 209,
+ 179, 345, 180, 6, 6, 213, 214, 179, 215, 180,
+ 296, 217, 219, 308, 8, 8, 224, 225, 9, 9,
+ 499, 179, 236, 180, 338, 247, 339, 250, 344, 377,
+ 293, 86, 87, 71, 72, 73, 303, 92, 374, 381,
+ 74, 75, 76, 77, 78, 79, 80, 290, 383, 380,
+ 402, 299, 300, 301, 302, 25, 403, 143, 265, 405,
+ 412, 25, 74, 75, 76, 77, 78, 79, 80, 118,
+ 119, 120, 428, 337, 435, 288, 239, 240, 241, 242,
+ 243, 244, 462, 445, 454, 127, 461, 292, 5, 6,
+ 365, 366, 6, 446, 481, 495, 310, 71, 72, 73,
+ 8, 441, 258, 8, 9, 237, 130, 9, 340, 71,
+ 72, 73, 259, 369, 373, 0, 0, 369, 0, 0,
+ 245, 5, 6, 382, 0, 0, 74, 75, 76, 77,
+ 78, 79, 80, 8, 119, 120, 0, 9, 74, 75,
+ 76, 77, 78, 79, 80, 404, 71, 72, 73, 27,
+ 409, 0, 0, 269, 0, 0, 28, 0, 131, 0,
+ 29, 0, 0, 0, 30, 0, 270, 271, 272, 273,
+ 65, 66, 67, 68, 69, 74, 75, 76, 77, 78,
+ 79, 80, 0, 0, 0, 411, 0, 0, 0, 105,
+ 413, 274, 0, 275, 276, 277, 278, 418, 71, 72,
+ 73, 434, 0, 27, 0, 438, 0, 0, 0, 0,
+ 28, 0, 0, 83, 29, 0, 0, 432, 30, 433,
+ 90, 91, 453, 93, 0, 95, 437, 74, 75, 76,
+ 77, 78, 79, 80, 0, 27, 183, 0, 471, 0,
+ 439, 440, 28, 0, 443, 444, 29, 448, 0, 449,
+ 30, 451, 452, 0, 0, 0, 455, 456, 490, 457,
+ 0, 392, 0, 394, 466, 467, 0, 0, 470, 400,
+ 0, 0, 0, 474, 475, 477, 0, 0, 480, 0,
+ 0, 0, 484, 486, 0, 488, 0, 0, 0, 0,
+ 414, 415, 416, 417, 493, 279, 419, 420, 0, 421,
+ 0, 422, 423, 424, 425, 426, 305, 427, 270, 271,
+ 272, 273, 429, 430, 431, 0, 27, 220, 0, 270,
+ 271, 272, 273, 28, 0, 0, 0, 29, 0, 0,
+ 0, 30, 0, 274, 0, 275, 276, 277, 278, 459,
+ 0, 0, 464, 0, 274, 0, 275, 276, 277, 278,
+ 0, 124, 0, 0, 128, 129, 479, 0, 132, 134,
+ 483, 144, 0, 487, 0, 0, 0, 489, 311, 0,
+ 0, 491, 492, 0, 312, 494, 0, 0, 0, 0,
+ 496, 0, 0, 0, 313, 314, 315, 316, 317, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 332, 333, 341, 334, 0, 0, 0,
+ 0, 312, 121, 123, 121, 121, 123, 123, 0, 0,
+ 121, 313, 314, 315, 316, 317, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 333, 378, 334, 0, 0, 0, 0, 312, 0,
+ 49, 50, 51, 52, 53, 54, 55, 56, 313, 314,
+ 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 0,
+ 334, 348, 349, 350, 351, 0, 353, 354, 0, 356,
+ 0, 358, 359, 360, 361, 362, 0, 364, 0, 370,
+ 371, 372, 62, 63, 64, 65, 66, 67, 68, 69,
+ 0, 0, 0, 0, 0, 82, 62, 63, 64, 65,
+ 66, 67, 68, 69, 0, 0, 0, 0, 0, 104,
+ 74, 75, 76, 77, 78, 79, 80, 0, 119, 120,
+ 62, 63, 64, 65, 66, 67, 68, 69, 63, 64,
+ 65, 66, 67, 68, 69, 64, 65, 66, 67, 68,
+ 69, 226, 227, 228, 229, 230, 231, 239, 240, 241,
+ 242, 243, 244
+};
+
+static const short int yycheck[] =
+{
+ 3, 143, 24, 218, 1, 49, 4, 265, 294, 4,
+ 4, 3, 0, 235, 49, 95, 3, 442, 3, 8,
+ 9, 3, 3, 3, 279, 232, 96, 24, 6, 7,
+ 8, 9, 10, 11, 249, 257, 80, 4, 4, 28,
+ 29, 30, 4, 468, 4, 80, 253, 472, 85, 264,
+ 305, 4, 338, 4, 95, 43, 80, 60, 95, 31,
+ 49, 50, 51, 52, 53, 54, 55, 56, 71, 72,
+ 73, 59, 497, 62, 63, 64, 65, 66, 67, 68,
+ 69, 48, 95, 50, 82, 80, 3, 82, 48, 375,
+ 50, 89, 307, 81, 82, 93, 84, 80, 93, 97,
+ 4, 95, 97, 95, 70, 93, 68, 69, 95, 97,
+ 95, 5, 95, 95, 95, 95, 80, 95, 12, 13,
+ 14, 15, 3, 41, 42, 82, 43, 44, 45, 126,
+ 127, 3, 3, 136, 137, 138, 139, 140, 141, 142,
+ 97, 3, 145, 115, 48, 148, 50, 41, 42, 80,
+ 147, 79, 46, 47, 82, 72, 73, 74, 75, 76,
+ 77, 78, 4, 57, 58, 154, 60, 70, 95, 97,
+ 51, 52, 53, 54, 55, 56, 4, 149, 150, 90,
+ 91, 92, 71, 4, 156, 157, 3, 81, 82, 61,
+ 62, 63, 64, 65, 66, 67, 80, 4, 195, 93,
+ 172, 173, 460, 97, 16, 80, 48, 465, 50, 467,
+ 3, 80, 79, 3, 95, 82, 205, 475, 190, 191,
+ 48, 80, 50, 82, 82, 197, 198, 48, 200, 50,
+ 97, 203, 204, 4, 93, 93, 208, 209, 97, 97,
+ 498, 48, 214, 50, 85, 217, 95, 219, 95, 80,
+ 272, 39, 40, 43, 44, 45, 278, 45, 98, 95,
+ 72, 73, 74, 75, 76, 77, 78, 270, 95, 80,
+ 95, 274, 275, 276, 277, 272, 95, 3, 250, 95,
+ 95, 278, 72, 73, 74, 75, 76, 77, 78, 3,
+ 80, 81, 95, 296, 95, 267, 51, 52, 53, 54,
+ 55, 56, 4, 95, 446, 87, 95, 80, 81, 82,
+ 80, 81, 82, 3, 95, 95, 288, 43, 44, 45,
+ 93, 434, 238, 93, 97, 215, 3, 97, 300, 43,
+ 44, 45, 245, 330, 334, -1, -1, 334, -1, -1,
+ 95, 81, 82, 346, -1, -1, 72, 73, 74, 75,
+ 76, 77, 78, 93, 80, 81, -1, 97, 72, 73,
+ 74, 75, 76, 77, 78, 368, 43, 44, 45, 82,
+ 373, -1, -1, 3, -1, -1, 89, -1, 3, -1,
+ 93, -1, -1, -1, 97, -1, 16, 17, 18, 19,
+ 88, 89, 90, 91, 92, 72, 73, 74, 75, 76,
+ 77, 78, -1, -1, -1, 377, -1, -1, -1, 412,
+ 382, 41, -1, 43, 44, 45, 46, 389, 43, 44,
+ 45, 80, -1, 82, -1, 428, -1, -1, -1, -1,
+ 89, -1, -1, 36, 93, -1, -1, 409, 97, 411,
+ 43, 44, 445, 46, -1, 48, 418, 72, 73, 74,
+ 75, 76, 77, 78, -1, 82, 83, -1, 461, -1,
+ 432, 433, 89, -1, 436, 437, 93, 439, -1, 441,
+ 97, 443, 444, -1, -1, -1, 448, 449, 481, 451,
+ -1, 355, -1, 357, 456, 457, -1, -1, 460, 363,
+ -1, -1, -1, 465, 466, 467, -1, -1, 470, -1,
+ -1, -1, 474, 475, -1, 477, -1, -1, -1, -1,
+ 384, 385, 386, 387, 486, 3, 390, 391, -1, 393,
+ -1, 395, 396, 397, 398, 399, 3, 401, 16, 17,
+ 18, 19, 406, 407, 408, -1, 82, 83, -1, 16,
+ 17, 18, 19, 89, -1, -1, -1, 93, -1, -1,
+ -1, 97, -1, 41, -1, 43, 44, 45, 46, 452,
+ -1, -1, 455, -1, 41, -1, 43, 44, 45, 46,
+ -1, 85, -1, -1, 88, 89, 469, -1, 92, 93,
+ 473, 95, -1, 476, -1, -1, -1, 480, 4, -1,
+ -1, 484, 485, -1, 10, 488, -1, -1, -1, -1,
+ 493, -1, -1, -1, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 4, 42, -1, -1, -1,
+ -1, 10, 84, 85, 86, 87, 88, 89, -1, -1,
+ 92, 20, 21, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
+ 39, 40, 4, 42, -1, -1, -1, -1, 10, -1,
+ 85, 86, 87, 88, 89, 90, 91, 92, 20, 21,
+ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, -1,
+ 42, 313, 314, 315, 316, -1, 318, 319, -1, 321,
+ -1, 323, 324, 325, 326, 327, -1, 329, -1, 331,
+ 332, 333, 85, 86, 87, 88, 89, 90, 91, 92,
+ -1, -1, -1, -1, -1, 98, 85, 86, 87, 88,
+ 89, 90, 91, 92, -1, -1, -1, -1, -1, 98,
+ 72, 73, 74, 75, 76, 77, 78, -1, 80, 81,
+ 85, 86, 87, 88, 89, 90, 91, 92, 86, 87,
+ 88, 89, 90, 91, 92, 87, 88, 89, 90, 91,
+ 92, 6, 7, 8, 9, 10, 11, 51, 52, 53,
+ 54, 55, 56
+};
+
+/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
+ symbol of state STATE-NUM. */
+static const unsigned char yystos[] =
+{
+ 0, 100, 0, 43, 59, 81, 82, 84, 93, 97,
+ 101, 107, 108, 109, 147, 148, 149, 150, 155, 158,
+ 159, 164, 167, 168, 173, 188, 189, 82, 89, 93,
+ 97, 185, 186, 176, 186, 186, 5, 12, 13, 14,
+ 15, 41, 42, 46, 47, 57, 58, 60, 173, 85,
+ 86, 87, 88, 89, 90, 91, 92, 186, 186, 186,
+ 95, 184, 85, 86, 87, 88, 89, 90, 91, 92,
+ 3, 43, 44, 45, 72, 73, 74, 75, 76, 77,
+ 78, 179, 98, 176, 178, 177, 178, 178, 177, 177,
+ 176, 176, 178, 176, 169, 176, 186, 186, 186, 186,
+ 186, 186, 186, 186, 98, 185, 186, 186, 186, 186,
+ 186, 186, 186, 186, 165, 185, 185, 185, 3, 80,
+ 81, 179, 180, 179, 180, 16, 113, 113, 180, 180,
+ 3, 3, 180, 3, 180, 3, 61, 62, 63, 64,
+ 65, 66, 67, 3, 180, 166, 184, 102, 96, 188,
+ 188, 151, 156, 160, 161, 170, 185, 185, 185, 185,
+ 185, 185, 185, 160, 4, 185, 4, 80, 103, 104,
+ 188, 185, 184, 184, 4, 48, 50, 152, 4, 48,
+ 50, 157, 4, 83, 162, 163, 186, 4, 68, 69,
+ 184, 184, 4, 80, 95, 95, 187, 184, 184, 49,
+ 80, 80, 49, 80, 80, 95, 3, 3, 184, 184,
+ 80, 188, 95, 184, 184, 184, 153, 184, 3, 184,
+ 83, 186, 71, 70, 184, 184, 6, 7, 8, 9,
+ 10, 11, 105, 106, 110, 111, 184, 153, 3, 51,
+ 52, 53, 54, 55, 56, 95, 154, 184, 156, 3,
+ 184, 3, 80, 95, 106, 114, 114, 112, 151, 154,
+ 183, 184, 4, 156, 3, 184, 171, 172, 106, 3,
+ 16, 17, 18, 19, 41, 43, 44, 45, 46, 3,
+ 114, 4, 4, 156, 183, 4, 70, 4, 184, 115,
+ 185, 80, 80, 173, 79, 82, 97, 181, 182, 185,
+ 185, 185, 185, 173, 115, 3, 4, 3, 4, 80,
+ 184, 4, 10, 20, 21, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
+ 37, 38, 39, 40, 42, 116, 182, 185, 85, 95,
+ 184, 4, 115, 156, 95, 80, 139, 188, 139, 139,
+ 139, 139, 122, 139, 139, 125, 139, 129, 139, 139,
+ 139, 139, 139, 135, 139, 80, 81, 174, 175, 188,
+ 139, 139, 139, 175, 98, 79, 182, 80, 4, 4,
+ 80, 95, 185, 95, 117, 118, 119, 121, 138, 185,
+ 123, 124, 138, 126, 138, 130, 131, 132, 133, 134,
+ 138, 136, 95, 95, 185, 95, 120, 127, 128, 185,
+ 182, 184, 95, 184, 138, 138, 138, 138, 184, 138,
+ 138, 138, 138, 138, 138, 138, 138, 138, 95, 138,
+ 138, 138, 184, 184, 80, 95, 141, 184, 185, 184,
+ 184, 141, 142, 184, 184, 95, 3, 140, 184, 184,
+ 181, 184, 184, 185, 160, 184, 184, 184, 95, 140,
+ 145, 95, 4, 95, 140, 143, 184, 184, 146, 183,
+ 184, 185, 144, 183, 184, 184, 183, 184, 181, 140,
+ 184, 95, 181, 140, 184, 183, 184, 140, 184, 140,
+ 185, 140, 140, 184, 140, 95, 140, 137, 181, 183
+};
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
-#define YYEMPTY -2
+#define YYEMPTY (-2)
#define YYEOF 0
+
#define YYACCEPT goto yyacceptlab
-#define YYABORT goto yyabortlab
-#define YYERROR goto yyerrlab1
+#define YYABORT goto yyabortlab
+#define YYERROR goto yyerrorlab
+
+
/* Like YYERROR except do call yyerror. This remains here temporarily
to ease the transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */
+
#define YYFAIL goto yyerrlab
+
#define YYRECOVERING() (!!yyerrstatus)
+
#define YYBACKUP(Token, Value) \
do \
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
- yychar1 = YYTRANSLATE (yychar); \
+ yytoken = YYTRANSLATE (yychar); \
YYPOPSTACK; \
goto yybackup; \
} \
else \
- { \
- yyerror ("syntax error: cannot back up"); \
+ { \
+ yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (0)
+
#define YYTERROR 1
#define YYERRCODE 256
-/* YYLLOC_DEFAULT -- Compute the default location (before the actions
- are run).
-
- When YYLLOC_DEFAULT is run, CURRENT is set the location of the
- first token. By default, to implement support for ranges, extend
- its range to the last symbol. */
+/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
+ If N is 0, then set CURRENT to the empty location which ends
+ the previous symbol: RHS[0] (always defined). */
+#define YYRHSLOC(Rhs, K) ((Rhs)[K])
#ifndef YYLLOC_DEFAULT
-# define YYLLOC_DEFAULT(Current, Rhs, N) \
- Current.last_line = Rhs[N].last_line; \
- Current.last_column = Rhs[N].last_column;
+# define YYLLOC_DEFAULT(Current, Rhs, N) \
+ do \
+ if (N) \
+ { \
+ (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
+ (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
+ (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
+ (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
+ } \
+ else \
+ { \
+ (Current).first_line = (Current).last_line = \
+ YYRHSLOC (Rhs, 0).last_line; \
+ (Current).first_column = (Current).last_column = \
+ YYRHSLOC (Rhs, 0).last_column; \
+ } \
+ while (0)
#endif
-/* YYLEX -- calling `yylex' with the right arguments. */
+/* YY_LOCATION_PRINT -- Print the location on the stream.
+ This macro was not mandated originally: define only if we know
+ we won't break user code: when these are the locations we know. */
-#if YYPURE
-# if YYLSP_NEEDED
-# ifdef YYLEX_PARAM
-# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
-# else
-# define YYLEX yylex (&yylval, &yylloc)
-# endif
-# else /* !YYLSP_NEEDED */
-# ifdef YYLEX_PARAM
-# define YYLEX yylex (&yylval, YYLEX_PARAM)
-# else
-# define YYLEX yylex (&yylval)
-# endif
-# endif /* !YYLSP_NEEDED */
-#else /* !YYPURE */
-# define YYLEX yylex ()
-#endif /* !YYPURE */
+#ifndef YY_LOCATION_PRINT
+# if YYLTYPE_IS_TRIVIAL
+# define YY_LOCATION_PRINT(File, Loc) \
+ fprintf (File, "%d.%d-%d.%d", \
+ (Loc).first_line, (Loc).first_column, \
+ (Loc).last_line, (Loc).last_column)
+# else
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+# endif
+#endif
+/* YYLEX -- calling `yylex' with the right arguments. */
+
+#ifdef YYLEX_PARAM
+# define YYLEX yylex (YYLEX_PARAM)
+#else
+# define YYLEX yylex ()
+#endif
+
/* Enable debugging if requested. */
#if YYDEBUG
@@ -1052,13 +1331,86 @@ do { \
if (yydebug) \
YYFPRINTF Args; \
} while (0)
+
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yysymprint (stderr, \
+ Type, Value); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (0)
+
+/*------------------------------------------------------------------.
+| yy_stack_print -- Print the state stack from its BOTTOM up to its |
+| TOP (included). |
+`------------------------------------------------------------------*/
+
+#if defined (__STDC__) || defined (__cplusplus)
+static void
+yy_stack_print (short int *bottom, short int *top)
+#else
+static void
+yy_stack_print (bottom, top)
+ short int *bottom;
+ short int *top;
+#endif
+{
+ YYFPRINTF (stderr, "Stack now");
+ for (/* Nothing. */; bottom <= top; ++bottom)
+ YYFPRINTF (stderr, " %d", *bottom);
+ YYFPRINTF (stderr, "\n");
+}
+
+# define YY_STACK_PRINT(Bottom, Top) \
+do { \
+ if (yydebug) \
+ yy_stack_print ((Bottom), (Top)); \
+} while (0)
+
+
+/*------------------------------------------------.
+| Report that the YYRULE is going to be reduced. |
+`------------------------------------------------*/
+
+#if defined (__STDC__) || defined (__cplusplus)
+static void
+yy_reduce_print (int yyrule)
+#else
+static void
+yy_reduce_print (yyrule)
+ int yyrule;
+#endif
+{
+ int yyi;
+ unsigned long int yylno = yyrline[yyrule];
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
+ yyrule - 1, yylno);
+ /* Print the symbols being reduced, and their result. */
+ for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
+ YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
+ YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
+}
+
+# define YY_REDUCE_PRINT(Rule) \
+do { \
+ if (yydebug) \
+ yy_reduce_print (Rule); \
+} while (0)
+
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
+# define YY_STACK_PRINT(Bottom, Top)
+# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */
+
/* YYINITDEPTH -- initial size of the parser's stacks. */
#ifndef YYINITDEPTH
# define YYINITDEPTH 200
@@ -1068,18 +1420,16 @@ int yydebug;
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
- SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
+ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
evaluated with infinite-precision integer arithmetic. */
-#if YYMAXDEPTH == 0
-# undef YYMAXDEPTH
-#endif
-
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
+
-#ifdef YYERROR_VERBOSE
+
+#if YYERROR_VERBOSE
# ifndef yystrlen
# if defined (__GLIBC__) && defined (_STRING_H)
@@ -1094,7 +1444,7 @@ yystrlen (yystr)
const char *yystr;
# endif
{
- register const char *yys = yystr;
+ const char *yys = yystr;
while (*yys++ != '\0')
continue;
@@ -1119,8 +1469,8 @@ yystpcpy (yydest, yysrc)
const char *yysrc;
# endif
{
- register char *yyd = yydest;
- register const char *yys = yysrc;
+ char *yyd = yydest;
+ const char *yys = yysrc;
while ((*yyd++ = *yys++) != '\0')
continue;
@@ -1129,86 +1479,187 @@ yystpcpy (yydest, yysrc)
}
# endif
# endif
-#endif
+
+# ifndef yytnamerr
+/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
+ quotes and backslashes, so that it's suitable for yyerror. The
+ heuristic is that double-quoting is unnecessary unless the string
+ contains an apostrophe, a comma, or backslash (other than
+ backslash-backslash). YYSTR is taken from yytname. If YYRES is
+ null, do not copy; instead, return the length of what the result
+ would have been. */
+static YYSIZE_T
+yytnamerr (char *yyres, const char *yystr)
+{
+ if (*yystr == '"')
+ {
+ size_t yyn = 0;
+ char const *yyp = yystr;
+
+ for (;;)
+ switch (*++yyp)
+ {
+ case '\'':
+ case ',':
+ goto do_not_strip_quotes;
+
+ case '\\':
+ if (*++yyp != '\\')
+ goto do_not_strip_quotes;
+ /* Fall through. */
+ default:
+ if (yyres)
+ yyres[yyn] = *yyp;
+ yyn++;
+ break;
+
+ case '"':
+ if (yyres)
+ yyres[yyn] = '\0';
+ return yyn;
+ }
+ do_not_strip_quotes: ;
+ }
+
+ if (! yyres)
+ return yystrlen (yystr);
+
+ return yystpcpy (yyres, yystr) - yyres;
+}
+# endif
+
+#endif /* YYERROR_VERBOSE */
+
-#line 315 "/usr/share/bison-1.35/bison.simple"
+#if YYDEBUG
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if defined (__STDC__) || defined (__cplusplus)
+static void
+yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
+#else
+static void
+yysymprint (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE *yyvaluep;
+#endif
+{
+ /* Pacify ``unused variable'' warnings. */
+ (void) yyvaluep;
+
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# endif
+ switch (yytype)
+ {
+ default:
+ break;
+ }
+ YYFPRINTF (yyoutput, ")");
+}
+
+#endif /* ! YYDEBUG */
+/*-----------------------------------------------.
+| Release the memory associated to this symbol. |
+`-----------------------------------------------*/
+
+#if defined (__STDC__) || defined (__cplusplus)
+static void
+yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
+#else
+static void
+yydestruct (yymsg, yytype, yyvaluep)
+ const char *yymsg;
+ int yytype;
+ YYSTYPE *yyvaluep;
+#endif
+{
+ /* Pacify ``unused variable'' warnings. */
+ (void) yyvaluep;
+
+ if (!yymsg)
+ yymsg = "Deleting";
+ YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
+
+ switch (yytype)
+ {
+
+ default:
+ break;
+ }
+}
+
-/* The user can define YYPARSE_PARAM as the name of an argument to be passed
- into yyparse. The argument should have type void *.
- It should actually point to an object.
- Grammar actions can access the variable by casting it
- to the proper pointer type. */
+/* Prevent warnings from -Wmissing-prototypes. */
#ifdef YYPARSE_PARAM
# if defined (__STDC__) || defined (__cplusplus)
-# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
-# define YYPARSE_PARAM_DECL
+int yyparse (void *YYPARSE_PARAM);
# else
-# define YYPARSE_PARAM_ARG YYPARSE_PARAM
-# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
+int yyparse ();
# endif
-#else /* !YYPARSE_PARAM */
-# define YYPARSE_PARAM_ARG
-# define YYPARSE_PARAM_DECL
-#endif /* !YYPARSE_PARAM */
-
-/* Prevent warning if -Wstrict-prototypes. */
-#ifdef __GNUC__
-# ifdef YYPARSE_PARAM
-int yyparse (void *);
-# else
+#else /* ! YYPARSE_PARAM */
+#if defined (__STDC__) || defined (__cplusplus)
int yyparse (void);
-# endif
+#else
+int yyparse ();
#endif
+#endif /* ! YYPARSE_PARAM */
-/* YY_DECL_VARIABLES -- depending whether we use a pure parser,
- variables are global, or local to YYPARSE. */
-
-#define YY_DECL_NON_LSP_VARIABLES \
-/* The lookahead symbol. */ \
-int yychar; \
- \
-/* The semantic value of the lookahead symbol. */ \
-YYSTYPE yylval; \
- \
-/* Number of parse errors so far. */ \
-int yynerrs;
-#if YYLSP_NEEDED
-# define YY_DECL_VARIABLES \
-YY_DECL_NON_LSP_VARIABLES \
- \
-/* Location data for the lookahead symbol. */ \
-YYLTYPE yylloc;
-#else
-# define YY_DECL_VARIABLES \
-YY_DECL_NON_LSP_VARIABLES
-#endif
+
+/* The look-ahead symbol. */
+int yychar;
+
+/* The semantic value of the look-ahead symbol. */
+YYSTYPE yylval;
+
+/* Number of syntax errors so far. */
+int yynerrs;
-/* If nonreentrant, generate the variables here. */
-#if !YYPURE
-YY_DECL_VARIABLES
-#endif /* !YYPURE */
+/*----------.
+| yyparse. |
+`----------*/
+#ifdef YYPARSE_PARAM
+# if defined (__STDC__) || defined (__cplusplus)
+int yyparse (void *YYPARSE_PARAM)
+# else
+int yyparse (YYPARSE_PARAM)
+ void *YYPARSE_PARAM;
+# endif
+#else /* ! YYPARSE_PARAM */
+#if defined (__STDC__) || defined (__cplusplus)
int
-yyparse (YYPARSE_PARAM_ARG)
- YYPARSE_PARAM_DECL
+yyparse (void)
+#else
+int
+yyparse ()
+ ;
+#endif
+#endif
{
- /* If reentrant, generate the variables here. */
-#if YYPURE
- YY_DECL_VARIABLES
-#endif /* !YYPURE */
-
- register int yystate;
- register int yyn;
+
+ int yystate;
+ int yyn;
int yyresult;
/* Number of tokens to shift before error messages enabled. */
int yyerrstatus;
- /* Lookahead token as an internal (translated) token number. */
- int yychar1 = 0;
+ /* Look-ahead token as an internal (translated) token number. */
+ int yytoken = 0;
/* Three stacks and their tools:
`yyss': related to states,
@@ -1218,41 +1669,29 @@ yyparse (YYPARSE_PARAM_ARG)
Refer to the stacks thru separate pointers, to allow yyoverflow
to reallocate them elsewhere. */
- /* The state stack. */
- short yyssa[YYINITDEPTH];
- short *yyss = yyssa;
- register short *yyssp;
+ /* The state stack. */
+ short int yyssa[YYINITDEPTH];
+ short int *yyss = yyssa;
+ short int *yyssp;
/* The semantic value stack. */
YYSTYPE yyvsa[YYINITDEPTH];
YYSTYPE *yyvs = yyvsa;
- register YYSTYPE *yyvsp;
+ YYSTYPE *yyvsp;
-#if YYLSP_NEEDED
- /* The location stack. */
- YYLTYPE yylsa[YYINITDEPTH];
- YYLTYPE *yyls = yylsa;
- YYLTYPE *yylsp;
-#endif
-#if YYLSP_NEEDED
-# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
-#else
-# define YYPOPSTACK (yyvsp--, yyssp--)
-#endif
- YYSIZE_T yystacksize = YYINITDEPTH;
+#define YYPOPSTACK (yyvsp--, yyssp--)
+ YYSIZE_T yystacksize = YYINITDEPTH;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
-#if YYLSP_NEEDED
- YYLTYPE yyloc;
-#endif
+
/* When reducing, the number of symbols on the RHS of the reduced
- rule. */
+ rule. */
int yylen;
YYDPRINTF ((stderr, "Starting parse\n"));
@@ -1269,9 +1708,7 @@ yyparse (YYPARSE_PARAM_ARG)
yyssp = yyss;
yyvsp = yyvs;
-#if YYLSP_NEEDED
- yylsp = yyls;
-#endif
+
goto yysetstate;
/*------------------------------------------------------------.
@@ -1286,7 +1723,7 @@ yyparse (YYPARSE_PARAM_ARG)
yysetstate:
*yyssp = yystate;
- if (yyssp >= yyss + yystacksize - 1)
+ if (yyss + yystacksize - 1 <= yyssp)
{
/* Get the current used size of the three stacks, in elements. */
YYSIZE_T yysize = yyssp - yyss + 1;
@@ -1297,52 +1734,43 @@ yyparse (YYPARSE_PARAM_ARG)
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
- short *yyss1 = yyss;
+ short int *yyss1 = yyss;
+
/* Each stack pointer address is followed by the size of the
- data in use in that stack, in bytes. */
-# if YYLSP_NEEDED
- YYLTYPE *yyls1 = yyls;
- /* This used to be a conditional around just the two extra args,
- but that might be undefined if yyoverflow is a macro. */
- yyoverflow ("parser stack overflow",
- &yyss1, yysize * sizeof (*yyssp),
- &yyvs1, yysize * sizeof (*yyvsp),
- &yyls1, yysize * sizeof (*yylsp),
- &yystacksize);
- yyls = yyls1;
-# else
- yyoverflow ("parser stack overflow",
+ data in use in that stack, in bytes. This used to be a
+ conditional around just the two extra args, but that might
+ be undefined if yyoverflow is a macro. */
+ yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
+
&yystacksize);
-# endif
+
yyss = yyss1;
yyvs = yyvs1;
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
- goto yyoverflowlab;
+ goto yyexhaustedlab;
# else
/* Extend the stack our own way. */
- if (yystacksize >= YYMAXDEPTH)
- goto yyoverflowlab;
+ if (YYMAXDEPTH <= yystacksize)
+ goto yyexhaustedlab;
yystacksize *= 2;
- if (yystacksize > YYMAXDEPTH)
+ if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
- short *yyss1 = yyss;
+ short int *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
- goto yyoverflowlab;
+ goto yyexhaustedlab;
YYSTACK_RELOCATE (yyss);
YYSTACK_RELOCATE (yyvs);
-# if YYLSP_NEEDED
- YYSTACK_RELOCATE (yyls);
-# endif
-# undef YYSTACK_RELOCATE
+
+# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
}
@@ -1351,14 +1779,12 @@ yyparse (YYPARSE_PARAM_ARG)
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
-#if YYLSP_NEEDED
- yylsp = yyls + yysize - 1;
-#endif
+
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
- if (yyssp >= yyss + yystacksize - 1)
+ if (yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
@@ -1366,101 +1792,67 @@ yyparse (YYPARSE_PARAM_ARG)
goto yybackup;
-
/*-----------.
| yybackup. |
`-----------*/
yybackup:
/* Do appropriate processing given the current state. */
-/* Read a lookahead token if we need one and don't already have one. */
+/* Read a look-ahead token if we need one and don't already have one. */
/* yyresume: */
- /* First try to decide what to do without reference to lookahead token. */
+ /* First try to decide what to do without reference to look-ahead token. */
yyn = yypact[yystate];
- if (yyn == YYFLAG)
+ if (yyn == YYPACT_NINF)
goto yydefault;
- /* Not known => get a lookahead token if don't already have one. */
-
- /* yychar is either YYEMPTY or YYEOF
- or a valid token in external form. */
+ /* Not known => get a look-ahead token if don't already have one. */
+ /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
yychar = YYLEX;
}
- /* Convert token to internal form (in yychar1) for indexing tables with */
-
- if (yychar <= 0) /* This means end of input. */
+ if (yychar <= YYEOF)
{
- yychar1 = 0;
- yychar = YYEOF; /* Don't call YYLEX any more */
-
+ yychar = yytoken = YYEOF;
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
else
{
- yychar1 = YYTRANSLATE (yychar);
-
-#if YYDEBUG
- /* We have to keep this `#if YYDEBUG', since we use variables
- which are defined only if `YYDEBUG' is set. */
- if (yydebug)
- {
- YYFPRINTF (stderr, "Next token is %d (%s",
- yychar, yytname[yychar1]);
- /* Give the individual parser a way to print the precise
- meaning of a token, for further debugging info. */
-# ifdef YYPRINT
- YYPRINT (stderr, yychar, yylval);
-# endif
- YYFPRINTF (stderr, ")\n");
- }
-#endif
+ yytoken = YYTRANSLATE (yychar);
+ YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
- yyn += yychar1;
- if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
+ /* If the proper action on seeing token YYTOKEN is to reduce or to
+ detect an error, take that action. */
+ yyn += yytoken;
+ if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
goto yydefault;
-
yyn = yytable[yyn];
-
- /* yyn is what to do for this token type in this state.
- Negative => reduce, -yyn is rule number.
- Positive => shift, yyn is new state.
- New state is final state => don't bother to shift,
- just return success.
- 0, or most negative number => error. */
-
- if (yyn < 0)
+ if (yyn <= 0)
{
- if (yyn == YYFLAG)
+ if (yyn == 0 || yyn == YYTABLE_NINF)
goto yyerrlab;
yyn = -yyn;
goto yyreduce;
}
- else if (yyn == 0)
- goto yyerrlab;
if (yyn == YYFINAL)
YYACCEPT;
- /* Shift the lookahead token. */
- YYDPRINTF ((stderr, "Shifting token %d (%s), ",
- yychar, yytname[yychar1]));
+ /* Shift the look-ahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
/* Discard the token being shifted unless it is eof. */
if (yychar != YYEOF)
yychar = YYEMPTY;
*++yyvsp = yylval;
-#if YYLSP_NEEDED
- *++yylsp = yylloc;
-#endif
+
/* Count tokens shifted since error; after three, turn off error
status. */
@@ -1491,235 +1883,233 @@ yyreduce:
/* If YYLEN is nonzero, implement the default value of the action:
`$$ = $1'.
- Otherwise, the following line sets YYVAL to the semantic value of
- the lookahead token. This behavior is undocumented and Bison
+ Otherwise, the following line sets YYVAL to garbage.
+ This behavior is undocumented and Bison
users should not rely upon it. Assigning to YYVAL
unconditionally makes the parser a bit smaller, and it avoids a
GCC warning that YYVAL may be used uninitialized. */
yyval = yyvsp[1-yylen];
-#if YYLSP_NEEDED
- /* Similarly for the default location. Let the user run additional
- commands if for instance locations are ranges. */
- yyloc = yylsp[1-yylen];
- YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
-#endif
-#if YYDEBUG
- /* We have to keep this `#if YYDEBUG', since we use variables which
- are defined only if `YYDEBUG' is set. */
- if (yydebug)
+ YY_REDUCE_PRINT (yyn);
+ switch (yyn)
{
- int yyi;
-
- YYFPRINTF (stderr, "Reducing via rule %d (line %d), ",
- yyn, yyrline[yyn]);
-
- /* Print the symbols being reduced, and their result. */
- for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++)
- YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
- YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]);
- }
-#endif
-
- switch (yyn) {
-
-case 17:
-#line 182 "rcparse.y"
-{
- define_accelerator (yyvsp[-5].id, &yyvsp[-3].res_info, yyvsp[-1].pacc);
+ case 18:
+#line 184 "rcparse.y"
+ {
+ define_accelerator ((yyvsp[-5].id), &(yyvsp[-3].res_info), (yyvsp[-1].pacc));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 18:
-#line 192 "rcparse.y"
-{
- yyval.pacc = NULL;
+
+ case 19:
+#line 194 "rcparse.y"
+ {
+ (yyval.pacc) = NULL;
}
break;
-case 19:
-#line 196 "rcparse.y"
-{
+
+ case 20:
+#line 198 "rcparse.y"
+ {
struct accelerator *a;
a = (struct accelerator *) res_alloc (sizeof *a);
- *a = yyvsp[0].acc;
- if (yyvsp[-1].pacc == NULL)
- yyval.pacc = a;
+ *a = (yyvsp[0].acc);
+ if ((yyvsp[-1].pacc) == NULL)
+ (yyval.pacc) = a;
else
{
struct accelerator **pp;
- for (pp = &yyvsp[-1].pacc->next; *pp != NULL; pp = &(*pp)->next)
+ for (pp = &(yyvsp[-1].pacc)->next; *pp != NULL; pp = &(*pp)->next)
;
*pp = a;
- yyval.pacc = yyvsp[-1].pacc;
+ (yyval.pacc) = (yyvsp[-1].pacc);
}
}
break;
-case 20:
-#line 217 "rcparse.y"
-{
- yyval.acc = yyvsp[-1].acc;
- yyval.acc.id = yyvsp[0].il;
+
+ case 21:
+#line 219 "rcparse.y"
+ {
+ (yyval.acc) = (yyvsp[-1].acc);
+ (yyval.acc).id = (yyvsp[0].il);
}
break;
-case 21:
-#line 222 "rcparse.y"
-{
- yyval.acc = yyvsp[-3].acc;
- yyval.acc.id = yyvsp[-2].il;
- yyval.acc.flags |= yyvsp[0].is;
- if ((yyval.acc.flags & ACC_VIRTKEY) == 0
- && (yyval.acc.flags & (ACC_SHIFT | ACC_CONTROL)) != 0)
+
+ case 22:
+#line 224 "rcparse.y"
+ {
+ (yyval.acc) = (yyvsp[-3].acc);
+ (yyval.acc).id = (yyvsp[-2].il);
+ (yyval.acc).flags |= (yyvsp[0].is);
+ if (((yyval.acc).flags & ACC_VIRTKEY) == 0
+ && ((yyval.acc).flags & (ACC_SHIFT | ACC_CONTROL)) != 0)
rcparse_warning (_("inappropriate modifiers for non-VIRTKEY"));
}
break;
-case 22:
-#line 234 "rcparse.y"
-{
- const char *s = yyvsp[0].s;
+
+ case 23:
+#line 236 "rcparse.y"
+ {
+ const char *s = (yyvsp[0].s);
char ch;
- yyval.acc.next = NULL;
- yyval.acc.id = 0;
+ (yyval.acc).next = NULL;
+ (yyval.acc).id = 0;
ch = *s;
if (ch != '^')
- yyval.acc.flags = 0;
+ (yyval.acc).flags = 0;
else
{
- yyval.acc.flags = ACC_CONTROL | ACC_VIRTKEY;
+ (yyval.acc).flags = ACC_CONTROL | ACC_VIRTKEY;
++s;
ch = *s;
ch = TOUPPER (ch);
}
- yyval.acc.key = ch;
+ (yyval.acc).key = ch;
if (s[1] != '\0')
rcparse_warning (_("accelerator should only be one character"));
}
break;
-case 23:
-#line 255 "rcparse.y"
-{
- yyval.acc.next = NULL;
- yyval.acc.flags = 0;
- yyval.acc.id = 0;
- yyval.acc.key = yyvsp[0].il;
+
+ case 24:
+#line 257 "rcparse.y"
+ {
+ (yyval.acc).next = NULL;
+ (yyval.acc).flags = 0;
+ (yyval.acc).id = 0;
+ (yyval.acc).key = (yyvsp[0].il);
}
break;
-case 24:
-#line 265 "rcparse.y"
-{
- yyval.is = yyvsp[0].is;
+
+ case 25:
+#line 267 "rcparse.y"
+ {
+ (yyval.is) = (yyvsp[0].is);
}
break;
-case 25:
-#line 269 "rcparse.y"
-{
- yyval.is = yyvsp[-2].is | yyvsp[0].is;
+
+ case 26:
+#line 271 "rcparse.y"
+ {
+ (yyval.is) = (yyvsp[-2].is) | (yyvsp[0].is);
}
break;
-case 26:
-#line 274 "rcparse.y"
-{
- yyval.is = yyvsp[-1].is | yyvsp[0].is;
+
+ case 27:
+#line 276 "rcparse.y"
+ {
+ (yyval.is) = (yyvsp[-1].is) | (yyvsp[0].is);
}
break;
-case 27:
-#line 281 "rcparse.y"
-{
- yyval.is = ACC_VIRTKEY;
+
+ case 28:
+#line 283 "rcparse.y"
+ {
+ (yyval.is) = ACC_VIRTKEY;
}
break;
-case 28:
-#line 285 "rcparse.y"
-{
+
+ case 29:
+#line 287 "rcparse.y"
+ {
/* This is just the absence of VIRTKEY. */
- yyval.is = 0;
+ (yyval.is) = 0;
}
break;
-case 29:
-#line 290 "rcparse.y"
-{
- yyval.is = ACC_NOINVERT;
+
+ case 30:
+#line 292 "rcparse.y"
+ {
+ (yyval.is) = ACC_NOINVERT;
}
break;
-case 30:
-#line 294 "rcparse.y"
-{
- yyval.is = ACC_SHIFT;
+
+ case 31:
+#line 296 "rcparse.y"
+ {
+ (yyval.is) = ACC_SHIFT;
}
break;
-case 31:
-#line 298 "rcparse.y"
-{
- yyval.is = ACC_CONTROL;
+
+ case 32:
+#line 300 "rcparse.y"
+ {
+ (yyval.is) = ACC_CONTROL;
}
break;
-case 32:
-#line 302 "rcparse.y"
-{
- yyval.is = ACC_ALT;
+
+ case 33:
+#line 304 "rcparse.y"
+ {
+ (yyval.is) = ACC_ALT;
}
break;
-case 33:
-#line 311 "rcparse.y"
-{
- define_bitmap (yyvsp[-3].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 34:
+#line 313 "rcparse.y"
+ {
+ define_bitmap ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 34:
-#line 323 "rcparse.y"
-{
- define_cursor (yyvsp[-3].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 35:
+#line 325 "rcparse.y"
+ {
+ define_cursor ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 35:
-#line 336 "rcparse.y"
-{
+
+ case 36:
+#line 338 "rcparse.y"
+ {
memset (&dialog, 0, sizeof dialog);
- dialog.x = yyvsp[-3].il;
- dialog.y = yyvsp[-2].il;
- dialog.width = yyvsp[-1].il;
- dialog.height = yyvsp[0].il;
+ dialog.x = (yyvsp[-3].il);
+ dialog.y = (yyvsp[-2].il);
+ dialog.width = (yyvsp[-1].il);
+ dialog.height = (yyvsp[0].il);
dialog.style = WS_POPUP | WS_BORDER | WS_SYSMENU;
- dialog.exstyle = yyvsp[-4].il;
+ dialog.exstyle = (yyvsp[-4].il);
dialog.menu.named = 1;
dialog.class.named = 1;
dialog.font = NULL;
dialog.ex = NULL;
dialog.controls = NULL;
- sub_res_info = yyvsp[-5].res_info;
+ sub_res_info = (yyvsp[-5].res_info);
style = 0;
}
break;
-case 36:
-#line 353 "rcparse.y"
-{
- define_dialog (yyvsp[-12].id, &sub_res_info, &dialog);
+
+ case 37:
+#line 355 "rcparse.y"
+ {
+ define_dialog ((yyvsp[-12].id), &sub_res_info, &dialog);
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 37:
-#line 361 "rcparse.y"
-{
+
+ case 38:
+#line 363 "rcparse.y"
+ {
memset (&dialog, 0, sizeof dialog);
- dialog.x = yyvsp[-3].il;
- dialog.y = yyvsp[-2].il;
- dialog.width = yyvsp[-1].il;
- dialog.height = yyvsp[0].il;
+ dialog.x = (yyvsp[-3].il);
+ dialog.y = (yyvsp[-2].il);
+ dialog.width = (yyvsp[-1].il);
+ dialog.height = (yyvsp[0].il);
dialog.style = WS_POPUP | WS_BORDER | WS_SYSMENU;
- dialog.exstyle = yyvsp[-4].il;
+ dialog.exstyle = (yyvsp[-4].il);
dialog.menu.named = 1;
dialog.class.named = 1;
dialog.font = NULL;
@@ -1727,101 +2117,112 @@ case 37:
res_alloc (sizeof (struct dialog_ex)));
memset (dialog.ex, 0, sizeof (struct dialog_ex));
dialog.controls = NULL;
- sub_res_info = yyvsp[-5].res_info;
+ sub_res_info = (yyvsp[-5].res_info);
style = 0;
}
break;
-case 38:
-#line 380 "rcparse.y"
-{
- define_dialog (yyvsp[-12].id, &sub_res_info, &dialog);
+
+ case 39:
+#line 382 "rcparse.y"
+ {
+ define_dialog ((yyvsp[-12].id), &sub_res_info, &dialog);
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 39:
-#line 388 "rcparse.y"
-{
+
+ case 40:
+#line 390 "rcparse.y"
+ {
memset (&dialog, 0, sizeof dialog);
- dialog.x = yyvsp[-4].il;
- dialog.y = yyvsp[-3].il;
- dialog.width = yyvsp[-2].il;
- dialog.height = yyvsp[-1].il;
+ dialog.x = (yyvsp[-4].il);
+ dialog.y = (yyvsp[-3].il);
+ dialog.width = (yyvsp[-2].il);
+ dialog.height = (yyvsp[-1].il);
dialog.style = WS_POPUP | WS_BORDER | WS_SYSMENU;
- dialog.exstyle = yyvsp[-5].il;
+ dialog.exstyle = (yyvsp[-5].il);
dialog.menu.named = 1;
dialog.class.named = 1;
dialog.font = NULL;
dialog.ex = ((struct dialog_ex *)
res_alloc (sizeof (struct dialog_ex)));
memset (dialog.ex, 0, sizeof (struct dialog_ex));
- dialog.ex->help = yyvsp[0].il;
+ dialog.ex->help = (yyvsp[0].il);
dialog.controls = NULL;
- sub_res_info = yyvsp[-6].res_info;
+ sub_res_info = (yyvsp[-6].res_info);
style = 0;
}
break;
-case 40:
-#line 408 "rcparse.y"
-{
- define_dialog (yyvsp[-13].id, &sub_res_info, &dialog);
+
+ case 41:
+#line 410 "rcparse.y"
+ {
+ define_dialog ((yyvsp[-13].id), &sub_res_info, &dialog);
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 41:
-#line 418 "rcparse.y"
-{
- yyval.il = 0;
+
+ case 42:
+#line 420 "rcparse.y"
+ {
+ (yyval.il) = 0;
}
break;
-case 42:
-#line 422 "rcparse.y"
-{
- yyval.il = yyvsp[0].il;
+
+ case 43:
+#line 424 "rcparse.y"
+ {
+ (yyval.il) = (yyvsp[0].il);
}
break;
-case 44:
-#line 430 "rcparse.y"
-{
+
+ case 45:
+#line 432 "rcparse.y"
+ {
dialog.style |= WS_CAPTION;
style |= WS_CAPTION;
- unicode_from_ascii ((int *) NULL, &dialog.caption, yyvsp[0].s);
+ unicode_from_ascii ((int *) NULL, &dialog.caption, (yyvsp[0].s));
}
break;
-case 45:
-#line 436 "rcparse.y"
-{
- dialog.class = yyvsp[0].id;
+
+ case 46:
+#line 438 "rcparse.y"
+ {
+ dialog.class = (yyvsp[0].id);
}
break;
-case 46:
-#line 441 "rcparse.y"
-{
+
+ case 47:
+#line 443 "rcparse.y"
+ {
dialog.style = style;
}
break;
-case 47:
-#line 445 "rcparse.y"
-{
- dialog.exstyle = yyvsp[0].il;
+
+ case 48:
+#line 447 "rcparse.y"
+ {
+ dialog.exstyle = (yyvsp[0].il);
}
break;
-case 48:
-#line 449 "rcparse.y"
-{
- res_string_to_id (& dialog.class, yyvsp[0].s);
+
+ case 49:
+#line 451 "rcparse.y"
+ {
+ res_string_to_id (& dialog.class, (yyvsp[0].s));
}
break;
-case 49:
-#line 453 "rcparse.y"
-{
+
+ case 50:
+#line 455 "rcparse.y"
+ {
dialog.style |= DS_SETFONT;
style |= DS_SETFONT;
- dialog.pointsize = yyvsp[-2].il;
- unicode_from_ascii ((int *) NULL, &dialog.font, yyvsp[0].s);
+ dialog.pointsize = (yyvsp[-2].il);
+ unicode_from_ascii ((int *) NULL, &dialog.font, (yyvsp[0].s));
if (dialog.ex != NULL)
{
dialog.ex->weight = 0;
@@ -1830,172 +2231,191 @@ case 49:
}
}
break;
-case 50:
-#line 466 "rcparse.y"
-{
+
+ case 51:
+#line 468 "rcparse.y"
+ {
dialog.style |= DS_SETFONT;
style |= DS_SETFONT;
- dialog.pointsize = yyvsp[-3].il;
- unicode_from_ascii ((int *) NULL, &dialog.font, yyvsp[-1].s);
+ dialog.pointsize = (yyvsp[-3].il);
+ unicode_from_ascii ((int *) NULL, &dialog.font, (yyvsp[-1].s));
if (dialog.ex == NULL)
rcparse_warning (_("extended FONT requires DIALOGEX"));
else
{
- dialog.ex->weight = yyvsp[0].il;
+ dialog.ex->weight = (yyvsp[0].il);
dialog.ex->italic = 0;
dialog.ex->charset = 1;
}
}
break;
-case 51:
-#line 481 "rcparse.y"
-{
+
+ case 52:
+#line 483 "rcparse.y"
+ {
dialog.style |= DS_SETFONT;
style |= DS_SETFONT;
- dialog.pointsize = yyvsp[-4].il;
- unicode_from_ascii ((int *) NULL, &dialog.font, yyvsp[-2].s);
+ dialog.pointsize = (yyvsp[-4].il);
+ unicode_from_ascii ((int *) NULL, &dialog.font, (yyvsp[-2].s));
if (dialog.ex == NULL)
rcparse_warning (_("extended FONT requires DIALOGEX"));
else
{
- dialog.ex->weight = yyvsp[-1].il;
- dialog.ex->italic = yyvsp[0].il;
+ dialog.ex->weight = (yyvsp[-1].il);
+ dialog.ex->italic = (yyvsp[0].il);
dialog.ex->charset = 1;
}
}
break;
-case 52:
-#line 496 "rcparse.y"
-{
+
+ case 53:
+#line 498 "rcparse.y"
+ {
dialog.style |= DS_SETFONT;
style |= DS_SETFONT;
- dialog.pointsize = yyvsp[-5].il;
- unicode_from_ascii ((int *) NULL, &dialog.font, yyvsp[-3].s);
+ dialog.pointsize = (yyvsp[-5].il);
+ unicode_from_ascii ((int *) NULL, &dialog.font, (yyvsp[-3].s));
if (dialog.ex == NULL)
rcparse_warning (_("extended FONT requires DIALOGEX"));
else
{
- dialog.ex->weight = yyvsp[-2].il;
- dialog.ex->italic = yyvsp[-1].il;
- dialog.ex->charset = yyvsp[0].il;
+ dialog.ex->weight = (yyvsp[-2].il);
+ dialog.ex->italic = (yyvsp[-1].il);
+ dialog.ex->charset = (yyvsp[0].il);
}
}
break;
-case 53:
-#line 511 "rcparse.y"
-{
- dialog.menu = yyvsp[0].id;
+
+ case 54:
+#line 513 "rcparse.y"
+ {
+ dialog.menu = (yyvsp[0].id);
}
break;
-case 54:
-#line 515 "rcparse.y"
-{
- sub_res_info.characteristics = yyvsp[0].il;
+
+ case 55:
+#line 517 "rcparse.y"
+ {
+ sub_res_info.characteristics = (yyvsp[0].il);
}
break;
-case 55:
-#line 519 "rcparse.y"
-{
- sub_res_info.language = yyvsp[-1].il | (yyvsp[0].il << SUBLANG_SHIFT);
+
+ case 56:
+#line 521 "rcparse.y"
+ {
+ sub_res_info.language = (yyvsp[-1].il) | ((yyvsp[0].il) << SUBLANG_SHIFT);
}
break;
-case 56:
-#line 523 "rcparse.y"
-{
- sub_res_info.version = yyvsp[0].il;
+
+ case 57:
+#line 525 "rcparse.y"
+ {
+ sub_res_info.version = (yyvsp[0].il);
}
break;
-case 58:
-#line 531 "rcparse.y"
-{
+
+ case 59:
+#line 533 "rcparse.y"
+ {
struct dialog_control **pp;
for (pp = &dialog.controls; *pp != NULL; pp = &(*pp)->next)
;
- *pp = yyvsp[0].dialog_control;
+ *pp = (yyvsp[0].dialog_control);
}
break;
-case 59:
-#line 542 "rcparse.y"
-{
+
+ case 60:
+#line 544 "rcparse.y"
+ {
default_style = BS_AUTO3STATE | WS_TABSTOP;
base_style = BS_AUTO3STATE;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 60:
-#line 549 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 61:
+#line 551 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 61:
-#line 553 "rcparse.y"
-{
+
+ case 62:
+#line 555 "rcparse.y"
+ {
default_style = BS_AUTOCHECKBOX | WS_TABSTOP;
base_style = BS_AUTOCHECKBOX;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 62:
-#line 560 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 63:
+#line 562 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 63:
-#line 564 "rcparse.y"
-{
+
+ case 64:
+#line 566 "rcparse.y"
+ {
default_style = BS_AUTORADIOBUTTON | WS_TABSTOP;
base_style = BS_AUTORADIOBUTTON;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 64:
-#line 571 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 65:
+#line 573 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 65:
-#line 575 "rcparse.y"
-{
+
+ case 66:
+#line 577 "rcparse.y"
+ {
default_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
class = CTL_EDIT;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 66:
-#line 582 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 67:
+#line 584 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
if (dialog.ex == NULL)
rcparse_warning (_("BEDIT requires DIALOGEX"));
- res_string_to_id (&yyval.dialog_control->class, "BEDIT");
+ res_string_to_id (&(yyval.dialog_control)->class, "BEDIT");
}
break;
-case 67:
-#line 589 "rcparse.y"
-{
+
+ case 68:
+#line 591 "rcparse.y"
+ {
default_style = BS_CHECKBOX | WS_TABSTOP;
base_style = BS_CHECKBOX | WS_TABSTOP;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 68:
-#line 596 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 69:
+#line 598 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 69:
-#line 600 "rcparse.y"
-{
+
+ case 70:
+#line 602 "rcparse.y"
+ {
/* This is as per MSDN documentation. With some (???)
versions of MS rc.exe their is no default style. */
default_style = CBS_SIMPLE | WS_TABSTOP;
@@ -2004,1284 +2424,1455 @@ case 69:
res_text_field = res_null_text;
}
break;
-case 70:
-#line 609 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 71:
+#line 611 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 71:
-#line 614 "rcparse.y"
-{
- yyval.dialog_control = define_control (yyvsp[-9].id, yyvsp[-8].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, yyvsp[-2].il, yyvsp[-7].il, style, yyvsp[-1].il);
- if (yyvsp[0].rcdata_item != NULL)
+
+ case 72:
+#line 616 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control ((yyvsp[-9].id), (yyvsp[-8].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), (yyvsp[-2].il), (yyvsp[-7].il), style, (yyvsp[-1].il));
+ if ((yyvsp[0].rcdata_item) != NULL)
{
if (dialog.ex == NULL)
rcparse_warning (_("control data requires DIALOGEX"));
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
}
break;
-case 72:
-#line 625 "rcparse.y"
-{
- yyval.dialog_control = define_control (yyvsp[-10].id, yyvsp[-9].il, yyvsp[-6].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, yyvsp[-8].il, style, yyvsp[-2].il);
+
+ case 73:
+#line 627 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control ((yyvsp[-10].id), (yyvsp[-9].il), (yyvsp[-6].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), (yyvsp[-8].il), style, (yyvsp[-2].il));
if (dialog.ex == NULL)
rcparse_warning (_("help ID requires DIALOGEX"));
- yyval.dialog_control->help = yyvsp[-1].il;
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->help = (yyvsp[-1].il);
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
break;
-case 73:
-#line 634 "rcparse.y"
-{
- yyval.dialog_control = define_control (yyvsp[-10].id, yyvsp[-9].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, yyvsp[-2].il, 0, style, yyvsp[-1].il);
- if (yyvsp[0].rcdata_item != NULL)
+
+ case 74:
+#line 636 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control ((yyvsp[-10].id), (yyvsp[-9].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), (yyvsp[-2].il), 0, style, (yyvsp[-1].il));
+ if ((yyvsp[0].rcdata_item) != NULL)
{
if (dialog.ex == NULL)
rcparse_warning ("control data requires DIALOGEX");
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
- yyval.dialog_control->class.named = 1;
- unicode_from_ascii (&yyval.dialog_control->class.u.n.length, &yyval.dialog_control->class.u.n.name, yyvsp[-7].s);
+ (yyval.dialog_control)->class.named = 1;
+ unicode_from_ascii (&(yyval.dialog_control)->class.u.n.length, &(yyval.dialog_control)->class.u.n.name, (yyvsp[-7].s));
}
break;
-case 74:
-#line 647 "rcparse.y"
-{
- yyval.dialog_control = define_control (yyvsp[-11].id, yyvsp[-10].il, yyvsp[-6].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, 0, style, yyvsp[-2].il);
+
+ case 75:
+#line 649 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control ((yyvsp[-11].id), (yyvsp[-10].il), (yyvsp[-6].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), 0, style, (yyvsp[-2].il));
if (dialog.ex == NULL)
rcparse_warning ("help ID requires DIALOGEX");
- yyval.dialog_control->help = yyvsp[-1].il;
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
- yyval.dialog_control->class.named = 1;
- unicode_from_ascii (&yyval.dialog_control->class.u.n.length, &yyval.dialog_control->class.u.n.name, yyvsp[-8].s);
+ (yyval.dialog_control)->help = (yyvsp[-1].il);
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
+ (yyval.dialog_control)->class.named = 1;
+ unicode_from_ascii (&(yyval.dialog_control)->class.u.n.length, &(yyval.dialog_control)->class.u.n.name, (yyvsp[-8].s));
}
break;
-case 75:
-#line 657 "rcparse.y"
-{
+
+ case 76:
+#line 659 "rcparse.y"
+ {
default_style = SS_CENTER | WS_GROUP;
base_style = SS_CENTER;
class = CTL_STATIC;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 76:
-#line 664 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 77:
+#line 666 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 77:
-#line 668 "rcparse.y"
-{
+
+ case 78:
+#line 670 "rcparse.y"
+ {
default_style = BS_DEFPUSHBUTTON | WS_TABSTOP;
base_style = BS_DEFPUSHBUTTON | WS_TABSTOP;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 78:
-#line 675 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 79:
+#line 677 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 79:
-#line 679 "rcparse.y"
-{
+
+ case 80:
+#line 681 "rcparse.y"
+ {
default_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
class = CTL_EDIT;
res_text_field = res_null_text;
}
break;
-case 80:
-#line 686 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 81:
+#line 688 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 81:
-#line 690 "rcparse.y"
-{
+
+ case 82:
+#line 692 "rcparse.y"
+ {
default_style = BS_GROUPBOX;
base_style = BS_GROUPBOX;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 82:
-#line 697 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 83:
+#line 699 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 83:
-#line 701 "rcparse.y"
-{
+
+ case 84:
+#line 703 "rcparse.y"
+ {
default_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
class = CTL_EDIT;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 84:
-#line 708 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 85:
+#line 710 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
if (dialog.ex == NULL)
rcparse_warning (_("IEDIT requires DIALOGEX"));
- res_string_to_id (&yyval.dialog_control->class, "HEDIT");
+ res_string_to_id (&(yyval.dialog_control)->class, "HEDIT");
}
break;
-case 85:
-#line 715 "rcparse.y"
-{
- yyval.dialog_control = define_icon_control (yyvsp[-4].id, yyvsp[-3].il, yyvsp[-2].il, yyvsp[-1].il, 0, 0, 0, yyvsp[0].rcdata_item,
+
+ case 86:
+#line 717 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_icon_control ((yyvsp[-4].id), (yyvsp[-3].il), (yyvsp[-2].il), (yyvsp[-1].il), 0, 0, 0, (yyvsp[0].rcdata_item),
dialog.ex);
}
break;
-case 86:
-#line 721 "rcparse.y"
-{
- yyval.dialog_control = define_icon_control (yyvsp[-6].id, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, 0, 0, 0, yyvsp[0].rcdata_item,
+
+ case 87:
+#line 723 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_icon_control ((yyvsp[-6].id), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), 0, 0, 0, (yyvsp[0].rcdata_item),
dialog.ex);
}
break;
-case 87:
-#line 727 "rcparse.y"
-{
- yyval.dialog_control = define_icon_control (yyvsp[-8].id, yyvsp[-7].il, yyvsp[-6].il, yyvsp[-5].il, style, yyvsp[-1].il, 0, yyvsp[0].rcdata_item,
+
+ case 88:
+#line 729 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_icon_control ((yyvsp[-8].id), (yyvsp[-7].il), (yyvsp[-6].il), (yyvsp[-5].il), style, (yyvsp[-1].il), 0, (yyvsp[0].rcdata_item),
dialog.ex);
}
break;
-case 88:
-#line 733 "rcparse.y"
-{
- yyval.dialog_control = define_icon_control (yyvsp[-9].id, yyvsp[-8].il, yyvsp[-7].il, yyvsp[-6].il, style, yyvsp[-2].il, yyvsp[-1].il, yyvsp[0].rcdata_item,
+
+ case 89:
+#line 735 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_icon_control ((yyvsp[-9].id), (yyvsp[-8].il), (yyvsp[-7].il), (yyvsp[-6].il), style, (yyvsp[-2].il), (yyvsp[-1].il), (yyvsp[0].rcdata_item),
dialog.ex);
}
break;
-case 89:
-#line 738 "rcparse.y"
-{
+
+ case 90:
+#line 740 "rcparse.y"
+ {
default_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
class = CTL_EDIT;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 90:
-#line 745 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 91:
+#line 747 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
if (dialog.ex == NULL)
rcparse_warning (_("IEDIT requires DIALOGEX"));
- res_string_to_id (&yyval.dialog_control->class, "IEDIT");
+ res_string_to_id (&(yyval.dialog_control)->class, "IEDIT");
}
break;
-case 91:
-#line 752 "rcparse.y"
-{
+
+ case 92:
+#line 754 "rcparse.y"
+ {
default_style = LBS_NOTIFY | WS_BORDER;
base_style = LBS_NOTIFY | WS_BORDER;
class = CTL_LISTBOX;
res_text_field = res_null_text;
}
break;
-case 92:
-#line 759 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 93:
+#line 761 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 93:
-#line 763 "rcparse.y"
-{
+
+ case 94:
+#line 765 "rcparse.y"
+ {
default_style = SS_LEFT | WS_GROUP;
base_style = SS_LEFT;
class = CTL_STATIC;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 94:
-#line 770 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 95:
+#line 772 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 95:
-#line 774 "rcparse.y"
-{
+
+ case 96:
+#line 776 "rcparse.y"
+ {
default_style = BS_PUSHBOX | WS_TABSTOP;
base_style = BS_PUSHBOX;
class = CTL_BUTTON;
}
break;
-case 96:
-#line 780 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 97:
+#line 782 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 97:
-#line 784 "rcparse.y"
-{
+
+ case 98:
+#line 786 "rcparse.y"
+ {
default_style = BS_PUSHBUTTON | WS_TABSTOP;
base_style = BS_PUSHBUTTON | WS_TABSTOP;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 98:
-#line 791 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 99:
+#line 793 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 99:
-#line 795 "rcparse.y"
-{
+
+ case 100:
+#line 797 "rcparse.y"
+ {
default_style = BS_RADIOBUTTON | WS_TABSTOP;
base_style = BS_RADIOBUTTON;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 100:
-#line 802 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 101:
+#line 804 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 101:
-#line 806 "rcparse.y"
-{
+
+ case 102:
+#line 808 "rcparse.y"
+ {
default_style = SS_RIGHT | WS_GROUP;
base_style = SS_RIGHT;
class = CTL_STATIC;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 102:
-#line 813 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 103:
+#line 815 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 103:
-#line 817 "rcparse.y"
-{
+
+ case 104:
+#line 819 "rcparse.y"
+ {
default_style = SBS_HORZ;
base_style = 0;
class = CTL_SCROLLBAR;
res_text_field = res_null_text;
}
break;
-case 104:
-#line 824 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 105:
+#line 826 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 105:
-#line 828 "rcparse.y"
-{
+
+ case 106:
+#line 830 "rcparse.y"
+ {
default_style = BS_3STATE | WS_TABSTOP;
base_style = BS_3STATE;
class = CTL_BUTTON;
- res_text_field = yyvsp[0].id;
+ res_text_field = (yyvsp[0].id);
}
break;
-case 106:
-#line 835 "rcparse.y"
-{
- yyval.dialog_control = yyvsp[0].dialog_control;
+
+ case 107:
+#line 837 "rcparse.y"
+ {
+ (yyval.dialog_control) = (yyvsp[0].dialog_control);
}
break;
-case 107:
-#line 840 "rcparse.y"
-{ style = WS_CHILD | WS_VISIBLE; }
- break;
-case 108:
+
+ case 108:
#line 842 "rcparse.y"
-{
- yyval.dialog_control = define_control (yyvsp[-13].id, yyvsp[-12].il, yyvsp[-10].il, yyvsp[-8].il, yyvsp[-6].il, yyvsp[-4].il, CTL_BUTTON,
- style, yyvsp[0].il);
+ { style = WS_CHILD | WS_VISIBLE; }
+ break;
+
+ case 109:
+#line 844 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control ((yyvsp[-13].id), (yyvsp[-12].il), (yyvsp[-10].il), (yyvsp[-8].il), (yyvsp[-6].il), (yyvsp[-4].il), CTL_BUTTON,
+ style, (yyvsp[0].il));
}
break;
-case 109:
-#line 857 "rcparse.y"
-{
- yyval.dialog_control = define_control (res_text_field, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, yyvsp[-2].il, yyvsp[-1].il, class,
+
+ case 110:
+#line 859 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control (res_text_field, (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), (yyvsp[-2].il), (yyvsp[-1].il), class,
default_style | WS_CHILD | WS_VISIBLE, 0);
- if (yyvsp[0].rcdata_item != NULL)
+ if ((yyvsp[0].rcdata_item) != NULL)
{
if (dialog.ex == NULL)
rcparse_warning (_("control data requires DIALOGEX"));
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
}
break;
-case 110:
-#line 869 "rcparse.y"
-{
- yyval.dialog_control = define_control (res_text_field, yyvsp[-7].il, yyvsp[-6].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, class, style, yyvsp[-1].il);
- if (yyvsp[0].rcdata_item != NULL)
+
+ case 111:
+#line 871 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control (res_text_field, (yyvsp[-7].il), (yyvsp[-6].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), class, style, (yyvsp[-1].il));
+ if ((yyvsp[0].rcdata_item) != NULL)
{
if (dialog.ex == NULL)
rcparse_warning (_("control data requires DIALOGEX"));
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
}
break;
-case 111:
-#line 880 "rcparse.y"
-{
- yyval.dialog_control = define_control (res_text_field, yyvsp[-8].il, yyvsp[-7].il, yyvsp[-6].il, yyvsp[-5].il, yyvsp[-4].il, class, style, yyvsp[-2].il);
+
+ case 112:
+#line 882 "rcparse.y"
+ {
+ (yyval.dialog_control) = define_control (res_text_field, (yyvsp[-8].il), (yyvsp[-7].il), (yyvsp[-6].il), (yyvsp[-5].il), (yyvsp[-4].il), class, style, (yyvsp[-2].il));
if (dialog.ex == NULL)
rcparse_warning (_("help ID requires DIALOGEX"));
- yyval.dialog_control->help = yyvsp[-1].il;
- yyval.dialog_control->data = yyvsp[0].rcdata_item;
+ (yyval.dialog_control)->help = (yyvsp[-1].il);
+ (yyval.dialog_control)->data = (yyvsp[0].rcdata_item);
}
break;
-case 112:
-#line 891 "rcparse.y"
-{
- res_string_to_id (&yyval.id, "");
+
+ case 113:
+#line 893 "rcparse.y"
+ {
+ res_string_to_id (&(yyval.id), "");
}
break;
-case 113:
-#line 895 "rcparse.y"
-{
- yyval.id.named = 0;
- yyval.id.u.id = yyvsp[-1].il;
+
+ case 114:
+#line 897 "rcparse.y"
+ {
+ (yyval.id).named = 0;
+ (yyval.id).u.id = (yyvsp[-1].il);
}
break;
-case 114:
-#line 900 "rcparse.y"
-{
- res_string_to_id (&yyval.id, yyvsp[0].s);
+
+ case 115:
+#line 902 "rcparse.y"
+ {
+ res_string_to_id (&(yyval.id), (yyvsp[0].s));
}
break;
-case 115:
-#line 904 "rcparse.y"
-{
- res_string_to_id (&yyval.id, yyvsp[-1].s);
+
+ case 116:
+#line 906 "rcparse.y"
+ {
+ res_string_to_id (&(yyval.id), (yyvsp[-1].s));
}
break;
-case 116:
-#line 911 "rcparse.y"
-{
- yyval.rcdata_item = NULL;
+
+ case 117:
+#line 913 "rcparse.y"
+ {
+ (yyval.rcdata_item) = NULL;
}
break;
-case 117:
-#line 915 "rcparse.y"
-{
- yyval.rcdata_item = yyvsp[-1].rcdata.first;
+
+ case 118:
+#line 917 "rcparse.y"
+ {
+ (yyval.rcdata_item) = (yyvsp[-1].rcdata).first;
}
break;
-case 118:
-#line 924 "rcparse.y"
-{ style = WS_CHILD | WS_VISIBLE; }
+
+ case 119:
+#line 926 "rcparse.y"
+ { style = WS_CHILD | WS_VISIBLE; }
break;
-case 120:
-#line 930 "rcparse.y"
-{ style = SS_ICON | WS_CHILD | WS_VISIBLE; }
+
+ case 121:
+#line 932 "rcparse.y"
+ { style = SS_ICON | WS_CHILD | WS_VISIBLE; }
break;
-case 122:
-#line 936 "rcparse.y"
-{ style = base_style | WS_CHILD | WS_VISIBLE; }
+
+ case 123:
+#line 938 "rcparse.y"
+ { style = base_style | WS_CHILD | WS_VISIBLE; }
break;
-case 124:
-#line 944 "rcparse.y"
-{
- define_font (yyvsp[-3].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 125:
+#line 946 "rcparse.y"
+ {
+ define_font ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 125:
-#line 956 "rcparse.y"
-{
- define_icon (yyvsp[-3].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 126:
+#line 958 "rcparse.y"
+ {
+ define_icon ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 126:
-#line 969 "rcparse.y"
-{
- language = yyvsp[-1].il | (yyvsp[0].il << SUBLANG_SHIFT);
+
+ case 127:
+#line 971 "rcparse.y"
+ {
+ language = (yyvsp[-1].il) | ((yyvsp[0].il) << SUBLANG_SHIFT);
}
break;
-case 127:
-#line 978 "rcparse.y"
-{
- define_menu (yyvsp[-5].id, &yyvsp[-3].res_info, yyvsp[-1].menuitem);
+
+ case 128:
+#line 980 "rcparse.y"
+ {
+ define_menu ((yyvsp[-5].id), &(yyvsp[-3].res_info), (yyvsp[-1].menuitem));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 128:
-#line 988 "rcparse.y"
-{
- yyval.menuitem = NULL;
+
+ case 129:
+#line 990 "rcparse.y"
+ {
+ (yyval.menuitem) = NULL;
}
break;
-case 129:
-#line 992 "rcparse.y"
-{
- if (yyvsp[-1].menuitem == NULL)
- yyval.menuitem = yyvsp[0].menuitem;
+
+ case 130:
+#line 994 "rcparse.y"
+ {
+ if ((yyvsp[-1].menuitem) == NULL)
+ (yyval.menuitem) = (yyvsp[0].menuitem);
else
{
struct menuitem **pp;
- for (pp = &yyvsp[-1].menuitem->next; *pp != NULL; pp = &(*pp)->next)
+ for (pp = &(yyvsp[-1].menuitem)->next; *pp != NULL; pp = &(*pp)->next)
;
- *pp = yyvsp[0].menuitem;
- yyval.menuitem = yyvsp[-1].menuitem;
+ *pp = (yyvsp[0].menuitem);
+ (yyval.menuitem) = (yyvsp[-1].menuitem);
}
}
break;
-case 130:
-#line 1009 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-2].s, yyvsp[-1].il, yyvsp[0].is, 0, 0, NULL);
+
+ case 131:
+#line 1011 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-2].s), (yyvsp[-1].il), (yyvsp[0].is), 0, 0, NULL);
}
break;
-case 131:
-#line 1013 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (NULL, 0, 0, 0, 0, NULL);
+
+ case 132:
+#line 1015 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem (NULL, 0, 0, 0, 0, NULL);
}
break;
-case 132:
-#line 1017 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-4].s, 0, yyvsp[-3].is, 0, 0, yyvsp[-1].menuitem);
+
+ case 133:
+#line 1019 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-4].s), 0, (yyvsp[-3].is), 0, 0, (yyvsp[-1].menuitem));
}
break;
-case 133:
-#line 1024 "rcparse.y"
-{
- yyval.is = 0;
+
+ case 134:
+#line 1026 "rcparse.y"
+ {
+ (yyval.is) = 0;
}
break;
-case 134:
-#line 1028 "rcparse.y"
-{
- yyval.is = yyvsp[-2].is | yyvsp[0].is;
+
+ case 135:
+#line 1030 "rcparse.y"
+ {
+ (yyval.is) = (yyvsp[-2].is) | (yyvsp[0].is);
}
break;
-case 135:
-#line 1032 "rcparse.y"
-{
- yyval.is = yyvsp[-1].is | yyvsp[0].is;
+
+ case 136:
+#line 1034 "rcparse.y"
+ {
+ (yyval.is) = (yyvsp[-1].is) | (yyvsp[0].is);
}
break;
-case 136:
-#line 1039 "rcparse.y"
-{
- yyval.is = MENUITEM_CHECKED;
+
+ case 137:
+#line 1041 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_CHECKED;
}
break;
-case 137:
-#line 1043 "rcparse.y"
-{
- yyval.is = MENUITEM_GRAYED;
+
+ case 138:
+#line 1045 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_GRAYED;
}
break;
-case 138:
-#line 1047 "rcparse.y"
-{
- yyval.is = MENUITEM_HELP;
+
+ case 139:
+#line 1049 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_HELP;
}
break;
-case 139:
-#line 1051 "rcparse.y"
-{
- yyval.is = MENUITEM_INACTIVE;
+
+ case 140:
+#line 1053 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_INACTIVE;
}
break;
-case 140:
-#line 1055 "rcparse.y"
-{
- yyval.is = MENUITEM_MENUBARBREAK;
+
+ case 141:
+#line 1057 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_MENUBARBREAK;
}
break;
-case 141:
-#line 1059 "rcparse.y"
-{
- yyval.is = MENUITEM_MENUBREAK;
+
+ case 142:
+#line 1061 "rcparse.y"
+ {
+ (yyval.is) = MENUITEM_MENUBREAK;
}
break;
-case 142:
-#line 1068 "rcparse.y"
-{
- define_menu (yyvsp[-5].id, &yyvsp[-3].res_info, yyvsp[-1].menuitem);
+
+ case 143:
+#line 1070 "rcparse.y"
+ {
+ define_menu ((yyvsp[-5].id), &(yyvsp[-3].res_info), (yyvsp[-1].menuitem));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 143:
-#line 1078 "rcparse.y"
-{
- yyval.menuitem = NULL;
+
+ case 144:
+#line 1080 "rcparse.y"
+ {
+ (yyval.menuitem) = NULL;
}
break;
-case 144:
-#line 1082 "rcparse.y"
-{
- if (yyvsp[-1].menuitem == NULL)
- yyval.menuitem = yyvsp[0].menuitem;
+
+ case 145:
+#line 1084 "rcparse.y"
+ {
+ if ((yyvsp[-1].menuitem) == NULL)
+ (yyval.menuitem) = (yyvsp[0].menuitem);
else
{
struct menuitem **pp;
- for (pp = &yyvsp[-1].menuitem->next; *pp != NULL; pp = &(*pp)->next)
+ for (pp = &(yyvsp[-1].menuitem)->next; *pp != NULL; pp = &(*pp)->next)
;
- *pp = yyvsp[0].menuitem;
- yyval.menuitem = yyvsp[-1].menuitem;
+ *pp = (yyvsp[0].menuitem);
+ (yyval.menuitem) = (yyvsp[-1].menuitem);
}
}
break;
-case 145:
-#line 1099 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[0].s, 0, 0, 0, 0, NULL);
+
+ case 146:
+#line 1101 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[0].s), 0, 0, 0, 0, NULL);
}
break;
-case 146:
-#line 1103 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-1].s, yyvsp[0].il, 0, 0, 0, NULL);
+
+ case 147:
+#line 1105 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-1].s), (yyvsp[0].il), 0, 0, 0, NULL);
}
break;
-case 147:
-#line 1107 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-3].s, yyvsp[-2].il, yyvsp[-1].il, yyvsp[0].il, 0, NULL);
+
+ case 148:
+#line 1109 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-3].s), (yyvsp[-2].il), (yyvsp[-1].il), (yyvsp[0].il), 0, NULL);
}
break;
-case 148:
-#line 1111 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (NULL, 0, 0, 0, 0, NULL);
+
+ case 149:
+#line 1113 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem (NULL, 0, 0, 0, 0, NULL);
}
break;
-case 149:
-#line 1115 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-3].s, 0, 0, 0, 0, yyvsp[-1].menuitem);
+
+ case 150:
+#line 1117 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-3].s), 0, 0, 0, 0, (yyvsp[-1].menuitem));
}
break;
-case 150:
-#line 1119 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-4].s, yyvsp[-3].il, 0, 0, 0, yyvsp[-1].menuitem);
+
+ case 151:
+#line 1121 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-4].s), (yyvsp[-3].il), 0, 0, 0, (yyvsp[-1].menuitem));
}
break;
-case 151:
-#line 1123 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-5].s, yyvsp[-4].il, yyvsp[-3].il, 0, 0, yyvsp[-1].menuitem);
+
+ case 152:
+#line 1125 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-5].s), (yyvsp[-4].il), (yyvsp[-3].il), 0, 0, (yyvsp[-1].menuitem));
}
break;
-case 152:
-#line 1128 "rcparse.y"
-{
- yyval.menuitem = define_menuitem (yyvsp[-7].s, yyvsp[-6].il, yyvsp[-5].il, yyvsp[-4].il, yyvsp[-3].il, yyvsp[-1].menuitem);
+
+ case 153:
+#line 1130 "rcparse.y"
+ {
+ (yyval.menuitem) = define_menuitem ((yyvsp[-7].s), (yyvsp[-6].il), (yyvsp[-5].il), (yyvsp[-4].il), (yyvsp[-3].il), (yyvsp[-1].menuitem));
}
break;
-case 153:
-#line 1137 "rcparse.y"
-{
- define_messagetable (yyvsp[-3].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 154:
+#line 1139 "rcparse.y"
+ {
+ define_messagetable ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 154:
-#line 1149 "rcparse.y"
-{
- define_rcdata (yyvsp[-5].id, &yyvsp[-3].res_info, yyvsp[-1].rcdata.first);
+
+ case 155:
+#line 1151 "rcparse.y"
+ {
+ define_rcdata ((yyvsp[-5].id), &(yyvsp[-3].res_info), (yyvsp[-1].rcdata).first);
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 155:
-#line 1161 "rcparse.y"
-{
+
+ case 156:
+#line 1158 "rcparse.y"
+ {
+ define_rcdata_file ((yyvsp[-3].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
+ if (yychar != YYEMPTY)
+ YYERROR;
+ rcparse_discard_strings ();
+ }
+ break;
+
+ case 157:
+#line 1170 "rcparse.y"
+ {
rcparse_rcdata ();
}
break;
-case 156:
-#line 1165 "rcparse.y"
-{
+
+ case 158:
+#line 1174 "rcparse.y"
+ {
rcparse_normal ();
- yyval.rcdata = yyvsp[0].rcdata;
+ (yyval.rcdata) = (yyvsp[0].rcdata);
}
break;
-case 157:
-#line 1173 "rcparse.y"
-{
- yyval.rcdata.first = NULL;
- yyval.rcdata.last = NULL;
+
+ case 159:
+#line 1182 "rcparse.y"
+ {
+ (yyval.rcdata).first = NULL;
+ (yyval.rcdata).last = NULL;
}
break;
-case 158:
-#line 1178 "rcparse.y"
-{
- yyval.rcdata = yyvsp[0].rcdata;
+
+ case 160:
+#line 1187 "rcparse.y"
+ {
+ (yyval.rcdata) = (yyvsp[0].rcdata);
}
break;
-case 159:
-#line 1185 "rcparse.y"
-{
+
+ case 161:
+#line 1194 "rcparse.y"
+ {
struct rcdata_item *ri;
- ri = define_rcdata_string (yyvsp[0].ss.s, yyvsp[0].ss.length);
- yyval.rcdata.first = ri;
- yyval.rcdata.last = ri;
+ ri = define_rcdata_string ((yyvsp[0].ss).s, (yyvsp[0].ss).length);
+ (yyval.rcdata).first = ri;
+ (yyval.rcdata).last = ri;
}
break;
-case 160:
-#line 1193 "rcparse.y"
-{
+
+ case 162:
+#line 1202 "rcparse.y"
+ {
struct rcdata_item *ri;
- ri = define_rcdata_number (yyvsp[0].i.val, yyvsp[0].i.dword);
- yyval.rcdata.first = ri;
- yyval.rcdata.last = ri;
+ ri = define_rcdata_number ((yyvsp[0].i).val, (yyvsp[0].i).dword);
+ (yyval.rcdata).first = ri;
+ (yyval.rcdata).last = ri;
}
break;
-case 161:
-#line 1201 "rcparse.y"
-{
+
+ case 163:
+#line 1210 "rcparse.y"
+ {
struct rcdata_item *ri;
- ri = define_rcdata_string (yyvsp[0].ss.s, yyvsp[0].ss.length);
- yyval.rcdata.first = yyvsp[-2].rcdata.first;
- yyvsp[-2].rcdata.last->next = ri;
- yyval.rcdata.last = ri;
+ ri = define_rcdata_string ((yyvsp[0].ss).s, (yyvsp[0].ss).length);
+ (yyval.rcdata).first = (yyvsp[-2].rcdata).first;
+ (yyvsp[-2].rcdata).last->next = ri;
+ (yyval.rcdata).last = ri;
}
break;
-case 162:
-#line 1210 "rcparse.y"
-{
+
+ case 164:
+#line 1219 "rcparse.y"
+ {
struct rcdata_item *ri;
- ri = define_rcdata_number (yyvsp[0].i.val, yyvsp[0].i.dword);
- yyval.rcdata.first = yyvsp[-2].rcdata.first;
- yyvsp[-2].rcdata.last->next = ri;
- yyval.rcdata.last = ri;
+ ri = define_rcdata_number ((yyvsp[0].i).val, (yyvsp[0].i).dword);
+ (yyval.rcdata).first = (yyvsp[-2].rcdata).first;
+ (yyvsp[-2].rcdata).last->next = ri;
+ (yyval.rcdata).last = ri;
}
break;
-case 163:
-#line 1224 "rcparse.y"
-{ sub_res_info = yyvsp[-1].res_info; }
+
+ case 165:
+#line 1233 "rcparse.y"
+ { sub_res_info = (yyvsp[-1].res_info); }
break;
-case 166:
-#line 1231 "rcparse.y"
-{
- define_stringtable (&sub_res_info, yyvsp[-1].il, yyvsp[0].s);
+
+ case 168:
+#line 1240 "rcparse.y"
+ {
+ define_stringtable (&sub_res_info, (yyvsp[-1].il), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 167:
-#line 1238 "rcparse.y"
-{
- define_stringtable (&sub_res_info, yyvsp[-2].il, yyvsp[0].s);
+
+ case 169:
+#line 1247 "rcparse.y"
+ {
+ define_stringtable (&sub_res_info, (yyvsp[-2].il), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 168:
-#line 1251 "rcparse.y"
-{
- define_user_data (yyvsp[-5].id, yyvsp[-4].id, &yyvsp[-3].res_info, yyvsp[-1].rcdata.first);
+
+ case 170:
+#line 1260 "rcparse.y"
+ {
+ define_user_data ((yyvsp[-5].id), (yyvsp[-4].id), &(yyvsp[-3].res_info), (yyvsp[-1].rcdata).first);
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 169:
-#line 1258 "rcparse.y"
-{
- define_user_file (yyvsp[-3].id, yyvsp[-2].id, &yyvsp[-1].res_info, yyvsp[0].s);
+
+ case 171:
+#line 1267 "rcparse.y"
+ {
+ define_user_file ((yyvsp[-3].id), (yyvsp[-2].id), &(yyvsp[-1].res_info), (yyvsp[0].s));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 170:
-#line 1270 "rcparse.y"
-{
- define_versioninfo (yyvsp[-5].id, language, yyvsp[-3].fixver, yyvsp[-1].verinfo);
+
+ case 172:
+#line 1279 "rcparse.y"
+ {
+ define_versioninfo ((yyvsp[-5].id), language, (yyvsp[-3].fixver), (yyvsp[-1].verinfo));
if (yychar != YYEMPTY)
YYERROR;
rcparse_discard_strings ();
}
break;
-case 171:
-#line 1280 "rcparse.y"
-{
- yyval.fixver = ((struct fixed_versioninfo *)
+
+ case 173:
+#line 1289 "rcparse.y"
+ {
+ (yyval.fixver) = ((struct fixed_versioninfo *)
res_alloc (sizeof (struct fixed_versioninfo)));
- memset (yyval.fixver, 0, sizeof (struct fixed_versioninfo));
+ memset ((yyval.fixver), 0, sizeof (struct fixed_versioninfo));
}
break;
-case 172:
-#line 1286 "rcparse.y"
-{
- yyvsp[-5].fixver->file_version_ms = (yyvsp[-3].il << 16) | yyvsp[-2].il;
- yyvsp[-5].fixver->file_version_ls = (yyvsp[-1].il << 16) | yyvsp[0].il;
- yyval.fixver = yyvsp[-5].fixver;
+
+ case 174:
+#line 1295 "rcparse.y"
+ {
+ (yyvsp[-5].fixver)->file_version_ms = ((yyvsp[-3].il) << 16) | (yyvsp[-2].il);
+ (yyvsp[-5].fixver)->file_version_ls = ((yyvsp[-1].il) << 16) | (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-5].fixver);
}
break;
-case 173:
-#line 1292 "rcparse.y"
-{
- yyvsp[-5].fixver->product_version_ms = (yyvsp[-3].il << 16) | yyvsp[-2].il;
- yyvsp[-5].fixver->product_version_ls = (yyvsp[-1].il << 16) | yyvsp[0].il;
- yyval.fixver = yyvsp[-5].fixver;
+
+ case 175:
+#line 1301 "rcparse.y"
+ {
+ (yyvsp[-5].fixver)->product_version_ms = ((yyvsp[-3].il) << 16) | (yyvsp[-2].il);
+ (yyvsp[-5].fixver)->product_version_ls = ((yyvsp[-1].il) << 16) | (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-5].fixver);
}
break;
-case 174:
-#line 1298 "rcparse.y"
-{
- yyvsp[-2].fixver->file_flags_mask = yyvsp[0].il;
- yyval.fixver = yyvsp[-2].fixver;
+
+ case 176:
+#line 1307 "rcparse.y"
+ {
+ (yyvsp[-2].fixver)->file_flags_mask = (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-2].fixver);
}
break;
-case 175:
-#line 1303 "rcparse.y"
-{
- yyvsp[-2].fixver->file_flags = yyvsp[0].il;
- yyval.fixver = yyvsp[-2].fixver;
+
+ case 177:
+#line 1312 "rcparse.y"
+ {
+ (yyvsp[-2].fixver)->file_flags = (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-2].fixver);
}
break;
-case 176:
-#line 1308 "rcparse.y"
-{
- yyvsp[-2].fixver->file_os = yyvsp[0].il;
- yyval.fixver = yyvsp[-2].fixver;
+
+ case 178:
+#line 1317 "rcparse.y"
+ {
+ (yyvsp[-2].fixver)->file_os = (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-2].fixver);
}
break;
-case 177:
-#line 1313 "rcparse.y"
-{
- yyvsp[-2].fixver->file_type = yyvsp[0].il;
- yyval.fixver = yyvsp[-2].fixver;
+
+ case 179:
+#line 1322 "rcparse.y"
+ {
+ (yyvsp[-2].fixver)->file_type = (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-2].fixver);
}
break;
-case 178:
-#line 1318 "rcparse.y"
-{
- yyvsp[-2].fixver->file_subtype = yyvsp[0].il;
- yyval.fixver = yyvsp[-2].fixver;
+
+ case 180:
+#line 1327 "rcparse.y"
+ {
+ (yyvsp[-2].fixver)->file_subtype = (yyvsp[0].il);
+ (yyval.fixver) = (yyvsp[-2].fixver);
}
break;
-case 179:
-#line 1332 "rcparse.y"
-{
- yyval.verinfo = NULL;
+
+ case 181:
+#line 1341 "rcparse.y"
+ {
+ (yyval.verinfo) = NULL;
}
break;
-case 180:
-#line 1336 "rcparse.y"
-{
- yyval.verinfo = append_ver_stringfileinfo (yyvsp[-7].verinfo, yyvsp[-4].s, yyvsp[-2].verstring);
+
+ case 182:
+#line 1345 "rcparse.y"
+ {
+ (yyval.verinfo) = append_ver_stringfileinfo ((yyvsp[-7].verinfo), (yyvsp[-4].s), (yyvsp[-2].verstring));
}
break;
-case 181:
-#line 1340 "rcparse.y"
-{
- yyval.verinfo = append_ver_varfileinfo (yyvsp[-6].verinfo, yyvsp[-2].s, yyvsp[-1].vervar);
+
+ case 183:
+#line 1349 "rcparse.y"
+ {
+ (yyval.verinfo) = append_ver_varfileinfo ((yyvsp[-6].verinfo), (yyvsp[-2].s), (yyvsp[-1].vervar));
}
break;
-case 182:
-#line 1347 "rcparse.y"
-{
- yyval.verstring = NULL;
+
+ case 184:
+#line 1356 "rcparse.y"
+ {
+ (yyval.verstring) = NULL;
}
break;
-case 183:
-#line 1351 "rcparse.y"
-{
- yyval.verstring = append_verval (yyvsp[-4].verstring, yyvsp[-2].s, yyvsp[0].s);
+
+ case 185:
+#line 1360 "rcparse.y"
+ {
+ (yyval.verstring) = append_verval ((yyvsp[-4].verstring), (yyvsp[-2].s), (yyvsp[0].s));
}
break;
-case 184:
-#line 1358 "rcparse.y"
-{
- yyval.vervar = NULL;
+
+ case 186:
+#line 1367 "rcparse.y"
+ {
+ (yyval.vervar) = NULL;
}
break;
-case 185:
-#line 1362 "rcparse.y"
-{
- yyval.vervar = append_vertrans (yyvsp[-2].vervar, yyvsp[-1].il, yyvsp[0].il);
+
+ case 187:
+#line 1371 "rcparse.y"
+ {
+ (yyval.vervar) = append_vertrans ((yyvsp[-2].vervar), (yyvsp[-1].il), (yyvsp[0].il));
}
break;
-case 186:
-#line 1371 "rcparse.y"
-{
- yyval.id.named = 0;
- yyval.id.u.id = yyvsp[0].il;
+
+ case 188:
+#line 1380 "rcparse.y"
+ {
+ (yyval.id).named = 0;
+ (yyval.id).u.id = (yyvsp[0].il);
}
break;
-case 187:
-#line 1376 "rcparse.y"
-{
+
+ case 189:
+#line 1385 "rcparse.y"
+ {
char *copy, *s;
/* It seems that resource ID's are forced to upper case. */
- copy = xstrdup (yyvsp[0].s);
+ copy = xstrdup ((yyvsp[0].s));
for (s = copy; *s != '\0'; s++)
*s = TOUPPER (*s);
- res_string_to_id (&yyval.id, copy);
+ res_string_to_id (&(yyval.id), copy);
free (copy);
}
break;
-case 188:
-#line 1392 "rcparse.y"
-{
- yyval.s = yyvsp[0].s;
+
+ case 190:
+#line 1401 "rcparse.y"
+ {
+ (yyval.s) = (yyvsp[0].s);
}
break;
-case 189:
-#line 1396 "rcparse.y"
-{
- yyval.s = yyvsp[-1].s;
+
+ case 191:
+#line 1405 "rcparse.y"
+ {
+ (yyval.s) = (yyvsp[-1].s);
}
break;
-case 190:
-#line 1400 "rcparse.y"
-{
- yyval.s = yyvsp[-1].s;
+
+ case 192:
+#line 1409 "rcparse.y"
+ {
+ (yyval.s) = (yyvsp[-1].s);
}
break;
-case 191:
-#line 1408 "rcparse.y"
-{
- yyval.id.named = 0;
- yyval.id.u.id = yyvsp[-1].il;
+
+ case 193:
+#line 1417 "rcparse.y"
+ {
+ (yyval.id).named = 0;
+ (yyval.id).u.id = (yyvsp[-1].il);
}
break;
-case 192:
-#line 1413 "rcparse.y"
-{
+
+ case 194:
+#line 1422 "rcparse.y"
+ {
char *copy, *s;
/* It seems that resource ID's are forced to upper case. */
- copy = xstrdup (yyvsp[0].s);
+ copy = xstrdup ((yyvsp[0].s));
for (s = copy; *s != '\0'; s++)
*s = TOUPPER (*s);
- res_string_to_id (&yyval.id, copy);
+ res_string_to_id (&(yyval.id), copy);
free (copy);
}
break;
-case 193:
-#line 1430 "rcparse.y"
-{
- memset (&yyval.res_info, 0, sizeof (struct res_res_info));
- yyval.res_info.language = language;
+
+ case 195:
+#line 1439 "rcparse.y"
+ {
+ memset (&(yyval.res_info), 0, sizeof (struct res_res_info));
+ (yyval.res_info).language = language;
/* FIXME: Is this the right default? */
- yyval.res_info.memflags = MEMFLAG_MOVEABLE | MEMFLAG_PURE | MEMFLAG_DISCARDABLE;
+ (yyval.res_info).memflags = MEMFLAG_MOVEABLE | MEMFLAG_PURE | MEMFLAG_DISCARDABLE;
}
break;
-case 194:
-#line 1437 "rcparse.y"
-{
- yyval.res_info = yyvsp[-1].res_info;
- yyval.res_info.memflags |= yyvsp[0].memflags.on;
- yyval.res_info.memflags &=~ yyvsp[0].memflags.off;
- }
- break;
-case 195:
-#line 1443 "rcparse.y"
-{
- yyval.res_info = yyvsp[-2].res_info;
- yyval.res_info.characteristics = yyvsp[0].il;
+
+ case 196:
+#line 1446 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-1].res_info);
+ (yyval.res_info).memflags |= (yyvsp[0].memflags).on;
+ (yyval.res_info).memflags &=~ (yyvsp[0].memflags).off;
}
break;
-case 196:
-#line 1448 "rcparse.y"
-{
- yyval.res_info = yyvsp[-3].res_info;
- yyval.res_info.language = yyvsp[-1].il | (yyvsp[0].il << SUBLANG_SHIFT);
+
+ case 197:
+#line 1452 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-2].res_info);
+ (yyval.res_info).characteristics = (yyvsp[0].il);
}
break;
-case 197:
-#line 1453 "rcparse.y"
-{
- yyval.res_info = yyvsp[-2].res_info;
- yyval.res_info.version = yyvsp[0].il;
+
+ case 198:
+#line 1457 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-3].res_info);
+ (yyval.res_info).language = (yyvsp[-1].il) | ((yyvsp[0].il) << SUBLANG_SHIFT);
}
break;
-case 198:
-#line 1463 "rcparse.y"
-{
- memset (&yyval.res_info, 0, sizeof (struct res_res_info));
- yyval.res_info.language = language;
- yyval.res_info.memflags = MEMFLAG_MOVEABLE | MEMFLAG_DISCARDABLE;
+
+ case 199:
+#line 1462 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-2].res_info);
+ (yyval.res_info).version = (yyvsp[0].il);
}
break;
-case 199:
-#line 1469 "rcparse.y"
-{
- yyval.res_info = yyvsp[-1].res_info;
- yyval.res_info.memflags |= yyvsp[0].memflags.on;
- yyval.res_info.memflags &=~ yyvsp[0].memflags.off;
+
+ case 200:
+#line 1472 "rcparse.y"
+ {
+ memset (&(yyval.res_info), 0, sizeof (struct res_res_info));
+ (yyval.res_info).language = language;
+ (yyval.res_info).memflags = MEMFLAG_MOVEABLE | MEMFLAG_DISCARDABLE;
}
break;
-case 200:
-#line 1480 "rcparse.y"
-{
- memset (&yyval.res_info, 0, sizeof (struct res_res_info));
- yyval.res_info.language = language;
- yyval.res_info.memflags = MEMFLAG_MOVEABLE | MEMFLAG_PURE | MEMFLAG_DISCARDABLE;
+
+ case 201:
+#line 1478 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-1].res_info);
+ (yyval.res_info).memflags |= (yyvsp[0].memflags).on;
+ (yyval.res_info).memflags &=~ (yyvsp[0].memflags).off;
}
break;
-case 201:
-#line 1486 "rcparse.y"
-{
- yyval.res_info = yyvsp[-1].res_info;
- yyval.res_info.memflags |= yyvsp[0].memflags.on;
- yyval.res_info.memflags &=~ yyvsp[0].memflags.off;
+
+ case 202:
+#line 1489 "rcparse.y"
+ {
+ memset (&(yyval.res_info), 0, sizeof (struct res_res_info));
+ (yyval.res_info).language = language;
+ (yyval.res_info).memflags = MEMFLAG_MOVEABLE | MEMFLAG_PURE | MEMFLAG_DISCARDABLE;
}
break;
-case 202:
-#line 1498 "rcparse.y"
-{
- yyval.memflags.on = MEMFLAG_MOVEABLE;
- yyval.memflags.off = 0;
+
+ case 203:
+#line 1495 "rcparse.y"
+ {
+ (yyval.res_info) = (yyvsp[-1].res_info);
+ (yyval.res_info).memflags |= (yyvsp[0].memflags).on;
+ (yyval.res_info).memflags &=~ (yyvsp[0].memflags).off;
}
break;
-case 203:
-#line 1503 "rcparse.y"
-{
- yyval.memflags.on = 0;
- yyval.memflags.off = MEMFLAG_MOVEABLE;
+
+ case 204:
+#line 1507 "rcparse.y"
+ {
+ (yyval.memflags).on = MEMFLAG_MOVEABLE;
+ (yyval.memflags).off = 0;
}
break;
-case 204:
-#line 1508 "rcparse.y"
-{
- yyval.memflags.on = MEMFLAG_PURE;
- yyval.memflags.off = 0;
+
+ case 205:
+#line 1512 "rcparse.y"
+ {
+ (yyval.memflags).on = 0;
+ (yyval.memflags).off = MEMFLAG_MOVEABLE;
}
break;
-case 205:
-#line 1513 "rcparse.y"
-{
- yyval.memflags.on = 0;
- yyval.memflags.off = MEMFLAG_PURE;
+
+ case 206:
+#line 1517 "rcparse.y"
+ {
+ (yyval.memflags).on = MEMFLAG_PURE;
+ (yyval.memflags).off = 0;
}
break;
-case 206:
-#line 1518 "rcparse.y"
-{
- yyval.memflags.on = MEMFLAG_PRELOAD;
- yyval.memflags.off = 0;
+
+ case 207:
+#line 1522 "rcparse.y"
+ {
+ (yyval.memflags).on = 0;
+ (yyval.memflags).off = MEMFLAG_PURE;
}
break;
-case 207:
-#line 1523 "rcparse.y"
-{
- yyval.memflags.on = 0;
- yyval.memflags.off = MEMFLAG_PRELOAD;
+
+ case 208:
+#line 1527 "rcparse.y"
+ {
+ (yyval.memflags).on = MEMFLAG_PRELOAD;
+ (yyval.memflags).off = 0;
}
break;
-case 208:
-#line 1528 "rcparse.y"
-{
- yyval.memflags.on = MEMFLAG_DISCARDABLE;
- yyval.memflags.off = 0;
+
+ case 209:
+#line 1532 "rcparse.y"
+ {
+ (yyval.memflags).on = 0;
+ (yyval.memflags).off = MEMFLAG_PRELOAD;
}
break;
-case 209:
-#line 1538 "rcparse.y"
-{
- yyval.s = yyvsp[0].s;
+
+ case 210:
+#line 1537 "rcparse.y"
+ {
+ (yyval.memflags).on = MEMFLAG_DISCARDABLE;
+ (yyval.memflags).off = 0;
}
break;
-case 210:
-#line 1542 "rcparse.y"
-{
- yyval.s = yyvsp[0].s;
+
+ case 211:
+#line 1547 "rcparse.y"
+ {
+ (yyval.s) = (yyvsp[0].s);
}
break;
-case 211:
-#line 1559 "rcparse.y"
-{
- style |= yyvsp[0].il;
+
+ case 212:
+#line 1551 "rcparse.y"
+ {
+ (yyval.s) = (yyvsp[0].s);
}
break;
-case 212:
-#line 1563 "rcparse.y"
-{
- style &=~ yyvsp[0].il;
+
+ case 213:
+#line 1568 "rcparse.y"
+ {
+ style |= (yyvsp[0].il);
}
break;
-case 213:
-#line 1567 "rcparse.y"
-{
- style |= yyvsp[0].il;
+
+ case 214:
+#line 1572 "rcparse.y"
+ {
+ style &=~ (yyvsp[0].il);
}
break;
-case 214:
-#line 1571 "rcparse.y"
-{
- style &=~ yyvsp[0].il;
+
+ case 215:
+#line 1576 "rcparse.y"
+ {
+ style |= (yyvsp[0].il);
}
break;
-case 215:
-#line 1578 "rcparse.y"
-{
- yyval.il = yyvsp[0].i.val;
+
+ case 216:
+#line 1580 "rcparse.y"
+ {
+ style &=~ (yyvsp[0].il);
}
break;
-case 216:
-#line 1582 "rcparse.y"
-{
- yyval.il = yyvsp[-1].il;
+
+ case 217:
+#line 1587 "rcparse.y"
+ {
+ (yyval.il) = (yyvsp[0].i).val;
}
break;
-case 217:
+
+ case 218:
#line 1591 "rcparse.y"
-{
- yyval.il = 0;
+ {
+ (yyval.il) = (yyvsp[-1].il);
}
break;
-case 218:
-#line 1595 "rcparse.y"
-{
- yyval.il = yyvsp[0].il;
+
+ case 219:
+#line 1600 "rcparse.y"
+ {
+ (yyval.il) = 0;
}
break;
-case 219:
+
+ case 220:
#line 1604 "rcparse.y"
-{
- yyval.il = yyvsp[0].il;
+ {
+ (yyval.il) = (yyvsp[0].il);
}
break;
-case 220:
+
+ case 221:
#line 1613 "rcparse.y"
-{
- yyval.il = yyvsp[0].i.val;
+ {
+ (yyval.il) = (yyvsp[0].il);
}
break;
-case 221:
+
+ case 222:
#line 1622 "rcparse.y"
-{
- yyval.i = yyvsp[0].i;
+ {
+ (yyval.il) = (yyvsp[0].i).val;
}
break;
-case 222:
-#line 1626 "rcparse.y"
-{
- yyval.i = yyvsp[-1].i;
+
+ case 223:
+#line 1631 "rcparse.y"
+ {
+ (yyval.i) = (yyvsp[0].i);
}
break;
-case 223:
-#line 1630 "rcparse.y"
-{
- yyval.i.val = ~ yyvsp[0].i.val;
- yyval.i.dword = yyvsp[0].i.dword;
+
+ case 224:
+#line 1635 "rcparse.y"
+ {
+ (yyval.i) = (yyvsp[-1].i);
}
break;
-case 224:
-#line 1635 "rcparse.y"
-{
- yyval.i.val = - yyvsp[0].i.val;
- yyval.i.dword = yyvsp[0].i.dword;
+
+ case 225:
+#line 1639 "rcparse.y"
+ {
+ (yyval.i).val = ~ (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[0].i).dword;
}
break;
-case 225:
-#line 1640 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val * yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 226:
+#line 1644 "rcparse.y"
+ {
+ (yyval.i).val = - (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[0].i).dword;
}
break;
-case 226:
-#line 1645 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val / yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 227:
+#line 1649 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val * (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 227:
-#line 1650 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val % yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 228:
+#line 1654 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val / (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 228:
-#line 1655 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val + yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 229:
+#line 1659 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val % (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 229:
-#line 1660 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val - yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 230:
+#line 1664 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val + (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 230:
-#line 1665 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val & yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 231:
+#line 1669 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val - (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 231:
-#line 1670 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val ^ yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 232:
+#line 1674 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val & (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 232:
-#line 1675 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val | yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 233:
+#line 1679 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val ^ (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 233:
-#line 1686 "rcparse.y"
-{
- yyval.il = yyvsp[0].il;
+
+ case 234:
+#line 1684 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val | (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 234:
+
+ case 235:
#line 1695 "rcparse.y"
-{
- yyval.il = yyvsp[0].i.val;
+ {
+ (yyval.il) = (yyvsp[0].il);
}
break;
-case 235:
-#line 1706 "rcparse.y"
-{
- yyval.i = yyvsp[0].i;
+
+ case 236:
+#line 1704 "rcparse.y"
+ {
+ (yyval.il) = (yyvsp[0].i).val;
}
break;
-case 236:
-#line 1710 "rcparse.y"
-{
- yyval.i = yyvsp[-1].i;
+
+ case 237:
+#line 1715 "rcparse.y"
+ {
+ (yyval.i) = (yyvsp[0].i);
}
break;
-case 237:
-#line 1714 "rcparse.y"
-{
- yyval.i.val = ~ yyvsp[0].i.val;
- yyval.i.dword = yyvsp[0].i.dword;
+
+ case 238:
+#line 1719 "rcparse.y"
+ {
+ (yyval.i) = (yyvsp[-1].i);
}
break;
-case 238:
-#line 1719 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val * yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 239:
+#line 1723 "rcparse.y"
+ {
+ (yyval.i).val = ~ (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[0].i).dword;
}
break;
-case 239:
-#line 1724 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val / yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 240:
+#line 1728 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val * (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 240:
-#line 1729 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val % yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 241:
+#line 1733 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val / (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 241:
-#line 1734 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val + yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 242:
+#line 1738 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val % (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 242:
-#line 1739 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val - yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 243:
+#line 1743 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val + (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 243:
-#line 1744 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val & yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 244:
+#line 1748 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val - (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 244:
-#line 1749 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val ^ yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 245:
+#line 1753 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val & (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-case 245:
-#line 1754 "rcparse.y"
-{
- yyval.i.val = yyvsp[-2].i.val | yyvsp[0].i.val;
- yyval.i.dword = yyvsp[-2].i.dword || yyvsp[0].i.dword;
+
+ case 246:
+#line 1758 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val ^ (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
+ }
+ break;
+
+ case 247:
+#line 1763 "rcparse.y"
+ {
+ (yyval.i).val = (yyvsp[-2].i).val | (yyvsp[0].i).val;
+ (yyval.i).dword = (yyvsp[-2].i).dword || (yyvsp[0].i).dword;
}
break;
-}
-#line 705 "/usr/share/bison-1.35/bison.simple"
+ default: break;
+ }
+
+/* Line 1126 of yacc.c. */
+#line 3867 "rcparse.c"
yyvsp -= yylen;
yyssp -= yylen;
-#if YYLSP_NEEDED
- yylsp -= yylen;
-#endif
-#if YYDEBUG
- if (yydebug)
- {
- short *yyssp1 = yyss - 1;
- YYFPRINTF (stderr, "state stack now");
- while (yyssp1 != yyssp)
- YYFPRINTF (stderr, " %d", *++yyssp1);
- YYFPRINTF (stderr, "\n");
- }
-#endif
+
+ YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
-#if YYLSP_NEEDED
- *++yylsp = yyloc;
-#endif
+
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
@@ -3289,11 +3880,11 @@ case 245:
yyn = yyr1[yyn];
- yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
- if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
+ yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
+ if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
yystate = yytable[yystate];
else
- yystate = yydefgoto[yyn - YYNTBASE];
+ yystate = yydefgoto[yyn - YYNTOKENS];
goto yynewstate;
@@ -3306,155 +3897,193 @@ yyerrlab:
if (!yyerrstatus)
{
++yynerrs;
-
-#ifdef YYERROR_VERBOSE
+#if YYERROR_VERBOSE
yyn = yypact[yystate];
- if (yyn > YYFLAG && yyn < YYLAST)
+ if (YYPACT_NINF < yyn && yyn < YYLAST)
{
- YYSIZE_T yysize = 0;
- char *yymsg;
- int yyx, yycount;
+ int yytype = YYTRANSLATE (yychar);
+ YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
+ YYSIZE_T yysize = yysize0;
+ YYSIZE_T yysize1;
+ int yysize_overflow = 0;
+ char *yymsg = 0;
+# define YYERROR_VERBOSE_ARGS_MAXIMUM 5
+ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+ int yyx;
+
+#if 0
+ /* This is so xgettext sees the translatable formats that are
+ constructed on the fly. */
+ YY_("syntax error, unexpected %s");
+ YY_("syntax error, unexpected %s, expecting %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+#endif
+ char *yyfmt;
+ char const *yyf;
+ static char const yyunexpected[] = "syntax error, unexpected %s";
+ static char const yyexpecting[] = ", expecting %s";
+ static char const yyor[] = " or %s";
+ char yyformat[sizeof yyunexpected
+ + sizeof yyexpecting - 1
+ + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
+ * (sizeof yyor - 1))];
+ char const *yyprefix = yyexpecting;
- yycount = 0;
/* Start YYX at -YYN if negative to avoid negative indexes in
YYCHECK. */
- for (yyx = yyn < 0 ? -yyn : 0;
- yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
- if (yycheck[yyx + yyn] == yyx)
- yysize += yystrlen (yytname[yyx]) + 15, yycount++;
- yysize += yystrlen ("parse error, unexpected ") + 1;
- yysize += yystrlen (yytname[YYTRANSLATE (yychar)]);
- yymsg = (char *) YYSTACK_ALLOC (yysize);
- if (yymsg != 0)
- {
- char *yyp = yystpcpy (yymsg, "parse error, unexpected ");
- yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]);
+ int yyxbegin = yyn < 0 ? -yyn : 0;
+
+ /* Stay within bounds of both yycheck and yytname. */
+ int yychecklim = YYLAST - yyn;
+ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
+ int yycount = 1;
+
+ yyarg[0] = yytname[yytype];
+ yyfmt = yystpcpy (yyformat, yyunexpected);
+
+ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+ {
+ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
+ {
+ yycount = 1;
+ yysize = yysize0;
+ yyformat[sizeof yyunexpected - 1] = '\0';
+ break;
+ }
+ yyarg[yycount++] = yytname[yyx];
+ yysize1 = yysize + yytnamerr (0, yytname[yyx]);
+ yysize_overflow |= yysize1 < yysize;
+ yysize = yysize1;
+ yyfmt = yystpcpy (yyfmt, yyprefix);
+ yyprefix = yyor;
+ }
+
+ yyf = YY_(yyformat);
+ yysize1 = yysize + yystrlen (yyf);
+ yysize_overflow |= yysize1 < yysize;
+ yysize = yysize1;
- if (yycount < 5)
+ if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
+ yymsg = (char *) YYSTACK_ALLOC (yysize);
+ if (yymsg)
+ {
+ /* Avoid sprintf, as that infringes on the user's name space.
+ Don't have undefined behavior even if the translation
+ produced a string with the wrong number of "%s"s. */
+ char *yyp = yymsg;
+ int yyi = 0;
+ while ((*yyp = *yyf))
{
- yycount = 0;
- for (yyx = yyn < 0 ? -yyn : 0;
- yyx < (int) (sizeof (yytname) / sizeof (char *));
- yyx++)
- if (yycheck[yyx + yyn] == yyx)
- {
- const char *yyq = ! yycount ? ", expecting " : " or ";
- yyp = yystpcpy (yyp, yyq);
- yyp = yystpcpy (yyp, yytname[yyx]);
- yycount++;
- }
+ if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
+ {
+ yyp += yytnamerr (yyp, yyarg[yyi++]);
+ yyf += 2;
+ }
+ else
+ {
+ yyp++;
+ yyf++;
+ }
}
yyerror (yymsg);
YYSTACK_FREE (yymsg);
}
else
- yyerror ("parse error; also virtual memory exhausted");
+ {
+ yyerror (YY_("syntax error"));
+ goto yyexhaustedlab;
+ }
}
else
-#endif /* defined (YYERROR_VERBOSE) */
- yyerror ("parse error");
+#endif /* YYERROR_VERBOSE */
+ yyerror (YY_("syntax error"));
}
- goto yyerrlab1;
-/*--------------------------------------------------.
-| yyerrlab1 -- error raised explicitly by an action |
-`--------------------------------------------------*/
-yyerrlab1:
+
if (yyerrstatus == 3)
{
- /* If just tried and failed to reuse lookahead token after an
+ /* If just tried and failed to reuse look-ahead token after an
error, discard it. */
- /* return failure if at end of input */
- if (yychar == YYEOF)
- YYABORT;
- YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
- yychar, yytname[yychar1]));
- yychar = YYEMPTY;
+ if (yychar <= YYEOF)
+ {
+ /* Return failure if at end of input. */
+ if (yychar == YYEOF)
+ YYABORT;
+ }
+ else
+ {
+ yydestruct ("Error: discarding", yytoken, &yylval);
+ yychar = YYEMPTY;
+ }
}
- /* Else will try to reuse lookahead token after shifting the error
+ /* Else will try to reuse look-ahead token after shifting the error
token. */
+ goto yyerrlab1;
- yyerrstatus = 3; /* Each real token shifted decrements this */
- goto yyerrhandle;
+/*---------------------------------------------------.
+| yyerrorlab -- error raised explicitly by YYERROR. |
+`---------------------------------------------------*/
+yyerrorlab:
+ /* Pacify compilers like GCC when the user code never invokes
+ YYERROR and the label yyerrorlab therefore never appears in user
+ code. */
+ if (0)
+ goto yyerrorlab;
-/*-------------------------------------------------------------------.
-| yyerrdefault -- current state does not do anything special for the |
-| error token. |
-`-------------------------------------------------------------------*/
-yyerrdefault:
-#if 0
- /* This is wrong; only states that explicitly want error tokens
- should shift them. */
-
- /* If its default is to accept any token, ok. Otherwise pop it. */
- yyn = yydefact[yystate];
- if (yyn)
- goto yydefault;
-#endif
+yyvsp -= yylen;
+ yyssp -= yylen;
+ yystate = *yyssp;
+ goto yyerrlab1;
-/*---------------------------------------------------------------.
-| yyerrpop -- pop the current state because it cannot handle the |
-| error token |
-`---------------------------------------------------------------*/
-yyerrpop:
- if (yyssp == yyss)
- YYABORT;
- yyvsp--;
- yystate = *--yyssp;
-#if YYLSP_NEEDED
- yylsp--;
-#endif
+/*-------------------------------------------------------------.
+| yyerrlab1 -- common code for both syntax error and YYERROR. |
+`-------------------------------------------------------------*/
+yyerrlab1:
+ yyerrstatus = 3; /* Each real token shifted decrements this. */
-#if YYDEBUG
- if (yydebug)
+ for (;;)
{
- short *yyssp1 = yyss - 1;
- YYFPRINTF (stderr, "Error: state stack now");
- while (yyssp1 != yyssp)
- YYFPRINTF (stderr, " %d", *++yyssp1);
- YYFPRINTF (stderr, "\n");
- }
-#endif
+ yyn = yypact[yystate];
+ if (yyn != YYPACT_NINF)
+ {
+ yyn += YYTERROR;
+ if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
+ {
+ yyn = yytable[yyn];
+ if (0 < yyn)
+ break;
+ }
+ }
-/*--------------.
-| yyerrhandle. |
-`--------------*/
-yyerrhandle:
- yyn = yypact[yystate];
- if (yyn == YYFLAG)
- goto yyerrdefault;
+ /* Pop the current state because it cannot handle the error token. */
+ if (yyssp == yyss)
+ YYABORT;
- yyn += YYTERROR;
- if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
- goto yyerrdefault;
- yyn = yytable[yyn];
- if (yyn < 0)
- {
- if (yyn == YYFLAG)
- goto yyerrpop;
- yyn = -yyn;
- goto yyreduce;
+ yydestruct ("Error: popping", yystos[yystate], yyvsp);
+ YYPOPSTACK;
+ yystate = *yyssp;
+ YY_STACK_PRINT (yyss, yyssp);
}
- else if (yyn == 0)
- goto yyerrpop;
if (yyn == YYFINAL)
YYACCEPT;
- YYDPRINTF ((stderr, "Shifting error token, "));
-
*++yyvsp = yylval;
-#if YYLSP_NEEDED
- *++yylsp = yylloc;
-#endif
+
+
+ /* Shift the error token. */
+ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
yystate = yyn;
goto yynewstate;
@@ -3474,22 +4103,35 @@ yyabortlab:
yyresult = 1;
goto yyreturn;
-/*---------------------------------------------.
-| yyoverflowab -- parser overflow comes here. |
-`---------------------------------------------*/
-yyoverflowlab:
- yyerror ("parser stack overflow");
+#ifndef yyoverflow
+/*-------------------------------------------------.
+| yyexhaustedlab -- memory exhaustion comes here. |
+`-------------------------------------------------*/
+yyexhaustedlab:
+ yyerror (YY_("memory exhausted"));
yyresult = 2;
/* Fall through. */
+#endif
yyreturn:
+ if (yychar != YYEOF && yychar != YYEMPTY)
+ yydestruct ("Cleanup: discarding lookahead",
+ yytoken, &yylval);
+ while (yyssp != yyss)
+ {
+ yydestruct ("Cleanup: popping",
+ yystos[*yyssp], yyvsp);
+ YYPOPSTACK;
+ }
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
return yyresult;
}
-#line 1760 "rcparse.y"
+
+
+#line 1769 "rcparse.y"
/* Set the language from the command line. */
@@ -3499,3 +4141,4 @@ rcparse_set_language (int lang)
{
language = lang;
}
+