diff -Nrcpad gcc-3.4.4/gcc/objc/objc-parse.c gcc-3.4.5/gcc/objc/objc-parse.c *** gcc-3.4.4/gcc/objc/objc-parse.c 2005-05-19 10:01:23.000000000 +0000 --- gcc-3.4.5/gcc/objc/objc-parse.c 2005-12-01 03:55:14.000000000 +0000 *************** *** 1,81 **** ! /* A Bison parser, made from objc/objc-parse.y ! by GNU bison 1.35. */ ! #define YYBISON 1 /* Identify Bison output. */ ! # define IDENTIFIER 257 ! # define TYPENAME 258 ! # define SCSPEC 259 ! # define STATIC 260 ! # define TYPESPEC 261 ! # define TYPE_QUAL 262 ! # define CONSTANT 263 ! # define STRING 264 ! # define ELLIPSIS 265 ! # define SIZEOF 266 ! # define ENUM 267 ! # define STRUCT 268 ! # define UNION 269 ! # define IF 270 ! # define ELSE 271 ! # define WHILE 272 ! # define DO 273 ! # define FOR 274 ! # define SWITCH 275 ! # define CASE 276 ! # define DEFAULT 277 ! # define BREAK 278 ! # define CONTINUE 279 ! # define RETURN 280 ! # define GOTO 281 ! # define ASM_KEYWORD 282 ! # define TYPEOF 283 ! # define ALIGNOF 284 ! # define ATTRIBUTE 285 ! # define EXTENSION 286 ! # define LABEL 287 ! # define REALPART 288 ! # define IMAGPART 289 ! # define VA_ARG 290 ! # define CHOOSE_EXPR 291 ! # define TYPES_COMPATIBLE_P 292 ! # define PTR_VALUE 293 ! # define PTR_BASE 294 ! # define PTR_EXTENT 295 ! # define FUNC_NAME 296 ! # define ASSIGN 297 ! # define OROR 298 ! # define ANDAND 299 ! # define EQCOMPARE 300 ! # define ARITHCOMPARE 301 ! # define LSHIFT 302 ! # define RSHIFT 303 ! # define UNARY 304 ! # define PLUSPLUS 305 ! # define MINUSMINUS 306 ! # define HYPERUNARY 307 ! # define POINTSAT 308 ! # define INTERFACE 309 ! # define IMPLEMENTATION 310 ! # define END 311 ! # define SELECTOR 312 ! # define DEFS 313 ! # define ENCODE 314 ! # define CLASSNAME 315 ! # define PUBLIC 316 ! # define PRIVATE 317 ! # define PROTECTED 318 ! # define PROTOCOL 319 ! # define OBJECTNAME 320 ! # define CLASS 321 ! # define ALIAS 322 ! # define AT_THROW 323 ! # define AT_TRY 324 ! # define AT_CATCH 325 ! # define AT_FINALLY 326 ! # define AT_SYNCHRONIZED 327 ! # define OBJC_STRING 328 #line 33 "objc/objc-parse.y" #include "config.h" --- 1,209 ---- ! /* A Bison parser, made by GNU Bison 1.875. */ ! /* Skeleton parser for Yacc-like parsing with 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. */ ! ! /* 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 + + /* 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 { + IDENTIFIER = 258, + TYPENAME = 259, + SCSPEC = 260, + STATIC = 261, + TYPESPEC = 262, + TYPE_QUAL = 263, + CONSTANT = 264, + STRING = 265, + ELLIPSIS = 266, + SIZEOF = 267, + ENUM = 268, + STRUCT = 269, + UNION = 270, + IF = 271, + ELSE = 272, + WHILE = 273, + DO = 274, + FOR = 275, + SWITCH = 276, + CASE = 277, + DEFAULT = 278, + BREAK = 279, + CONTINUE = 280, + RETURN = 281, + GOTO = 282, + ASM_KEYWORD = 283, + TYPEOF = 284, + ALIGNOF = 285, + ATTRIBUTE = 286, + EXTENSION = 287, + LABEL = 288, + REALPART = 289, + IMAGPART = 290, + VA_ARG = 291, + CHOOSE_EXPR = 292, + TYPES_COMPATIBLE_P = 293, + PTR_VALUE = 294, + PTR_BASE = 295, + PTR_EXTENT = 296, + FUNC_NAME = 297, + ASSIGN = 298, + OROR = 299, + ANDAND = 300, + EQCOMPARE = 301, + ARITHCOMPARE = 302, + RSHIFT = 303, + LSHIFT = 304, + MINUSMINUS = 305, + PLUSPLUS = 306, + UNARY = 307, + HYPERUNARY = 308, + POINTSAT = 309, + INTERFACE = 310, + IMPLEMENTATION = 311, + END = 312, + SELECTOR = 313, + DEFS = 314, + ENCODE = 315, + CLASSNAME = 316, + PUBLIC = 317, + PRIVATE = 318, + PROTECTED = 319, + PROTOCOL = 320, + OBJECTNAME = 321, + CLASS = 322, + ALIAS = 323, + AT_THROW = 324, + AT_TRY = 325, + AT_CATCH = 326, + AT_FINALLY = 327, + AT_SYNCHRONIZED = 328, + OBJC_STRING = 329 + }; + #endif + #define IDENTIFIER 258 + #define TYPENAME 259 + #define SCSPEC 260 + #define STATIC 261 + #define TYPESPEC 262 + #define TYPE_QUAL 263 + #define CONSTANT 264 + #define STRING 265 + #define ELLIPSIS 266 + #define SIZEOF 267 + #define ENUM 268 + #define STRUCT 269 + #define UNION 270 + #define IF 271 + #define ELSE 272 + #define WHILE 273 + #define DO 274 + #define FOR 275 + #define SWITCH 276 + #define CASE 277 + #define DEFAULT 278 + #define BREAK 279 + #define CONTINUE 280 + #define RETURN 281 + #define GOTO 282 + #define ASM_KEYWORD 283 + #define TYPEOF 284 + #define ALIGNOF 285 + #define ATTRIBUTE 286 + #define EXTENSION 287 + #define LABEL 288 + #define REALPART 289 + #define IMAGPART 290 + #define VA_ARG 291 + #define CHOOSE_EXPR 292 + #define TYPES_COMPATIBLE_P 293 + #define PTR_VALUE 294 + #define PTR_BASE 295 + #define PTR_EXTENT 296 + #define FUNC_NAME 297 + #define ASSIGN 298 + #define OROR 299 + #define ANDAND 300 + #define EQCOMPARE 301 + #define ARITHCOMPARE 302 + #define RSHIFT 303 + #define LSHIFT 304 + #define MINUSMINUS 305 + #define PLUSPLUS 306 + #define UNARY 307 + #define HYPERUNARY 308 + #define POINTSAT 309 + #define INTERFACE 310 + #define IMPLEMENTATION 311 + #define END 312 + #define SELECTOR 313 + #define DEFS 314 + #define ENCODE 315 + #define CLASSNAME 316 + #define PUBLIC 317 + #define PRIVATE 318 + #define PROTECTED 319 + #define PROTOCOL 320 + #define OBJECTNAME 321 + #define CLASS 322 + #define ALIAS 323 + #define AT_THROW 324 + #define AT_TRY 325 + #define AT_CATCH 326 + #define AT_FINALLY 327 + #define AT_SYNCHRONIZED 328 + #define OBJC_STRING 329 + + + + + /* Copy the first part of user declarations. */ #line 33 "objc/objc-parse.y" #include "config.h" *************** do { \ *** 141,153 **** malloced_yyvs = (void *) newvs; \ } while (0) #line 100 "objc/objc-parse.y" ! #ifndef YYSTYPE ! typedef union {long itype; tree ttype; enum tree_code code; ! location_t location; } yystype; ! # define YYSTYPE yystype # define YYSTYPE_IS_TRIVIAL 1 #endif #line 248 "objc/objc-parse.y" /* Number of statements (loosely speaking) and compound statements --- 269,302 ---- malloced_yyvs = (void *) newvs; \ } while (0) + + /* 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 + + #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) #line 100 "objc/objc-parse.y" ! typedef union YYSTYPE {long itype; tree ttype; enum tree_code code; ! location_t location; } YYSTYPE; ! /* Line 191 of yacc.c. */ ! #line 291 "objc/objc-parse.c" ! # define yystype YYSTYPE /* obsolescent; will be withdrawn */ ! # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 #endif + + + + /* Copy the second part of user declarations. */ #line 248 "objc/objc-parse.y" /* Number of statements (loosely speaking) and compound statements *************** c_parse_init (void) *** 240,271 **** init_reswords (); } ! #ifndef YYDEBUG ! # define YYDEBUG 0 #endif ! #define YYFINAL 1153 ! #define YYFLAG -32768 ! #define YYNTBASE 97 ! /* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ ! #define YYTRANSLATE(x) ((unsigned)(x) <= 328 ? yytranslate[x] : 365) ! /* 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, 93, 2, 2, 2, 60, 51, 2, ! 67, 89, 58, 56, 94, 57, 66, 59, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 46, 90, ! 2, 44, 2, 45, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ! 2, 68, 2, 96, 50, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 95, 49, 91, 92, 2, 2, 2, --- 389,527 ---- init_reswords (); } ! ! ! /* Line 214 of yacc.c. */ ! #line 395 "objc/objc-parse.c" ! ! #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 ! # else ! # ifdef __GNUC__ ! # define YYSTACK_ALLOC __builtin_alloca ! # endif ! # endif ! # endif ! # endif ! ! # ifdef YYSTACK_ALLOC ! /* Pacify GCC's `empty if-body' warning. */ ! # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) ! # else ! # if defined (__STDC__) || defined (__cplusplus) ! # include /* INFRINGES ON USER NAME SPACE */ ! # define YYSIZE_T size_t ! # endif ! # define YYSTACK_ALLOC malloc ! # define YYSTACK_FREE free ! # endif ! #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ ! ! ! #if (! defined (yyoverflow) \ ! && (! defined (__cplusplus) \ ! || (YYSTYPE_IS_TRIVIAL))) ! ! /* A type that is properly aligned for any stack member. */ ! union yyalloc ! { ! short yyss; ! YYSTYPE yyvs; ! }; ! ! /* The size of the maximum gap between one aligned stack and the next. */ ! # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) ! ! /* The size of an array large to enough to hold all stacks, each with ! N elements. */ ! # define YYSTACK_BYTES(N) \ ! ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ ! + YYSTACK_GAP_MAXIMUM) ! ! /* Copy COUNT objects from FROM to TO. The source and destination do ! not overlap. */ ! # ifndef YYCOPY ! # if 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; \ ! for (yyi = 0; yyi < (Count); yyi++) \ ! (To)[yyi] = (From)[yyi]; \ ! } \ ! while (0) ! # endif ! # endif ! ! /* Relocate STACK from its old location to the new one. The ! local variables YYSIZE and YYSTACKSIZE give the old and new number of ! elements in the stack, and YYPTR gives the new location of the ! stack. Advance YYPTR to a properly aligned location for the next ! stack. */ ! # define YYSTACK_RELOCATE(Stack) \ ! do \ ! { \ ! YYSIZE_T yynewbytes; \ ! YYCOPY (&yyptr->Stack, Stack, yysize); \ ! Stack = &yyptr->Stack; \ ! 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 yysigned_char; + #endif + /* YYFINAL -- State number of the termination state. */ + #define YYFINAL 4 + /* YYLAST -- Last index in YYTABLE. */ + #define YYLAST 5175 ! /* YYNTOKENS -- Number of terminals. */ ! #define YYNTOKENS 97 ! /* YYNNTS -- Number of nonterminals. */ ! #define YYNNTS 269 ! /* YYNRULES -- Number of rules. */ ! #define YYNRULES 725 ! /* YYNRULES -- Number of states. */ ! #define YYNSTATES 1153 ! /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ ! #define YYUNDEFTOK 2 ! #define YYMAXUTOK 329 ! #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, 93, 2, 2, 2, 60, 51, 2, ! 66, 89, 58, 56, 94, 57, 65, 59, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 46, 90, ! 2, 43, 2, 45, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ! 2, 67, 2, 96, 50, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 95, 49, 91, 92, 2, 2, 2, *************** static const char yytranslate[] = *** 281,714 **** 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 47, 48, ! 52, 53, 54, 55, 61, 62, 63, 64, 65, 69, ! 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, ! 80, 81, 82, 83, 84, 85, 86, 87, 88 }; #if YYDEBUG ! static const short yyprhs[] = { ! 0, 0, 1, 3, 4, 7, 8, 12, 14, 16, ! 18, 20, 26, 29, 33, 38, 43, 46, 49, 52, ! 54, 55, 56, 65, 70, 71, 72, 81, 86, 87, ! 88, 96, 100, 102, 104, 106, 108, 110, 112, 114, ! 116, 118, 120, 122, 124, 125, 127, 129, 133, 135, ! 138, 141, 144, 147, 150, 155, 158, 163, 166, 169, ! 171, 173, 175, 177, 182, 184, 188, 192, 196, 200, ! 204, 208, 212, 216, 220, 224, 228, 232, 233, 238, ! 239, 244, 245, 246, 254, 255, 261, 265, 269, 271, ! 273, 275, 277, 278, 286, 290, 294, 298, 302, 307, ! 314, 323, 330, 335, 339, 343, 346, 349, 351, 353, ! 355, 357, 359, 361, 362, 364, 367, 369, 371, 374, ! 377, 382, 387, 390, 393, 396, 397, 399, 404, 409, ! 413, 417, 420, 423, 425, 428, 431, 434, 437, 440, ! 442, 445, 447, 450, 453, 456, 459, 462, 465, 467, 470, 473, 476, 479, 482, 485, 488, 491, 494, 497, ! 500, 503, 506, 509, 512, 515, 517, 520, 523, 526, 529, 532, 535, 538, 541, 544, 547, 550, 553, 556, 559, 562, 565, 568, 571, 574, 577, 580, 583, 586, 589, 592, 595, 598, 601, 604, 607, 610, 613, 616, 619, 622, 625, 628, 631, 634, 637, 640, 643, 646, ! 649, 651, 653, 655, 657, 659, 661, 663, 665, 667, ! 669, 671, 673, 675, 677, 679, 681, 683, 685, 687, ! 689, 691, 693, 695, 697, 699, 701, 703, 705, 707, ! 709, 711, 713, 715, 717, 719, 721, 723, 725, 727, ! 729, 731, 733, 735, 737, 739, 741, 743, 745, 747, ! 749, 751, 753, 755, 757, 759, 761, 762, 764, 766, ! 768, 770, 772, 774, 776, 778, 781, 784, 786, 791, ! 796, 798, 803, 805, 810, 811, 816, 817, 824, 828, ! 829, 836, 840, 841, 843, 845, 848, 855, 857, 861, ! 862, 864, 869, 876, 881, 883, 885, 887, 889, 891, ! 893, 895, 896, 901, 903, 904, 907, 909, 913, 917, ! 920, 921, 926, 928, 929, 934, 936, 938, 940, 943, ! 946, 952, 956, 957, 958, 965, 966, 967, 974, 976, ! 978, 983, 987, 990, 994, 996, 998, 1000, 1002, 1006, ! 1009, 1011, 1013, 1017, 1020, 1024, 1028, 1033, 1037, 1042, ! 1046, 1049, 1051, 1053, 1056, 1058, 1061, 1063, 1066, 1067, ! 1075, 1081, 1082, 1090, 1096, 1097, 1106, 1107, 1115, 1118, ! 1121, 1124, 1125, 1127, 1128, 1130, 1132, 1135, 1136, 1140, ! 1143, 1148, 1152, 1155, 1159, 1161, 1163, 1166, 1168, 1173, ! 1175, 1180, 1183, 1188, 1192, 1195, 1200, 1204, 1206, 1210, ! 1212, 1214, 1218, 1219, 1223, 1224, 1226, 1227, 1229, 1232, ! 1234, 1236, 1238, 1242, 1245, 1249, 1254, 1258, 1261, 1264, ! 1266, 1271, 1275, 1280, 1286, 1292, 1294, 1296, 1298, 1300, ! 1302, 1305, 1308, 1311, 1314, 1316, 1319, 1322, 1325, 1327, ! 1330, 1333, 1336, 1339, 1341, 1344, 1346, 1348, 1350, 1352, ! 1355, 1356, 1357, 1358, 1359, 1360, 1362, 1364, 1367, 1371, ! 1373, 1376, 1378, 1380, 1386, 1388, 1390, 1393, 1396, 1399, ! 1402, 1403, 1409, 1410, 1415, 1416, 1418, 1421, 1425, 1428, ! 1431, 1432, 1437, 1439, 1443, 1444, 1445, 1453, 1459, 1462, ! 1463, 1464, 1465, 1466, 1479, 1480, 1487, 1490, 1492, 1494, ! 1497, 1501, 1504, 1507, 1510, 1514, 1521, 1530, 1541, 1554, ! 1558, 1563, 1565, 1569, 1572, 1573, 1577, 1578, 1585, 1586, ! 1590, 1592, 1593, 1597, 1600, 1602, 1603, 1610, 1613, 1614, ! 1618, 1624, 1627, 1632, 1633, 1635, 1636, 1638, 1639, 1641, ! 1643, 1647, 1652, 1660, 1662, 1666, 1667, 1671, 1674, 1675, ! 1676, 1683, 1686, 1687, 1689, 1691, 1695, 1697, 1701, 1706, ! 1711, 1715, 1720, 1724, 1729, 1734, 1738, 1743, 1747, 1749, ! 1750, 1754, 1756, 1759, 1761, 1765, 1767, 1771, 1773, 1775, ! 1777, 1779, 1781, 1783, 1785, 1787, 1791, 1795, 1800, 1803, ! 1804, 1808, 1809, 1810, 1811, 1821, 1822, 1828, 1829, 1839, ! 1845, 1846, 1853, 1857, 1858, 1860, 1864, 1868, 1870, 1872, ! 1874, 1876, 1877, 1881, 1884, 1888, 1892, 1894, 1895, 1897, ! 1902, 1904, 1908, 1911, 1913, 1915, 1916, 1917, 1918, 1926, ! 1927, 1930, 1931, 1935, 1937, 1939, 1940, 1941, 1947, 1952, ! 1954, 1960, 1963, 1964, 1967, 1968, 1970, 1972, 1974, 1977, ! 1980, 1985, 1988, 1991, 1993, 1997, 2000, 2003, 2005, 2006, ! 2009, 2010, 2014, 2016, 2018, 2021, 2023, 2025, 2027, 2029, ! 2031, 2033, 2035, 2037, 2039, 2041, 2043, 2045, 2047, 2049, ! 2051, 2053, 2055, 2057, 2059, 2061, 2063, 2065, 2067, 2069, ! 2071, 2073, 2080, 2084, 2090, 2093, 2095, 2097, 2099, 2102, ! 2104, 2108, 2111, 2113, 2115, 2117, 2122, 2124, 2126, 2128, ! 2131, 2134, 2136, 2141, 2146 }; static const short yyrhs[] = { ! -1, 98, 0, 0, 99, 101, 0, 0, 98, 100, ! 101, 0, 102, 0, 104, 0, 103, 0, 307, 0, ! 28, 67, 113, 89, 90, 0, 306, 101, 0, 135, ! 169, 90, 0, 155, 135, 169, 90, 0, 154, 135, ! 168, 90, 0, 161, 90, 0, 1, 90, 0, 1, ! 91, 0, 90, 0, 0, 0, 154, 135, 198, 105, ! 129, 258, 106, 247, 0, 154, 135, 198, 1, 0, ! 0, 0, 155, 135, 203, 107, 129, 258, 108, 247, ! 0, 155, 135, 203, 1, 0, 0, 0, 135, 203, ! 109, 129, 258, 110, 247, 0, 135, 203, 1, 0, ! 3, 0, 4, 0, 80, 0, 75, 0, 51, 0, ! 57, 0, 56, 0, 62, 0, 63, 0, 92, 0, ! 93, 0, 115, 0, 0, 115, 0, 121, 0, 115, ! 94, 121, 0, 127, 0, 58, 120, 0, 306, 120, ! 0, 112, 120, 0, 48, 111, 0, 117, 116, 0, ! 117, 67, 224, 89, 0, 118, 116, 0, 118, 67, ! 224, 89, 0, 34, 120, 0, 35, 120, 0, 12, ! 0, 30, 0, 29, 0, 116, 0, 67, 224, 89, ! 120, 0, 120, 0, 121, 56, 121, 0, 121, 57, ! 121, 0, 121, 58, 121, 0, 121, 59, 121, 0, ! 121, 60, 121, 0, 121, 54, 121, 0, 121, 55, ! 121, 0, 121, 53, 121, 0, 121, 52, 121, 0, ! 121, 51, 121, 0, 121, 49, 121, 0, 121, 50, ! 121, 0, 0, 121, 48, 122, 121, 0, 0, 121, ! 47, 123, 121, 0, 0, 0, 121, 45, 124, 113, ! 46, 125, 121, 0, 0, 121, 45, 126, 46, 121, ! 0, 121, 44, 121, 0, 121, 43, 121, 0, 3, ! 0, 9, 0, 10, 0, 42, 0, 0, 67, 224, ! 89, 95, 128, 184, 91, 0, 67, 113, 89, 0, ! 67, 1, 89, 0, 251, 249, 89, 0, 251, 1, ! 89, 0, 127, 67, 114, 89, 0, 36, 67, 121, ! 94, 224, 89, 0, 37, 67, 121, 94, 121, 94, ! 121, 89, 0, 38, 67, 224, 94, 224, 89, 0, ! 127, 68, 113, 96, 0, 127, 66, 111, 0, 127, ! 65, 111, 0, 127, 62, 0, 127, 63, 0, 358, ! 0, 362, 0, 363, 0, 364, 0, 88, 0, 130, ! 0, 0, 132, 0, 258, 133, 0, 131, 0, 239, ! 0, 132, 131, 0, 131, 239, 0, 156, 135, 168, ! 90, 0, 157, 135, 169, 90, 0, 156, 90, 0, ! 157, 90, 0, 258, 137, 0, 0, 175, 0, 154, ! 135, 168, 90, 0, 155, 135, 169, 90, 0, 154, ! 135, 192, 0, 155, 135, 195, 0, 161, 90, 0, ! 306, 137, 0, 8, 0, 138, 8, 0, 139, 8, ! 0, 138, 176, 0, 140, 8, 0, 141, 8, 0, ! 176, 0, 140, 176, 0, 163, 0, 142, 8, 0, ! 143, 8, 0, 142, 165, 0, 143, 165, 0, 138, ! 163, 0, 139, 163, 0, 164, 0, 142, 176, 0, ! 142, 166, 0, 143, 166, 0, 138, 164, 0, 139, ! 164, 0, 144, 8, 0, 145, 8, 0, 144, 165, ! 0, 145, 165, 0, 140, 163, 0, 141, 163, 0, ! 144, 176, 0, 144, 166, 0, 145, 166, 0, 140, ! 164, 0, 141, 164, 0, 181, 0, 146, 8, 0, ! 147, 8, 0, 138, 181, 0, 139, 181, 0, 146, ! 181, 0, 147, 181, 0, 146, 176, 0, 148, 8, ! 0, 149, 8, 0, 140, 181, 0, 141, 181, 0, ! 148, 181, 0, 149, 181, 0, 148, 176, 0, 150, ! 8, 0, 151, 8, 0, 150, 165, 0, 151, 165, ! 0, 146, 163, 0, 147, 163, 0, 142, 181, 0, ! 143, 181, 0, 150, 181, 0, 151, 181, 0, 150, ! 176, 0, 150, 166, 0, 151, 166, 0, 146, 164, ! 0, 147, 164, 0, 152, 8, 0, 153, 8, 0, ! 152, 165, 0, 153, 165, 0, 148, 163, 0, 149, ! 163, 0, 144, 181, 0, 145, 181, 0, 152, 181, ! 0, 153, 181, 0, 152, 176, 0, 152, 166, 0, ! 153, 166, 0, 148, 164, 0, 149, 164, 0, 142, ! 0, 143, 0, 144, 0, 145, 0, 150, 0, 151, ! 0, 152, 0, 153, 0, 138, 0, 139, 0, 140, ! 0, 141, 0, 146, 0, 147, 0, 148, 0, 149, ! 0, 142, 0, 143, 0, 150, 0, 151, 0, 138, ! 0, 139, 0, 146, 0, 147, 0, 142, 0, 143, ! 0, 144, 0, 145, 0, 138, 0, 139, 0, 140, ! 0, 141, 0, 142, 0, 143, 0, 144, 0, 145, ! 0, 138, 0, 139, 0, 140, 0, 141, 0, 138, ! 0, 139, 0, 140, 0, 141, 0, 142, 0, 143, ! 0, 144, 0, 145, 0, 146, 0, 147, 0, 148, ! 0, 149, 0, 150, 0, 151, 0, 152, 0, 153, ! 0, 0, 159, 0, 165, 0, 167, 0, 166, 0, ! 7, 0, 212, 0, 207, 0, 4, 0, 75, 320, ! 0, 80, 320, 0, 321, 0, 119, 67, 113, 89, ! 0, 119, 67, 224, 89, 0, 171, 0, 168, 94, ! 136, 171, 0, 173, 0, 169, 94, 136, 173, 0, ! 0, 28, 67, 10, 89, 0, 0, 198, 170, 175, ! 44, 172, 182, 0, 198, 170, 175, 0, 0, 203, ! 170, 175, 44, 174, 182, 0, 203, 170, 175, 0, ! 0, 176, 0, 177, 0, 176, 177, 0, 31, 67, ! 67, 178, 89, 89, 0, 179, 0, 178, 94, 179, ! 0, 0, 180, 0, 180, 67, 3, 89, 0, 180, ! 67, 3, 94, 115, 89, 0, 180, 67, 114, 89, ! 0, 111, 0, 181, 0, 7, 0, 8, 0, 6, ! 0, 5, 0, 121, 0, 0, 95, 183, 184, 91, ! 0, 1, 0, 0, 185, 213, 0, 186, 0, 185, ! 94, 186, 0, 190, 44, 188, 0, 191, 188, 0, ! 0, 111, 46, 187, 188, 0, 188, 0, 0, 95, ! 189, 184, 91, 0, 121, 0, 1, 0, 191, 0, ! 190, 191, 0, 66, 111, 0, 68, 121, 11, 121, ! 96, 0, 68, 121, 96, 0, 0, 0, 198, 193, ! 129, 258, 194, 252, 0, 0, 0, 203, 196, 129, ! 258, 197, 252, 0, 199, 0, 203, 0, 67, 175, ! 199, 89, 0, 199, 67, 301, 0, 199, 232, 0, ! 58, 162, 199, 0, 4, 0, 80, 0, 201, 0, ! 202, 0, 201, 67, 301, 0, 201, 232, 0, 4, ! 0, 80, 0, 202, 67, 301, 0, 202, 232, 0, ! 58, 162, 201, 0, 58, 162, 202, 0, 67, 175, ! 202, 89, 0, 203, 67, 301, 0, 67, 175, 203, ! 89, 0, 58, 162, 203, 0, 203, 232, 0, 3, ! 0, 14, 0, 14, 176, 0, 15, 0, 15, 176, ! 0, 13, 0, 13, 176, 0, 0, 204, 111, 95, ! 208, 215, 91, 175, 0, 204, 95, 215, 91, 175, ! 0, 0, 205, 111, 95, 209, 215, 91, 175, 0, ! 205, 95, 215, 91, 175, 0, 0, 206, 111, 95, ! 210, 222, 214, 91, 175, 0, 0, 206, 95, 211, ! 222, 214, 91, 175, 0, 204, 111, 0, 205, 111, ! 0, 206, 111, 0, 0, 94, 0, 0, 94, 0, ! 216, 0, 216, 217, 0, 0, 216, 217, 90, 0, ! 216, 90, 0, 73, 67, 75, 89, 0, 158, 135, ! 218, 0, 158, 135, 0, 159, 135, 219, 0, 159, ! 0, 1, 0, 306, 217, 0, 220, 0, 218, 94, ! 136, 220, 0, 221, 0, 219, 94, 136, 221, 0, ! 198, 175, 0, 198, 46, 121, 175, 0, 46, 121, ! 175, 0, 203, 175, 0, 203, 46, 121, 175, 0, ! 46, 121, 175, 0, 223, 0, 222, 94, 223, 0, ! 1, 0, 111, 0, 111, 44, 121, 0, 0, 160, ! 225, 226, 0, 0, 228, 0, 0, 228, 0, 229, ! 176, 0, 230, 0, 229, 0, 231, 0, 58, 162, ! 229, 0, 58, 162, 0, 58, 162, 230, 0, 67, ! 175, 228, 89, 0, 231, 67, 291, 0, 231, 232, ! 0, 67, 291, 0, 232, 0, 68, 162, 121, 96, ! 0, 68, 162, 96, 0, 68, 162, 58, 96, 0, ! 68, 6, 162, 121, 96, 0, 68, 159, 6, 121, ! 96, 0, 234, 0, 235, 0, 236, 0, 237, 0, ! 261, 0, 234, 261, 0, 235, 261, 0, 236, 261, ! 0, 237, 261, 0, 134, 0, 234, 134, 0, 235, ! 134, 0, 237, 134, 0, 262, 0, 234, 262, 0, ! 235, 262, 0, 236, 262, 0, 237, 262, 0, 239, ! 0, 238, 239, 0, 234, 0, 235, 0, 236, 0, ! 237, 0, 1, 90, 0, 0, 0, 0, 0, 0, ! 245, 0, 246, 0, 245, 246, 0, 33, 305, 90, ! 0, 252, 0, 1, 252, 0, 95, 0, 91, 0, ! 240, 244, 250, 91, 241, 0, 233, 0, 1, 0, ! 67, 95, 0, 248, 249, 0, 254, 260, 0, 254, ! 1, 0, 0, 16, 255, 67, 113, 89, 0, 0, ! 19, 257, 260, 18, 0, 0, 261, 0, 262, 259, ! 0, 242, 259, 243, 0, 258, 273, 0, 258, 284, ! 0, 0, 253, 17, 264, 260, 0, 253, 0, 253, ! 17, 1, 0, 0, 0, 18, 265, 67, 113, 89, ! 266, 260, 0, 256, 67, 113, 89, 90, 0, 256, ! 1, 0, 0, 0, 0, 0, 20, 267, 67, 272, ! 268, 286, 90, 269, 286, 89, 270, 260, 0, 0, ! 21, 67, 113, 89, 271, 260, 0, 286, 90, 0, ! 137, 0, 252, 0, 113, 90, 0, 242, 263, 243, ! 0, 24, 90, 0, 25, 90, 0, 26, 90, 0, ! 26, 113, 90, 0, 28, 285, 67, 113, 89, 90, ! 0, 28, 285, 67, 113, 46, 287, 89, 90, 0, ! 28, 285, 67, 113, 46, 287, 46, 287, 89, 90, ! 0, 28, 285, 67, 113, 46, 287, 46, 287, 46, ! 290, 89, 90, 0, 27, 111, 90, 0, 27, 58, ! 113, 90, 0, 90, 0, 83, 113, 90, 0, 83, ! 90, 0, 0, 276, 274, 283, 0, 0, 87, 67, ! 113, 89, 275, 252, 0, 0, 278, 277, 280, 0, ! 278, 0, 0, 84, 279, 252, 0, 280, 281, 0, ! 281, 0, 0, 85, 67, 298, 89, 282, 252, 0, ! 86, 252, 0, 0, 22, 121, 46, 0, 22, 121, ! 11, 121, 46, 0, 23, 46, 0, 111, 258, 46, ! 175, 0, 0, 8, 0, 0, 113, 0, 0, 288, ! 0, 289, 0, 288, 94, 289, 0, 10, 67, 113, ! 89, 0, 68, 111, 96, 10, 67, 113, 89, 0, ! 10, 0, 290, 94, 10, 0, 0, 175, 292, 293, ! 0, 296, 89, 0, 0, 0, 297, 90, 294, 175, ! 295, 293, 0, 1, 89, 0, 0, 11, 0, 297, ! 0, 297, 94, 11, 0, 299, 0, 297, 94, 298, ! 0, 154, 135, 200, 175, 0, 154, 135, 203, 175, ! 0, 154, 135, 227, 0, 155, 135, 203, 175, 0, ! 155, 135, 227, 0, 156, 300, 200, 175, 0, 156, ! 300, 203, 175, 0, 156, 300, 227, 0, 157, 300, ! 203, 175, 0, 157, 300, 227, 0, 135, 0, 0, ! 175, 302, 303, 0, 293, 0, 304, 89, 0, 3, ! 0, 304, 94, 3, 0, 111, 0, 305, 94, 111, ! 0, 32, 0, 313, 0, 309, 0, 310, 0, 318, ! 0, 329, 0, 71, 0, 111, 0, 308, 94, 111, ! 0, 81, 308, 90, 0, 82, 111, 111, 90, 0, ! 46, 111, 0, 0, 95, 322, 91, 0, 0, 0, ! 0, 69, 111, 311, 320, 314, 312, 315, 333, 71, ! 0, 0, 70, 111, 311, 316, 312, 0, 0, 69, ! 111, 67, 111, 89, 320, 317, 333, 71, 0, 70, ! 111, 67, 111, 89, 0, 0, 79, 111, 320, 319, ! 333, 71, 0, 79, 308, 90, 0, 0, 321, 0, ! 53, 308, 53, 0, 322, 323, 324, 0, 324, 0, ! 77, 0, 78, 0, 76, 0, 0, 324, 325, 90, ! 0, 324, 90, 0, 158, 135, 326, 0, 159, 135, ! 326, 0, 1, 0, 0, 327, 0, 326, 94, 136, ! 327, 0, 198, 0, 198, 46, 121, 0, 46, 121, ! 0, 56, 0, 57, 0, 0, 0, 0, 328, 330, ! 339, 331, 340, 332, 247, 0, 0, 333, 336, 0, ! 0, 333, 334, 103, 0, 90, 0, 1, 0, 0, ! 0, 328, 337, 339, 338, 335, 0, 67, 224, 89, ! 348, 0, 348, 0, 67, 224, 89, 349, 346, 0, ! 349, 346, 0, 0, 90, 341, 0, 0, 342, 0, ! 343, 0, 239, 0, 342, 343, 0, 343, 239, 0, ! 154, 135, 344, 90, 0, 154, 90, 0, 155, 90, ! 0, 345, 0, 344, 94, 345, 0, 200, 175, 0, ! 203, 175, 0, 227, 0, 0, 94, 11, 0, 0, ! 94, 347, 296, 0, 350, 0, 352, 0, 349, 352, ! 0, 3, 0, 4, 0, 75, 0, 80, 0, 351, ! 0, 13, 0, 14, 0, 15, 0, 16, 0, 17, ! 0, 18, 0, 19, 0, 20, 0, 21, 0, 22, ! 0, 23, 0, 24, 0, 25, 0, 26, 0, 27, ! 0, 28, 0, 12, 0, 29, 0, 30, 0, 7, ! 0, 8, 0, 350, 46, 67, 224, 89, 111, 0, ! 350, 46, 111, 0, 46, 67, 224, 89, 111, 0, ! 46, 111, 0, 350, 0, 354, 0, 356, 0, 354, ! 356, 0, 115, 0, 350, 46, 355, 0, 46, 355, ! 0, 113, 0, 75, 0, 4, 0, 68, 357, 353, ! 96, 0, 350, 0, 360, 0, 361, 0, 360, 361, ! 0, 350, 46, 0, 46, 0, 72, 67, 359, 89, ! 0, 79, 67, 111, 89, 0, 74, 67, 224, 89, ! 0 }; ! #endif ! ! #if YYDEBUG ! /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ ! static const short yyrline[] = { ! 0, 342, 346, 353, 353, 355, 355, 358, 363, 365, ! 366, 367, 375, 379, 387, 389, 391, 393, 394, 395, ! 400, 400, 400, 412, 414, 414, 414, 425, 427, 427, ! 427, 438, 442, 444, 445, 446, 449, 451, 453, 456, ! 458, 460, 462, 466, 470, 473, 476, 479, 483, 485, ! 488, 491, 495, 497, 503, 506, 509, 512, 514, 518, ! 522, 526, 530, 532, 536, 538, 540, 542, 544, 546, ! 548, 550, 552, 554, 556, 558, 560, 562, 562, 569, ! 569, 576, 576, 576, 586, 586, 597, 604, 615, 622, ! 623, 624, 626, 626, 639, 644, 646, 660, 666, 668, ! 671, 681, 691, 693, 700, 709, 711, 713, 715, 717, ! 719, 721, 725, 732, 743, 753, 758, 760, 761, 762, ! 769, 772, 774, 777, 785, 794, 804, 809, 812, 814, ! 816, 818, 820, 876, 880, 883, 888, 894, 898, 903, ! 907, 912, 916, 919, 922, 925, 928, 931, 936, 940, ! 943, 946, 949, 952, 957, 961, 964, 967, 970, 973, ! 978, 982, 985, 988, 991, 996, 1000, 1003, 1006, 1012, ! 1018, 1024, 1032, 1038, 1042, 1045, 1051, 1057, 1063, 1071, ! 1077, 1081, 1084, 1087, 1090, 1093, 1096, 1102, 1108, 1114, ! 1122, 1126, 1129, 1132, 1135, 1140, 1144, 1147, 1150, 1153, ! 1156, 1159, 1165, 1171, 1177, 1185, 1189, 1192, 1195, 1198, ! 1204, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1215, 1217, ! 1218, 1219, 1220, 1221, 1222, 1223, 1226, 1228, 1229, 1230, ! 1233, 1235, 1236, 1237, 1240, 1242, 1243, 1244, 1247, 1249, ! 1250, 1251, 1254, 1256, 1257, 1258, 1259, 1260, 1261, 1262, ! 1265, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, ! 1276, 1277, 1278, 1279, 1280, 1281, 1285, 1288, 1313, 1315, ! 1318, 1322, 1325, 1328, 1332, 1337, 1339, 1344, 1346, 1352, ! 1358, 1360, 1363, 1365, 1368, 1371, 1375, 1375, 1384, 1391, ! 1391, 1400, 1407, 1410, 1414, 1417, 1421, 1426, 1429, 1433, ! 1436, 1438, 1440, 1442, 1449, 1451, 1452, 1453, 1456, 1458, ! 1463, 1465, 1465, 1469, 1474, 1478, 1481, 1483, 1488, 1492, ! 1495, 1495, 1501, 1504, 1504, 1509, 1511, 1514, 1516, 1519, ! 1522, 1526, 1530, 1530, 1530, 1561, 1561, 1561, 1595, 1597, ! 1602, 1605, 1610, 1612, 1614, 1615, 1622, 1624, 1627, 1633, ! 1635, 1636, 1639, 1645, 1647, 1649, 1651, 1658, 1664, 1666, ! 1668, 1670, 1673, 1676, 1680, 1683, 1687, 1690, 1700, 1700, ! 1708, 1712, 1712, 1717, 1721, 1721, 1726, 1726, 1733, 1736, ! 1738, 1746, 1748, 1751, 1753, 1770, 1773, 1778, 1780, 1782, ! 1786, 1790, 1794, 1804, 1807, 1812, 1814, 1819, 1821, 1825, ! 1827, 1831, 1836, 1840, 1846, 1851, 1855, 1864, 1866, 1871, ! 1876, 1879, 1883, 1883, 1891, 1894, 1897, 1902, 1906, 1912, ! 1914, 1917, 1919, 1923, 1926, 1930, 1933, 1935, 1937, 1939, ! 1945, 1948, 1950, 1952, 1955, 1965, 1967, 1968, 1972, 1975, ! 1977, 1978, 1979, 1980, 1983, 1985, 1991, 1992, 1995, 1997, ! 1998, 1999, 2000, 2003, 2005, 2008, 2010, 2011, 2012, 2015, ! 2018, 2025, 2034, 2050, 2065, 2067, 2072, 2074, 2077, 2091, ! 2094, 2097, 2101, 2103, 2110, 2112, 2115, 2133, 2140, 2146, ! 2149, 2149, 2170, 2170, 2193, 2199, 2201, 2205, 2211, 2225, ! 2234, 2234, 2243, 2255, 2265, 2265, 2265, 2277, 2280, 2282, ! 2282, 2282, 2282, 2282, 2299, 2299, 2308, 2311, 2316, 2319, ! 2322, 2326, 2335, 2344, 2347, 2350, 2354, 2358, 2363, 2367, ! 2379, 2385, 2387, 2391, 2395, 2395, 2399, 2399, 2405, 2405, ! 2410, 2415, 2415, 2421, 2423, 2426, 2426, 2433, 2436, 2444, ! 2447, 2450, 2453, 2468, 2471, 2475, 2478, 2483, 2485, 2488, ! 2490, 2494, 2497, 2503, 2506, 2515, 2515, 2524, 2526, 2526, ! 2526, 2533, 2539, 2541, 2552, 2556, 2562, 2565, 2571, 2577, ! 2582, 2585, 2591, 2598, 2604, 2609, 2612, 2618, 2623, 2632, ! 2632, 2641, 2643, 2660, 2663, 2668, 2671, 2675, 2686, 2688, ! 2689, 2690, 2691, 2692, 2706, 2709, 2713, 2720, 2727, 2729, ! 2732, 2734, 2737, 2737, 2737, 2754, 2754, 2766, 2766, 2778, ! 2787, 2787, 2803, 2809, 2814, 2817, 2827, 2829, 2832, 2834, ! 2835, 2838, 2843, 2844, 2861, 2865, 2868, 2872, 2875, 2876, ! 2879, 2887, 2893, 2902, 2905, 2909, 2909, 2909, 2909, 2938, ! 2940, 2941, 2941, 2944, 2946, 2949, 2949, 2949, 2966, 2972, ! 2977, 2982, 2991, 2993, 2999, 3001, 3004, 3006, 3007, 3008, ! 3011, 3014, 3016, 3020, 3023, 3030, 3035, 3039, 3043, 3048, ! 3053, 3053, 3065, 3069, 3072, 3078, 3080, 3081, 3082, 3083, ! 3086, 3087, 3087, 3087, 3087, 3087, 3087, 3087, 3088, 3088, ! 3088, 3088, 3088, 3088, 3089, 3089, 3089, 3089, 3089, 3090, ! 3090, 3093, 3099, 3104, 3109, 3115, 3117, 3120, 3122, 3129, ! 3141, 3146, 3152, 3154, 3158, 3164, 3169, 3171, 3174, 3176, ! 3182, 3187, 3193, 3200, 3209 }; #endif ! ! #if (YYDEBUG) || defined YYERROR_VERBOSE ! ! /* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ static const char *const yytname[] = { ! "$", "error", "$undefined.", "IDENTIFIER", "TYPENAME", "SCSPEC", "STATIC", ! "TYPESPEC", "TYPE_QUAL", "CONSTANT", "STRING", "ELLIPSIS", "SIZEOF", ! "ENUM", "STRUCT", "UNION", "IF", "ELSE", "WHILE", "DO", "FOR", "SWITCH", ! "CASE", "DEFAULT", "BREAK", "CONTINUE", "RETURN", "GOTO", "ASM_KEYWORD", ! "TYPEOF", "ALIGNOF", "ATTRIBUTE", "EXTENSION", "LABEL", "REALPART", ! "IMAGPART", "VA_ARG", "CHOOSE_EXPR", "TYPES_COMPATIBLE_P", "PTR_VALUE", ! "PTR_BASE", "PTR_EXTENT", "FUNC_NAME", "ASSIGN", "'='", "'?'", "':'", ! "OROR", "ANDAND", "'|'", "'^'", "'&'", "EQCOMPARE", "ARITHCOMPARE", ! "LSHIFT", "RSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'", "UNARY", ! "PLUSPLUS", "MINUSMINUS", "HYPERUNARY", "POINTSAT", "'.'", "'('", "'['", ! "INTERFACE", "IMPLEMENTATION", "END", "SELECTOR", "DEFS", "ENCODE", ! "CLASSNAME", "PUBLIC", "PRIVATE", "PROTECTED", "PROTOCOL", "OBJECTNAME", ! "CLASS", "ALIAS", "AT_THROW", "AT_TRY", "AT_CATCH", "AT_FINALLY", ! "AT_SYNCHRONIZED", "OBJC_STRING", "')'", "';'", "'}'", "'~'", "'!'", ! "','", "'{'", "']'", "program", "extdefs", "@1", "@2", "extdef", ! "extdef_1", "datadef", "fndef", "@3", "@4", "@5", "@6", "@7", "@8", ! "identifier", "unop", "expr", "exprlist", "nonnull_exprlist", ! "unary_expr", "sizeof", "alignof", "typeof", "cast_expr", ! "expr_no_commas", "@9", "@10", "@11", "@12", "@13", "primary", "@14", ! "old_style_parm_decls", "old_style_parm_decls_1", "lineno_datadecl", ! "datadecls", "datadecl", "lineno_decl", "setspecs", "maybe_resetattrs", ! "decl", "declspecs_nosc_nots_nosa_noea", "declspecs_nosc_nots_nosa_ea", ! "declspecs_nosc_nots_sa_noea", "declspecs_nosc_nots_sa_ea", ! "declspecs_nosc_ts_nosa_noea", "declspecs_nosc_ts_nosa_ea", ! "declspecs_nosc_ts_sa_noea", "declspecs_nosc_ts_sa_ea", ! "declspecs_sc_nots_nosa_noea", "declspecs_sc_nots_nosa_ea", ! "declspecs_sc_nots_sa_noea", "declspecs_sc_nots_sa_ea", ! "declspecs_sc_ts_nosa_noea", "declspecs_sc_ts_nosa_ea", ! "declspecs_sc_ts_sa_noea", "declspecs_sc_ts_sa_ea", "declspecs_ts", ! "declspecs_nots", "declspecs_ts_nosa", "declspecs_nots_nosa", ! "declspecs_nosc_ts", "declspecs_nosc_nots", "declspecs_nosc", ! "declspecs", "maybe_type_quals_attrs", "typespec_nonattr", ! "typespec_attr", "typespec_reserved_nonattr", "typespec_reserved_attr", "typespec_nonreserved_nonattr", "initdecls", "notype_initdecls", "maybeasm", "initdcl", "@15", "notype_initdcl", "@16", "maybe_attribute", "attributes", "attribute", "attribute_list", --- 537,971 ---- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 44, 47, ! 48, 52, 53, 54, 55, 61, 62, 63, 64, 68, ! 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, ! 79, 80, 81, 82, 83, 84, 85, 86, 87, 88 }; #if YYDEBUG ! /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in ! YYRHS. */ ! static const unsigned short yyprhs[] = { ! 0, 0, 3, 4, 6, 7, 10, 11, 15, 17, ! 19, 21, 23, 29, 32, 36, 41, 46, 49, 52, ! 55, 57, 58, 59, 68, 73, 74, 75, 84, 89, ! 90, 91, 99, 103, 105, 107, 109, 111, 113, 115, ! 117, 119, 121, 123, 125, 127, 128, 130, 132, 136, ! 138, 141, 144, 147, 150, 153, 158, 161, 166, 169, ! 172, 174, 176, 178, 180, 185, 187, 191, 195, 199, ! 203, 207, 211, 215, 219, 223, 227, 231, 235, 236, ! 241, 242, 247, 248, 249, 257, 258, 264, 268, 272, ! 274, 276, 278, 280, 281, 289, 293, 297, 301, 305, ! 310, 317, 326, 333, 338, 342, 346, 349, 352, 354, ! 356, 358, 360, 362, 364, 365, 367, 370, 372, 374, ! 377, 380, 385, 390, 393, 396, 399, 400, 402, 407, ! 412, 416, 420, 423, 426, 428, 431, 434, 437, 440, ! 443, 445, 448, 450, 453, 456, 459, 462, 465, 468, 470, 473, 476, 479, 482, 485, 488, 491, 494, 497, ! 500, 503, 506, 509, 512, 515, 518, 520, 523, 526, 529, 532, 535, 538, 541, 544, 547, 550, 553, 556, 559, 562, 565, 568, 571, 574, 577, 580, 583, 586, 589, 592, 595, 598, 601, 604, 607, 610, 613, 616, 619, 622, 625, 628, 631, 634, 637, 640, 643, 646, ! 649, 652, 654, 656, 658, 660, 662, 664, 666, 668, ! 670, 672, 674, 676, 678, 680, 682, 684, 686, 688, ! 690, 692, 694, 696, 698, 700, 702, 704, 706, 708, ! 710, 712, 714, 716, 718, 720, 722, 724, 726, 728, ! 730, 732, 734, 736, 738, 740, 742, 744, 746, 748, ! 750, 752, 754, 756, 758, 760, 762, 764, 765, 767, ! 769, 771, 773, 775, 777, 779, 781, 784, 787, 789, ! 794, 799, 801, 806, 808, 813, 814, 819, 820, 827, ! 831, 832, 839, 843, 844, 846, 848, 851, 858, 860, ! 864, 865, 867, 872, 879, 884, 886, 888, 890, 892, ! 894, 896, 898, 899, 904, 906, 907, 910, 912, 916, ! 920, 923, 924, 929, 931, 932, 937, 939, 941, 943, ! 946, 949, 955, 959, 960, 961, 968, 969, 970, 977, ! 979, 981, 986, 990, 993, 997, 999, 1001, 1003, 1005, ! 1009, 1012, 1014, 1016, 1020, 1023, 1027, 1031, 1036, 1040, ! 1045, 1049, 1052, 1054, 1056, 1059, 1061, 1064, 1066, 1069, ! 1070, 1078, 1084, 1085, 1093, 1099, 1100, 1109, 1110, 1118, ! 1121, 1124, 1127, 1128, 1130, 1131, 1133, 1135, 1138, 1139, ! 1143, 1146, 1151, 1155, 1158, 1162, 1164, 1166, 1169, 1171, ! 1176, 1178, 1183, 1186, 1191, 1195, 1198, 1203, 1207, 1209, ! 1213, 1215, 1217, 1221, 1222, 1226, 1227, 1229, 1230, 1232, ! 1235, 1237, 1239, 1241, 1245, 1248, 1252, 1257, 1261, 1264, ! 1267, 1269, 1274, 1278, 1283, 1289, 1295, 1297, 1299, 1301, ! 1303, 1305, 1308, 1311, 1314, 1317, 1319, 1322, 1325, 1328, ! 1330, 1333, 1336, 1339, 1342, 1344, 1347, 1349, 1351, 1353, ! 1355, 1358, 1359, 1360, 1361, 1362, 1363, 1365, 1367, 1370, ! 1374, 1376, 1379, 1381, 1383, 1389, 1391, 1393, 1396, 1399, ! 1402, 1405, 1406, 1412, 1413, 1418, 1419, 1421, 1424, 1428, ! 1431, 1434, 1435, 1440, 1442, 1446, 1447, 1448, 1456, 1462, ! 1465, 1466, 1467, 1468, 1469, 1482, 1483, 1490, 1493, 1495, ! 1497, 1500, 1504, 1507, 1510, 1513, 1517, 1524, 1533, 1544, ! 1557, 1561, 1566, 1568, 1572, 1575, 1576, 1580, 1581, 1588, ! 1589, 1593, 1595, 1596, 1600, 1603, 1605, 1606, 1613, 1616, ! 1617, 1621, 1627, 1630, 1635, 1636, 1638, 1639, 1641, 1642, ! 1644, 1646, 1650, 1655, 1663, 1665, 1669, 1670, 1674, 1677, ! 1678, 1679, 1686, 1689, 1690, 1692, 1694, 1698, 1700, 1704, ! 1709, 1714, 1718, 1723, 1727, 1732, 1737, 1741, 1746, 1750, ! 1752, 1753, 1757, 1759, 1762, 1764, 1768, 1770, 1774, 1776, ! 1778, 1780, 1782, 1784, 1786, 1788, 1790, 1794, 1798, 1803, ! 1806, 1807, 1811, 1812, 1813, 1814, 1824, 1825, 1831, 1832, ! 1842, 1848, 1849, 1856, 1860, 1861, 1863, 1867, 1871, 1873, ! 1875, 1877, 1879, 1880, 1884, 1887, 1891, 1895, 1897, 1898, ! 1900, 1905, 1907, 1911, 1914, 1916, 1918, 1919, 1920, 1921, ! 1929, 1930, 1933, 1934, 1938, 1940, 1942, 1943, 1944, 1950, ! 1955, 1957, 1963, 1966, 1967, 1970, 1971, 1973, 1975, 1977, ! 1980, 1983, 1988, 1991, 1994, 1996, 2000, 2003, 2006, 2008, ! 2009, 2012, 2013, 2017, 2019, 2021, 2024, 2026, 2028, 2030, ! 2032, 2034, 2036, 2038, 2040, 2042, 2044, 2046, 2048, 2050, ! 2052, 2054, 2056, 2058, 2060, 2062, 2064, 2066, 2068, 2070, ! 2072, 2074, 2076, 2083, 2087, 2093, 2096, 2098, 2100, 2102, ! 2105, 2107, 2111, 2114, 2116, 2118, 2120, 2125, 2127, 2129, ! 2131, 2134, 2137, 2139, 2144, 2149 }; + + /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const short yyrhs[] = { ! 98, 0, -1, -1, 99, -1, -1, 100, 102, -1, ! -1, 99, 101, 102, -1, 103, -1, 105, -1, 104, ! -1, 308, -1, 28, 66, 114, 89, 90, -1, 307, ! 102, -1, 136, 170, 90, -1, 156, 136, 170, 90, ! -1, 155, 136, 169, 90, -1, 162, 90, -1, 1, ! 90, -1, 1, 91, -1, 90, -1, -1, -1, 155, ! 136, 199, 106, 130, 259, 107, 248, -1, 155, 136, ! 199, 1, -1, -1, -1, 156, 136, 204, 108, 130, ! 259, 109, 248, -1, 156, 136, 204, 1, -1, -1, ! -1, 136, 204, 110, 130, 259, 111, 248, -1, 136, ! 204, 1, -1, 3, -1, 4, -1, 80, -1, 75, ! -1, 51, -1, 57, -1, 56, -1, 62, -1, 61, ! -1, 92, -1, 93, -1, 116, -1, -1, 116, -1, ! 122, -1, 116, 94, 122, -1, 128, -1, 58, 121, ! -1, 307, 121, -1, 113, 121, -1, 48, 112, -1, ! 118, 117, -1, 118, 66, 225, 89, -1, 119, 117, ! -1, 119, 66, 225, 89, -1, 34, 121, -1, 35, ! 121, -1, 12, -1, 30, -1, 29, -1, 117, -1, ! 66, 225, 89, 121, -1, 121, -1, 122, 56, 122, ! -1, 122, 57, 122, -1, 122, 58, 122, -1, 122, ! 59, 122, -1, 122, 60, 122, -1, 122, 55, 122, ! -1, 122, 54, 122, -1, 122, 53, 122, -1, 122, ! 52, 122, -1, 122, 51, 122, -1, 122, 49, 122, ! -1, 122, 50, 122, -1, -1, 122, 48, 123, 122, ! -1, -1, 122, 47, 124, 122, -1, -1, -1, 122, ! 45, 125, 114, 46, 126, 122, -1, -1, 122, 45, ! 127, 46, 122, -1, 122, 43, 122, -1, 122, 44, ! 122, -1, 3, -1, 9, -1, 10, -1, 42, -1, ! -1, 66, 225, 89, 95, 129, 185, 91, -1, 66, ! 114, 89, -1, 66, 1, 89, -1, 252, 250, 89, ! -1, 252, 1, 89, -1, 128, 66, 115, 89, -1, ! 36, 66, 122, 94, 225, 89, -1, 37, 66, 122, ! 94, 122, 94, 122, 89, -1, 38, 66, 225, 94, ! 225, 89, -1, 128, 67, 114, 96, -1, 128, 65, ! 112, -1, 128, 68, 112, -1, 128, 62, -1, 128, ! 61, -1, 359, -1, 363, -1, 364, -1, 365, -1, ! 88, -1, 131, -1, -1, 133, -1, 259, 134, -1, ! 132, -1, 240, -1, 133, 132, -1, 132, 240, -1, ! 157, 136, 169, 90, -1, 158, 136, 170, 90, -1, ! 157, 90, -1, 158, 90, -1, 259, 138, -1, -1, ! 176, -1, 155, 136, 169, 90, -1, 156, 136, 170, ! 90, -1, 155, 136, 193, -1, 156, 136, 196, -1, ! 162, 90, -1, 307, 138, -1, 8, -1, 139, 8, ! -1, 140, 8, -1, 139, 177, -1, 141, 8, -1, ! 142, 8, -1, 177, -1, 141, 177, -1, 164, -1, ! 143, 8, -1, 144, 8, -1, 143, 166, -1, 144, ! 166, -1, 139, 164, -1, 140, 164, -1, 165, -1, ! 143, 177, -1, 143, 167, -1, 144, 167, -1, 139, ! 165, -1, 140, 165, -1, 145, 8, -1, 146, 8, ! -1, 145, 166, -1, 146, 166, -1, 141, 164, -1, ! 142, 164, -1, 145, 177, -1, 145, 167, -1, 146, ! 167, -1, 141, 165, -1, 142, 165, -1, 182, -1, ! 147, 8, -1, 148, 8, -1, 139, 182, -1, 140, ! 182, -1, 147, 182, -1, 148, 182, -1, 147, 177, ! -1, 149, 8, -1, 150, 8, -1, 141, 182, -1, ! 142, 182, -1, 149, 182, -1, 150, 182, -1, 149, ! 177, -1, 151, 8, -1, 152, 8, -1, 151, 166, ! -1, 152, 166, -1, 147, 164, -1, 148, 164, -1, ! 143, 182, -1, 144, 182, -1, 151, 182, -1, 152, ! 182, -1, 151, 177, -1, 151, 167, -1, 152, 167, ! -1, 147, 165, -1, 148, 165, -1, 153, 8, -1, ! 154, 8, -1, 153, 166, -1, 154, 166, -1, 149, ! 164, -1, 150, 164, -1, 145, 182, -1, 146, 182, ! -1, 153, 182, -1, 154, 182, -1, 153, 177, -1, ! 153, 167, -1, 154, 167, -1, 149, 165, -1, 150, ! 165, -1, 143, -1, 144, -1, 145, -1, 146, -1, ! 151, -1, 152, -1, 153, -1, 154, -1, 139, -1, ! 140, -1, 141, -1, 142, -1, 147, -1, 148, -1, ! 149, -1, 150, -1, 143, -1, 144, -1, 151, -1, ! 152, -1, 139, -1, 140, -1, 147, -1, 148, -1, ! 143, -1, 144, -1, 145, -1, 146, -1, 139, -1, ! 140, -1, 141, -1, 142, -1, 143, -1, 144, -1, ! 145, -1, 146, -1, 139, -1, 140, -1, 141, -1, ! 142, -1, 139, -1, 140, -1, 141, -1, 142, -1, ! 143, -1, 144, -1, 145, -1, 146, -1, 147, -1, ! 148, -1, 149, -1, 150, -1, 151, -1, 152, -1, ! 153, -1, 154, -1, -1, 160, -1, 166, -1, 168, ! -1, 167, -1, 7, -1, 213, -1, 208, -1, 4, ! -1, 75, 321, -1, 80, 321, -1, 322, -1, 120, ! 66, 114, 89, -1, 120, 66, 225, 89, -1, 172, ! -1, 169, 94, 137, 172, -1, 174, -1, 170, 94, ! 137, 174, -1, -1, 28, 66, 10, 89, -1, -1, ! 199, 171, 176, 43, 173, 183, -1, 199, 171, 176, ! -1, -1, 204, 171, 176, 43, 175, 183, -1, 204, ! 171, 176, -1, -1, 177, -1, 178, -1, 177, 178, ! -1, 31, 66, 66, 179, 89, 89, -1, 180, -1, ! 179, 94, 180, -1, -1, 181, -1, 181, 66, 3, ! 89, -1, 181, 66, 3, 94, 116, 89, -1, 181, ! 66, 115, 89, -1, 112, -1, 182, -1, 7, -1, ! 8, -1, 6, -1, 5, -1, 122, -1, -1, 95, ! 184, 185, 91, -1, 1, -1, -1, 186, 214, -1, ! 187, -1, 186, 94, 187, -1, 191, 43, 189, -1, ! 192, 189, -1, -1, 112, 46, 188, 189, -1, 189, ! -1, -1, 95, 190, 185, 91, -1, 122, -1, 1, ! -1, 192, -1, 191, 192, -1, 65, 112, -1, 67, ! 122, 11, 122, 96, -1, 67, 122, 96, -1, -1, ! -1, 199, 194, 130, 259, 195, 253, -1, -1, -1, ! 204, 197, 130, 259, 198, 253, -1, 200, -1, 204, ! -1, 66, 176, 200, 89, -1, 200, 66, 302, -1, ! 200, 233, -1, 58, 163, 200, -1, 4, -1, 80, ! -1, 202, -1, 203, -1, 202, 66, 302, -1, 202, ! 233, -1, 4, -1, 80, -1, 203, 66, 302, -1, ! 203, 233, -1, 58, 163, 202, -1, 58, 163, 203, ! -1, 66, 176, 203, 89, -1, 204, 66, 302, -1, ! 66, 176, 204, 89, -1, 58, 163, 204, -1, 204, ! 233, -1, 3, -1, 14, -1, 14, 177, -1, 15, ! -1, 15, 177, -1, 13, -1, 13, 177, -1, -1, ! 205, 112, 95, 209, 216, 91, 176, -1, 205, 95, ! 216, 91, 176, -1, -1, 206, 112, 95, 210, 216, ! 91, 176, -1, 206, 95, 216, 91, 176, -1, -1, ! 207, 112, 95, 211, 223, 215, 91, 176, -1, -1, ! 207, 95, 212, 223, 215, 91, 176, -1, 205, 112, ! -1, 206, 112, -1, 207, 112, -1, -1, 94, -1, ! -1, 94, -1, 217, -1, 217, 218, -1, -1, 217, ! 218, 90, -1, 217, 90, -1, 73, 66, 75, 89, ! -1, 159, 136, 219, -1, 159, 136, -1, 160, 136, ! 220, -1, 160, -1, 1, -1, 307, 218, -1, 221, ! -1, 219, 94, 137, 221, -1, 222, -1, 220, 94, ! 137, 222, -1, 199, 176, -1, 199, 46, 122, 176, ! -1, 46, 122, 176, -1, 204, 176, -1, 204, 46, ! 122, 176, -1, 46, 122, 176, -1, 224, -1, 223, ! 94, 224, -1, 1, -1, 112, -1, 112, 43, 122, ! -1, -1, 161, 226, 227, -1, -1, 229, -1, -1, ! 229, -1, 230, 177, -1, 231, -1, 230, -1, 232, ! -1, 58, 163, 230, -1, 58, 163, -1, 58, 163, ! 231, -1, 66, 176, 229, 89, -1, 232, 66, 292, ! -1, 232, 233, -1, 66, 292, -1, 233, -1, 67, ! 163, 122, 96, -1, 67, 163, 96, -1, 67, 163, ! 58, 96, -1, 67, 6, 163, 122, 96, -1, 67, ! 160, 6, 122, 96, -1, 235, -1, 236, -1, 237, ! -1, 238, -1, 262, -1, 235, 262, -1, 236, 262, ! -1, 237, 262, -1, 238, 262, -1, 135, -1, 235, ! 135, -1, 236, 135, -1, 238, 135, -1, 263, -1, ! 235, 263, -1, 236, 263, -1, 237, 263, -1, 238, ! 263, -1, 240, -1, 239, 240, -1, 235, -1, 236, ! -1, 237, -1, 238, -1, 1, 90, -1, -1, -1, ! -1, -1, -1, 246, -1, 247, -1, 246, 247, -1, ! 33, 306, 90, -1, 253, -1, 1, 253, -1, 95, ! -1, 91, -1, 241, 245, 251, 91, 242, -1, 234, ! -1, 1, -1, 66, 95, -1, 249, 250, -1, 255, ! 261, -1, 255, 1, -1, -1, 16, 256, 66, 114, ! 89, -1, -1, 19, 258, 261, 18, -1, -1, 262, ! -1, 263, 260, -1, 243, 260, 244, -1, 259, 274, ! -1, 259, 285, -1, -1, 254, 17, 265, 261, -1, ! 254, -1, 254, 17, 1, -1, -1, -1, 18, 266, ! 66, 114, 89, 267, 261, -1, 257, 66, 114, 89, ! 90, -1, 257, 1, -1, -1, -1, -1, -1, 20, ! 268, 66, 273, 269, 287, 90, 270, 287, 89, 271, ! 261, -1, -1, 21, 66, 114, 89, 272, 261, -1, ! 287, 90, -1, 138, -1, 253, -1, 114, 90, -1, ! 243, 264, 244, -1, 24, 90, -1, 25, 90, -1, ! 26, 90, -1, 26, 114, 90, -1, 28, 286, 66, ! 114, 89, 90, -1, 28, 286, 66, 114, 46, 288, ! 89, 90, -1, 28, 286, 66, 114, 46, 288, 46, ! 288, 89, 90, -1, 28, 286, 66, 114, 46, 288, ! 46, 288, 46, 291, 89, 90, -1, 27, 112, 90, ! -1, 27, 58, 114, 90, -1, 90, -1, 83, 114, ! 90, -1, 83, 90, -1, -1, 277, 275, 284, -1, ! -1, 87, 66, 114, 89, 276, 253, -1, -1, 279, ! 278, 281, -1, 279, -1, -1, 84, 280, 253, -1, ! 281, 282, -1, 282, -1, -1, 85, 66, 299, 89, ! 283, 253, -1, 86, 253, -1, -1, 22, 122, 46, ! -1, 22, 122, 11, 122, 46, -1, 23, 46, -1, ! 112, 259, 46, 176, -1, -1, 8, -1, -1, 114, ! -1, -1, 289, -1, 290, -1, 289, 94, 290, -1, ! 10, 66, 114, 89, -1, 67, 112, 96, 10, 66, ! 114, 89, -1, 10, -1, 291, 94, 10, -1, -1, ! 176, 293, 294, -1, 297, 89, -1, -1, -1, 298, ! 90, 295, 176, 296, 294, -1, 1, 89, -1, -1, ! 11, -1, 298, -1, 298, 94, 11, -1, 300, -1, ! 298, 94, 299, -1, 155, 136, 201, 176, -1, 155, ! 136, 204, 176, -1, 155, 136, 228, -1, 156, 136, ! 204, 176, -1, 156, 136, 228, -1, 157, 301, 201, ! 176, -1, 157, 301, 204, 176, -1, 157, 301, 228, ! -1, 158, 301, 204, 176, -1, 158, 301, 228, -1, ! 136, -1, -1, 176, 303, 304, -1, 294, -1, 305, ! 89, -1, 3, -1, 305, 94, 3, -1, 112, -1, ! 306, 94, 112, -1, 32, -1, 314, -1, 310, -1, ! 311, -1, 319, -1, 330, -1, 71, -1, 112, -1, ! 309, 94, 112, -1, 81, 309, 90, -1, 82, 112, ! 112, 90, -1, 46, 112, -1, -1, 95, 323, 91, ! -1, -1, -1, -1, 69, 112, 312, 321, 315, 313, ! 316, 334, 71, -1, -1, 70, 112, 312, 317, 313, ! -1, -1, 69, 112, 66, 112, 89, 321, 318, 334, ! 71, -1, 70, 112, 66, 112, 89, -1, -1, 79, ! 112, 321, 320, 334, 71, -1, 79, 309, 90, -1, ! -1, 322, -1, 53, 309, 53, -1, 323, 324, 325, ! -1, 325, -1, 77, -1, 78, -1, 76, -1, -1, ! 325, 326, 90, -1, 325, 90, -1, 159, 136, 327, ! -1, 160, 136, 327, -1, 1, -1, -1, 328, -1, ! 327, 94, 137, 328, -1, 199, -1, 199, 46, 122, ! -1, 46, 122, -1, 56, -1, 57, -1, -1, -1, ! -1, 329, 331, 340, 332, 341, 333, 248, -1, -1, ! 334, 337, -1, -1, 334, 335, 104, -1, 90, -1, ! 1, -1, -1, -1, 329, 338, 340, 339, 336, -1, ! 66, 225, 89, 349, -1, 349, -1, 66, 225, 89, ! 350, 347, -1, 350, 347, -1, -1, 90, 342, -1, ! -1, 343, -1, 344, -1, 240, -1, 343, 344, -1, ! 344, 240, -1, 155, 136, 345, 90, -1, 155, 90, ! -1, 156, 90, -1, 346, -1, 345, 94, 346, -1, ! 201, 176, -1, 204, 176, -1, 228, -1, -1, 94, ! 11, -1, -1, 94, 348, 297, -1, 351, -1, 353, ! -1, 350, 353, -1, 3, -1, 4, -1, 75, -1, ! 80, -1, 352, -1, 13, -1, 14, -1, 15, -1, ! 16, -1, 17, -1, 18, -1, 19, -1, 20, -1, ! 21, -1, 22, -1, 23, -1, 24, -1, 25, -1, ! 26, -1, 27, -1, 28, -1, 12, -1, 29, -1, ! 30, -1, 7, -1, 8, -1, 351, 46, 66, 225, ! 89, 112, -1, 351, 46, 112, -1, 46, 66, 225, ! 89, 112, -1, 46, 112, -1, 351, -1, 355, -1, ! 357, -1, 355, 357, -1, 116, -1, 351, 46, 356, ! -1, 46, 356, -1, 114, -1, 75, -1, 4, -1, ! 67, 358, 354, 96, -1, 351, -1, 361, -1, 362, ! -1, 361, 362, -1, 351, 46, -1, 46, -1, 72, ! 66, 360, 89, -1, 79, 66, 112, 89, -1, 74, ! 66, 225, 89, -1 }; ! /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ ! static const unsigned short yyrline[] = { ! 0, 343, 343, 346, 354, 354, 355, 355, 359, 364, ! 365, 366, 367, 375, 380, 387, 389, 391, 393, 394, ! 395, 402, 407, 401, 412, 415, 420, 414, 425, 428, ! 433, 427, 438, 443, 444, 445, 446, 449, 451, 453, ! 456, 458, 460, 462, 466, 472, 473, 477, 479, 484, ! 485, 488, 491, 495, 497, 503, 506, 509, 512, 514, ! 519, 523, 527, 531, 532, 537, 538, 540, 542, 544, ! 546, 548, 550, 552, 554, 556, 558, 560, 563, 562, ! 570, 569, 577, 581, 576, 587, 586, 597, 604, 616, ! 622, 623, 624, 627, 626, 639, 644, 646, 660, 666, ! 668, 671, 681, 691, 693, 700, 709, 711, 713, 715, ! 717, 719, 721, 726, 734, 743, 754, 759, 760, 761, ! 762, 770, 772, 774, 777, 786, 795, 805, 810, 812, ! 814, 816, 818, 820, 877, 880, 883, 889, 895, 898, ! 904, 907, 913, 916, 919, 922, 925, 928, 931, 937, ! 940, 943, 946, 949, 952, 958, 961, 964, 967, 970, ! 973, 979, 982, 985, 988, 991, 997, 1000, 1003, 1006, ! 1012, 1018, 1024, 1033, 1039, 1042, 1045, 1051, 1057, 1063, ! 1072, 1078, 1081, 1084, 1087, 1090, 1093, 1096, 1102, 1108, ! 1114, 1123, 1126, 1129, 1132, 1135, 1141, 1144, 1147, 1150, ! 1153, 1156, 1159, 1165, 1171, 1177, 1186, 1189, 1192, 1195, ! 1198, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1216, ! 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1227, 1228, 1229, ! 1230, 1234, 1235, 1236, 1237, 1241, 1242, 1243, 1244, 1248, ! 1249, 1250, 1251, 1255, 1256, 1257, 1258, 1259, 1260, 1261, ! 1262, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, ! 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1287, 1288, 1314, ! 1315, 1319, 1323, 1325, 1329, 1333, 1337, 1339, 1344, 1346, ! 1352, 1359, 1360, 1364, 1365, 1370, 1371, 1377, 1376, 1384, ! 1393, 1392, 1400, 1409, 1410, 1415, 1417, 1422, 1427, 1429, ! 1435, 1436, 1438, 1440, 1442, 1450, 1451, 1452, 1453, 1457, ! 1458, 1464, 1466, 1465, 1469, 1476, 1478, 1482, 1483, 1489, ! 1492, 1496, 1495, 1501, 1506, 1505, 1509, 1511, 1515, 1516, ! 1520, 1522, 1526, 1532, 1545, 1531, 1563, 1576, 1562, 1596, ! 1597, 1603, 1605, 1610, 1612, 1614, 1615, 1623, 1624, 1628, ! 1633, 1635, 1636, 1640, 1645, 1647, 1649, 1651, 1659, 1664, ! 1666, 1668, 1670, 1674, 1676, 1681, 1683, 1688, 1690, 1702, ! 1701, 1708, 1713, 1712, 1717, 1722, 1721, 1727, 1726, 1734, ! 1736, 1738, 1746, 1748, 1751, 1753, 1771, 1773, 1779, 1780, ! 1782, 1786, 1791, 1794, 1804, 1807, 1812, 1814, 1820, 1821, ! 1826, 1827, 1832, 1836, 1840, 1847, 1851, 1855, 1865, 1866, ! 1871, 1877, 1879, 1885, 1884, 1893, 1894, 1899, 1902, 1906, ! 1913, 1914, 1918, 1919, 1924, 1926, 1931, 1933, 1935, 1937, ! 1939, 1946, 1948, 1950, 1952, 1955, 1966, 1967, 1968, 1972, ! 1976, 1977, 1978, 1979, 1980, 1984, 1985, 1991, 1992, 1996, ! 1997, 1998, 1999, 2000, 2004, 2005, 2009, 2010, 2011, 2012, ! 2015, 2019, 2026, 2035, 2051, 2065, 2067, 2073, 2074, 2078, ! 2092, 2094, 2097, 2101, 2103, 2111, 2112, 2116, 2133, 2141, ! 2146, 2159, 2158, 2172, 2171, 2194, 2200, 2201, 2206, 2212, ! 2226, 2236, 2235, 2243, 2255, 2266, 2269, 2265, 2277, 2280, ! 2283, 2287, 2290, 2294, 2282, 2300, 2299, 2309, 2311, 2317, ! 2319, 2322, 2326, 2335, 2344, 2347, 2350, 2354, 2358, 2363, ! 2367, 2379, 2385, 2387, 2391, 2396, 2395, 2400, 2399, 2407, ! 2406, 2410, 2417, 2416, 2422, 2423, 2428, 2427, 2434, 2437, ! 2444, 2447, 2450, 2453, 2470, 2471, 2477, 2478, 2484, 2485, ! 2489, 2490, 2495, 2497, 2504, 2506, 2517, 2516, 2525, 2527, ! 2529, 2526, 2533, 2540, 2541, 2552, 2556, 2563, 2565, 2572, ! 2577, 2582, 2585, 2591, 2599, 2604, 2609, 2612, 2618, 2624, ! 2634, 2633, 2642, 2643, 2661, 2663, 2669, 2671, 2676, 2687, ! 2688, 2689, 2690, 2691, 2692, 2707, 2709, 2714, 2721, 2728, ! 2729, 2733, 2734, 2739, 2745, 2738, 2755, 2754, 2767, 2766, ! 2778, 2789, 2788, 2803, 2811, 2814, 2818, 2828, 2829, 2833, ! 2834, 2835, 2840, 2843, 2844, 2862, 2865, 2868, 2874, 2875, ! 2876, 2880, 2887, 2893, 2903, 2905, 2911, 2917, 2925, 2910, ! 2938, 2940, 2941, 2941, 2945, 2946, 2951, 2956, 2950, 2967, ! 2972, 2977, 2982, 2991, 2993, 2999, 3001, 3005, 3006, 3007, ! 3008, 3012, 3014, 3016, 3021, 3023, 3031, 3035, 3039, 3045, ! 3048, 3054, 3053, 3066, 3070, 3072, 3079, 3080, 3081, 3082, ! 3083, 3087, 3087, 3087, 3087, 3087, 3087, 3087, 3087, 3088, ! 3088, 3088, 3088, 3088, 3088, 3089, 3089, 3089, 3089, 3089, ! 3090, 3090, 3094, 3099, 3104, 3109, 3116, 3117, 3121, 3122, ! 3130, 3142, 3146, 3153, 3154, 3158, 3165, 3170, 3171, 3175, ! 3176, 3183, 3187, 3194, 3201, 3210 }; #endif ! #if YYDEBUG || YYERROR_VERBOSE ! /* YYTNME[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", "IDENTIFIER", "TYPENAME", "SCSPEC", ! "STATIC", "TYPESPEC", "TYPE_QUAL", "CONSTANT", "STRING", "ELLIPSIS", ! "SIZEOF", "ENUM", "STRUCT", "UNION", "IF", "ELSE", "WHILE", "DO", "FOR", ! "SWITCH", "CASE", "DEFAULT", "BREAK", "CONTINUE", "RETURN", "GOTO", ! "ASM_KEYWORD", "TYPEOF", "ALIGNOF", "ATTRIBUTE", "EXTENSION", "LABEL", ! "REALPART", "IMAGPART", "VA_ARG", "CHOOSE_EXPR", "TYPES_COMPATIBLE_P", ! "PTR_VALUE", "PTR_BASE", "PTR_EXTENT", "FUNC_NAME", "'='", "ASSIGN", ! "'?'", "':'", "OROR", "ANDAND", "'|'", "'^'", "'&'", "EQCOMPARE", ! "ARITHCOMPARE", "RSHIFT", "LSHIFT", "'+'", "'-'", "'*'", "'/'", "'%'", ! "MINUSMINUS", "PLUSPLUS", "UNARY", "HYPERUNARY", "'.'", "'('", "'['", ! "POINTSAT", "INTERFACE", "IMPLEMENTATION", "END", "SELECTOR", "DEFS", ! "ENCODE", "CLASSNAME", "PUBLIC", "PRIVATE", "PROTECTED", "PROTOCOL", ! "OBJECTNAME", "CLASS", "ALIAS", "AT_THROW", "AT_TRY", "AT_CATCH", ! "AT_FINALLY", "AT_SYNCHRONIZED", "OBJC_STRING", "')'", "';'", "'}'", ! "'~'", "'!'", "','", "'{'", "']'", "$accept", "program", "extdefs", ! "@1", "@2", "extdef", "extdef_1", "datadef", "fndef", "@3", "@4", "@5", ! "@6", "@7", "@8", "identifier", "unop", "expr", "exprlist", ! "nonnull_exprlist", "unary_expr", "sizeof", "alignof", "typeof", ! "cast_expr", "expr_no_commas", "@9", "@10", "@11", "@12", "@13", ! "primary", "@14", "old_style_parm_decls", "old_style_parm_decls_1", ! "lineno_datadecl", "datadecls", "datadecl", "lineno_decl", "setspecs", ! "maybe_resetattrs", "decl", "declspecs_nosc_nots_nosa_noea", ! "declspecs_nosc_nots_nosa_ea", "declspecs_nosc_nots_sa_noea", ! "declspecs_nosc_nots_sa_ea", "declspecs_nosc_ts_nosa_noea", ! "declspecs_nosc_ts_nosa_ea", "declspecs_nosc_ts_sa_noea", ! "declspecs_nosc_ts_sa_ea", "declspecs_sc_nots_nosa_noea", ! "declspecs_sc_nots_nosa_ea", "declspecs_sc_nots_sa_noea", ! "declspecs_sc_nots_sa_ea", "declspecs_sc_ts_nosa_noea", ! "declspecs_sc_ts_nosa_ea", "declspecs_sc_ts_sa_noea", ! "declspecs_sc_ts_sa_ea", "declspecs_ts", "declspecs_nots", ! "declspecs_ts_nosa", "declspecs_nots_nosa", "declspecs_nosc_ts", ! "declspecs_nosc_nots", "declspecs_nosc", "declspecs", ! "maybe_type_quals_attrs", "typespec_nonattr", "typespec_attr", ! "typespec_reserved_nonattr", "typespec_reserved_attr", "typespec_nonreserved_nonattr", "initdecls", "notype_initdecls", "maybeasm", "initdcl", "@15", "notype_initdcl", "@16", "maybe_attribute", "attributes", "attribute", "attribute_list", *************** static const char *const yytname[] = *** 758,2103 **** }; #endif ! /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ ! static const short yyr1[] = { ! 0, 97, 97, 99, 98, 100, 98, 101, 102, 102, ! 102, 102, 102, 103, 103, 103, 103, 103, 103, 103, ! 105, 106, 104, 104, 107, 108, 104, 104, 109, 110, ! 104, 104, 111, 111, 111, 111, 112, 112, 112, 112, ! 112, 112, 112, 113, 114, 114, 115, 115, 116, 116, ! 116, 116, 116, 116, 116, 116, 116, 116, 116, 117, ! 118, 119, 120, 120, 121, 121, 121, 121, 121, 121, ! 121, 121, 121, 121, 121, 121, 121, 122, 121, 123, ! 121, 124, 125, 121, 126, 121, 121, 121, 127, 127, ! 127, 127, 128, 127, 127, 127, 127, 127, 127, 127, ! 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, ! 127, 127, 129, 130, 130, 131, 132, 132, 132, 132, ! 133, 133, 133, 133, 134, 135, 136, 137, 137, 137, ! 137, 137, 137, 138, 138, 138, 139, 140, 140, 141, ! 141, 142, 142, 142, 142, 142, 142, 142, 143, 143, ! 143, 143, 143, 143, 144, 144, 144, 144, 144, 144, ! 145, 145, 145, 145, 145, 146, 146, 146, 146, 146, ! 146, 146, 147, 148, 148, 148, 148, 148, 148, 149, ! 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, ! 151, 151, 151, 151, 151, 152, 152, 152, 152, 152, ! 152, 152, 152, 152, 152, 153, 153, 153, 153, 153, ! 154, 154, 154, 154, 154, 154, 154, 154, 155, 155, ! 155, 155, 155, 155, 155, 155, 156, 156, 156, 156, ! 157, 157, 157, 157, 158, 158, 158, 158, 159, 159, ! 159, 159, 160, 160, 160, 160, 160, 160, 160, 160, ! 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, ! 161, 161, 161, 161, 161, 161, 162, 162, 163, 163, ! 164, 165, 165, 166, 167, 167, 167, 167, 167, 167, ! 168, 168, 169, 169, 170, 170, 172, 171, 171, 174, ! 173, 173, 175, 175, 176, 176, 177, 178, 178, 179, ! 179, 179, 179, 179, 180, 180, 180, 180, 181, 181, ! 182, 183, 182, 182, 184, 184, 185, 185, 186, 186, ! 187, 186, 186, 189, 188, 188, 188, 190, 190, 191, ! 191, 191, 193, 194, 192, 196, 197, 195, 198, 198, ! 199, 199, 199, 199, 199, 199, 200, 200, 201, 201, ! 201, 201, 202, 202, 202, 202, 202, 203, 203, 203, ! 203, 203, 204, 204, 205, 205, 206, 206, 208, 207, ! 207, 209, 207, 207, 210, 207, 211, 207, 212, 212, ! 212, 213, 213, 214, 214, 215, 215, 216, 216, 216, ! 216, 217, 217, 217, 217, 217, 217, 218, 218, 219, ! 219, 220, 220, 220, 221, 221, 221, 222, 222, 222, ! 223, 223, 225, 224, 226, 226, 227, 227, 227, 228, ! 228, 229, 229, 230, 230, 231, 231, 231, 231, 231, ! 232, 232, 232, 232, 232, 233, 233, 233, 233, 234, ! 234, 234, 234, 234, 235, 235, 235, 235, 236, 236, ! 236, 236, 236, 237, 237, 238, 238, 238, 238, 239, ! 240, 241, 242, 243, 244, 244, 245, 245, 246, 247, ! 247, 248, 249, 249, 250, 250, 251, 252, 253, 253, ! 255, 254, 257, 256, 258, 259, 259, 260, 261, 262, ! 264, 263, 263, 263, 265, 266, 263, 263, 263, 267, ! 268, 269, 270, 263, 271, 263, 272, 272, 273, 273, ! 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, ! 273, 273, 273, 273, 274, 273, 275, 273, 277, 276, ! 276, 279, 278, 280, 280, 282, 281, 283, 283, 284, ! 284, 284, 284, 285, 285, 286, 286, 287, 287, 288, ! 288, 289, 289, 290, 290, 292, 291, 293, 294, 295, ! 293, 293, 296, 296, 296, 296, 297, 297, 298, 298, ! 298, 298, 298, 299, 299, 299, 299, 299, 300, 302, ! 301, 303, 303, 304, 304, 305, 305, 306, 307, 307, ! 307, 307, 307, 307, 308, 308, 309, 310, 311, 311, ! 312, 312, 314, 315, 313, 316, 313, 317, 313, 313, ! 319, 318, 318, 320, 320, 321, 322, 322, 323, 323, ! 323, 324, 324, 324, 325, 325, 325, 326, 326, 326, ! 327, 327, 327, 328, 328, 330, 331, 332, 329, 333, ! 333, 334, 333, 335, 335, 337, 338, 336, 339, 339, ! 339, 339, 340, 340, 341, 341, 342, 342, 342, 342, ! 343, 343, 343, 344, 344, 345, 345, 345, 346, 346, ! 347, 346, 348, 349, 349, 350, 350, 350, 350, 350, ! 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, ! 351, 351, 351, 351, 351, 351, 351, 351, 351, 351, ! 351, 352, 352, 352, 352, 353, 353, 354, 354, 355, ! 356, 356, 357, 357, 357, 358, 359, 359, 360, 360, ! 361, 361, 362, 363, 364 }; ! /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ ! static const short yyr2[] = { ! 0, 0, 1, 0, 2, 0, 3, 1, 1, 1, ! 1, 5, 2, 3, 4, 4, 2, 2, 2, 1, ! 0, 0, 8, 4, 0, 0, 8, 4, 0, 0, ! 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 1, 1, 0, 1, 1, 3, 1, 2, ! 2, 2, 2, 2, 4, 2, 4, 2, 2, 1, ! 1, 1, 1, 4, 1, 3, 3, 3, 3, 3, ! 3, 3, 3, 3, 3, 3, 3, 0, 4, 0, ! 4, 0, 0, 7, 0, 5, 3, 3, 1, 1, ! 1, 1, 0, 7, 3, 3, 3, 3, 4, 6, ! 8, 6, 4, 3, 3, 2, 2, 1, 1, 1, ! 1, 1, 1, 0, 1, 2, 1, 1, 2, 2, ! 4, 4, 2, 2, 2, 0, 1, 4, 4, 3, ! 3, 2, 2, 1, 2, 2, 2, 2, 2, 1, ! 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ! 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, ! 1, 1, 1, 1, 1, 2, 2, 1, 4, 4, ! 1, 4, 1, 4, 0, 4, 0, 6, 3, 0, ! 6, 3, 0, 1, 1, 2, 6, 1, 3, 0, ! 1, 4, 6, 4, 1, 1, 1, 1, 1, 1, ! 1, 0, 4, 1, 0, 2, 1, 3, 3, 2, ! 0, 4, 1, 0, 4, 1, 1, 1, 2, 2, ! 5, 3, 0, 0, 6, 0, 0, 6, 1, 1, ! 4, 3, 2, 3, 1, 1, 1, 1, 3, 2, ! 1, 1, 3, 2, 3, 3, 4, 3, 4, 3, ! 2, 1, 1, 2, 1, 2, 1, 2, 0, 7, ! 5, 0, 7, 5, 0, 8, 0, 7, 2, 2, ! 2, 0, 1, 0, 1, 1, 2, 0, 3, 2, ! 4, 3, 2, 3, 1, 1, 2, 1, 4, 1, ! 4, 2, 4, 3, 2, 4, 3, 1, 3, 1, ! 1, 3, 0, 3, 0, 1, 0, 1, 2, 1, ! 1, 1, 3, 2, 3, 4, 3, 2, 2, 1, ! 4, 3, 4, 5, 5, 1, 1, 1, 1, 1, ! 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, ! 2, 2, 2, 1, 2, 1, 1, 1, 1, 2, ! 0, 0, 0, 0, 0, 1, 1, 2, 3, 1, ! 2, 1, 1, 5, 1, 1, 2, 2, 2, 2, ! 0, 5, 0, 4, 0, 1, 2, 3, 2, 2, ! 0, 4, 1, 3, 0, 0, 7, 5, 2, 0, ! 0, 0, 0, 12, 0, 6, 2, 1, 1, 2, ! 3, 2, 2, 2, 3, 6, 8, 10, 12, 3, ! 4, 1, 3, 2, 0, 3, 0, 6, 0, 3, ! 1, 0, 3, 2, 1, 0, 6, 2, 0, 3, ! 5, 2, 4, 0, 1, 0, 1, 0, 1, 1, ! 3, 4, 7, 1, 3, 0, 3, 2, 0, 0, ! 6, 2, 0, 1, 1, 3, 1, 3, 4, 4, ! 3, 4, 3, 4, 4, 3, 4, 3, 1, 0, ! 3, 1, 2, 1, 3, 1, 3, 1, 1, 1, ! 1, 1, 1, 1, 1, 3, 3, 4, 2, 0, ! 3, 0, 0, 0, 9, 0, 5, 0, 9, 5, ! 0, 6, 3, 0, 1, 3, 3, 1, 1, 1, ! 1, 0, 3, 2, 3, 3, 1, 0, 1, 4, ! 1, 3, 2, 1, 1, 0, 0, 0, 7, 0, ! 2, 0, 3, 1, 1, 0, 0, 5, 4, 1, ! 5, 2, 0, 2, 0, 1, 1, 1, 2, 2, ! 4, 2, 2, 1, 3, 2, 2, 1, 0, 2, ! 0, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 6, 3, 5, 2, 1, 1, 1, 2, 1, ! 3, 2, 1, 1, 1, 4, 1, 1, 1, 2, ! 2, 1, 4, 4, 4 }; ! /* 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[] = { ! 3, 5, 0, 0, 0, 274, 309, 308, 271, 133, ! 366, 362, 364, 0, 61, 0, 587, 0, 633, 634, ! 0, 0, 593, 613, 0, 613, 0, 0, 19, 4, ! 7, 9, 8, 0, 0, 218, 219, 220, 221, 210, ! 211, 212, 213, 222, 223, 224, 225, 214, 215, 216, ! 217, 125, 125, 0, 141, 148, 268, 270, 269, 139, ! 294, 165, 0, 0, 0, 273, 272, 0, 10, 589, ! 590, 588, 591, 277, 635, 592, 6, 17, 18, 367, ! 363, 365, 0, 0, 32, 33, 35, 34, 594, 0, ! 599, 599, 275, 614, 613, 0, 276, 0, 0, 0, ! 361, 266, 292, 0, 282, 0, 134, 146, 152, 136, ! 168, 135, 147, 153, 169, 137, 158, 163, 140, 175, ! 138, 159, 164, 176, 142, 144, 150, 149, 186, 143, ! 145, 151, 187, 154, 156, 161, 160, 201, 155, 157, ! 162, 202, 166, 184, 193, 172, 170, 167, 185, 194, ! 171, 173, 199, 208, 179, 177, 174, 200, 209, 178, ! 180, 182, 191, 190, 188, 181, 183, 192, 189, 195, ! 197, 206, 205, 203, 196, 198, 207, 204, 0, 0, ! 16, 295, 387, 378, 387, 379, 376, 380, 12, 0, ! 88, 89, 90, 59, 60, 0, 0, 0, 0, 0, ! 91, 0, 36, 38, 37, 0, 39, 40, 0, 0, ! 0, 0, 0, 111, 41, 42, 0, 0, 43, 62, ! 0, 0, 64, 46, 48, 0, 0, 107, 108, 109, ! 110, 299, 615, 0, 0, 0, 613, 0, 605, 610, ! 612, 596, 0, 0, 246, 247, 248, 249, 242, 243, ! 244, 245, 412, 0, 238, 239, 240, 241, 267, 0, ! 0, 293, 13, 292, 31, 0, 292, 266, 0, 292, ! 360, 344, 266, 292, 345, 0, 280, 0, 338, 339, ! 0, 0, 0, 0, 0, 368, 0, 371, 0, 374, ! 675, 676, 699, 700, 696, 680, 681, 682, 683, 684, ! 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, ! 695, 697, 698, 0, 0, 677, 678, 636, 649, 668, ! 672, 679, 673, 57, 58, 0, 0, 0, 52, 49, ! 0, 476, 0, 0, 714, 713, 712, 0, 0, 0, ! 0, 51, 0, 0, 0, 53, 0, 55, 0, 0, ! 81, 79, 77, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 105, 106, 0, 0, 44, ! 0, 0, 472, 464, 0, 50, 306, 307, 304, 0, ! 297, 300, 305, 595, 598, 0, 602, 0, 601, 639, ! 597, 278, 414, 279, 359, 0, 0, 126, 0, 579, ! 357, 266, 267, 0, 0, 484, 112, 0, 484, 117, ! 0, 291, 0, 0, 15, 292, 23, 0, 292, 292, ! 342, 14, 27, 0, 0, 292, 395, 389, 238, 239, ! 240, 241, 234, 235, 236, 237, 125, 125, 386, 0, ! 387, 292, 387, 409, 410, 383, 407, 0, 0, 704, ! 0, 652, 670, 651, 0, 674, 0, 0, 0, 0, ! 95, 94, 0, 0, 705, 0, 706, 707, 721, 716, ! 0, 717, 718, 0, 0, 11, 47, 0, 0, 87, ! 86, 0, 0, 0, 0, 75, 76, 74, 73, 72, ! 70, 71, 65, 66, 67, 68, 69, 104, 103, 0, ! 45, 0, 97, 0, 0, 465, 466, 96, 0, 299, ! 44, 613, 601, 609, 621, 606, 641, 266, 292, 413, ! 415, 420, 419, 421, 429, 358, 283, 284, 0, 0, ! 0, 0, 0, 431, 0, 459, 29, 119, 118, 115, ! 230, 231, 226, 227, 232, 233, 228, 229, 125, 125, ! 289, 343, 0, 0, 484, 288, 341, 484, 0, 370, ! 392, 0, 388, 396, 0, 373, 0, 0, 384, 0, ! 383, 0, 0, 0, 637, 669, 562, 0, 702, 0, ! 0, 0, 92, 63, 709, 711, 0, 715, 0, 708, ! 720, 722, 0, 719, 724, 723, 54, 56, 0, 0, ! 80, 78, 98, 102, 585, 0, 475, 444, 474, 484, ! 484, 484, 484, 0, 453, 0, 462, 439, 448, 467, ! 296, 298, 88, 0, 607, 603, 0, 0, 611, 645, ! 0, 640, 423, 555, 428, 292, 427, 285, 0, 583, ! 563, 125, 125, 581, 0, 564, 566, 580, 0, 0, ! 0, 432, 430, 0, 122, 0, 123, 0, 0, 340, ! 281, 284, 21, 286, 25, 390, 0, 292, 391, 397, ! 0, 292, 393, 399, 292, 292, 411, 408, 292, 0, ! 0, 648, 668, 218, 219, 220, 221, 210, 211, 212, ! 213, 222, 223, 224, 225, 214, 215, 216, 217, 125, ! 0, 657, 653, 655, 0, 0, 671, 564, 0, 0, ! 0, 0, 0, 710, 82, 85, 468, 0, 445, 440, ! 449, 446, 441, 450, 462, 442, 451, 447, 443, 452, ! 454, 461, 88, 274, 0, 0, 0, 0, 0, 0, ! 543, 613, 613, 0, 531, 0, 521, 471, 484, 0, ! 124, 125, 125, 0, 0, 460, 508, 488, 524, 530, ! 489, 0, 301, 0, 303, 639, 639, 620, 618, 619, ! 600, 621, 626, 623, 125, 125, 0, 0, 642, 0, ! 125, 125, 422, 424, 0, 0, 555, 426, 561, 578, ! 416, 416, 557, 558, 0, 582, 0, 433, 434, 0, ! 30, 469, 0, 0, 313, 311, 310, 290, 0, 0, ! 0, 292, 0, 401, 292, 292, 0, 404, 292, 369, ! 372, 377, 292, 703, 650, 661, 416, 662, 658, 659, ! 638, 0, 99, 0, 101, 326, 0, 0, 323, 0, ! 325, 0, 381, 316, 322, 0, 0, 0, 586, 473, ! 0, 541, 511, 512, 513, 0, 0, 0, 544, 0, ! 523, 0, 0, 0, 0, 509, 0, 0, 131, 480, ! 494, 482, 499, 0, 492, 0, 0, 463, 477, 538, ! 0, 132, 0, 641, 641, 0, 627, 627, 622, 646, ! 0, 0, 425, 556, 350, 266, 292, 351, 292, 346, ! 347, 292, 575, 417, 420, 266, 292, 292, 577, 292, ! 565, 125, 125, 567, 584, 470, 120, 121, 0, 22, ! 287, 26, 403, 292, 0, 406, 292, 0, 375, 292, ! 292, 667, 0, 663, 701, 0, 329, 46, 0, 320, ! 93, 0, 315, 0, 0, 328, 319, 83, 0, 539, ! 514, 0, 519, 0, 522, 532, 0, 292, 0, 129, ! 332, 0, 130, 335, 0, 0, 462, 0, 0, 0, ! 479, 484, 478, 498, 0, 510, 0, 525, 0, 529, ! 534, 302, 608, 604, 0, 630, 624, 628, 625, 0, ! 423, 555, 573, 292, 349, 292, 353, 574, 418, 423, ! 555, 576, 559, 416, 416, 0, 402, 398, 405, 400, ! 665, 666, 660, 416, 100, 0, 331, 0, 0, 317, ! 318, 0, 0, 520, 0, 526, 542, 127, 0, 128, ! 0, 0, 0, 0, 545, 0, 493, 462, 463, 485, ! 484, 0, 537, 0, 533, 632, 0, 292, 644, 643, ! 647, 354, 355, 0, 348, 352, 0, 292, 292, 570, ! 292, 572, 312, 664, 0, 324, 321, 540, 547, 0, ! 0, 484, 484, 0, 0, 483, 546, 507, 500, 0, ! 504, 491, 487, 486, 0, 0, 631, 0, 356, 560, ! 568, 569, 571, 330, 0, 0, 0, 548, 549, 515, ! 527, 333, 336, 481, 495, 545, 506, 462, 497, 535, ! 629, 0, 0, 547, 0, 0, 0, 0, 462, 0, ! 505, 0, 0, 0, 0, 516, 550, 334, 337, 496, ! 501, 536, 551, 0, 0, 0, 545, 0, 553, 0, ! 517, 0, 0, 0, 0, 502, 552, 518, 554, 462, ! 503, 0, 0, 0 }; static const short yydefgoto[] = { ! 1151, 1, 2, 3, 29, 30, 31, 32, 417, 808, ! 423, 810, 268, 653, 839, 216, 332, 499, 218, 219, ! 220, 221, 33, 222, 223, 484, 483, 481, 847, 482, ! 224, 712, 405, 406, 407, 408, 539, 607, 34, 396, ! 750, 244, 245, 246, 247, 248, 249, 250, 251, 43, ! 44, 45, 46, 47, 48, 49, 50, 51, 52, 641, ! 642, 436, 258, 252, 53, 259, 54, 55, 56, 57, ! 58, 275, 103, 269, 276, 809, 104, 658, 397, 261, ! 60, 379, 380, 381, 61, 807, 918, 841, 842, 843, ! 1018, 844, 938, 845, 846, 959, 1028, 1116, 962, 1030, ! 1117, 661, 278, 929, 899, 900, 279, 62, 63, 64, ! 65, 440, 442, 447, 288, 66, 942, 569, 283, 284, ! 438, 668, 672, 669, 673, 445, 446, 253, 392, 519, ! 931, 903, 904, 522, 523, 270, 608, 609, 610, 611, ! 612, 613, 409, 373, 849, 971, 975, 504, 505, 506, ! 800, 755, 374, 615, 225, 801, 874, 875, 964, 876, ! 966, 410, 1038, 972, 1039, 1040, 877, 1037, 965, 1118, ! 967, 1105, 1136, 1149, 1107, 1078, 757, 879, 1070, 758, ! 880, 759, 862, 979, 980, 1121, 977, 760, 859, 1079, ! 1096, 1097, 1098, 1139, 634, 785, 643, 909, 1056, 644, ! 645, 913, 646, 790, 400, 529, 647, 648, 605, 226, ! 68, 89, 69, 70, 236, 515, 71, 512, 766, 388, ! 765, 72, 389, 92, 73, 626, 771, 627, 776, 986, ! 987, 74, 75, 189, 451, 705, 516, 630, 1050, 631, ! 777, 989, 317, 574, 702, 703, 704, 932, 933, 453, ! 576, 318, 319, 320, 321, 322, 465, 466, 585, 467, ! 337, 227, 470, 471, 472, 228, 229, 230 }; static const short yypact[] = { ! 119, 138, 4124, 4124, 36,-32768,-32768,-32768,-32768,-32768, ! 129, 129, 129, 125,-32768, 143,-32768, 133,-32768,-32768, ! 133, 133,-32768, 186, 133, 186, 133, 133,-32768,-32768, ! -32768,-32768,-32768, 216, 234, 913, 1684, 1540, 4321, 332, ! 421, 351, 862, 4241, 4334, 4271, 4351, 547, 949, 771, ! 1100,-32768,-32768, 61,-32768,-32768,-32768,-32768,-32768, 129, ! -32768,-32768, 120, 219, 303,-32768,-32768, 4124,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 129, ! 129, 129, 3789, 231,-32768,-32768,-32768,-32768,-32768, 49, ! 192, 217,-32768,-32768, 237, 287,-32768, 404, 133, 3516, ! -32768, 98, 129, 452,-32768, 1569,-32768,-32768,-32768, 129, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 129,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768, 129,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768, 129,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768, 129,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768, 129,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768, 129,-32768,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768, 129,-32768,-32768,-32768,-32768,-32768, 200, 234, ! -32768,-32768, 238, 225, 238, 266,-32768, 279,-32768, 4453, ! -32768,-32768,-32768,-32768,-32768, 3789, 3789, 318, 327, 344, ! -32768, 133,-32768,-32768,-32768, 3789,-32768,-32768, 2443, 3589, ! 357, 393, 401,-32768,-32768,-32768, 3789, 244, 381,-32768, ! 3855, 3921,-32768, 5127, 872, 2164, 3789,-32768,-32768,-32768, ! -32768, 1116,-32768, 133, 133, 133, 186, 133,-32768,-32768, ! -32768,-32768, 407, 392, 1968, 4829, 4796, 4848, 998, 839, ! 1072, 1122,-32768, 402, 203, 498, 317, 506,-32768, 234, ! 234, 129,-32768, 129,-32768, 437, 129, 468, 1916, 129, ! -32768,-32768, 98, 129,-32768, 476,-32768, 1718, 387, 496, ! 527, 2916, 449, 436, 4088,-32768, 439,-32768, 369,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768, 525, 4816,-32768,-32768,-32768,-32768, 3401, ! 487,-32768,-32768,-32768,-32768, 3789, 3789, 4816,-32768,-32768, ! 456,-32768, 458, 461,-32768,-32768,-32768, 1194, 4489, 4816, ! 133,-32768, 466, 3789, 2443,-32768, 2443,-32768, 3789, 3789, ! 535,-32768,-32768, 3789, 3789, 3789, 3789, 3789, 3789, 3789, ! 3789, 3789, 3789, 3789, 3789,-32768,-32768, 133, 133, 3789, ! 3789, 482,-32768, 550, 502,-32768,-32768,-32768,-32768, 20, ! -32768, 539,-32768,-32768,-32768, 513,-32768, 523, 545,-32768, ! -32768,-32768, 420,-32768, 496, 391, 234,-32768, 608,-32768, ! -32768, 98, 636, 2965, 569,-32768,-32768, 1942, 73,-32768, ! 4663, 620, 200, 200,-32768, 129,-32768, 1916, 129, 129, ! -32768,-32768,-32768, 1916, 638, 129,-32768,-32768, 1968, 4829, ! 4796, 4848, 998, 839, 1072, 1122,-32768, 618, 628, 1229, ! 238, 129, 238,-32768, 635, 627,-32768, 369, 4816,-32768, ! 641, 650, 714,-32768, 487,-32768, 720, 4982, 5000, 648, ! -32768,-32768, 3308, 3789, 698, 651, 1194,-32768,-32768, 712, ! 673, 4489,-32768, 677, 679,-32768, 5127, 694, 701, 5127, ! 5127, 3789, 778, 3789, 3789, 1908, 1091, 1504, 1318, 1405, ! 592, 592, 758, 758,-32768,-32768,-32768,-32768,-32768, 715, ! 381, 730,-32768, 133, 2257, 550,-32768,-32768, 742, 1116, ! 3987, 186, 545,-32768,-32768,-32768, 330, 98, 129,-32768, ! -32768,-32768,-32768, 713,-32768,-32768,-32768, 158, 750, 4212, ! 3789, 3789, 3033,-32768, 4882,-32768,-32768,-32768,-32768,-32768, ! 4384, 4699, 1126, 1489, 4567, 4716, 1285, 1516, 754, 765, ! -32768, 387, 435, 200,-32768, 813,-32768,-32768, 773,-32768, ! 405, 519,-32768,-32768, 774,-32768, 775, 3789, 133, 780, ! 627, 784, 4533, 1437,-32768,-32768, 3319, 4816,-32768, 4816, ! 3789, 4816,-32768,-32768, 381,-32768, 3789,-32768, 698,-32768, ! -32768,-32768, 712,-32768,-32768,-32768, 779, 779, 832, 3789, ! 1975, 2410,-32768,-32768,-32768, 579, 569,-32768,-32768, 68, ! 76, 83, 84, 880,-32768, 791, 3127,-32768,-32768,-32768, ! -32768,-32768, 247, 794,-32768,-32768, 512, 4033,-32768,-32768, ! 2951,-32768, 420, 420,-32768, 129,-32768,-32768, 795,-32768, ! -32768,-32768,-32768,-32768, 796, 581,-32768,-32768, 255, 4900, ! 4932,-32768,-32768, 88,-32768, 200,-32768, 234, 2772,-32768, ! -32768, 861,-32768,-32768,-32768,-32768, 3789, 70, 798,-32768, ! 3789, 286, 801,-32768, 129, 129, 5127,-32768, 129, 799, ! 133,-32768, 3401, 4384, 4699, 4580, 4742, 1126, 1489, 1351, ! 1647, 4567, 4716, 4610, 4779, 1285, 1516, 1619, 1661, 807, ! 809,-32768,-32768, 4622, 1857, 88,-32768, 806, 814, 816, ! 5030, 818, 2536,-32768,-32768, 2502,-32768, 133,-32768,-32768, ! -32768,-32768,-32768,-32768, 3220,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768, 855, 863, 3789, 866, 825, 826, 3657, 365, ! 914, 263, 289, 3723,-32768, 864,-32768,-32768,-32768, 840, ! -32768,-32768,-32768, 843, 733, 852,-32768,-32768,-32768, 860, ! -32768, 3429,-32768, 3789,-32768,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768, 857, 4453,-32768, 234, ! -32768,-32768,-32768,-32768, 859, 4229,-32768,-32768,-32768,-32768, ! 540, 415,-32768,-32768, 1418,-32768, 946,-32768,-32768, 865, ! -32768,-32768, 587, 594,-32768,-32768, 5127,-32768, 88, 2772, ! 88, 5091, 3789,-32768, 129, 5091, 3789,-32768, 129,-32768, ! -32768,-32768, 129,-32768,-32768,-32768, 540,-32768,-32768,-32768, ! -32768, 133,-32768, 3789,-32768,-32768, 133, 3589,-32768, 912, ! 5127, 868, 867,-32768,-32768, 260, 2704, 3789,-32768,-32768, ! 2090,-32768,-32768,-32768,-32768, 875, 3789, 877,-32768, 902, ! -32768, 881, 865, 3789, 927,-32768, 200, 234,-32768,-32768, ! -32768,-32768,-32768, 908, 959, 2037, 78,-32768,-32768, 891, ! 894,-32768, 282, 553, 589, 4069, 443, 443,-32768,-32768, ! 200, 234,-32768,-32768,-32768, 98, 129,-32768, 129, 725, ! 740, 162,-32768,-32768, 129, 98, 129, 162,-32768, 129, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 2536,-32768, ! -32768,-32768,-32768, 5091, 405,-32768, 5091, 519,-32768, 129, ! 162,-32768, 603,-32768,-32768, 5048,-32768, 4395, 2536,-32768, ! -32768, 2629,-32768, 2840, 3789,-32768,-32768, 2502, 3789,-32768, ! -32768, 892,-32768, 3789,-32768,-32768, 895, 129, 604,-32768, ! 425, 605,-32768, 812, 918, 919,-32768, 920, 3789, 2350, ! -32768,-32768,-32768,-32768, 3789,-32768, 865,-32768, 922, 894, ! -32768,-32768,-32768,-32768, 3789, 935, 896,-32768, 896, 95, ! 540, 481,-32768, 129,-32768, 129,-32768,-32768, 129, 415, ! 415,-32768,-32768, 540, 415, 901,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768, 540,-32768, 3789,-32768, 904, 2840,-32768, ! -32768, 4395, 5109,-32768, 29,-32768,-32768,-32768, 1916,-32768, ! 1916, 3789, 3789, 979, 3429, 909,-32768,-32768,-32768,-32768, ! -32768, 915,-32768, 4622,-32768, 5127, 3789, 129,-32768,-32768, ! -32768, 725, 740, 445,-32768,-32768, 4229, 129, 162,-32768, ! 162,-32768,-32768,-32768, 4950,-32768,-32768,-32768, 82, 911, ! 865,-32768,-32768, 925, 928,-32768,-32768,-32768,-32768, 917, ! -32768,-32768,-32768,-32768, 926, 931, 5127, 443,-32768,-32768, ! -32768,-32768,-32768,-32768, 954, 133, 42, 932,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768, 3789,-32768,-32768,-32768,-32768, ! -32768, 3789, 906, 82, 938, 82, 865, 865,-32768, 941, ! -32768, 865, 944, 1024, 53,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768, 969, 1030, 951, 3789, 3789,-32768, 331, ! -32768, 953, 955, 958, 1039,-32768,-32768,-32768,-32768,-32768, ! -32768, 1050, 1053,-32768 }; static const short yypgoto[] = { ! -32768,-32768,-32768,-32768, 105,-32768, 427,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768, -17,-32768, -81, 551, -298, 591, ! -32768,-32768,-32768, -133, 1036,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768, -350,-32768, 656,-32768,-32768, 92, 563, -381, ! -732, 3, 9, 130, 233, 11, 28, 38, 40, -382, ! -328, -550, -547, -324, -323, -534, -525, -476, -475, 659, ! 663, -594, -232,-32768, -591, -150, 1211, 1242, 140, 1466, ! -32768, -604, -162, -269, 522,-32768, 670,-32768, 423, 724, ! -15,-32768, 567,-32768, 1139, 268,-32768, -818,-32768, 141, ! -32768, -809,-32768,-32768, 246,-32768,-32768,-32768,-32768,-32768, ! -32768, -176, 408, -729, 102, -140, 19,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768, 526, -127,-32768, ! 654,-32768,-32768, 171, 172, 653, 534, 16,-32768,-32768, ! -731, -365, -368, -583,-32768, 537,-32768,-32768,-32768,-32768, ! -32768,-32768, -352,-32768,-32768, -558, 66,-32768,-32768, 611, ! -637,-32768, 354,-32768,-32768, -580,-32768,-32768,-32768,-32768, ! -32768, -355, 77, -841, -448, -369,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768,-32768, 131,-32768,-32768,-32768,-32768, -990, ! 14,-32768, 44,-32768, 491,-32768, -753,-32768,-32768, 577, ! 584, 112,-32768, 520, -399,-32768,-32768,-32768,-32768, 13, ! -32768, 87,-32768,-32768, 1070, 655,-32768,-32768,-32768,-32768, ! -32768,-32768,-32768, -3, -4,-32768,-32768, 394,-32768, 281, ! 79, -478,-32768,-32768,-32768,-32768, 93,-32768,-32768,-32768, ! -32768,-32768, 417,-32768,-32768,-32768, 489,-32768, 182, 517, ! -32768, 599, 631, -161,-32768, -265,-32768,-32768, 614, 759, ! -32768,-32768,-32768,-32768, 755,-32768,-32768,-32768 }; ! ! #define YYLAST 5187 ! ! static const short yytable[] = { ! 88, 217, 277, 90, 91, 35, 35, 94, 418, 88, ! 98, 36, 36, 39, 39, 67, 67, 280, 243, 93, ! 556, 93, 96, 693, 521, 753, 694, 520, 544, 881, ! 40, 40, 893, 774, 553, 402, 756, 946, 629, 697, ! 41, 41, 42, 42, 181, 183, 185, 187, 698, 783, ! 536, 802, 437, 105, 455, 537, 617, 286, 754, 902, ! 908, 898, 323, 324, 181, 181, 181, 554, 830, -455, ! 35, 500, 329, 557, -114, 1068, 36, -456, 39, 973, ! 67, 242, 545, 341, -457, -458, 546, 547, 1113, 799, ! 93, 239, 1094, 375, 181, 40, 1048, 699, 700, 1134, ! 1005, 15, 232, 181, 254, 41, 9, 42, 76, 508, ! 255, 95, 181, 97, 509, 1119, 812, 403, 1069, -1, ! 1017, 181, 412, 84, 85, 1033, 77, 78, 336, 15, ! 181, 1114, 37, 37, 1020, 618, 84, 85, -2, 181, ! 751, 752, 1135, 233, 756, 974, 1141, 544, 181, 616, ! 1095, 180, 614, 693, 780, 781, 694, 181, 454, -435, ! 15, 719, 722, 725, 728, 584, 754, -436, -114, 697, ! 753, 919, 188, 921, -437, -438, 464, 469, 698, 125, ! 130, 134, 139, 747, 328, 1049, 265, 161, 166, 170, ! 175, 691, 82, 15, 544, 86, 1081, 37, 281, 662, ! 87, 545, 664, 100, 271, 546, 547, 437, 86, 1066, ! 83, 106, 500, 87, 378, 182, 383, 384, 385, 915, ! 387, 701, 84, 85, 333, 266, 267, 699, 700, 266, ! 267, 256, 93, 386, 15, 38, 38, 100, 234, 17, ! 720, 723, 726, 729, 693, 692, 181, 694, 545, 695, ! 696, 530, 546, 547, 616, 616, 724, 616, 272, 235, ! 697, 730, 958, 234, 782, 521, 1120, 273, 784, 698, ! 254, 444, 1059, 1061, 1057, 254, 255, 1129, 394, 395, ! 274, 255, 955, 99, 237, 751, 752, 428, 584, 501, ! 17, 774, 101, 429, 86, 432, 449, 439, 231, 87, ! 38, 102, 1077, 1089, 943, 588, 84, 85, 1150, -35, ! 592, 282, 433, 564, 184, 566, 17, 15, 911, 912, ! 285, 691, 434, 474, 435, 115, 836, -594, 944, 583, ! 450, -594, 816, 342, 257, -34, 762, 6, 7, 8, ! 124, 763, 17, 459, 795, 10, 11, 12, 15, 796, ! 497, 498, 829, 266, 267, 473, 6, 7, 8, 133, ! 477, 287, 478, 15, 10, 11, 12, 632, 84, 85, ! 443, 981, 84, 85, 289, 692, 343, 240, 86, 695, ! 696, 233, 15, 87, 667, 325, 18, 19, 125, 130, ! 134, 139, 418, 864, 326, 775, 1042, 256, 186, 329, ! 598, 628, 256, 544, 254, 629, 629, 783, 100, 271, ! 255, 327, 691, 540, 430, 527, 783, 455, 100, 541, ! 1143, 542, -254, 856, 338, 1144, 6, 7, 8, 129, ! 444, 394, 395, 924, 10, 11, 12, 927, 543, 578, ! 86, -256, 428, 753, 86, 87, 100, 271, 429, 87, ! 432, 666, 439, 265, 419, 267, -284, 545, 266, 267, ! 339, 546, 547, 272, 571, 882, 692, 433, 340, -284, ! 695, 696, 273, 905, 401, 343, 9, 434, 517, 435, ! 525, 391, 906, 267, 100, 274, 604, 518, 267, 984, ! 1100, 393, 378, 693, 241, 803, 694, 390, 233, 15, ! 257, 272, 419, 267, 398, 257, 111, 93, 624, 697, ! 273, -255, 995, 267, 120, -284, 424, 431, 698, -284, ! 254, 454, 100, 274, 659, 260, 255, 425, 84, 85, ! 441, 256, 540, 456, 1088, 749, 1127, 1128, 541, 895, ! 542, 1131, 262, 100, 894, 460, 263, 461, 896, 267, ! 462, 444, 6, 7, 8, 160, 475, 543, 751, 752, ! 10, 11, 12, 266, 267, 670, 414, 911, 912, 430, ! 415, 502, 125, 130, 134, 139, 683, 101, 15, 540, ! 671, -84, 684, 503, 687, 541, 102, 542, 767, 768, ! 769, 507, 448, 708, 1054, 709, 1055, 711, 895, 748, ! 86, 688, 511, 770, 543, 87, 510, 896, 267, 18, ! 19, 689, 513, 690, 178, 179, 724, 421, 528, 35, ! 897, 263, 782, 521, 982, 36, 784, 39, 375, 761, ! 428, 782, 521, 35, 257, 784, 429, -262, 432, 36, ! 514, 39, 531, 749, 40, 18, 19, 256, 360, 361, ! 362, 363, 364, 775, 41, 433, 42, 855, 40, 535, ! 983, 691, 861, 823, 550, 434, 1087, 435, 41, 716, ! 42, 793, 431, 717, 544, 794, 527, 916, 1071, 567, ! 1072, 415, 125, 130, 917, 724, 161, 166, 263, 399, ! 960, 418, 411, 1012, 1027, 1029, 413, 1013, 415, 263, ! 848, 718, 721, 685, 727, 961, 683, 748, -394, -394, ! 985, 985, 684, 558, 687, 692, 1101, 1102, 562, 695, ! 696, 568, 857, 84, 85, 575, 59, 59, 545, 280, ! 572, 688, 546, 547, 79, 80, 81, 93, 93, 96, ! 573, 689, 581, 690, 586, 990, 37, 587, 667, 869, ! 257, 870, 871, 872, 873, 999, 336, 430, 590, 109, ! 37, 118, 591, 127, 35, 136, 594, 145, 595, 154, ! 36, 163, 39, 172, 761, 951, 6, 7, 8, 169, ! 635, 267, 956, 596, 10, 11, 12, 577, 540, 40, ! 597, 59, 993, 267, 541, 86, 542, 683, 527, 41, ! 87, 42, 15, 684, 602, 687, 686, 995, 267, 901, ! 907, 345, 347, 543, 934, 420, 362, 363, 364, 936, ! 551, 552, 688, 59, 599, 59, 603, 125, 130, 134, ! 139, 620, 689, 685, 690, 161, 166, 170, 175, 637, ! 265, 555, 399, -284, 654, 930, 8, 129, 559, 38, ! 1052, 1053, 10, 11, 12, 656, -284, 663, 883, 884, ! 431, -264, 665, 38, 565, 674, 675, 6, 7, 8, ! 138, 678, 1024, 680, 582, 10, 11, 12, 714, 266, ! 267, 404, 731, 764, 788, 792, 963, 1035, 428, 265, ! 822, 37, 814, 1041, 429, 818, 432, 825, 254, 827, ! 794, -32, -284, 831, 255, 832, -284, 834, 254, -33, ! 527, 985, 851, 433, 255, 852, 853, 5, 6, 7, ! 8, 106, 858, 434, 685, 435, 10, 11, 12, 524, ! 865, 863, 59, 868, 365, 366, 686, 367, 368, 369, ! 370, 633, 14, 372, 15, -528, 671, 888, 892, 914, ! 1073, 1074, -257, 1076, 6, 7, 8, 165, 939, 940, ! 747, 941, 10, 11, 12, 950, 17, 952, 109, 953, ! 118, 954, 127, 957, 136, 968, 969, 976, 109, 978, ! 118, 1046, 1023, 181, 1025, 1031, 1032, 1034, 23, 1043, ! 1047, 59, 1062, 25, 38, 1065, 59, 1075, 1080, 560, ! 561, 1099, 1123, -250, 1084, 8, 124, 1106, 59, 394, ! 395, 10, 11, 12, 1103, 430, 1108, 1104, 394, 395, ! 1109, 1111, 1058, 1060, 1076, 256, 1115, 686, 1125, 15, ! 1122, 1130, 930, 1132, 1133, 256, 1137, 35, 59, -263, ! 1138, 1140, 1145, 36, 1146, 39, 683, 761, 1147, 1148, ! 1152, 59, 684, 1153, 687, 1076, 1142, 778, 786, 540, ! 636, 623, 40, 59, 538, 541, 526, 542, 59, 548, ! 59, 688, 41, 549, 42, 660, 621, 920, 1112, 8, ! 133, 689, 1019, 690, 543, 10, 11, 12, 420, 420, ! 813, 945, 1051, 563, 817, 1007, 679, 819, 820, 1009, ! 570, 821, 677, 15, 1082, 6, 7, 8, 174, 878, ! 1044, 655, 657, 10, 11, 12, 619, 1083, 431, 84, ! 85, 6, 7, 376, 377, 59, 787, 1124, 257, 8, ! 138, 6, 7, 8, 124, 10, 11, 12, 257, 10, ! 11, 12, 355, 356, 357, 358, 359, 360, 361, 362, ! 363, 364, 109, 706, 118, 1085, 127, 15, 136, 1126, ! 707, 238, 791, 59, 37, 885, 1110, 625, 988, 524, ! 524, 681, 59, 685, 110, 114, 119, 123, 128, 132, ! 137, 141, 146, 150, 155, 159, 164, 168, 173, 177, ! -265, 86, 828, 779, 889, 1063, 87, 290, 291, 824, ! 713, 292, 293, 682, 789, 789, 294, 295, 296, 297, ! 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, ! 308, 309, 310, 311, 312, 589, 593, 0, 0, 0, ! 426, 0, 0, 5, 922, 0, 8, 9, 925, 0, ! 463, 59, 10, 11, 12, 928, 107, 112, 116, 121, ! 0, 0, 0, 0, 143, 148, 152, 157, 14, 0, ! 15, 16, 826, 0, 109, 0, 127, 38, 145, 315, ! 163, 0, 0, 0, 316, 0, 686, 108, 113, 117, ! 122, 0, 17, 0, 0, 144, 149, 153, 158, 0, ! 6, 7, 8, 160, 0, 0, 0, 59, 10, 11, ! 12, 59, 0, 59, 23, 59, 0, 0, 0, 25, ! 0, 0, 0, 0, 866, 867, 15, 0, 0, 991, ! 0, 992, 0, 0, 997, 0, 0, 524, 524, 1000, ! 1001, 0, 1002, 0, 0, 0, 0, 886, 887, 0, ! 59, 0, 0, 890, 891, 0, 1006, 0, 0, 1008, ! 0, 59, 1010, 1011, 59, 0, 6, 7, 8, 133, ! 0, 457, 458, 524, 10, 11, 12, 0, 0, 0, ! 382, 357, 358, 359, 360, 361, 362, 363, 364, 476, ! 1026, 0, 15, 0, 479, 480, 0, 0, 0, 485, ! 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, ! 496, 0, 0, 0, 0, 0, 0, 109, 0, 118, ! 0, 127, 0, 136, 0, 145, 399, 154, 399, 163, ! 0, 172, 5, 6, 7, 8, 9, 59, 0, 910, ! 0, 10, 11, 12, 0, 0, 994, 996, 404, 534, ! 0, 5, 6, 7, 8, 9, 0, 14, 0, 15, ! 10, 11, 12, 0, 0, 107, 112, 116, 121, 358, ! 359, 360, 361, 362, 363, 364, 14, 0, 15, 0, ! 0, 17, 0, 0, 1003, 1004, 0, 0, 0, 0, ! 1090, 1091, 0, 1092, 0, 59, 108, 113, 117, 122, ! 17, 0, 0, 23, 6, 7, 8, 129, 25, 0, ! 0, 0, 10, 11, 12, 126, 131, 135, 140, 0, ! 0, 0, 23, 162, 167, 171, 176, 25, 59, 600, ! 601, 6, 7, 8, 165, 0, 0, 524, 524, 10, ! 11, 12, -654, 0, 0, 0, 524, 524, 0, 0, ! 524, 524, 0, 0, 5, 6, 7, 8, 115, 0, ! 524, 0, 0, 10, 11, 12, 356, 357, 358, 359, ! 360, 361, 362, 363, 364, 0, 649, 650, 0, 14, ! 264, 15, 0, -28, -28, -28, -28, -28, 0, 0, ! 0, 0, -28, -28, -28, 0, 0, 0, 994, 996, ! 996, 0, 0, 17, 0, 0, 0, 265, -28, 0, ! -284, 0, 0, 676, 0, 0, 0, 0, 0, 59, ! 0, 0, 0, -284, 0, 23, 710, 0, 0, 59, ! 25, 0, -28, 0, 6, 7, 8, 169, 998, 59, ! -252, 0, 10, 11, 12, 715, 266, 267, 0, 107, ! 112, 116, 121, 0, -28, 0, 0, 0, 382, -28, ! 15, 0, 6, 7, 8, 138, 0, 0, 0, -284, ! 10, 11, 12, -284, -28, 0, 6, 7, 8, 174, ! 108, 113, 117, 122, 10, 11, 12, 0, 0, 110, ! 114, 128, 132, 146, 150, 164, 168, 0, 5, 6, ! 7, 8, 111, 0, 806, 0, 0, 10, 11, 12, ! 0, 0, 811, 0, 0, 0, 815, 0, 0, 0, ! 0, 0, 0, 14, 126, 131, 135, 140, 0, 416, ! 0, 0, -20, -20, -20, -20, -20, 0, 0, 0, ! 0, -20, -20, -20, 0, 0, 0, 17, 0, 0, ! 0, 0, 0, 0, 0, 0, 265, -20, 840, -284, ! 0, 107, 112, 0, 0, 143, 148, 0, 59, 23, ! 0, 0, -284, 0, 25, 0, 0, 59, 0, 0, ! 850, -20, 0, 0, -251, 0, 0, 0, 0, 0, ! 0, 0, 108, 113, 0, 0, 144, 149, 0, 0, ! 0, 0, 0, -20, 0, 0, 0, 0, -20, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, -284, 0, ! 0, 0, -284, -20, 0, 0, 0, 0, 0, 0, ! 0, 0, 110, 114, 119, 123, 128, 132, 137, 141, ! 146, 150, 155, 159, 164, 168, 173, 177, 0, 0, ! 0, 0, 0, 0, 0, 806, 0, 0, 923, 0, ! 0, 0, 926, 0, 0, 0, 0, 0, 404, 0, ! 0, -656, -656, -656, -656, -656, 0, 0, 0, 935, ! -656, -656, -656, 937, 0, 0, 0, 0, 0, 0, ! 0, 0, 840, 947, 0, 0, -656, 0, -656, 0, ! 0, 0, 0, 0, 107, 112, 116, 121, 126, 131, ! 135, 140, 143, 148, 152, 157, 0, 0, 0, 0, ! -656, 0, 0, 0, 0, 0, 0, 404, 0, 0, ! -484, -484, -484, -484, -484, 108, 113, 117, 122, -484, ! -484, -484, -656, 144, 149, 153, 158, -656, 0, 0, ! 0, 0, 0, 404, 0, -484, -116, -116, -116, -116, ! -116, 0, -656, 0, 840, -116, -116, -116, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, -484, ! 0, -116, 5, 0, 840, 8, 106, 840, 0, 840, ! 1021, 10, 11, 12, 1022, 0, 0, 0, 0, 0, ! 0, -484, 0, 0, 0, -116, -484, 14, 0, 15, ! 0, 0, 0, 0, 0, 0, 0, 0, 126, 131, ! 0, -113, 162, 167, 0, 0, 0, -116, 0, 0, ! 1045, 17, -116, 352, 353, 354, 355, 356, 357, 358, ! 359, 360, 361, 362, 363, 364, 0, -116, 970, 0, ! -462, -462, 0, 23, 0, 0, -462, -462, 25, -462, ! 0, 1064, 0, -462, 840, -462, -462, -462, -462, -462, ! -462, -462, -462, -462, -462, -462, 0, -462, 0, -462, ! 0, -462, -462, -462, -462, -462, 0, 0, 0, -462, ! 0, 0, 1086, 0, 0, -462, 0, 0, -462, 0, ! 0, 0, 0, -462, -462, -462, 0, 0, 0, -462, ! -462, 948, 0, 0, -462, -462, 0, 0, 0, -462, ! 0, -462, -462, 0, 0, 0, -462, -462, 0, 0, ! -462, -462, 0, 0, -462, -462, 0, -462, 0, -462, ! -462, 0, -462, 348, 349, 350, 949, 351, 352, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 0, 0, 126, 131, 135, 140, 0, 0, 0, ! 0, 162, 167, 171, 176, 371, 0, -460, -460, -460, ! -460, -460, -460, -460, -460, 0, -460, -460, -460, -460, ! -460, 0, -460, -460, -460, -460, -460, -460, -460, -460, ! -460, -460, -460, -460, -460, -460, -460, -460, -460, -460, ! -460, -460, -460, 0, 0, 0, -460, 0, 0, 0, ! 0, 0, -460, 0, 0, -460, 0, -460, 0, 0, ! -460, -460, -460, 0, 0, 0, -460, -460, 0, 0, ! 0, -460, -460, 0, 0, 0, -460, 0, -460, -460, ! 0, 0, 0, -460, -460, 0, 0, -460, -460, 0, ! 0, -460, -460, 0, -460, 372, -460, -460, 606, -460, ! -484, -484, -484, -484, -484, -484, -484, -484, 0, -484, ! -484, -484, -484, -484, 0, -484, -484, -484, -484, -484, ! -484, -484, -484, -484, -484, -484, -484, -484, -484, -484, ! 0, -484, -484, -484, -484, -484, 0, 0, 0, -484, ! 0, 0, 0, 0, 0, -484, 0, 0, -484, 0, ! -484, 0, 0, -484, -484, -484, 0, 0, 0, -484, ! -484, 0, 0, 0, -484, -484, 0, 0, 0, -484, ! 0, -484, -484, 0, 0, 0, -484, -484, 0, 0, ! -484, -484, 0, 0, -484, -484, 0, -484, 0, -484, ! -484, 1036, -484, -490, -490, 0, 0, 0, 0, -490, ! -490, 0, -490, 0, 0, 0, -490, 0, -490, -490, ! -490, -490, -490, -490, -490, -490, -490, -490, -490, 0, ! -490, 0, -490, 0, -490, -490, -490, -490, -490, 0, ! 0, 0, -490, 0, 0, 0, 0, 0, -490, 0, ! 0, -490, 0, 0, 0, 0, -490, -490, -490, 0, ! 0, 0, -490, -490, 0, 0, 0, -490, -490, 0, ! 0, 0, -490, 0, -490, -490, 0, 0, 0, -490, ! -490, 0, 0, -490, -490, 0, 0, -490, -490, 0, ! -490, 0, -490, -490, 330, -490, 190, 5, 0, 0, ! 8, 9, 191, 192, 0, 193, 10, 11, 12, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 0, 14, 194, 15, 16, 0, 195, 196, 197, ! 198, 199, 0, 0, 0, 200, 0, 0, 0, 0, ! 0, 201, 0, 0, 202, 0, 17, 0, 0, 203, ! 204, 205, 0, 0, 0, 206, 207, 0, 0, 0, ! 208, 209, 0, 0, 0, 210, 0, 211, 23, 0, ! 0, 0, 212, 25, 0, 0, 0, 0, 0, 0, ! 0, 213, 0, 0, 0, 214, 215, 835, 331, 732, ! 85, 0, 0, 0, 0, 191, 192, 350, 193, 351, ! 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 0, 0, 0, 194, 0, 16, 0, ! 195, 196, 197, 198, 199, 0, 0, 0, 200, 0, ! 0, 0, 0, 0, 201, 0, 0, 202, 0, 0, ! 0, 0, 203, 204, 205, 0, 0, 0, 206, 207, ! 0, 0, 836, 208, 837, 0, 0, 0, 210, 0, ! 211, 86, 0, 0, 0, 212, 87, 0, 0, 0, ! 0, 0, 0, 0, 213, 0, 0, -314, 214, 215, ! 835, 838, 732, 85, 0, 0, 0, 0, 191, 192, ! 0, 193, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 194, ! 0, 16, 0, 195, 196, 197, 198, 199, 0, 0, ! 0, 200, 0, 0, 0, 0, 0, 201, 0, 0, ! 202, 0, 0, 0, 0, 203, 204, 205, 0, 0, ! 0, 206, 207, 0, 0, 836, 208, 837, 0, 0, ! 0, 210, 0, 211, 86, 835, 0, 190, 212, 87, ! 0, 0, 0, 191, 192, 0, 193, 213, 0, 0, ! -382, 214, 215, 0, 838, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 194, 0, 16, 0, 195, 196, ! 197, 198, 199, 0, 0, 0, 200, 0, -327, 0, ! 0, 0, 201, 0, 0, 202, 0, 0, 0, 0, ! 203, 204, 205, 0, 0, 0, 206, 207, 0, 0, ! -327, 208, 209, 804, 0, 190, 210, 0, 211, 0, ! 0, 191, 192, 212, 193, 0, 0, 0, 0, 0, ! 0, 0, 213, 0, 0, 0, 214, 215, 0, 838, ! 0, 0, 194, 0, 16, 0, 195, 196, 197, 198, ! 199, 0, 0, 0, 200, 0, 0, 0, 0, 0, ! 201, 0, 0, 202, 0, 0, 0, 0, 203, 204, ! 205, 0, 0, 0, 206, 207, 0, 0, 0, 208, ! 209, 835, 0, 190, 210, 0, 211, 0, 0, 191, ! 192, 212, 193, 0, 0, 0, 0, 0, 0, 0, ! 213, 0, 0, 0, 214, 215, 0, 805, 0, 0, ! 194, 0, 16, 0, 195, 196, 197, 198, 199, 0, ! 0, 0, 200, 0, 0, 0, 0, 0, 201, 0, ! 0, 202, 0, 0, 0, 0, 203, 204, 205, 0, ! 0, 0, 206, 207, 0, 0, 0, 208, 209, 0, ! 0, 0, 210, 0, 211, 0, 0, 422, 0, 212, ! -24, -24, -24, -24, -24, 0, 0, 0, 213, -24, ! -24, -24, 214, 215, 0, 838, 0, 0, 0, 0, ! 0, 0, 0, 0, 265, -24, 0, -284, 0, 0, ! 0, 0, 4, 0, -125, 5, 6, 7, 8, 9, ! -284, 0, 0, 0, 10, 11, 12, 0, 190, -24, ! 0, 0, 0, 0, 191, 192, 0, 193, 0, 0, ! 14, 0, 15, 266, 267, 0, 0, 0, 0, 0, ! 0, -24, 0, 0, 0, 194, -24, 16, 0, 195, ! 196, 197, 198, 199, 17, 0, -284, 200, 0, -125, ! -284, -24, 0, 201, 0, 0, 202, 0, -125, 0, ! 0, 203, 204, 532, 0, 0, 23, 206, 207, 0, ! 0, 25, 208, 209, 0, 0, 190, 210, 0, 211, ! 0, 28, 191, 192, 212, 193, 0, 0, 0, 0, ! 0, 0, 0, 213, 0, 0, 0, 214, 215, 0, ! 0, 533, 0, 194, 0, 16, 0, 195, 196, 197, ! 198, 199, 0, 0, 0, 200, 0, 0, 0, 0, ! 0, 201, 0, 0, 202, 0, 0, 0, 0, 203, ! 204, 205, 0, 0, 0, 206, 207, 0, 0, 0, ! 208, 209, 0, 0, 0, 210, 0, 211, 0, 0, ! 0, 0, 212, 0, 0, 0, 0, 0, 0, 0, ! 0, 213, 0, 0, 0, 214, 215, 0, 0, 651, ! 732, 733, 6, 7, 8, 9, 191, 192, 0, 193, ! 10, 11, 12, 0, 0, 0, 0, 0, 0, 734, ! 735, 736, 737, 738, 739, 740, 14, 194, 15, 16, ! 0, 195, 196, 197, 198, 199, 0, 0, 0, 200, ! 0, 0, 0, 0, 0, 201, 0, 0, 202, 0, ! 17, 0, 0, 203, 204, 205, 0, 0, 0, 206, ! 207, 0, 0, 0, 208, 209, 0, 0, 0, 210, ! 0, 211, 741, 0, 0, 0, 212, 742, 0, 0, ! 743, 744, 0, 0, 745, 213, 0, 746, 0, 214, ! 215, 0, 747, 732, 85, 0, 0, 0, 0, 191, ! 192, 0, 193, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 734, 735, 736, 737, 738, 739, 740, 0, ! 194, 0, 16, 0, 195, 196, 197, 198, 199, 0, ! 0, 0, 200, 0, 0, 0, 0, 0, 201, 0, ! 0, 202, 0, 0, 0, 0, 203, 204, 205, 0, ! 0, 0, 206, 207, 0, 0, 0, 208, 209, 0, ! 0, 0, 210, 0, 211, 86, 0, 0, 0, 212, ! 87, 0, 0, 743, 744, 0, 0, 745, 213, 0, ! 746, 190, 214, 215, 0, 747, 0, 191, 192, 0, ! 193, 0, 0, 5, 6, 7, 8, 9, 0, 0, ! 640, 0, 10, 11, 12, 0, 0, 0, 194, 0, ! 16, 0, 195, 196, 197, 198, 199, 0, 14, 0, ! 200, 0, 0, 0, 0, 0, 201, 0, 0, 202, ! 0, 0, 0, 0, 203, 204, 205, 0, 0, 0, ! 206, 207, 17, 0, 0, 208, 209, 0, 0, 0, ! 210, 0, 211, 0, 0, 0, 0, 212, 0, 0, ! 0, 0, 0, 0, 23, 0, 213, 0, 0, 25, ! 214, 215, 0, 582, 290, 291, 0, 0, 292, 293, ! 0, 0, 0, 294, 295, 296, 297, 298, 299, 300, ! 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, ! 311, 312, 190, 5, 6, 7, 8, 9, 191, 192, ! 0, 193, 10, 11, 12, 0, 0, 313, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 14, 194, ! 15, 16, 0, 195, 196, 197, 198, 199, 0, 0, ! 0, 200, 0, 0, 0, 0, 315, 201, 0, 0, ! 202, 316, 17, 0, 0, 203, 204, 205, 0, 0, ! 0, 206, 207, 0, 0, 452, 208, 209, 0, 0, ! 0, 210, 0, 211, 23, 0, 0, 0, 212, 25, ! 0, 0, 0, 0, 0, 0, 0, 213, 0, 190, ! 5, 214, 215, 8, 9, 191, 192, 0, 193, 10, ! 11, 12, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 14, 194, 15, 16, 0, ! 195, 196, 197, 198, 199, 0, 0, 0, 200, 0, ! 0, 0, 0, 0, 201, 0, 0, 202, 0, 17, ! 0, 0, 203, 204, 205, 0, 0, 0, 206, 207, ! 0, 0, 0, 208, 209, 0, 0, 0, 210, 0, ! 211, 23, 190, 334, 0, 212, 25, 0, 191, 192, ! 0, 193, 0, 0, 213, 0, 0, 0, 214, 215, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 194, ! 0, 16, 0, 195, 196, 197, 198, 199, 0, 0, ! 0, 200, 0, 0, 0, 0, 0, 201, 0, 0, ! 202, 0, 0, 0, 0, 203, 204, 205, 0, 0, ! 0, 206, 207, 0, 0, 0, 208, 209, 0, 0, ! 190, 210, 0, 211, 335, 0, 191, 192, 212, 193, ! 0, 0, 0, 0, 0, 0, 0, 213, 0, 0, ! 0, 214, 215, 0, 0, 0, 0, 194, 0, 16, ! 0, 195, 196, 197, 198, 199, 0, 0, 0, 200, ! 0, 0, 0, 0, 0, 201, 0, 0, 202, 0, ! 0, 0, 0, 203, 204, 205, 0, 0, 0, 206, ! 207, 0, 0, 0, 208, 209, 190, 0, 0, 210, ! 0, 211, 191, 192, 0, 193, 212, 0, 0, 0, ! 0, 0, 0, 0, 0, 213, 0, 854, 0, 214, ! 215, 0, 0, 194, 0, 16, 0, 195, 196, 197, ! 198, 199, 0, 0, 0, 200, 0, 0, 0, 0, ! 0, 201, 0, 0, 202, 0, 0, 0, 0, 203, ! 204, 205, 0, 0, 0, 206, 207, 0, 0, 0, ! 208, 209, 190, 0, 0, 210, 0, 211, 191, 192, ! 0, 193, 212, 0, 0, 0, 0, 0, 0, 0, ! 0, 213, 0, 860, 0, 214, 215, 0, 0, 194, ! 0, 16, 0, 195, 196, 197, 198, 199, 0, 0, ! 0, 200, 0, 0, 0, 0, 0, 201, 0, 0, ! 202, 0, 0, 0, 0, 203, 204, 205, 0, 0, ! 0, 206, 207, 0, 0, 0, 208, 209, 190, 0, ! 0, 210, 0, 211, 191, 192, 0, 193, 212, 0, ! 0, 0, 0, 0, 0, 0, 0, 213, 0, 0, ! 0, 214, 215, 0, 0, 194, 0, 16, 0, 195, ! 196, 197, 198, 199, 0, 0, 0, 200, 0, 0, ! 0, 0, 0, 201, 0, 0, 202, 0, 0, 0, ! 0, 203, 204, 205, 0, 0, 0, 206, 207, 0, ! 0, 0, 344, 209, 190, 0, 0, 210, 0, 211, ! 191, 192, 0, 193, 212, 0, 0, 0, 0, 0, ! 0, 0, 0, 213, 0, 0, 0, 214, 215, 0, ! 0, 194, 0, 16, 0, 195, 196, 197, 198, 199, ! 0, 0, 0, 200, 0, 0, 0, 0, 0, 201, ! 0, 0, 202, 0, 0, 0, 0, 203, 204, 205, ! 0, 0, 0, 206, 207, 0, 0, 0, 346, 209, ! 622, 0, 0, 210, 0, 211, 191, 192, 0, 193, ! 212, 0, 0, 0, 0, 0, 0, 0, 0, 213, ! 0, 0, 0, 214, 215, 0, 0, 194, 0, 16, ! 0, 195, 196, 197, 198, 199, 0, 0, 0, 200, ! 0, 0, 0, 0, 772, 201, 0, 5, 202, 0, ! 8, 9, 0, 203, 204, 205, 10, 11, 12, 206, ! 207, 0, 0, 0, 208, 209, 0, 0, 0, 210, ! 0, 211, 14, 0, 15, 0, 212, 0, 0, 0, ! 772, 0, 0, 5, 0, 213, 8, 9, 0, 214, ! 215, 0, 10, 11, 12, 0, 17, 0, 0, 426, ! 0, 0, 5, 0, 0, 8, 9, 0, 14, 0, ! 15, 10, 11, 12, 0, 0, 0, 0, 23, -617, ! -617, -617, 0, 25, 0, 0, 0, 14, 0, 15, ! 16, 0, 17, 773, -617, 4, 0, -125, 5, 6, ! 7, 8, 9, 0, 0, 0, 0, 10, 11, 12, ! 0, 17, 0, 0, 23, -616, -616, -616, 0, 25, ! 0, 0, 13, 14, 0, 15, 16, 0, 0, 773, ! -616, 0, 0, 23, 0, 0, 0, 0, 25, 0, ! 0, 0, 0, 0, 0, 0, 0, 17, 427, -385, ! 18, 19, -125, 0, 0, 0, 0, 0, 0, 0, ! 0, -125, 0, 20, 21, 22, 0, 0, 0, 23, ! 0, 0, 0, 24, 25, 26, 27, 0, 0, 0, ! 0, 0, 0, 638, 28, 639, 5, 6, 7, 8, ! 9, 0, 0, 640, 0, 10, 11, 12, 0, 0, ! 638, 0, 0, 5, 6, 7, 8, 9, 0, 0, ! 640, 14, 10, 11, 12, 5, 6, 7, 8, 142, ! 0, 0, 0, 0, 10, 11, 12, 0, 14, 0, ! 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, ! 14, 0, 15, 0, 0, 5, 6, 7, 8, 151, ! 0, 0, 17, 0, 10, 11, 12, 23, 0, 0, ! 0, 0, 25, 0, 17, 0, 0, 0, 0, 0, ! 14, -562, 15, 0, 23, 0, 0, 0, 0, 25, ! 0, 0, 0, 0, 0, 0, 23, 0, -562, 0, ! 0, 25, 0, 0, 17, 5, 6, 7, 8, 120, ! 0, -258, 0, 0, 10, 11, 12, 0, 5, 6, ! 7, 8, 147, 0, 0, 0, 23, 10, 11, 12, ! 14, 25, 0, 0, 0, 5, 6, 7, 8, 156, ! 0, -260, 0, 14, 10, 11, 12, 0, 0, 0, ! 0, 0, 0, 0, 17, 0, 0, 0, 0, 0, ! 14, 0, 0, 0, 0, 0, 0, 17, 5, 6, ! 7, 8, 106, 0, 0, 0, 23, 10, 11, 12, ! 0, 25, 0, 0, 17, 0, 1015, 0, 0, 23, ! 0, -253, 0, 14, 25, 15, 0, 0, 0, 0, ! 0, 0, 0, 0, -259, 0, 23, 0, 0, 0, ! 0, 25, 0, 0, 0, 0, 0, 17, 348, 349, ! 350, -261, 351, 352, 353, 354, 355, 356, 357, 358, ! 359, 360, 361, 362, 363, 364, 290, 291, 0, 23, ! 292, 293, 0, 0, 25, 294, 295, 296, 297, 298, ! 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, ! 309, 310, 311, 312, 0, 0, 0, 0, 0, 0, ! 0, 1016, 290, 291, 0, 0, 292, 293, 0, 313, ! 0, 294, 295, 296, 297, 298, 299, 300, 301, 302, ! 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, ! 314, 0, 0, 0, 0, 0, 0, 0, 315, 0, ! 0, 0, 0, 316, 0, 468, 290, 291, 0, 0, ! 292, 293, 0, 0, 0, 294, 295, 296, 297, 298, ! 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, ! 309, 310, 311, 312, 315, 0, 0, 0, 0, 316, ! 0, 5, 6, 7, 8, 142, 0, 0, 0, 313, ! 10, 11, 12, 0, 5, 6, 7, 8, 115, 0, ! 0, 0, 0, 10, 11, 12, 14, 0, 15, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 315, 14, ! 0, 15, 0, 316, 5, 6, 7, 8, 151, 0, ! 17, 0, 0, 10, 11, 12, 5, 6, 7, 8, ! 9, 0, 0, 17, 0, 10, 11, 12, 0, 14, ! 0, 15, 23, 0, 0, 0, 0, 25, 0, 0, ! 0, 14, 0, 15, 0, 23, 0, 0, 0, 0, ! 25, 0, 0, 17, 0, 0, 0, 5, 6, 7, ! 8, 9, 0, 0, 0, 17, 10, 11, 12, 0, ! 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, ! 25, 0, 14, 0, 0, 0, 0, 23, 0, 0, ! 0, 0, 25, 5, 6, 7, 8, 111, 0, 0, ! 0, 0, 10, 11, 12, 0, 17, 0, 0, 0, ! 5, 6, 7, 8, 147, 0, 0, 0, 14, 10, ! 11, 12, 0, 0, 0, 0, 0, 0, 23, 0, ! 0, 0, 0, 25, 0, 14, 5, 6, 7, 8, ! 120, 0, 17, 0, 0, 10, 11, 12, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, ! 0, 14, 0, 0, 23, 0, 0, 0, 0, 25, ! 0, 0, 0, 5, 6, 7, 8, 156, 0, 0, ! 0, 23, 10, 11, 12, 17, 25, 0, 0, 0, ! 5, 0, 0, 8, 115, 0, 0, 0, 14, 10, ! 11, 12, 0, 0, 0, 0, 0, 23, 0, 0, ! 5, 0, 25, 8, 9, 14, 0, 15, 0, 10, ! 11, 12, 17, 5, 0, 0, 8, 111, 0, 0, ! 0, 0, 10, 11, 12, 14, 0, 15, 0, 17, ! 0, 0, 5, 0, 23, 8, 120, 0, 14, 25, ! 0, 10, 11, 12, 0, 0, 0, 0, 0, 17, ! 0, 23, 0, 0, 0, 0, 25, 14, 0, 0, ! 0, 0, 17, 0, 0, 0, 0, 0, 0, 0, ! 0, 23, 0, 0, 0, 0, 25, 0, 0, 0, ! 0, 17, 0, 0, 23, 0, 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 23, 0, 348, 349, 350, 25, 351, ! 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 348, 349, 350, 0, 351, 352, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 348, 349, 350, 652, 351, ! 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 348, 349, 350, 797, 351, 352, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 348, 349, 350, 798, 351, ! 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 348, 349, 350, 1093, 351, 352, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 348, 349, 350, 579, 351, 352, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 348, 349, 350, 580, 351, 352, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 15, 0, 833, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 348, 349, 350, 1014, 351, 352, ! 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, ! 363, 364, 348, 349, 350, 1067, 351, 352, 353, 354, ! 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, ! 348, 349, 350, 0, 351, 352, 353, 354, 355, 356, ! 357, 358, 359, 360, 361, 362, 363, 364 }; static const short yycheck[] = { ! 17, 82, 178, 20, 21, 2, 3, 24, 277, 26, ! 27, 2, 3, 2, 3, 2, 3, 179, 99, 23, ! 419, 25, 25, 573, 392, 616, 573, 392, 410, 761, ! 2, 3, 785, 627, 415, 267, 616, 846, 516, 573, ! 2, 3, 2, 3, 59, 62, 63, 64, 573, 632, ! 405, 655, 284, 34, 319, 407, 504, 184, 616, 790, ! 791, 790, 195, 196, 79, 80, 81, 417, 705, 1, ! 67, 369, 205, 423, 1, 46, 67, 1, 67, 1, ! 67, 98, 410, 216, 1, 1, 410, 410, 46, 1, ! 94, 94, 10, 226, 109, 67, 1, 573, 573, 46, ! 918, 31, 53, 118, 101, 67, 8, 67, 3, 89, ! 101, 24, 127, 26, 94, 1105, 46, 267, 89, 0, ! 938, 136, 272, 3, 4, 966, 90, 91, 209, 31, ! 145, 89, 2, 3, 943, 504, 3, 4, 0, 154, ! 616, 616, 89, 94, 724, 67, 1136, 529, 163, 504, ! 68, 90, 504, 703, 630, 630, 703, 172, 319, 91, ! 31, 609, 610, 611, 612, 463, 724, 91, 95, 703, ! 761, 808, 67, 810, 91, 91, 337, 338, 703, 39, ! 40, 41, 42, 95, 201, 90, 28, 47, 48, 49, ! 50, 573, 67, 31, 576, 75, 1037, 67, 179, 554, ! 80, 529, 557, 3, 4, 529, 529, 439, 75, 1018, ! 67, 8, 510, 80, 231, 95, 233, 234, 235, 799, ! 237, 573, 3, 4, 208, 67, 68, 703, 703, 67, ! 68, 101, 236, 236, 31, 2, 3, 3, 46, 53, ! 609, 610, 611, 612, 794, 573, 261, 794, 576, 573, ! 573, 401, 576, 576, 609, 610, 611, 612, 58, 67, ! 794, 613, 866, 46, 632, 633, 1107, 67, 633, 794, ! 267, 288, 1003, 1004, 1003, 272, 267, 1118, 259, 260, ! 80, 272, 862, 67, 67, 761, 761, 284, 586, 370, ! 53, 885, 58, 284, 75, 284, 313, 284, 67, 80, ! 67, 67, 1034, 1056, 44, 466, 3, 4, 1149, 46, ! 471, 73, 284, 440, 95, 442, 53, 31, 794, 794, ! 95, 703, 284, 340, 284, 8, 66, 90, 68, 462, ! 314, 94, 46, 89, 101, 46, 89, 5, 6, 7, ! 8, 94, 53, 327, 89, 13, 14, 15, 31, 94, ! 367, 368, 704, 67, 68, 339, 5, 6, 7, 8, ! 344, 95, 346, 31, 13, 14, 15, 517, 3, 4, ! 1, 89, 3, 4, 95, 703, 94, 90, 75, 703, ! 703, 94, 31, 80, 560, 67, 56, 57, 248, 249, ! 250, 251, 661, 748, 67, 627, 976, 267, 95, 532, ! 481, 71, 272, 785, 401, 883, 884, 990, 3, 4, ! 401, 67, 794, 410, 284, 396, 999, 682, 3, 410, ! 89, 410, 90, 58, 67, 94, 5, 6, 7, 8, ! 447, 412, 413, 814, 13, 14, 15, 818, 410, 456, ! 75, 90, 439, 1034, 75, 80, 3, 4, 439, 80, ! 439, 46, 439, 28, 67, 68, 31, 785, 67, 68, ! 67, 785, 785, 58, 448, 763, 794, 439, 67, 44, ! 794, 794, 67, 58, 6, 94, 8, 439, 58, 439, ! 89, 89, 67, 68, 3, 80, 503, 67, 68, 46, ! 1070, 89, 509, 1043, 90, 657, 1043, 90, 94, 31, ! 267, 58, 67, 68, 67, 272, 8, 511, 511, 1043, ! 67, 90, 67, 68, 8, 90, 67, 284, 1043, 94, ! 517, 682, 3, 80, 89, 102, 517, 91, 3, 4, ! 91, 401, 529, 46, 89, 616, 1116, 1117, 529, 58, ! 529, 1121, 90, 3, 4, 89, 94, 89, 67, 68, ! 89, 568, 5, 6, 7, 8, 90, 529, 1034, 1034, ! 13, 14, 15, 67, 68, 46, 90, 1043, 1043, 439, ! 94, 89, 432, 433, 434, 435, 573, 58, 31, 576, ! 561, 46, 573, 33, 573, 576, 67, 576, 76, 77, ! 78, 89, 67, 577, 993, 579, 995, 581, 58, 616, ! 75, 573, 89, 91, 576, 80, 67, 67, 68, 56, ! 57, 573, 89, 573, 51, 52, 971, 90, 10, 616, ! 80, 94, 990, 991, 71, 616, 991, 616, 761, 616, ! 627, 999, 1000, 630, 401, 1000, 627, 90, 627, 630, ! 95, 630, 6, 724, 616, 56, 57, 517, 56, 57, ! 58, 59, 60, 885, 616, 627, 616, 738, 630, 90, ! 71, 1043, 743, 680, 44, 627, 1047, 627, 630, 90, ! 630, 90, 439, 94, 1056, 94, 657, 90, 1028, 44, ! 1030, 94, 542, 543, 90, 1040, 546, 547, 94, 266, ! 866, 960, 269, 90, 90, 90, 273, 94, 94, 94, ! 717, 609, 610, 573, 612, 867, 703, 724, 90, 91, ! 886, 887, 703, 75, 703, 1043, 1071, 1072, 90, 1043, ! 1043, 94, 739, 3, 4, 11, 2, 3, 1056, 891, ! 89, 703, 1056, 1056, 10, 11, 12, 741, 742, 742, ! 90, 703, 94, 703, 46, 895, 616, 96, 924, 16, ! 517, 18, 19, 20, 21, 905, 837, 627, 46, 35, ! 630, 37, 89, 39, 761, 41, 89, 43, 89, 45, ! 761, 47, 761, 49, 761, 856, 5, 6, 7, 8, ! 67, 68, 863, 89, 13, 14, 15, 67, 785, 761, ! 89, 67, 67, 68, 785, 75, 785, 794, 779, 761, ! 80, 761, 31, 794, 89, 794, 573, 67, 68, 790, ! 791, 220, 221, 785, 831, 278, 58, 59, 60, 836, ! 412, 413, 794, 99, 46, 101, 96, 687, 688, 689, ! 690, 89, 794, 703, 794, 695, 696, 697, 698, 89, ! 28, 418, 419, 31, 90, 826, 7, 8, 425, 616, ! 990, 991, 13, 14, 15, 90, 44, 44, 765, 766, ! 627, 90, 89, 630, 441, 91, 91, 5, 6, 7, ! 8, 91, 953, 89, 95, 13, 14, 15, 46, 67, ! 68, 1, 91, 89, 89, 89, 867, 968, 885, 28, ! 91, 761, 94, 974, 885, 94, 885, 90, 895, 90, ! 94, 46, 90, 89, 895, 89, 94, 89, 905, 46, ! 891, 1087, 46, 885, 905, 90, 90, 4, 5, 6, ! 7, 8, 8, 885, 794, 885, 13, 14, 15, 392, ! 90, 67, 208, 90, 62, 63, 703, 65, 66, 67, ! 68, 518, 29, 91, 31, 85, 927, 90, 89, 3, ! 1031, 1032, 90, 1034, 5, 6, 7, 8, 46, 91, ! 95, 94, 13, 14, 15, 90, 53, 90, 244, 67, ! 246, 90, 248, 46, 250, 67, 17, 86, 254, 85, ! 256, 46, 90, 998, 89, 67, 67, 67, 75, 67, ! 94, 267, 91, 80, 761, 91, 272, 18, 89, 436, ! 437, 90, 96, 90, 89, 7, 8, 90, 284, 990, ! 991, 13, 14, 15, 89, 885, 90, 89, 999, 1000, ! 89, 67, 1003, 1004, 1105, 895, 94, 794, 90, 31, ! 1111, 90, 1013, 89, 10, 905, 67, 1034, 314, 90, ! 10, 90, 89, 1034, 89, 1034, 1043, 1034, 90, 10, ! 0, 327, 1043, 0, 1043, 1136, 1137, 630, 635, 1056, ! 523, 510, 1034, 339, 408, 1056, 396, 1056, 344, 410, ! 346, 1043, 1034, 410, 1034, 553, 509, 809, 1095, 7, ! 8, 1043, 941, 1043, 1056, 13, 14, 15, 551, 552, ! 667, 845, 990, 439, 671, 924, 570, 674, 675, 927, ! 447, 678, 568, 31, 1038, 5, 6, 7, 8, 755, ! 979, 548, 549, 13, 14, 15, 505, 1040, 885, 3, ! 4, 5, 6, 7, 8, 401, 635, 1113, 895, 7, ! 8, 5, 6, 7, 8, 13, 14, 15, 905, 13, ! 14, 15, 51, 52, 53, 54, 55, 56, 57, 58, ! 59, 60, 428, 576, 430, 1043, 432, 31, 434, 1115, ! 576, 91, 642, 439, 1034, 771, 1087, 512, 887, 632, ! 633, 572, 448, 1043, 35, 36, 37, 38, 39, 40, ! 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, ! 90, 75, 703, 630, 777, 1013, 80, 3, 4, 682, ! 586, 7, 8, 572, 641, 642, 12, 13, 14, 15, ! 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, ! 26, 27, 28, 29, 30, 466, 471, -1, -1, -1, ! 1, -1, -1, 4, 811, -1, 7, 8, 815, -1, ! 46, 517, 13, 14, 15, 822, 35, 36, 37, 38, ! -1, -1, -1, -1, 43, 44, 45, 46, 29, -1, ! 31, 32, 699, -1, 540, -1, 542, 1034, 544, 75, ! 546, -1, -1, -1, 80, -1, 1043, 35, 36, 37, ! 38, -1, 53, -1, -1, 43, 44, 45, 46, -1, ! 5, 6, 7, 8, -1, -1, -1, 573, 13, 14, ! 15, 577, -1, 579, 75, 581, -1, -1, -1, 80, ! -1, -1, -1, -1, 751, 752, 31, -1, -1, 896, ! -1, 898, -1, -1, 901, -1, -1, 790, 791, 906, ! 907, -1, 909, -1, -1, -1, -1, 774, 775, -1, ! 616, -1, -1, 780, 781, -1, 923, -1, -1, 926, ! -1, 627, 929, 930, 630, -1, 5, 6, 7, 8, ! -1, 325, 326, 826, 13, 14, 15, -1, -1, -1, ! 231, 53, 54, 55, 56, 57, 58, 59, 60, 343, ! 957, -1, 31, -1, 348, 349, -1, -1, -1, 353, ! 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, -1, -1, -1, -1, -1, -1, 683, -1, 685, ! -1, 687, -1, 689, -1, 691, 993, 693, 995, 695, ! -1, 697, 4, 5, 6, 7, 8, 703, -1, 11, ! -1, 13, 14, 15, -1, -1, 899, 900, 1, 403, ! -1, 4, 5, 6, 7, 8, -1, 29, -1, 31, ! 13, 14, 15, -1, -1, 244, 245, 246, 247, 54, 55, 56, 57, 58, 59, 60, 29, -1, 31, -1, ! -1, 53, -1, -1, 911, 912, -1, -1, -1, -1, ! 1057, 1058, -1, 1060, -1, 761, 244, 245, 246, 247, ! 53, -1, -1, 75, 5, 6, 7, 8, 80, -1, ! -1, -1, 13, 14, 15, 39, 40, 41, 42, -1, ! -1, -1, 75, 47, 48, 49, 50, 80, 794, 483, ! 484, 5, 6, 7, 8, -1, -1, 990, 991, 13, ! 14, 15, 95, -1, -1, -1, 999, 1000, -1, -1, ! 1003, 1004, -1, -1, 4, 5, 6, 7, 8, -1, ! 1013, -1, -1, 13, 14, 15, 52, 53, 54, 55, ! 56, 57, 58, 59, 60, -1, 530, 531, -1, 29, ! 1, 31, -1, 4, 5, 6, 7, 8, -1, -1, ! -1, -1, 13, 14, 15, -1, -1, -1, 1051, 1052, ! 1053, -1, -1, 53, -1, -1, -1, 28, 29, -1, ! 31, -1, -1, 567, -1, -1, -1, -1, -1, 885, ! -1, -1, -1, 44, -1, 75, 580, -1, -1, 895, ! 80, -1, 53, -1, 5, 6, 7, 8, 904, 905, ! 90, -1, 13, 14, 15, 599, 67, 68, -1, 428, ! 429, 430, 431, -1, 75, -1, -1, -1, 509, 80, ! 31, -1, 5, 6, 7, 8, -1, -1, -1, 90, ! 13, 14, 15, 94, 95, -1, 5, 6, 7, 8, ! 428, 429, 430, 431, 13, 14, 15, -1, -1, 540, ! 541, 542, 543, 544, 545, 546, 547, -1, 4, 5, ! 6, 7, 8, -1, 658, -1, -1, 13, 14, 15, ! -1, -1, 666, -1, -1, -1, 670, -1, -1, -1, ! -1, -1, -1, 29, 248, 249, 250, 251, -1, 1, ! -1, -1, 4, 5, 6, 7, 8, -1, -1, -1, ! -1, 13, 14, 15, -1, -1, -1, 53, -1, -1, ! -1, -1, -1, -1, -1, -1, 28, 29, 712, 31, ! -1, 540, 541, -1, -1, 544, 545, -1, 1034, 75, ! -1, -1, 44, -1, 80, -1, -1, 1043, -1, -1, ! 734, 53, -1, -1, 90, -1, -1, -1, -1, -1, ! -1, -1, 540, 541, -1, -1, 544, 545, -1, -1, ! -1, -1, -1, 75, -1, -1, -1, -1, 80, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, 90, -1, ! -1, -1, 94, 95, -1, -1, -1, -1, -1, -1, ! -1, -1, 683, 684, 685, 686, 687, 688, 689, 690, ! 691, 692, 693, 694, 695, 696, 697, 698, -1, -1, ! -1, -1, -1, -1, -1, 809, -1, -1, 812, -1, ! -1, -1, 816, -1, -1, -1, -1, -1, 1, -1, ! -1, 4, 5, 6, 7, 8, -1, -1, -1, 833, ! 13, 14, 15, 837, -1, -1, -1, -1, -1, -1, ! -1, -1, 846, 847, -1, -1, 29, -1, 31, -1, ! -1, -1, -1, -1, 683, 684, 685, 686, 432, 433, ! 434, 435, 691, 692, 693, 694, -1, -1, -1, -1, ! 53, -1, -1, -1, -1, -1, -1, 1, -1, -1, ! 4, 5, 6, 7, 8, 683, 684, 685, 686, 13, ! 14, 15, 75, 691, 692, 693, 694, 80, -1, -1, ! -1, -1, -1, 1, -1, 29, 4, 5, 6, 7, ! 8, -1, 95, -1, 918, 13, 14, 15, 50, 51, ! 52, 53, 54, 55, 56, 57, 58, 59, 60, 53, ! -1, 29, 4, -1, 938, 7, 8, 941, -1, 943, ! 944, 13, 14, 15, 948, -1, -1, -1, -1, -1, ! -1, 75, -1, -1, -1, 53, 80, 29, -1, 31, ! -1, -1, -1, -1, -1, -1, -1, -1, 542, 543, ! -1, 95, 546, 547, -1, -1, -1, 75, -1, -1, ! 984, 53, 80, 48, 49, 50, 51, 52, 53, 54, ! 55, 56, 57, 58, 59, 60, -1, 95, 1, -1, ! 3, 4, -1, 75, -1, -1, 9, 10, 80, 12, ! -1, 1015, -1, 16, 1018, 18, 19, 20, 21, 22, ! 23, 24, 25, 26, 27, 28, -1, 30, -1, 32, ! -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, ! -1, -1, 1046, -1, -1, 48, -1, -1, 51, -1, ! -1, -1, -1, 56, 57, 58, -1, -1, -1, 62, ! 63, 11, -1, -1, 67, 68, -1, -1, -1, 72, ! -1, 74, 75, -1, -1, -1, 79, 80, -1, -1, ! 83, 84, -1, -1, 87, 88, -1, 90, -1, 92, ! 93, -1, 95, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, 687, 688, 689, 690, -1, -1, -1, ! -1, 695, 696, 697, 698, 1, -1, 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, 13, 14, 15, 16, -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, 53, -1, -1, ! 56, 57, 58, -1, -1, -1, 62, 63, -1, -1, ! -1, 67, 68, -1, -1, -1, 72, -1, 74, 75, ! -1, -1, -1, 79, 80, -1, -1, 83, 84, -1, ! -1, 87, 88, -1, 90, 91, 92, 93, 1, 95, ! 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, ! 13, 14, 15, 16, -1, 18, 19, 20, 21, 22, ! 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, ! -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, ! -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, ! 53, -1, -1, 56, 57, 58, -1, -1, -1, 62, ! 63, -1, -1, -1, 67, 68, -1, -1, -1, 72, ! -1, 74, 75, -1, -1, -1, 79, 80, -1, -1, ! 83, 84, -1, -1, 87, 88, -1, 90, -1, 92, ! 93, 1, 95, 3, 4, -1, -1, -1, -1, 9, ! 10, -1, 12, -1, -1, -1, 16, -1, 18, 19, ! 20, 21, 22, 23, 24, 25, 26, 27, 28, -1, ! 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, ! -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, ! -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, ! -1, -1, 62, 63, -1, -1, -1, 67, 68, -1, ! -1, -1, 72, -1, 74, 75, -1, -1, -1, 79, ! 80, -1, -1, 83, 84, -1, -1, 87, 88, -1, ! 90, -1, 92, 93, 1, 95, 3, 4, -1, -1, ! 7, 8, 9, 10, -1, 12, 13, 14, 15, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, 29, 30, 31, 32, -1, 34, 35, 36, ! 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, ! -1, 48, -1, -1, 51, -1, 53, -1, -1, 56, ! 57, 58, -1, -1, -1, 62, 63, -1, -1, -1, ! 67, 68, -1, -1, -1, 72, -1, 74, 75, -1, ! -1, -1, 79, 80, -1, -1, -1, -1, -1, -1, ! -1, 88, -1, -1, -1, 92, 93, 1, 95, 3, ! 4, -1, -1, -1, -1, 9, 10, 45, 12, 47, ! 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, -1, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, ! -1, -1, 56, 57, 58, -1, -1, -1, 62, 63, ! -1, -1, 66, 67, 68, -1, -1, -1, 72, -1, ! 74, 75, -1, -1, -1, 79, 80, -1, -1, -1, ! -1, -1, -1, -1, 88, -1, -1, 91, 92, 93, 1, 95, 3, 4, -1, -1, -1, -1, 9, 10, ! -1, 12, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! -1, 62, 63, -1, -1, 66, 67, 68, -1, -1, ! -1, 72, -1, 74, 75, 1, -1, 3, 79, 80, ! -1, -1, -1, 9, 10, -1, 12, 88, -1, -1, ! 91, 92, 93, -1, 95, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, 30, -1, 32, -1, 34, 35, ! 36, 37, 38, -1, -1, -1, 42, -1, 44, -1, ! -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, ! 56, 57, 58, -1, -1, -1, 62, 63, -1, -1, ! 66, 67, 68, 1, -1, 3, 72, -1, 74, -1, ! -1, 9, 10, 79, 12, -1, -1, -1, -1, -1, ! -1, -1, 88, -1, -1, -1, 92, 93, -1, 95, ! -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, ! 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, ! 58, -1, -1, -1, 62, 63, -1, -1, -1, 67, ! 68, 1, -1, 3, 72, -1, 74, -1, -1, 9, ! 10, 79, 12, -1, -1, -1, -1, -1, -1, -1, ! 88, -1, -1, -1, 92, 93, -1, 95, -1, -1, ! 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, ! -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, ! -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, ! -1, -1, 62, 63, -1, -1, -1, 67, 68, -1, ! -1, -1, 72, -1, 74, -1, -1, 1, -1, 79, ! 4, 5, 6, 7, 8, -1, -1, -1, 88, 13, ! 14, 15, 92, 93, -1, 95, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, -1, 31, -1, -1, ! -1, -1, 1, -1, 3, 4, 5, 6, 7, 8, ! 44, -1, -1, -1, 13, 14, 15, -1, 3, 53, ! -1, -1, -1, -1, 9, 10, -1, 12, -1, -1, ! 29, -1, 31, 67, 68, -1, -1, -1, -1, -1, ! -1, 75, -1, -1, -1, 30, 80, 32, -1, 34, ! 35, 36, 37, 38, 53, -1, 90, 42, -1, 58, ! 94, 95, -1, 48, -1, -1, 51, -1, 67, -1, ! -1, 56, 57, 58, -1, -1, 75, 62, 63, -1, ! -1, 80, 67, 68, -1, -1, 3, 72, -1, 74, ! -1, 90, 9, 10, 79, 12, -1, -1, -1, -1, ! -1, -1, -1, 88, -1, -1, -1, 92, 93, -1, ! -1, 96, -1, 30, -1, 32, -1, 34, 35, 36, ! 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, ! 57, 58, -1, -1, -1, 62, 63, -1, -1, -1, ! 67, 68, -1, -1, -1, 72, -1, 74, -1, -1, ! -1, -1, 79, -1, -1, -1, -1, -1, -1, -1, ! -1, 88, -1, -1, -1, 92, 93, -1, -1, 96, ! 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, ! 13, 14, 15, -1, -1, -1, -1, -1, -1, 22, ! 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, ! -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, ! -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, ! 53, -1, -1, 56, 57, 58, -1, -1, -1, 62, ! 63, -1, -1, -1, 67, 68, -1, -1, -1, 72, ! -1, 74, 75, -1, -1, -1, 79, 80, -1, -1, ! 83, 84, -1, -1, 87, 88, -1, 90, -1, 92, ! 93, -1, 95, 3, 4, -1, -1, -1, -1, 9, ! 10, -1, 12, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, 22, 23, 24, 25, 26, 27, 28, -1, ! 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, ! -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, ! -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, ! -1, -1, 62, 63, -1, -1, -1, 67, 68, -1, ! -1, -1, 72, -1, 74, 75, -1, -1, -1, 79, ! 80, -1, -1, 83, 84, -1, -1, 87, 88, -1, ! 90, 3, 92, 93, -1, 95, -1, 9, 10, -1, ! 12, -1, -1, 4, 5, 6, 7, 8, -1, -1, ! 11, -1, 13, 14, 15, -1, -1, -1, 30, -1, ! 32, -1, 34, 35, 36, 37, 38, -1, 29, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, ! -1, -1, -1, -1, 56, 57, 58, -1, -1, -1, ! 62, 63, 53, -1, -1, 67, 68, -1, -1, -1, ! 72, -1, 74, -1, -1, -1, -1, 79, -1, -1, ! -1, -1, -1, -1, 75, -1, 88, -1, -1, 80, ! 92, 93, -1, 95, 3, 4, -1, -1, 7, 8, ! -1, -1, -1, 12, 13, 14, 15, 16, 17, 18, ! 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, ! 29, 30, 3, 4, 5, 6, 7, 8, 9, 10, ! -1, 12, 13, 14, 15, -1, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, -1, -1, ! -1, 42, -1, -1, -1, -1, 75, 48, -1, -1, ! 51, 80, 53, -1, -1, 56, 57, 58, -1, -1, ! -1, 62, 63, -1, -1, 94, 67, 68, -1, -1, -1, 72, -1, 74, 75, -1, -1, -1, 79, 80, -1, -1, -1, -1, -1, -1, -1, 88, -1, 3, 4, 92, 93, 7, 8, 9, 10, -1, 12, 13, --- 1015,2393 ---- }; #endif ! # ifdef YYPRINT ! /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to ! token YYLEX-NUM. */ ! static const unsigned short 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, 61, 298, 63, 58, 299, 300, 124, ! 94, 38, 301, 302, 303, 304, 43, 45, 42, 47, ! 37, 305, 306, 307, 308, 46, 40, 91, 309, 310, ! 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, ! 321, 322, 323, 324, 325, 326, 327, 328, 329, 41, ! 59, 125, 126, 33, 44, 123, 93 }; + # endif ! /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ ! static const unsigned short yyr1[] = { ! 0, 97, 98, 98, 100, 99, 101, 99, 102, 103, ! 103, 103, 103, 103, 104, 104, 104, 104, 104, 104, ! 104, 106, 107, 105, 105, 108, 109, 105, 105, 110, ! 111, 105, 105, 112, 112, 112, 112, 113, 113, 113, ! 113, 113, 113, 113, 114, 115, 115, 116, 116, 117, ! 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, ! 118, 119, 120, 121, 121, 122, 122, 122, 122, 122, ! 122, 122, 122, 122, 122, 122, 122, 122, 123, 122, ! 124, 122, 125, 126, 122, 127, 122, 122, 122, 128, ! 128, 128, 128, 129, 128, 128, 128, 128, 128, 128, ! 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, ! 128, 128, 128, 130, 131, 131, 132, 133, 133, 133, ! 133, 134, 134, 134, 134, 135, 136, 137, 138, 138, ! 138, 138, 138, 138, 139, 139, 139, 140, 141, 141, ! 142, 142, 143, 143, 143, 143, 143, 143, 143, 144, ! 144, 144, 144, 144, 144, 145, 145, 145, 145, 145, ! 145, 146, 146, 146, 146, 146, 147, 147, 147, 147, ! 147, 147, 147, 148, 149, 149, 149, 149, 149, 149, ! 150, 151, 151, 151, 151, 151, 151, 151, 151, 151, ! 151, 152, 152, 152, 152, 152, 153, 153, 153, 153, ! 153, 153, 153, 153, 153, 153, 154, 154, 154, 154, ! 154, 155, 155, 155, 155, 155, 155, 155, 155, 156, ! 156, 156, 156, 156, 156, 156, 156, 157, 157, 157, ! 157, 158, 158, 158, 158, 159, 159, 159, 159, 160, ! 160, 160, 160, 161, 161, 161, 161, 161, 161, 161, ! 161, 162, 162, 162, 162, 162, 162, 162, 162, 162, ! 162, 162, 162, 162, 162, 162, 162, 163, 163, 164, ! 164, 165, 166, 166, 167, 168, 168, 168, 168, 168, ! 168, 169, 169, 170, 170, 171, 171, 173, 172, 172, ! 175, 174, 174, 176, 176, 177, 177, 178, 179, 179, ! 180, 180, 180, 180, 180, 181, 181, 181, 181, 182, ! 182, 183, 184, 183, 183, 185, 185, 186, 186, 187, ! 187, 188, 187, 187, 190, 189, 189, 189, 191, 191, ! 192, 192, 192, 194, 195, 193, 197, 198, 196, 199, ! 199, 200, 200, 200, 200, 200, 200, 201, 201, 202, ! 202, 202, 202, 203, 203, 203, 203, 203, 204, 204, ! 204, 204, 204, 205, 205, 206, 206, 207, 207, 209, ! 208, 208, 210, 208, 208, 211, 208, 212, 208, 213, ! 213, 213, 214, 214, 215, 215, 216, 216, 217, 217, ! 217, 217, 218, 218, 218, 218, 218, 218, 219, 219, ! 220, 220, 221, 221, 221, 222, 222, 222, 223, 223, ! 223, 224, 224, 226, 225, 227, 227, 228, 228, 228, ! 229, 229, 230, 230, 231, 231, 232, 232, 232, 232, ! 232, 233, 233, 233, 233, 233, 234, 234, 234, 234, ! 235, 235, 235, 235, 235, 236, 236, 236, 236, 237, ! 237, 237, 237, 237, 238, 238, 239, 239, 239, 239, ! 240, 241, 242, 243, 244, 245, 245, 246, 246, 247, ! 248, 248, 249, 250, 250, 251, 251, 252, 253, 254, ! 254, 256, 255, 258, 257, 259, 260, 260, 261, 262, ! 263, 265, 264, 264, 264, 266, 267, 264, 264, 264, ! 268, 269, 270, 271, 264, 272, 264, 273, 273, 274, ! 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, ! 274, 274, 274, 274, 274, 275, 274, 276, 274, 278, ! 277, 277, 280, 279, 281, 281, 283, 282, 284, 284, ! 285, 285, 285, 285, 286, 286, 287, 287, 288, 288, ! 289, 289, 290, 290, 291, 291, 293, 292, 294, 295, ! 296, 294, 294, 297, 297, 297, 297, 298, 298, 299, ! 299, 299, 299, 299, 300, 300, 300, 300, 300, 301, ! 303, 302, 304, 304, 305, 305, 306, 306, 307, 308, ! 308, 308, 308, 308, 308, 309, 309, 310, 311, 312, ! 312, 313, 313, 315, 316, 314, 317, 314, 318, 314, ! 314, 320, 319, 319, 321, 321, 322, 323, 323, 324, ! 324, 324, 325, 325, 325, 326, 326, 326, 327, 327, ! 327, 328, 328, 328, 329, 329, 331, 332, 333, 330, ! 334, 334, 335, 334, 336, 336, 338, 339, 337, 340, ! 340, 340, 340, 341, 341, 342, 342, 343, 343, 343, ! 343, 344, 344, 344, 345, 345, 346, 346, 346, 347, ! 347, 348, 347, 349, 350, 350, 351, 351, 351, 351, ! 351, 352, 352, 352, 352, 352, 352, 352, 352, 352, ! 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, ! 352, 352, 353, 353, 353, 353, 354, 354, 355, 355, ! 356, 357, 357, 358, 358, 358, 359, 360, 360, 361, ! 361, 362, 362, 363, 364, 365 ! }; ! ! /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ ! static const unsigned char yyr2[] = ! { ! 0, 2, 0, 1, 0, 2, 0, 3, 1, 1, ! 1, 1, 5, 2, 3, 4, 4, 2, 2, 2, ! 1, 0, 0, 8, 4, 0, 0, 8, 4, 0, ! 0, 7, 3, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 1, 1, 1, 0, 1, 1, 3, 1, ! 2, 2, 2, 2, 2, 4, 2, 4, 2, 2, ! 1, 1, 1, 1, 4, 1, 3, 3, 3, 3, ! 3, 3, 3, 3, 3, 3, 3, 3, 0, 4, ! 0, 4, 0, 0, 7, 0, 5, 3, 3, 1, ! 1, 1, 1, 0, 7, 3, 3, 3, 3, 4, ! 6, 8, 6, 4, 3, 3, 2, 2, 1, 1, ! 1, 1, 1, 1, 0, 1, 2, 1, 1, 2, ! 2, 4, 4, 2, 2, 2, 0, 1, 4, 4, ! 3, 3, 2, 2, 1, 2, 2, 2, 2, 2, ! 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ! 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, ! 1, 1, 1, 1, 1, 1, 2, 2, 1, 4, ! 4, 1, 4, 1, 4, 0, 4, 0, 6, 3, ! 0, 6, 3, 0, 1, 1, 2, 6, 1, 3, ! 0, 1, 4, 6, 4, 1, 1, 1, 1, 1, ! 1, 1, 0, 4, 1, 0, 2, 1, 3, 3, ! 2, 0, 4, 1, 0, 4, 1, 1, 1, 2, ! 2, 5, 3, 0, 0, 6, 0, 0, 6, 1, ! 1, 4, 3, 2, 3, 1, 1, 1, 1, 3, ! 2, 1, 1, 3, 2, 3, 3, 4, 3, 4, ! 3, 2, 1, 1, 2, 1, 2, 1, 2, 0, ! 7, 5, 0, 7, 5, 0, 8, 0, 7, 2, ! 2, 2, 0, 1, 0, 1, 1, 2, 0, 3, ! 2, 4, 3, 2, 3, 1, 1, 2, 1, 4, ! 1, 4, 2, 4, 3, 2, 4, 3, 1, 3, ! 1, 1, 3, 0, 3, 0, 1, 0, 1, 2, ! 1, 1, 1, 3, 2, 3, 4, 3, 2, 2, ! 1, 4, 3, 4, 5, 5, 1, 1, 1, 1, ! 1, 2, 2, 2, 2, 1, 2, 2, 2, 1, ! 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, ! 2, 0, 0, 0, 0, 0, 1, 1, 2, 3, ! 1, 2, 1, 1, 5, 1, 1, 2, 2, 2, ! 2, 0, 5, 0, 4, 0, 1, 2, 3, 2, ! 2, 0, 4, 1, 3, 0, 0, 7, 5, 2, ! 0, 0, 0, 0, 12, 0, 6, 2, 1, 1, ! 2, 3, 2, 2, 2, 3, 6, 8, 10, 12, ! 3, 4, 1, 3, 2, 0, 3, 0, 6, 0, ! 3, 1, 0, 3, 2, 1, 0, 6, 2, 0, ! 3, 5, 2, 4, 0, 1, 0, 1, 0, 1, ! 1, 3, 4, 7, 1, 3, 0, 3, 2, 0, ! 0, 6, 2, 0, 1, 1, 3, 1, 3, 4, ! 4, 3, 4, 3, 4, 4, 3, 4, 3, 1, ! 0, 3, 1, 2, 1, 3, 1, 3, 1, 1, ! 1, 1, 1, 1, 1, 1, 3, 3, 4, 2, ! 0, 3, 0, 0, 0, 9, 0, 5, 0, 9, ! 5, 0, 6, 3, 0, 1, 3, 3, 1, 1, ! 1, 1, 0, 3, 2, 3, 3, 1, 0, 1, ! 4, 1, 3, 2, 1, 1, 0, 0, 0, 7, ! 0, 2, 0, 3, 1, 1, 0, 0, 5, 4, ! 1, 5, 2, 0, 2, 0, 1, 1, 1, 2, ! 2, 4, 2, 2, 1, 3, 2, 2, 1, 0, ! 2, 0, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ! 1, 1, 6, 3, 5, 2, 1, 1, 1, 2, ! 1, 3, 2, 1, 1, 1, 4, 1, 1, 1, ! 2, 2, 1, 4, 4, 4 }; ! /* 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 short yydefact[] = { ! 4, 0, 6, 0, 1, 0, 0, 275, 310, 309, ! 272, 134, 367, 363, 365, 0, 62, 0, 588, 0, ! 634, 635, 0, 0, 594, 614, 0, 614, 0, 0, ! 20, 5, 8, 10, 9, 0, 0, 219, 220, 221, ! 222, 211, 212, 213, 214, 223, 224, 225, 226, 215, ! 216, 217, 218, 126, 126, 0, 142, 149, 269, 271, ! 270, 140, 295, 166, 0, 0, 0, 274, 273, 0, ! 11, 590, 591, 589, 592, 278, 636, 593, 7, 18, ! 19, 368, 364, 366, 0, 0, 33, 34, 36, 35, ! 595, 0, 600, 600, 276, 615, 614, 0, 277, 0, ! 0, 0, 362, 267, 293, 0, 283, 0, 135, 147, ! 153, 137, 169, 136, 148, 154, 170, 138, 159, 164, ! 141, 176, 139, 160, 165, 177, 143, 145, 151, 150, ! 187, 144, 146, 152, 188, 155, 157, 162, 161, 202, ! 156, 158, 163, 203, 167, 185, 194, 173, 171, 168, ! 186, 195, 172, 174, 200, 209, 180, 178, 175, 201, ! 210, 179, 181, 183, 192, 191, 189, 182, 184, 193, ! 190, 196, 198, 207, 206, 204, 197, 199, 208, 205, ! 0, 0, 17, 296, 388, 379, 388, 380, 377, 381, ! 13, 0, 89, 90, 91, 60, 61, 0, 0, 0, ! 0, 0, 92, 0, 37, 39, 38, 0, 41, 40, ! 0, 0, 0, 0, 0, 112, 42, 43, 0, 0, ! 44, 63, 0, 0, 65, 47, 49, 0, 0, 108, ! 109, 110, 111, 300, 616, 0, 0, 0, 614, 0, ! 606, 611, 613, 597, 0, 0, 247, 248, 249, 250, ! 243, 244, 245, 246, 413, 0, 239, 240, 241, 242, ! 268, 0, 0, 294, 14, 293, 32, 0, 293, 267, ! 0, 293, 361, 345, 267, 293, 346, 0, 281, 0, ! 339, 340, 0, 0, 0, 0, 0, 369, 0, 372, ! 0, 375, 676, 677, 700, 701, 697, 681, 682, 683, ! 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, ! 694, 695, 696, 698, 699, 0, 0, 678, 679, 637, ! 650, 669, 673, 680, 674, 58, 59, 0, 0, 0, ! 53, 50, 0, 477, 0, 0, 715, 714, 713, 0, ! 0, 0, 0, 52, 0, 0, 0, 54, 0, 56, ! 0, 0, 82, 80, 78, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 107, 106, 0, ! 45, 0, 0, 0, 473, 465, 0, 51, 307, 308, ! 305, 0, 298, 301, 306, 596, 599, 0, 603, 0, ! 602, 640, 598, 279, 415, 280, 360, 0, 0, 127, ! 0, 580, 358, 267, 268, 0, 0, 485, 113, 0, ! 485, 118, 0, 292, 0, 0, 16, 293, 24, 0, ! 293, 293, 343, 15, 28, 0, 0, 293, 396, 390, ! 239, 240, 241, 242, 235, 236, 237, 238, 126, 126, ! 387, 0, 388, 293, 388, 410, 411, 384, 408, 0, ! 0, 705, 0, 653, 671, 652, 0, 675, 0, 0, ! 0, 0, 96, 95, 0, 0, 706, 0, 707, 708, ! 722, 717, 0, 718, 719, 0, 0, 12, 48, 0, ! 0, 87, 88, 0, 0, 0, 0, 76, 77, 75, ! 74, 73, 72, 71, 66, 67, 68, 69, 70, 104, ! 0, 46, 0, 105, 98, 0, 0, 466, 467, 97, ! 0, 300, 45, 614, 602, 610, 622, 607, 642, 267, ! 293, 414, 416, 421, 420, 422, 430, 359, 284, 285, ! 0, 0, 0, 0, 0, 432, 0, 460, 30, 120, ! 119, 116, 231, 232, 227, 228, 233, 234, 229, 230, ! 126, 126, 290, 344, 0, 0, 485, 289, 342, 485, ! 0, 371, 393, 0, 389, 397, 0, 374, 0, 0, ! 385, 0, 384, 0, 0, 0, 638, 670, 563, 0, ! 703, 0, 0, 0, 93, 64, 710, 712, 0, 716, ! 0, 709, 721, 723, 0, 720, 725, 724, 55, 57, ! 0, 0, 81, 79, 99, 103, 586, 0, 476, 445, ! 475, 485, 485, 485, 485, 0, 454, 0, 463, 440, ! 449, 468, 297, 299, 89, 0, 608, 604, 0, 0, ! 612, 646, 0, 641, 424, 556, 429, 293, 428, 286, ! 0, 584, 564, 126, 126, 582, 0, 565, 567, 581, ! 0, 0, 0, 433, 431, 0, 123, 0, 124, 0, ! 0, 341, 282, 285, 22, 287, 26, 391, 0, 293, ! 392, 398, 0, 293, 394, 400, 293, 293, 412, 409, ! 293, 0, 0, 649, 669, 219, 220, 221, 222, 211, ! 212, 213, 214, 223, 224, 225, 226, 215, 216, 217, ! 218, 126, 0, 658, 654, 656, 0, 0, 672, 565, ! 0, 0, 0, 0, 0, 711, 83, 86, 469, 0, ! 446, 441, 450, 447, 442, 451, 463, 443, 452, 448, ! 444, 453, 455, 462, 89, 275, 0, 0, 0, 0, ! 0, 0, 544, 614, 614, 0, 532, 0, 522, 472, ! 485, 0, 125, 126, 126, 0, 0, 461, 509, 489, ! 525, 531, 490, 0, 302, 0, 304, 640, 640, 621, ! 619, 620, 601, 622, 627, 624, 126, 126, 0, 0, ! 643, 0, 126, 126, 423, 425, 0, 0, 556, 427, ! 562, 579, 417, 417, 558, 559, 0, 583, 0, 434, ! 435, 0, 31, 470, 0, 0, 314, 312, 311, 291, ! 0, 0, 0, 293, 0, 402, 293, 293, 0, 405, ! 293, 370, 373, 378, 293, 704, 651, 662, 417, 663, ! 659, 660, 639, 0, 100, 0, 102, 327, 0, 0, ! 324, 0, 326, 0, 382, 317, 323, 0, 0, 0, ! 587, 474, 0, 542, 512, 513, 514, 0, 0, 0, ! 545, 0, 524, 0, 0, 0, 0, 510, 0, 0, ! 132, 481, 495, 483, 500, 0, 493, 0, 0, 464, ! 478, 539, 0, 133, 0, 642, 642, 0, 628, 628, ! 623, 647, 0, 0, 426, 557, 351, 267, 293, 352, ! 293, 347, 348, 293, 576, 418, 421, 267, 293, 293, ! 578, 293, 566, 126, 126, 568, 585, 471, 121, 122, ! 0, 23, 288, 27, 404, 293, 0, 407, 293, 0, ! 376, 293, 293, 668, 0, 664, 702, 0, 330, 47, ! 0, 321, 94, 0, 316, 0, 0, 329, 320, 84, ! 0, 540, 515, 0, 520, 0, 523, 533, 0, 293, ! 0, 130, 333, 0, 131, 336, 0, 0, 463, 0, ! 0, 0, 480, 485, 479, 499, 0, 511, 0, 526, ! 0, 530, 535, 303, 609, 605, 0, 631, 625, 629, ! 626, 0, 424, 556, 574, 293, 350, 293, 354, 575, ! 419, 424, 556, 577, 560, 417, 417, 0, 403, 399, ! 406, 401, 666, 667, 661, 417, 101, 0, 332, 0, ! 0, 318, 319, 0, 0, 521, 0, 527, 543, 128, ! 0, 129, 0, 0, 0, 0, 546, 0, 494, 463, ! 464, 486, 485, 0, 538, 0, 534, 633, 0, 293, ! 645, 644, 648, 355, 356, 0, 349, 353, 0, 293, ! 293, 571, 293, 573, 313, 665, 0, 325, 322, 541, ! 548, 0, 0, 485, 485, 0, 0, 484, 547, 508, ! 501, 0, 505, 492, 488, 487, 0, 0, 632, 0, ! 357, 561, 569, 570, 572, 331, 0, 0, 0, 549, ! 550, 516, 528, 334, 337, 482, 496, 546, 507, 463, ! 498, 536, 630, 0, 0, 548, 0, 0, 0, 0, ! 463, 0, 506, 0, 0, 0, 0, 517, 551, 335, ! 338, 497, 502, 537, 552, 0, 0, 0, 546, 0, ! 554, 0, 518, 0, 0, 0, 0, 503, 553, 519, ! 555, 463, 504 }; + /* YYDEFGOTO[NTERM-NUM]. */ static const short yydefgoto[] = { ! -1, 1, 2, 3, 5, 31, 32, 33, 34, 419, ! 810, 425, 812, 270, 655, 841, 218, 334, 500, 220, ! 221, 222, 223, 35, 224, 225, 486, 485, 483, 849, ! 484, 226, 714, 407, 408, 409, 410, 541, 609, 36, ! 398, 752, 246, 247, 248, 249, 250, 251, 252, 253, ! 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, ! 643, 644, 438, 260, 254, 55, 261, 56, 57, 58, ! 59, 60, 277, 105, 271, 278, 811, 106, 660, 399, ! 263, 62, 381, 382, 383, 63, 809, 920, 843, 844, ! 845, 1020, 846, 940, 847, 848, 961, 1030, 1118, 964, ! 1032, 1119, 663, 280, 931, 901, 902, 281, 64, 65, ! 66, 67, 442, 444, 449, 290, 68, 944, 571, 285, ! 286, 440, 670, 674, 671, 675, 447, 448, 255, 394, ! 521, 933, 905, 906, 524, 525, 272, 610, 611, 612, ! 613, 614, 615, 411, 375, 851, 973, 977, 506, 507, ! 508, 802, 757, 376, 617, 227, 803, 876, 877, 966, ! 878, 968, 412, 1040, 974, 1041, 1042, 879, 1039, 967, ! 1120, 969, 1107, 1138, 1151, 1109, 1080, 759, 881, 1072, ! 760, 882, 761, 864, 981, 982, 1123, 979, 762, 861, ! 1081, 1098, 1099, 1100, 1141, 636, 787, 645, 911, 1058, ! 646, 647, 915, 648, 792, 402, 531, 649, 650, 607, ! 228, 70, 91, 71, 72, 238, 517, 73, 514, 768, ! 390, 767, 74, 391, 94, 75, 628, 773, 629, 778, ! 988, 989, 76, 77, 191, 453, 707, 518, 632, 1052, ! 633, 779, 991, 319, 576, 704, 705, 706, 934, 935, ! 455, 578, 320, 321, 322, 323, 324, 467, 468, 587, ! 469, 339, 229, 472, 473, 474, 230, 231, 232 }; + /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ + #define YYPACT_NINF -1007 static const short yypact[] = { ! 107, 110, 126, 4185, -1007, 4185, 352, -1007, -1007, -1007, ! -1007, -1007, 145, 145, 145, 113, -1007, 127, -1007, 467, ! -1007, -1007, 467, 467, -1007, 173, 467, 173, 467, 467, ! -1007, -1007, -1007, -1007, -1007, 200, 178, 1090, 3074, 4197, ! 4306, 448, 356, 499, 870, 4275, 4318, 4287, 4396, 736, ! 961, 779, 1119, -1007, -1007, 49, -1007, -1007, -1007, -1007, ! -1007, 145, -1007, -1007, 70, 204, 271, -1007, -1007, 4185, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! -1007, 145, 145, 145, 3889, 226, -1007, -1007, -1007, -1007, ! -1007, 63, 59, 95, -1007, -1007, 171, 342, -1007, 378, ! 467, 3616, -1007, 128, 145, 394, -1007, 2965, -1007, -1007, ! -1007, 145, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! 145, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, 145, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, 145, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, 145, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, 145, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, 145, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, 145, -1007, -1007, -1007, -1007, -1007, ! 490, 178, -1007, -1007, 230, 259, 230, 270, -1007, 278, ! -1007, 4487, -1007, -1007, -1007, -1007, -1007, 3889, 3889, 310, ! 313, 324, -1007, 467, -1007, -1007, -1007, 3889, -1007, -1007, ! 2492, 3689, 359, 368, 386, -1007, -1007, -1007, 3889, 377, ! 328, -1007, 3955, 4021, -1007, 5104, 762, 2064, 3889, -1007, ! -1007, -1007, -1007, 722, -1007, 467, 467, 467, 173, 467, ! -1007, -1007, -1007, -1007, 370, 434, 1287, 2120, 3699, 4856, ! 840, 601, 957, 639, -1007, 440, 255, 479, 351, 533, ! -1007, 178, 178, 145, -1007, 145, -1007, 486, 145, 372, ! 1702, 145, -1007, -1007, 128, 145, -1007, 421, -1007, 1447, ! 465, 477, 468, 2996, 519, 526, 2177, -1007, 529, -1007, ! 333, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, 398, 4376, -1007, -1007, -1007, ! -1007, 3499, 549, -1007, -1007, -1007, -1007, 3889, 3889, 4376, ! -1007, -1007, 508, -1007, 534, 542, -1007, -1007, -1007, 4522, ! 4557, 4376, 467, -1007, 538, 3889, 2492, -1007, 2492, -1007, ! 3889, 3889, 590, -1007, -1007, 3889, 3889, 3889, 3889, 3889, ! 3889, 3889, 3889, 3889, 3889, 3889, 3889, -1007, -1007, 467, ! 3889, 3889, 467, 550, -1007, 609, 562, -1007, -1007, -1007, ! -1007, 251, -1007, 593, -1007, -1007, -1007, 567, -1007, 580, ! 576, -1007, -1007, -1007, 163, -1007, 477, 42, 178, -1007, ! 668, -1007, -1007, 128, 680, 3063, 612, -1007, -1007, 1938, ! 68, -1007, 4683, 648, 490, 490, -1007, 145, -1007, 1702, ! 145, 145, -1007, -1007, -1007, 1702, 634, 145, -1007, -1007, ! 1287, 2120, 3699, 4856, 840, 601, 957, 639, -1007, 459, ! 622, 4413, 230, 145, 230, -1007, 678, 630, -1007, 333, ! 4376, -1007, 643, 645, 728, -1007, 549, -1007, 444, 4990, ! 5008, 651, -1007, -1007, 3406, 3889, 701, 661, 4522, -1007, ! -1007, 730, 685, 4557, -1007, 688, 689, -1007, 5104, 691, ! 692, 5104, 5104, 3889, 737, 3889, 3889, 1818, 1097, 1616, ! 1575, 865, 705, 705, 339, 339, -1007, -1007, -1007, -1007, ! 699, 328, 702, -1007, -1007, 467, 2213, 609, -1007, -1007, ! 711, 722, 4087, 173, 576, -1007, -1007, -1007, 504, 128, ! 145, -1007, -1007, -1007, -1007, 536, -1007, -1007, -1007, 51, ! 714, 3416, 3889, 3889, 3131, -1007, 4890, -1007, -1007, -1007, ! -1007, -1007, 4620, 4761, 826, 1245, 4639, 4787, 991, 1384, ! 716, 717, -1007, 465, 410, 490, -1007, 766, -1007, -1007, ! 727, -1007, 371, 124, -1007, -1007, 720, -1007, 726, 3889, ! 467, 729, 630, 732, 4592, 1006, -1007, -1007, 4651, 4376, ! -1007, 4376, 3889, 4376, -1007, -1007, 328, -1007, 3889, -1007, ! 701, -1007, -1007, -1007, 730, -1007, -1007, -1007, 740, 740, ! 792, 3889, 1670, 1842, -1007, -1007, -1007, 475, 612, -1007, ! -1007, 58, 81, 83, 96, 824, -1007, 751, 3225, -1007, ! -1007, -1007, -1007, -1007, 322, 754, -1007, -1007, 404, 1902, ! -1007, -1007, 2595, -1007, 163, 163, -1007, 145, -1007, -1007, ! 755, -1007, -1007, -1007, -1007, -1007, 756, 506, -1007, -1007, ! 334, 4908, 4940, -1007, -1007, 74, -1007, 490, -1007, 178, ! 2821, -1007, -1007, 822, -1007, -1007, -1007, -1007, 3889, 239, ! 758, -1007, 3889, 301, 764, -1007, 145, 145, 5104, -1007, ! 145, 769, 467, -1007, 3499, 4620, 4761, 4670, 4813, 826, ! 1245, 1207, 1411, 4639, 4787, 4703, 4839, 991, 1384, 1300, ! 1525, 771, 780, -1007, -1007, 4733, 1607, 74, -1007, 787, ! 784, 785, 5038, 797, 2585, -1007, -1007, 2644, -1007, 467, ! -1007, -1007, -1007, -1007, -1007, -1007, 3318, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, 843, 845, 3889, 851, 808, 809, ! 3757, 513, 897, 158, 335, 3823, -1007, 841, -1007, -1007, ! -1007, 818, -1007, -1007, -1007, 819, 846, 821, -1007, -1007, ! -1007, 829, -1007, 3529, -1007, 3889, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, 837, 4487, ! -1007, 178, -1007, -1007, -1007, -1007, 842, 3965, -1007, -1007, ! -1007, -1007, 277, 180, -1007, -1007, 4097, -1007, 926, -1007, ! -1007, 838, -1007, -1007, 528, 539, -1007, -1007, 5104, -1007, ! 74, 2821, 74, 1972, 3889, -1007, 145, 1972, 3889, -1007, ! 145, -1007, -1007, -1007, 145, -1007, -1007, -1007, 277, -1007, ! -1007, -1007, -1007, 467, -1007, 3889, -1007, -1007, 467, 3689, ! -1007, 893, 5104, 844, 847, -1007, -1007, 160, 2753, 3889, ! -1007, -1007, 5060, -1007, -1007, -1007, -1007, 853, 3889, 854, ! -1007, 879, -1007, 857, 838, 3889, 902, -1007, 490, 178, ! -1007, -1007, -1007, -1007, -1007, 883, 937, 2306, 69, -1007, ! -1007, 869, 872, -1007, 337, 520, 523, 4156, 487, 487, ! -1007, -1007, 490, 178, -1007, -1007, -1007, 128, 145, -1007, ! 145, 545, 671, 188, -1007, -1007, 145, 128, 145, 188, ! -1007, 145, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! 2585, -1007, -1007, -1007, -1007, 1972, 371, -1007, 1972, 124, ! -1007, 145, 188, -1007, 589, -1007, -1007, 5086, -1007, 1760, ! 2585, -1007, -1007, 2678, -1007, 2889, 3889, -1007, -1007, 2644, ! 3889, -1007, -1007, 871, -1007, 3889, -1007, -1007, 874, 145, ! 595, -1007, 262, 604, -1007, 582, 911, 912, -1007, 915, ! 3889, 2399, -1007, -1007, -1007, -1007, 3889, -1007, 838, -1007, ! 918, 872, -1007, -1007, -1007, -1007, 3889, 913, 891, -1007, ! 891, 61, 277, 327, -1007, 145, -1007, 145, -1007, -1007, ! 145, 180, 180, -1007, -1007, 277, 180, 895, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, 277, -1007, 3889, -1007, 896, ! 2889, -1007, -1007, 1760, 1996, -1007, 41, -1007, -1007, -1007, ! 1702, -1007, 1702, 3889, 3889, 971, 3529, 905, -1007, -1007, ! -1007, -1007, -1007, 906, -1007, 4733, -1007, 5104, 3889, 145, ! -1007, -1007, -1007, 545, 671, 431, -1007, -1007, 3965, 145, ! 188, -1007, 188, -1007, -1007, -1007, 4958, -1007, -1007, -1007, ! 73, 901, 838, -1007, -1007, 914, 928, -1007, -1007, -1007, ! -1007, 910, -1007, -1007, -1007, -1007, 933, 929, 5104, 487, ! -1007, -1007, -1007, -1007, -1007, -1007, 935, 467, 53, 908, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, 3889, -1007, -1007, ! -1007, -1007, -1007, 3889, 930, 73, 939, 73, 838, 838, ! -1007, 942, -1007, 838, 936, 1017, 54, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, 967, 1024, 946, 3889, 3889, ! -1007, 432, -1007, 949, 951, 952, 1031, -1007, -1007, -1007, ! -1007, -1007, -1007 }; + /* YYPGOTO[NTERM-NUM]. */ static const short yypgoto[] = { ! -1007, -1007, -1007, -1007, -1007, 108, -1007, 411, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -19, -1007, -83, 535, -290, ! 350, -1007, -1007, -1007, -157, 1018, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -331, -1007, 636, -1007, -1007, -379, 611, ! -375, -730, 3, 9, 55, 86, 8, 26, 141, 183, ! -378, -377, -545, -527, -363, -322, -520, -509, -499, -438, ! 646, 652, -577, -242, -1007, -596, -237, 1194, 1312, 1230, ! 1513, -1007, -618, -176, -259, 502, -1007, 662, -1007, 588, ! 889, -18, -1007, 552, -1007, 1152, 254, -1007, -629, -1007, ! 125, -1007, -797, -1007, -1007, 222, -1007, -1007, -1007, -1007, ! -1007, -1007, -178, 338, -756, 80, -238, 87, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, 501, -129, ! -1007, 633, -1007, -1007, 151, 153, 638, 515, -15, -1007, ! -1007, -689, -327, -296, -606, -1007, 283, -1007, -1007, -1007, ! -1007, -1007, -1007, -384, -1007, -1007, -562, 43, -1007, -1007, ! 583, -639, -1007, 349, -1007, -1007, -564, -1007, -1007, -1007, ! -1007, -1007, -354, 65, -847, -372, -293, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -1007, 129, -1007, -1007, -1007, -1007, ! -1006, -6, -1007, -5, -1007, 476, -1007, -749, -1007, -1007, ! 537, 540, 71, -1007, 470, -405, -1007, -1007, -1007, -1007, ! 16, -1007, 379, -1007, -1007, 1027, 603, -1007, -1007, -1007, ! -1007, -1007, -1007, -1007, -4, -10, -1007, -1007, 355, -1007, ! 234, 40, -494, -1007, -1007, -1007, -1007, 1, -1007, -1007, ! -1007, -1007, -1007, 357, -1007, -1007, -1007, 425, -1007, 123, ! 456, -1007, 568, 570, -225, -1007, -295, -1007, -1007, 558, ! 696, -1007, -1007, -1007, -1007, 686, -1007, -1007, -1007 }; ! /* 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 -658 static const short yytable[] = { ! 90, 219, 279, 92, 93, 282, 37, 96, 37, 90, ! 100, 41, 38, 41, 38, 95, 558, 95, 245, 69, ! 420, 69, 755, 98, 631, 539, 457, 404, 785, 42, ! 695, 42, 405, 883, 546, 547, 900, 414, 895, 804, ! 325, 326, 555, 183, 439, 185, 187, 189, 696, 548, ! 331, 948, 776, 538, 758, 699, 756, 288, 39, -456, ! 39, 343, 1050, 183, 183, 183, 700, 522, 832, -115, ! 975, 377, 37, 86, 87, 801, 701, 41, 38, 267, ! 501, 244, -457, 1096, -458, 69, 95, 1070, 556, 40, ! 549, 40, 241, 183, 559, 42, 456, -459, 523, 1115, ! 1136, 1121, 183, 904, 910, 236, 256, -2, 268, 269, ! 4, 183, 257, 78, 466, 471, 234, 268, 269, 753, ! 183, 1035, 616, 107, 39, 237, -3, 102, 338, 183, ! 1071, 527, 1143, 782, 619, 976, 11, 702, 183, 182, ! 1097, 236, 1116, 1137, 43, 88, 43, 183, 1022, -436, ! 89, 1051, 618, 546, 547, 40, 183, 235, 258, 17, ! 695, 239, 758, -115, 756, 184, 532, 755, 548, 749, ! 672, 921, -437, 923, -438, 586, 17, 190, 696, 84, ! 754, 102, 103, 102, 330, 699, 44, -439, 44, 259, ! 104, 703, 1083, 85, 783, 335, 700, 693, 694, 439, ! 546, 547, 664, 945, -36, 666, 701, 86, 87, 549, ! 43, 19, 697, 620, 380, 548, 385, 386, 387, 17, ! 389, 519, 501, 1068, 19, 838, 19, 946, 95, 520, ! 269, 732, 720, 723, 388, 729, 103, 917, 907, 721, ! 724, 727, 730, 590, 104, 183, 908, 269, 594, 1059, ! 960, 695, 44, 698, 268, 269, 549, 618, 618, 726, ! 618, -595, 1122, 108, 753, -595, 101, 702, 283, 696, ! 17, 446, 256, 1131, 86, 87, 699, 256, 257, 88, ! 102, 896, 634, 257, 89, 814, 17, 700, 502, 430, ! 267, 1007, 233, -285, 434, 431, 451, 913, 586, 186, ! 957, 452, 441, 284, 1152, -285, 1079, 585, 786, 1091, ! 776, 1019, 435, 566, 461, 568, 1061, 1063, 722, 725, ! 728, 731, 831, 476, 258, 754, 475, 693, 694, 258, ! 102, 479, 17, 480, 445, 897, 86, 87, 784, 523, ! 510, 432, 697, 898, 269, 511, 88, 818, 396, 397, ! 499, 89, -285, 503, 287, 259, -285, 899, 914, 117, ! 259, 8, 9, 10, 131, 289, 188, 268, 269, 12, ! 13, 14, 433, 291, 102, 273, 327, 331, 403, 328, ! 11, -35, 17, 698, 669, 897, 785, 777, 19, 457, ! 329, 631, 631, 898, 269, 785, 866, 364, 365, 366, ! 600, 86, 87, 17, 420, 97, 256, 99, 88, 546, ! 547, 764, 257, 89, 1044, 542, 765, 668, 693, 694, ! 544, 543, 345, 797, 548, 340, 983, 436, 798, 274, ! 446, 345, 242, 697, 341, 573, 235, 275, 545, 580, ! 755, 926, 79, 80, 430, 929, -256, 86, 87, 434, ! 431, 276, 342, 8, 9, 10, 126, 441, 258, 456, ! 392, 12, 13, 14, 450, 549, 344, 435, 243, 437, ! 86, 87, 235, 88, 698, 884, 421, 269, 89, 17, ! 769, 770, 771, 805, 264, 529, 606, 113, 265, 259, ! 102, 273, 380, 102, 273, 772, 432, 997, 269, 661, ! 695, 396, 397, 95, 8, 9, 10, 135, 1102, 626, ! 579, 416, 12, 13, 14, 417, 86, 87, 696, 88, ! 1090, 1145, 256, 393, 89, 699, 1146, 433, 257, 395, ! 17, 421, 269, 986, 542, 751, 700, 753, -255, 544, ! 543, 122, 88, 268, 269, 274, 913, 89, 274, -395, ! -395, 446, 400, 275, 1129, 1130, 275, 545, 423, 1133, ! 20, 21, 265, 422, 710, 718, 711, 276, 713, 719, ! 276, 858, 347, 349, 258, 630, 20, 21, 685, 20, ! 21, 542, 436, 689, 686, 426, 544, 543, 88, -257, ! 1056, 984, 1057, 89, 985, 458, 795, 462, 754, 750, ! 796, 690, 637, 269, 545, 259, 377, 914, 10, 131, ! 267, 995, 269, -285, 12, 13, 14, 427, 918, 726, ! 443, 37, 417, 463, 437, -285, 41, 38, 477, 919, ! 687, 464, 430, 265, 763, 37, -85, 434, 431, 504, ! 41, 38, 505, 751, 42, 777, 10, 140, 268, 269, ! 673, 509, 12, 13, 14, 435, 513, 857, 42, 512, ! 992, 688, 863, 825, 180, 181, 786, 693, 694, 515, ! 1001, 516, -285, 39, 1089, 786, -285, 526, 530, 1014, ! 546, 547, 697, 1015, 432, 1029, 533, 39, 726, 417, ! 962, 552, 262, 963, 1031, 548, 784, 523, 265, 1073, ! 850, 1074, 537, 420, 40, 784, 523, 750, 685, 560, ! 987, 987, 564, 689, 686, 433, 691, 282, 40, 1103, ! 1104, 569, 859, 698, 570, 86, 87, 8, 9, 378, ! 379, 690, 574, 95, 95, 575, 549, 997, 269, 577, ! 98, 8, 9, 10, 162, 583, 529, 588, 669, 12, ! 13, 14, 553, 554, 1054, 1055, 338, 589, 692, 43, ! 687, 362, 363, 364, 365, 366, 37, 17, 885, 886, ! 436, 41, 38, 43, 593, 953, 592, 596, 597, 763, ! 598, 599, 958, 601, 8, 9, 10, 171, 604, 42, ! 542, 688, 12, 13, 14, 544, 543, 88, 605, 685, ! 622, 44, 89, 639, 689, 686, 656, 658, 638, 665, ! 17, 676, 437, 545, 936, 44, 667, 677, 39, 938, ! 680, 682, 690, 367, 368, 406, -263, 369, 370, 371, ! 372, 8, 9, 10, 126, 584, 422, 422, 716, 12, ! 13, 14, 733, 766, 790, 794, 691, 10, 126, 40, ! 267, 687, 816, 12, 13, 14, 401, 17, 820, 413, ! 824, 827, 871, 415, 872, 873, 874, 875, 529, -265, ! 829, 17, 1026, 833, 834, 8, 9, 10, 140, 903, ! 909, 796, 688, 12, 13, 14, 836, 1037, 692, -33, ! 430, -34, 61, 1043, 61, 434, 431, 853, 854, 855, ! 256, 81, 82, 83, 43, 860, 257, 865, 867, 870, ! 256, 987, 374, 435, -529, 932, 257, 526, 526, 360, ! 361, 362, 363, 364, 365, 366, 111, 890, 120, 916, ! 129, 894, 138, 749, 147, 942, 156, 691, 165, 941, ! 174, 943, 432, 952, 954, 955, 44, 956, 959, 970, ! 1075, 1076, 258, 1078, 971, 978, 965, 980, 61, 1048, ! -258, 1025, 258, 1027, 10, 135, 8, 9, 10, 167, ! 12, 13, 14, 433, 12, 13, 14, 1033, 1034, 692, ! 529, 1036, 183, 259, 1045, 1049, 1064, 1067, 17, 1077, ! 61, 1101, 61, 259, 1082, 1086, 8, 9, 10, 162, ! 1108, 1113, 1117, 1105, 12, 13, 14, 406, 557, 401, ! 7, 8, 9, 10, 11, 561, 673, 1106, 1111, 12, ! 13, 14, 17, 1110, 1078, 1134, 1125, 1135, 436, 1127, ! 1124, 567, 1132, 1139, 1140, 16, 1142, 17, 1147, 37, ! 1148, 1150, 1149, 780, 41, 38, 540, 625, 685, 562, ! 563, -264, 763, 689, 686, 1078, 1144, 662, 550, 19, ! 528, 542, 42, 623, 551, 922, 544, 543, 1021, 947, ! 437, 690, 1053, 681, 565, 526, 526, 1009, 1114, 396, ! 397, 25, 1011, 1084, 545, 679, 27, 572, 396, 397, ! 621, 39, 1060, 1062, 7, 8, 9, 10, 108, 61, ! 687, -655, 932, 12, 13, 14, 880, 1085, 635, 1126, ! 1046, 526, 1128, 789, 793, 708, 1087, 627, 709, 16, ! 240, 17, 40, 990, 8, 9, 10, 176, 887, 1112, ! 830, 688, 12, 13, 14, 111, 891, 120, 1065, 129, ! 826, 138, 683, 19, 684, 111, 715, 120, 357, 358, ! 359, 360, 361, 362, 363, 364, 365, 366, 61, 595, ! 0, 657, 659, 61, 591, 25, 0, 0, 0, 0, ! 27, 0, 0, 0, 0, 61, 0, 43, 0, 0, ! -251, 0, 0, 0, 996, 998, 691, 0, 0, 112, ! 116, 121, 125, 130, 134, 139, 143, 148, 152, 157, ! 161, 166, 170, 175, 179, 61, 0, 0, 0, -266, ! 0, 0, 8, 9, 10, 135, 0, 0, 61, 44, ! 12, 13, 14, 0, 0, 788, 0, 0, 692, 0, ! 61, 109, 114, 118, 123, 61, 0, 61, 17, 145, ! 150, 154, 159, 781, 0, 0, 0, 0, 0, 0, ! 8, 9, 10, 131, 791, 791, 0, 815, 12, 13, ! 14, 819, 0, 0, 821, 822, 0, 0, 823, 0, ! 0, 127, 132, 136, 141, 526, 526, 0, 0, 163, ! 168, 172, 177, 0, 526, 526, 0, 0, 526, 526, ! 0, 7, 61, 0, 10, 108, 0, 0, 526, 0, ! 12, 13, 14, 0, 0, 8, 9, 10, 171, 0, ! 0, 0, 828, 12, 13, 14, 16, 0, 17, 111, ! 0, 120, 0, 129, 0, 138, 0, 0, 0, 0, ! 61, 17, 0, 0, 0, 0, 996, 998, 998, 61, ! 19, 0, 0, 0, 0, 459, 460, 0, 0, 110, ! 115, 119, 124, 0, 0, 0, 0, 146, 151, 155, ! 160, 0, 25, 478, 868, 869, 0, 27, 481, 482, ! 0, 0, 0, 487, 488, 489, 490, 491, 492, 493, ! 494, 495, 496, 497, 498, 384, 0, 888, 889, 8, ! 9, 10, 167, 892, 893, 0, 0, 12, 13, 14, ! 0, 924, 0, 0, 0, 927, 0, 0, 61, 0, ! 0, 0, 930, 0, 0, 0, 8, 9, 10, 140, ! 0, 0, 0, 536, 12, 13, 14, 0, 0, 0, ! 0, 111, 0, 129, 0, 147, 0, 165, 0, 0, ! 109, 114, 118, 123, 0, 0, 0, 0, 418, 0, ! 0, -21, -21, -21, -21, -21, 0, 0, 0, 0, ! -21, -21, -21, 0, 61, 0, 0, 0, 61, 0, ! 61, 0, 61, 0, 0, 267, -21, 0, -285, 0, ! 127, 132, 136, 141, 0, 0, 993, 0, 994, 0, ! -285, 999, 0, 0, 0, 0, 1002, 1003, 0, 1004, ! -21, 0, 0, 602, 603, 0, 0, 61, 0, 0, ! 0, 0, 0, 1008, 0, 0, 1010, 0, 61, 1012, ! 1013, 61, -21, 0, 1005, 1006, 0, -21, 0, 0, ! 8, 9, 10, 176, 0, 0, 0, -285, 12, 13, ! 14, -285, -21, 0, 0, 0, 0, 1028, 0, 0, ! 651, 652, 0, 0, 128, 133, 137, 142, 110, 115, ! 119, 124, 164, 169, 173, 178, 0, 0, 0, 0, ! 0, 0, 0, 0, 111, 0, 120, 0, 129, 0, ! 138, 0, 147, 401, 156, 401, 165, 678, 174, 0, ! 0, 0, 0, 0, 61, 0, 0, 0, 0, 0, ! 712, 0, 0, 0, 0, 0, 0, 0, 406, 0, ! 0, -657, -657, -657, -657, -657, 0, 0, 0, 717, ! -657, -657, -657, 0, 109, 114, 118, 123, 359, 360, ! 361, 362, 363, 364, 365, 366, -657, 0, -657, 0, ! 0, 0, 0, 0, 0, 0, 0, 1092, 1093, 0, ! 1094, 0, 61, 0, 0, 0, 0, 0, 0, 0, ! -657, 0, 0, 384, 127, 132, 136, 141, 358, 359, ! 360, 361, 362, 363, 364, 365, 366, 0, 808, 0, ! 0, 0, -657, 0, 0, 61, 813, -657, 0, 0, ! 817, 0, 0, 0, 112, 116, 130, 134, 148, 152, ! 166, 170, -657, 406, 0, 0, -485, -485, -485, -485, ! -485, 0, 0, 0, 0, -485, -485, -485, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, -485, 842, 0, 0, 0, 109, 114, 0, 0, ! 145, 150, 110, 115, 119, 124, 0, 0, 0, 0, ! 0, 0, 0, 0, 852, -485, 0, 0, 0, 0, ! 0, 0, 0, 128, 133, 137, 142, 0, 0, 0, ! 0, 1017, 0, 0, 127, 132, 61, -485, 163, 168, ! 0, 0, -485, 0, 0, 0, 61, 0, 0, 0, ! 0, 0, 0, 0, 0, 1000, 61, -114, 0, 0, ! 0, 0, 0, 350, 351, 352, 0, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, 0, 0, 0, 0, 0, 0, 0, 0, 808, ! 0, 0, 925, 0, 0, 0, 928, 112, 116, 121, ! 125, 130, 134, 139, 143, 148, 152, 157, 161, 166, ! 170, 175, 179, 937, 110, 115, 1018, 939, 146, 151, ! 0, 0, 0, 0, 0, 0, 842, 949, 356, 357, ! 358, 359, 360, 361, 362, 363, 364, 365, 366, 109, ! 114, 118, 123, 0, 0, 0, 0, 145, 150, 154, ! 159, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 365, 366, 774, 0, 0, 7, 0, 0, 10, ! 11, 0, 0, 0, 0, 12, 13, 14, 0, 127, ! 132, 136, 141, 0, 0, 61, 0, 163, 168, 172, ! 177, 16, 0, 17, 61, 0, 0, 0, 842, 406, ! 0, 0, -117, -117, -117, -117, -117, 128, 133, 137, ! 142, -117, -117, -117, 0, 19, 0, 0, 842, 0, ! 0, 842, 0, 842, 1023, 0, 0, -117, 1024, 0, ! 0, 0, 0, 0, 0, 0, 0, 25, -618, -618, ! -618, 0, 27, 0, 0, 0, 0, 0, 0, 0, ! 0, -117, 775, -618, 0, 0, 0, 110, 115, 119, ! 124, 0, 0, 17, 1047, 146, 151, 155, 160, 0, ! 0, 0, 0, -117, 0, 350, 351, 352, -117, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, ! 364, 365, 366, -117, 0, 1066, 0, 0, 842, 350, ! 351, 352, 1069, 353, 354, 355, 356, 357, 358, 359, ! 360, 361, 362, 363, 364, 365, 366, 128, 133, 0, ! 0, 164, 169, 0, 0, 373, 1088, -461, -461, -461, ! -461, -461, -461, -461, -461, 0, -461, -461, -461, -461, ! -461, 0, -461, -461, -461, -461, -461, -461, -461, -461, ! -461, -461, -461, -461, -461, -461, -461, -461, -461, -461, ! -461, -461, -461, 0, 0, 0, -461, 0, 0, 0, ! 0, 0, -461, 0, 0, -461, 0, -461, 0, 0, ! -461, -461, -461, 0, 7, -461, -461, 10, 113, 0, ! -461, -461, 0, 12, 13, 14, -461, 0, -461, -461, ! 0, 0, 0, -461, -461, 0, 0, -461, -461, 16, ! 0, -461, -461, 0, -461, 374, -461, -461, 0, -461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 19, 0, 0, 0, 0, 428, 0, ! 0, 7, 0, 0, 10, 11, 0, 0, 0, 0, ! 12, 13, 14, 0, 0, 25, 0, 0, 0, 0, ! 27, 0, 128, 133, 137, 142, 16, 0, 17, 18, ! 164, 169, 173, 178, 608, 0, -485, -485, -485, -485, ! -485, -485, -485, -485, 0, -485, -485, -485, -485, -485, ! 19, -485, -485, -485, -485, -485, -485, -485, -485, -485, ! -485, -485, -485, -485, -485, -485, 0, -485, -485, -485, ! -485, -485, 25, 0, 0, -485, 0, 27, 0, 0, ! 0, -485, 0, 0, -485, 0, -485, 429, -386, -485, ! -485, -485, 0, 0, -485, -485, 0, 0, 0, -485, ! -485, 0, 0, 0, 0, -485, 0, -485, -485, 0, ! 0, 0, -485, -485, 0, 0, -485, -485, 0, 0, ! -485, -485, 0, -485, 0, -485, -485, 972, -485, -463, ! -463, 0, 0, 0, 0, -463, -463, 0, -463, 0, ! 0, 0, -463, 0, -463, -463, -463, -463, -463, -463, ! -463, -463, -463, -463, -463, 0, -463, 0, -463, 0, ! -463, -463, -463, -463, -463, 0, 0, 0, -463, 0, ! 0, 0, 0, 0, -463, 0, 0, -463, 0, 0, ! 0, 0, -463, -463, -463, 0, 0, -463, -463, 0, ! 0, 0, -463, -463, 0, 0, 0, 0, -463, 0, ! -463, -463, 0, 0, 0, -463, -463, 0, 0, -463, ! -463, 0, 0, -463, -463, 0, -463, 0, -463, -463, ! 1038, -463, -491, -491, 0, 0, 0, 0, -491, -491, ! 0, -491, 0, 0, 0, -491, 0, -491, -491, -491, ! -491, -491, -491, -491, -491, -491, -491, -491, 0, -491, ! 0, -491, 0, -491, -491, -491, -491, -491, 0, 0, ! 0, -491, 0, 0, 0, 0, 0, -491, 0, 0, ! -491, 0, 0, 0, 0, -491, -491, -491, 0, 0, ! -491, -491, 0, 0, 0, -491, -491, 0, 0, 0, ! 0, -491, 0, -491, -491, 0, 0, 0, -491, -491, ! 0, 0, -491, -491, 0, 0, -491, -491, 0, -491, ! 0, -491, -491, 332, -491, 192, 7, 0, 0, 10, ! 11, 193, 194, 0, 195, 12, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 16, 196, 17, 18, 0, 197, 198, 199, 200, ! 201, 0, 0, 0, 202, 0, 0, 0, 0, 0, ! 203, 0, 0, 204, 0, 19, 0, 0, 205, 206, ! 207, 0, 0, 208, 209, 0, 0, 0, 210, 211, ! 0, 0, 0, 0, 212, 0, 213, 25, 0, 0, ! 0, 214, 27, 0, 0, 0, 0, 0, 0, 0, ! 215, 0, 0, 0, 216, 217, 837, 333, 734, 87, ! 0, 0, 0, 0, 193, 194, 6, 195, -126, 7, ! 8, 9, 10, 11, 0, 0, 0, 0, 12, 13, ! 14, 0, 0, 0, 0, 196, 0, 18, 0, 197, ! 198, 199, 200, 201, 16, 0, 17, 202, 0, 0, ! 0, 0, 0, 203, 0, 0, 204, 0, 0, 0, ! 0, 205, 206, 207, 0, 0, 208, 209, 19, 0, ! 838, 210, 839, -126, 0, 0, 0, 212, 0, 213, ! 88, -126, 0, 0, 214, 89, 0, 0, 0, 0, ! 25, 0, 0, 215, 0, 27, -315, 216, 217, 837, ! 840, 734, 87, 0, 0, 30, 0, 193, 194, 352, ! 195, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 365, 366, 0, 0, 0, 196, 0, ! 18, 0, 197, 198, 199, 200, 201, 0, 0, 0, ! 202, 0, 0, 0, 0, 0, 203, 0, 0, 204, ! 0, 0, 0, 0, 205, 206, 207, 0, 0, 208, ! 209, 0, 0, 838, 210, 839, 0, 0, 0, 0, ! 212, 0, 213, 88, 837, 0, 192, 214, 89, 0, ! 0, 0, 193, 194, 0, 195, 215, 0, 0, -383, ! 216, 217, 0, 840, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 196, 0, 18, 0, 197, 198, 199, ! 200, 201, 0, 0, 0, 202, -328, 0, 0, 0, ! 0, 203, 0, 0, 204, 0, 0, 0, 0, 205, ! 206, 207, 0, 0, 208, 209, 0, 0, -328, 210, ! 211, 0, 806, 0, 192, 212, 0, 213, 0, 0, ! 193, 194, 214, 195, 0, 0, 0, 0, 0, 0, ! 0, 215, 0, 0, 0, 216, 217, 0, 840, 0, ! 0, 196, 0, 18, 0, 197, 198, 199, 200, 201, ! 0, 0, 0, 202, 0, 0, 0, 0, 0, 203, ! 0, 0, 204, 0, 0, 0, 0, 205, 206, 207, ! 0, 0, 208, 209, 0, 0, 0, 210, 211, 0, ! 837, 0, 192, 212, 0, 213, 0, 0, 193, 194, ! 214, 195, 0, 0, 0, 0, 0, 0, 0, 215, ! 0, 0, 0, 216, 217, 0, 807, 0, 0, 196, ! 0, 18, 0, 197, 198, 199, 200, 201, 0, 0, ! 0, 202, 0, 0, 0, 0, 0, 203, 0, 0, ! 204, 0, 0, 0, 0, 205, 206, 207, 0, 0, ! 208, 209, 0, 0, 0, 210, 211, 0, 0, 0, ! 0, 212, 0, 213, 0, 0, 266, 0, 214, -29, ! -29, -29, -29, -29, 0, 0, 0, 215, -29, -29, ! -29, 216, 217, 0, 840, 0, 0, 0, 0, 0, ! 0, 0, 0, 267, -29, 0, -285, 424, 0, 0, ! -25, -25, -25, -25, -25, 0, 0, 0, -285, -25, ! -25, -25, 0, 0, 0, 0, 0, 0, -29, 0, ! 0, 0, 0, 0, 267, -25, 0, -285, 0, 0, ! 0, 268, 269, 0, 0, 0, 0, 0, 0, -285, ! -29, 0, 0, 0, 0, -29, 0, 0, 0, -25, ! 0, 0, 0, 0, 0, -285, 0, 0, 0, -285, ! -29, 0, 268, 269, 0, 0, 192, 0, 0, 0, ! 0, -25, 193, 194, 0, 195, -25, 0, 7, 8, ! 9, 10, 113, 0, 0, 0, -285, 12, 13, 14, ! -285, -25, 0, 196, 0, 18, 0, 197, 198, 199, ! 200, 201, 0, 16, 0, 202, 0, 0, 0, 0, ! 0, 203, 0, 0, 204, 0, 0, 0, 0, 205, ! 206, 534, 0, 0, 208, 209, 0, 19, 0, 210, ! 211, 0, 0, 0, 192, 212, 0, 213, 0, 0, ! 193, 194, 214, 195, 0, 0, 0, 0, 0, 25, ! 0, 215, 0, 0, 27, 216, 217, 0, 0, 535, ! 0, 196, 0, 18, -252, 197, 198, 199, 200, 201, ! 0, 0, 0, 202, 0, 0, 0, 0, 0, 203, ! 0, 0, 204, 0, 0, 0, 0, 205, 206, 207, ! 0, 0, 208, 209, 0, 0, 0, 210, 211, 0, ! 0, 0, 0, 212, 0, 213, 0, 0, 0, 0, ! 214, 0, 0, 0, 0, 0, 0, 0, 0, 215, ! 0, 0, 0, 216, 217, 0, 0, 653, 734, 735, ! 8, 9, 10, 11, 193, 194, 0, 195, 12, 13, ! 14, 0, 0, 0, 0, 0, 0, 736, 737, 738, ! 739, 740, 741, 742, 16, 196, 17, 18, 0, 197, ! 198, 199, 200, 201, 0, 0, 0, 202, 0, 0, ! 0, 0, 0, 203, 0, 0, 204, 0, 19, 0, ! 0, 205, 206, 207, 0, 0, 208, 209, 0, 0, ! 0, 210, 211, 0, 0, 0, 0, 212, 0, 213, ! 743, 0, 0, 0, 214, 744, 0, 0, 745, 746, ! 0, 0, 747, 215, 0, 748, 0, 216, 217, 0, ! 749, 734, 87, 0, 0, 0, 0, 193, 194, 0, ! 195, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 736, 737, 738, 739, 740, 741, 742, 0, 196, 0, ! 18, 0, 197, 198, 199, 200, 201, 0, 0, 0, ! 202, 0, 0, 0, 0, 0, 203, 0, 0, 204, ! 0, 0, 0, 0, 205, 206, 207, 0, 0, 208, ! 209, 0, 0, 0, 210, 211, 0, 0, 0, 0, ! 212, 0, 213, 88, 0, 0, 0, 214, 89, 0, ! 0, 745, 746, 0, 0, 747, 215, 0, 748, 192, ! 216, 217, 0, 749, 0, 193, 194, 640, 195, 641, ! 7, 8, 9, 10, 11, 0, 0, 642, 0, 12, ! 13, 14, 0, 0, 0, 0, 196, 0, 18, 0, ! 197, 198, 199, 200, 201, 16, 0, 0, 202, 0, ! 0, 0, 0, 0, 203, 0, 0, 204, 0, 0, ! 0, 0, 205, 206, 207, 0, 0, 208, 209, 19, ! 0, 0, 210, 211, 0, 0, 0, 0, 212, 0, ! 213, 0, 0, 0, 0, 214, 0, 0, 0, 0, ! 0, 25, 0, 0, 215, 0, 27, 0, 216, 217, ! 0, 584, 292, 293, 0, -563, 294, 295, 0, 0, ! 0, 296, 297, 298, 299, 300, 301, 302, 303, 304, ! 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, ! 0, 0, 192, 7, 8, 9, 10, 11, 193, 194, ! 0, 195, 12, 13, 14, 315, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 16, 196, ! 17, 18, 0, 197, 198, 199, 200, 201, 0, 0, ! 0, 202, 0, 0, 317, 0, 0, 203, 0, 318, ! 204, 0, 19, 0, 0, 205, 206, 207, 0, 0, ! 208, 209, 0, 454, 0, 210, 211, 0, 0, 0, ! 0, 212, 0, 213, 25, 0, 0, 0, 214, 27, ! 0, 0, 0, 0, 0, 0, 0, 215, 0, 192, ! 7, 216, 217, 10, 11, 193, 194, 0, 195, 12, ! 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 16, 196, 17, 18, 0, ! 197, 198, 199, 200, 201, 0, 0, 0, 202, 0, ! 0, 0, 0, 0, 203, 0, 0, 204, 0, 19, ! 0, 0, 205, 206, 207, 0, 0, 208, 209, 0, ! 0, 0, 210, 211, 0, 0, 0, 0, 212, 0, ! 213, 25, 192, 336, 0, 214, 27, 0, 193, 194, ! 0, 195, 0, 7, 215, 0, 10, 117, 216, 217, ! 0, 0, 12, 13, 14, 0, 0, 0, 0, 196, ! 0, 18, 0, 197, 198, 199, 200, 201, 16, 0, ! 17, 202, 0, 0, 0, 0, 0, 203, 0, 0, ! 204, 0, 0, 0, 0, 205, 206, 207, 0, 0, ! 208, 209, 19, 0, 0, 210, 211, 0, 0, 0, ! 192, 212, 0, 213, 337, 0, 193, 194, 214, 195, ! 0, 0, 0, 0, 25, 0, 0, 215, 0, 27, ! 0, 216, 217, 0, 0, 0, 0, 196, 0, 18, ! 0, 197, 198, 199, 200, 201, 0, 0, 0, 202, ! 0, 0, 0, 0, 0, 203, 0, 0, 204, 0, ! 0, 0, 0, 205, 206, 207, 0, 0, 208, 209, ! 0, 0, 0, 210, 211, 0, 192, 0, 0, 212, ! 0, 213, 193, 194, 0, 195, 214, 0, 0, 0, ! 0, 0, 0, 0, 0, 215, 0, 856, 0, 216, ! 217, 0, 0, 196, 0, 18, 0, 197, 198, 199, ! 200, 201, 0, 0, 0, 202, 0, 0, 0, 0, ! 0, 203, 0, 0, 204, 0, 0, 0, 0, 205, ! 206, 207, 0, 0, 208, 209, 0, 0, 0, 210, ! 211, 0, 192, 0, 0, 212, 0, 213, 193, 194, ! 0, 195, 214, 0, 0, 0, 0, 0, 0, 0, ! 0, 215, 0, 862, 0, 216, 217, 0, 0, 196, ! 0, 18, 0, 197, 198, 199, 200, 201, 0, 0, ! 0, 202, 0, 0, 0, 0, 0, 203, 0, 0, ! 204, 0, 0, 0, 0, 205, 206, 207, 0, 0, ! 208, 209, 0, 0, 0, 210, 211, 0, 192, 0, ! 0, 212, 0, 213, 193, 194, 640, 195, 214, 7, ! 8, 9, 10, 11, 0, 0, 642, 215, 12, 13, ! 14, 216, 217, 0, 0, 196, 0, 18, 0, 197, ! 198, 199, 200, 201, 16, 0, 0, 202, 0, 0, ! 0, 0, 0, 203, 0, 0, 204, 0, 0, 0, ! 0, 205, 206, 207, 0, 0, 208, 209, 19, 0, ! 0, 346, 211, 0, 192, 0, 0, 212, 0, 213, ! 193, 194, 0, 195, 214, 0, 0, 0, 0, 0, ! 25, 0, 0, 215, 0, 27, 0, 216, 217, 0, ! 0, 196, 0, 18, -563, 197, 198, 199, 200, 201, ! 0, 0, 0, 202, 0, 0, 0, 0, 0, 203, ! 0, 0, 204, 0, 0, 0, 0, 205, 206, 207, ! 0, 0, 208, 209, 0, 0, 0, 348, 211, 0, ! 624, 0, 0, 212, 0, 213, 193, 194, 0, 195, ! 214, 7, 8, 9, 10, 11, 0, 0, 912, 215, ! 12, 13, 14, 216, 217, 0, 0, 196, 0, 18, ! 0, 197, 198, 199, 200, 201, 16, 0, 17, 202, ! 0, 0, 0, 0, 0, 203, 0, 0, 204, 0, ! 0, 0, 0, 205, 206, 207, 0, 0, 208, 209, ! 19, 0, 0, 210, 211, 0, 0, 774, 0, 212, ! 7, 213, 0, 10, 11, 0, 214, 0, 0, 12, ! 13, 14, 25, 0, 0, 215, 0, 27, 0, 216, ! 217, 0, 0, 0, 0, 16, 6, 17, -126, 7, ! 8, 9, 10, 11, 0, 0, 0, 0, 12, 13, ! 14, 7, 8, 9, 10, 117, 0, 0, 0, 19, ! 12, 13, 14, 15, 16, 0, 17, 18, 0, 0, ! 0, 0, 0, 0, 0, 0, 16, 0, 17, 0, ! 0, 25, -617, -617, -617, 0, 27, 0, 19, 0, ! 0, 20, 21, -126, 0, 0, 775, -617, 0, 0, ! 19, -126, 0, 0, 22, 23, 24, 0, 0, 0, ! 25, 0, 0, 0, 26, 27, 28, 29, 0, 0, ! 0, 0, 25, 0, 0, 30, 0, 27, 0, 7, ! 8, 9, 10, 144, 0, 0, 0, -253, 12, 13, ! 14, 7, 8, 9, 10, 153, 0, 0, 0, 0, ! 12, 13, 14, 0, 16, 0, 17, 0, 0, 0, ! 7, 8, 9, 10, 122, 0, 16, 0, 17, 12, ! 13, 14, 7, 8, 9, 10, 149, 0, 19, 0, ! 0, 12, 13, 14, 0, 16, 0, 0, 0, 0, ! 19, 0, 0, 0, 0, 0, 0, 16, 0, 0, ! 25, 0, 0, 0, 0, 27, 0, 0, 0, 19, ! 0, 0, 25, 0, 0, -259, 0, 27, 0, 0, ! 0, 19, 0, 0, 0, 0, 0, -261, 0, 0, ! 7, 25, 0, 10, 11, 0, 27, 0, 0, 12, ! 13, 14, 0, 25, 0, 0, -254, 0, 27, 0, ! 7, 8, 9, 10, 158, 16, 0, 17, -260, 12, ! 13, 14, 0, 0, 428, 0, 0, 7, 0, 0, ! 10, 11, 0, 0, 0, 16, 12, 13, 14, 19, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 16, 0, 17, 18, 0, 0, 0, 19, ! 0, 25, 0, 0, 0, 0, 27, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, ! 0, 25, 0, 0, 0, 0, 27, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, -262, 0, 25, 0, ! 292, 293, 0, 27, 294, 295, 0, 0, 0, 296, ! 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, ! 307, 308, 309, 310, 311, 312, 313, 314, 0, 0, ! 0, 0, 0, 0, 0, 292, 293, 0, 0, 294, ! 295, 0, 0, 315, 296, 297, 298, 299, 300, 301, ! 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, ! 312, 313, 314, 316, 0, 0, 0, 0, 0, 0, ! 292, 293, 317, 0, 294, 295, 0, 318, 465, 296, ! 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, ! 307, 308, 309, 310, 311, 312, 313, 314, 0, 0, ! 0, 0, 0, 0, 0, 292, 293, 317, 0, 294, ! 295, 0, 318, 470, 296, 297, 298, 299, 300, 301, ! 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, ! 312, 313, 314, 0, 7, 8, 9, 10, 108, 0, ! 0, 0, 317, 12, 13, 14, 0, 318, 315, 0, ! 0, 0, 0, 7, 8, 9, 10, 144, 0, 16, ! 0, 17, 12, 13, 14, 7, 8, 9, 10, 11, ! 0, 0, 642, 0, 12, 13, 14, 317, 16, 0, ! 17, 0, 318, 19, 7, 8, 9, 10, 117, 0, ! 16, 0, 0, 12, 13, 14, 0, 7, 8, 9, ! 10, 11, 19, 0, 0, 25, 12, 13, 14, 16, ! 27, 17, 0, 0, 19, 0, 0, 7, 8, 9, ! 10, 153, 16, 0, 25, 0, 12, 13, 14, 27, ! 0, 0, 0, 19, 0, 0, 25, 0, 0, 0, ! 0, 27, 16, 0, 17, 0, 19, 7, 8, 9, ! 10, 11, 0, 0, 0, 25, 12, 13, 14, 0, ! 27, 0, 0, 0, 0, 0, 19, 0, 25, 0, ! 0, 0, 16, 27, 17, 7, 8, 9, 10, 113, ! 0, 0, 0, 0, 12, 13, 14, 0, 25, 0, ! 0, 0, 0, 27, 0, 0, 19, 0, 0, 0, ! 16, 7, 8, 9, 10, 149, 0, 0, 0, 0, ! 12, 13, 14, 0, 0, 0, 0, 0, 25, 0, ! 0, 0, 0, 27, 19, 0, 16, 7, 8, 9, ! 10, 122, 0, 0, 0, 0, 12, 13, 14, 0, ! 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, ! 19, 27, 16, 7, 8, 9, 10, 158, 0, 0, ! 0, 0, 12, 13, 14, 0, 0, 0, 0, 0, ! 7, 0, 25, 10, 122, 0, 19, 27, 16, 12, ! 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 16, 0, 0, 25, 0, ! 0, 0, 19, 27, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, ! 0, 0, 0, 0, 25, 0, 0, 0, 0, 27, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 25, 0, 350, 351, 352, 27, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, 350, 351, 352, 0, 353, 354, 355, 356, 357, ! 358, 359, 360, 361, 362, 363, 364, 365, 366, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 350, 351, 352, 654, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, 350, 351, 352, 799, 353, 354, 355, 356, 357, ! 358, 359, 360, 361, 362, 363, 364, 365, 366, 0, ! 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 0, 0, 350, 351, 352, 800, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, 350, 351, 352, 1095, 353, 354, 355, 356, 357, ! 358, 359, 360, 361, 362, 363, 364, 365, 366, 0, ! 0, 950, 0, 0, 0, 0, 0, 0, 0, 0, ! 0, 350, 351, 352, 581, 353, 354, 355, 356, 357, ! 358, 359, 360, 361, 362, 363, 364, 365, 366, 0, ! 0, 0, 582, 350, 351, 352, 951, 353, 354, 355, ! 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, ! 366, 0, 0, 0, 0, 0, 0, 0, 0, 350, ! 351, 352, 835, 353, 354, 355, 356, 357, 358, 359, ! 360, 361, 362, 363, 364, 365, 366, 350, 351, 352, ! 0, 353, 354, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 365, 366, 0, 0, 0, 0, 0, ! 0, 0, 0, 0, 0, 1016 }; static const short yycheck[] = { ! 19, 84, 180, 22, 23, 181, 3, 26, 5, 28, ! 29, 3, 3, 5, 5, 25, 421, 27, 101, 3, ! 279, 5, 618, 27, 518, 409, 321, 269, 634, 3, ! 575, 5, 269, 763, 412, 412, 792, 274, 787, 657, ! 197, 198, 417, 61, 286, 64, 65, 66, 575, 412, ! 207, 848, 629, 407, 618, 575, 618, 186, 3, 1, ! 5, 218, 1, 81, 82, 83, 575, 394, 707, 1, ! 1, 228, 69, 3, 4, 1, 575, 69, 69, 28, ! 370, 100, 1, 10, 1, 69, 96, 46, 419, 3, ! 412, 5, 96, 111, 425, 69, 321, 1, 394, 46, ! 46, 1107, 120, 792, 793, 46, 103, 0, 66, 67, ! 0, 129, 103, 5, 339, 340, 53, 66, 67, 618, ! 138, 968, 506, 36, 69, 66, 0, 3, 211, 147, ! 89, 89, 1138, 632, 506, 66, 8, 575, 156, 90, ! 67, 46, 89, 89, 3, 75, 5, 165, 945, 91, ! 80, 90, 506, 531, 531, 69, 174, 94, 103, 31, ! 705, 66, 726, 95, 726, 95, 403, 763, 531, 95, ! 46, 810, 91, 812, 91, 465, 31, 69, 705, 66, ! 618, 3, 58, 3, 203, 705, 3, 91, 5, 103, ! 66, 575, 1039, 66, 632, 210, 705, 575, 575, 441, ! 578, 578, 556, 43, 46, 559, 705, 3, 4, 531, ! 69, 53, 575, 506, 233, 578, 235, 236, 237, 31, ! 239, 58, 512, 1020, 53, 65, 53, 67, 238, 66, ! 67, 615, 611, 612, 238, 614, 58, 801, 58, 611, ! 612, 613, 614, 468, 66, 263, 66, 67, 473, 1005, ! 868, 796, 69, 575, 66, 67, 578, 611, 612, 613, ! 614, 90, 1109, 8, 763, 94, 66, 705, 181, 796, ! 31, 290, 269, 1120, 3, 4, 796, 274, 269, 75, ! 3, 4, 519, 274, 80, 46, 31, 796, 371, 286, ! 28, 920, 66, 31, 286, 286, 315, 796, 588, 95, ! 864, 316, 286, 73, 1151, 43, 1036, 464, 635, 1058, ! 887, 940, 286, 442, 329, 444, 1005, 1006, 611, 612, ! 613, 614, 706, 342, 269, 763, 341, 705, 705, 274, ! 3, 346, 31, 348, 1, 58, 3, 4, 634, 635, ! 89, 286, 705, 66, 67, 94, 75, 46, 261, 262, ! 369, 80, 90, 372, 95, 269, 94, 80, 796, 8, ! 274, 5, 6, 7, 8, 95, 95, 66, 67, 13, ! 14, 15, 286, 95, 3, 4, 66, 534, 6, 66, ! 8, 46, 31, 705, 562, 58, 992, 629, 53, 684, ! 66, 885, 886, 66, 67, 1001, 750, 58, 59, 60, ! 483, 3, 4, 31, 663, 26, 403, 28, 75, 787, ! 787, 89, 403, 80, 978, 412, 94, 46, 796, 796, ! 412, 412, 94, 89, 787, 66, 89, 286, 94, 58, ! 449, 94, 90, 796, 66, 450, 94, 66, 412, 458, ! 1036, 816, 90, 91, 441, 820, 90, 3, 4, 441, ! 441, 80, 66, 5, 6, 7, 8, 441, 403, 684, ! 90, 13, 14, 15, 66, 787, 89, 441, 90, 286, ! 3, 4, 94, 75, 796, 765, 66, 67, 80, 31, ! 76, 77, 78, 659, 90, 398, 505, 8, 94, 403, ! 3, 4, 511, 3, 4, 91, 441, 66, 67, 89, ! 1045, 414, 415, 513, 5, 6, 7, 8, 1072, 513, ! 66, 90, 13, 14, 15, 94, 3, 4, 1045, 75, ! 89, 89, 519, 89, 80, 1045, 94, 441, 519, 89, ! 31, 66, 67, 46, 531, 618, 1045, 1036, 90, 531, ! 531, 8, 75, 66, 67, 58, 1045, 80, 58, 90, ! 91, 570, 66, 66, 1118, 1119, 66, 531, 90, 1123, ! 56, 57, 94, 280, 579, 90, 581, 80, 583, 94, ! 80, 58, 222, 223, 519, 71, 56, 57, 575, 56, ! 57, 578, 441, 575, 575, 66, 578, 578, 75, 90, ! 995, 71, 997, 80, 71, 46, 90, 89, 1036, 618, ! 94, 575, 66, 67, 578, 519, 763, 1045, 7, 8, ! 28, 66, 67, 31, 13, 14, 15, 91, 90, 973, ! 91, 618, 94, 89, 441, 43, 618, 618, 90, 90, ! 575, 89, 629, 94, 618, 632, 46, 629, 629, 89, ! 632, 632, 33, 726, 618, 887, 7, 8, 66, 67, ! 563, 89, 13, 14, 15, 629, 89, 740, 632, 66, ! 897, 575, 745, 682, 53, 54, 993, 1045, 1045, 89, ! 907, 95, 90, 618, 1049, 1002, 94, 394, 10, 90, ! 1058, 1058, 1045, 94, 629, 90, 6, 632, 1042, 94, ! 868, 43, 104, 869, 90, 1058, 992, 993, 94, 1030, ! 719, 1032, 90, 962, 618, 1001, 1002, 726, 705, 75, ! 888, 889, 90, 705, 705, 629, 575, 893, 632, 1073, ! 1074, 43, 741, 1045, 94, 3, 4, 5, 6, 7, ! 8, 705, 89, 743, 744, 90, 1058, 66, 67, 11, ! 744, 5, 6, 7, 8, 94, 659, 46, 926, 13, ! 14, 15, 414, 415, 992, 993, 839, 96, 575, 618, ! 705, 56, 57, 58, 59, 60, 763, 31, 767, 768, ! 629, 763, 763, 632, 89, 858, 46, 89, 89, 763, ! 89, 89, 865, 46, 5, 6, 7, 8, 89, 763, ! 787, 705, 13, 14, 15, 787, 787, 75, 96, 796, ! 89, 618, 80, 89, 796, 796, 90, 90, 525, 43, ! 31, 91, 629, 787, 833, 632, 89, 91, 763, 838, ! 91, 89, 796, 61, 62, 1, 90, 65, 66, 67, ! 68, 5, 6, 7, 8, 95, 553, 554, 46, 13, ! 14, 15, 91, 89, 89, 89, 705, 7, 8, 763, ! 28, 796, 94, 13, 14, 15, 268, 31, 94, 271, ! 91, 90, 16, 275, 18, 19, 20, 21, 781, 90, ! 90, 31, 955, 89, 89, 5, 6, 7, 8, 792, ! 793, 94, 796, 13, 14, 15, 89, 970, 705, 46, ! 887, 46, 3, 976, 5, 887, 887, 46, 90, 90, ! 897, 12, 13, 14, 763, 8, 897, 66, 90, 90, ! 907, 1089, 91, 887, 85, 828, 907, 634, 635, 54, ! 55, 56, 57, 58, 59, 60, 37, 90, 39, 3, ! 41, 89, 43, 95, 45, 91, 47, 796, 49, 46, ! 51, 94, 887, 90, 90, 66, 763, 90, 46, 66, ! 1033, 1034, 897, 1036, 17, 86, 869, 85, 69, 46, ! 90, 90, 907, 89, 7, 8, 5, 6, 7, 8, ! 13, 14, 15, 887, 13, 14, 15, 66, 66, 796, ! 893, 66, 1000, 897, 66, 94, 91, 91, 31, 18, ! 101, 90, 103, 907, 89, 89, 5, 6, 7, 8, ! 90, 66, 94, 89, 13, 14, 15, 1, 420, 421, ! 4, 5, 6, 7, 8, 427, 929, 89, 89, 13, ! 14, 15, 31, 90, 1107, 89, 96, 10, 887, 90, ! 1113, 443, 90, 66, 10, 29, 90, 31, 89, 1036, ! 89, 10, 90, 632, 1036, 1036, 410, 512, 1045, 438, ! 439, 90, 1036, 1045, 1045, 1138, 1139, 555, 412, 53, ! 398, 1058, 1036, 511, 412, 811, 1058, 1058, 943, 847, ! 887, 1045, 992, 572, 441, 792, 793, 926, 1097, 992, ! 993, 75, 929, 1040, 1058, 570, 80, 449, 1001, 1002, ! 507, 1036, 1005, 1006, 4, 5, 6, 7, 8, 210, ! 1045, 95, 1015, 13, 14, 15, 757, 1042, 520, 1115, ! 981, 828, 1117, 637, 644, 578, 1045, 514, 578, 29, ! 93, 31, 1036, 889, 5, 6, 7, 8, 773, 1089, ! 705, 1045, 13, 14, 15, 246, 779, 248, 1015, 250, ! 684, 252, 574, 53, 574, 256, 588, 258, 51, 52, ! 53, 54, 55, 56, 57, 58, 59, 60, 269, 473, ! -1, 550, 551, 274, 468, 75, -1, -1, -1, -1, ! 80, -1, -1, -1, -1, 286, -1, 1036, -1, -1, ! 90, -1, -1, -1, 901, 902, 1045, -1, -1, 37, ! 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, ! 48, 49, 50, 51, 52, 316, -1, -1, -1, 90, ! -1, -1, 5, 6, 7, 8, -1, -1, 329, 1036, ! 13, 14, 15, -1, -1, 637, -1, -1, 1045, -1, ! 341, 37, 38, 39, 40, 346, -1, 348, 31, 45, ! 46, 47, 48, 632, -1, -1, -1, -1, -1, -1, ! 5, 6, 7, 8, 643, 644, -1, 669, 13, 14, ! 15, 673, -1, -1, 676, 677, -1, -1, 680, -1, ! -1, 41, 42, 43, 44, 992, 993, -1, -1, 49, ! 50, 51, 52, -1, 1001, 1002, -1, -1, 1005, 1006, ! -1, 4, 403, -1, 7, 8, -1, -1, 1015, -1, ! 13, 14, 15, -1, -1, 5, 6, 7, 8, -1, ! -1, -1, 701, 13, 14, 15, 29, -1, 31, 430, ! -1, 432, -1, 434, -1, 436, -1, -1, -1, -1, ! 441, 31, -1, -1, -1, -1, 1053, 1054, 1055, 450, ! 53, -1, -1, -1, -1, 327, 328, -1, -1, 37, ! 38, 39, 40, -1, -1, -1, -1, 45, 46, 47, ! 48, -1, 75, 345, 753, 754, -1, 80, 350, 351, ! -1, -1, -1, 355, 356, 357, 358, 359, 360, 361, ! 362, 363, 364, 365, 366, 233, -1, 776, 777, 5, ! 6, 7, 8, 782, 783, -1, -1, 13, 14, 15, ! -1, 813, -1, -1, -1, 817, -1, -1, 519, -1, ! -1, -1, 824, -1, -1, -1, 5, 6, 7, 8, ! -1, -1, -1, 405, 13, 14, 15, -1, -1, -1, ! -1, 542, -1, 544, -1, 546, -1, 548, -1, -1, ! 246, 247, 248, 249, -1, -1, -1, -1, 1, -1, ! -1, 4, 5, 6, 7, 8, -1, -1, -1, -1, ! 13, 14, 15, -1, 575, -1, -1, -1, 579, -1, ! 581, -1, 583, -1, -1, 28, 29, -1, 31, -1, ! 250, 251, 252, 253, -1, -1, 898, -1, 900, -1, ! 43, 903, -1, -1, -1, -1, 908, 909, -1, 911, ! 53, -1, -1, 485, 486, -1, -1, 618, -1, -1, ! -1, -1, -1, 925, -1, -1, 928, -1, 629, 931, ! 932, 632, 75, -1, 913, 914, -1, 80, -1, -1, ! 5, 6, 7, 8, -1, -1, -1, 90, 13, 14, ! 15, 94, 95, -1, -1, -1, -1, 959, -1, -1, ! 532, 533, -1, -1, 41, 42, 43, 44, 246, 247, ! 248, 249, 49, 50, 51, 52, -1, -1, -1, -1, ! -1, -1, -1, -1, 685, -1, 687, -1, 689, -1, ! 691, -1, 693, 995, 695, 997, 697, 569, 699, -1, ! -1, -1, -1, -1, 705, -1, -1, -1, -1, -1, ! 582, -1, -1, -1, -1, -1, -1, -1, 1, -1, ! -1, 4, 5, 6, 7, 8, -1, -1, -1, 601, ! 13, 14, 15, -1, 430, 431, 432, 433, 53, 54, 55, 56, 57, 58, 59, 60, 29, -1, 31, -1, ! -1, -1, -1, -1, -1, -1, -1, 1059, 1060, -1, ! 1062, -1, 763, -1, -1, -1, -1, -1, -1, -1, ! 53, -1, -1, 511, 434, 435, 436, 437, 52, 53, ! 54, 55, 56, 57, 58, 59, 60, -1, 660, -1, ! -1, -1, 75, -1, -1, 796, 668, 80, -1, -1, ! 672, -1, -1, -1, 542, 543, 544, 545, 546, 547, ! 548, 549, 95, 1, -1, -1, 4, 5, 6, 7, ! 8, -1, -1, -1, -1, 13, 14, 15, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, 29, 714, -1, -1, -1, 542, 543, -1, -1, ! 546, 547, 430, 431, 432, 433, -1, -1, -1, -1, ! -1, -1, -1, -1, 736, 53, -1, -1, -1, -1, ! -1, -1, -1, 250, 251, 252, 253, -1, -1, -1, ! -1, 11, -1, -1, 544, 545, 887, 75, 548, 549, ! -1, -1, 80, -1, -1, -1, 897, -1, -1, -1, ! -1, -1, -1, -1, -1, 906, 907, 95, -1, -1, ! -1, -1, -1, 43, 44, 45, -1, 47, 48, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, -1, -1, -1, -1, -1, -1, 811, ! -1, -1, 814, -1, -1, -1, 818, 685, 686, 687, ! 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, ! 698, 699, 700, 835, 542, 543, 96, 839, 546, 547, ! -1, -1, -1, -1, -1, -1, 848, 849, 50, 51, ! 52, 53, 54, 55, 56, 57, 58, 59, 60, 685, ! 686, 687, 688, -1, -1, -1, -1, 693, 694, 695, ! 696, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, 1, -1, -1, 4, -1, -1, 7, ! 8, -1, -1, -1, -1, 13, 14, 15, -1, 689, ! 690, 691, 692, -1, -1, 1036, -1, 697, 698, 699, ! 700, 29, -1, 31, 1045, -1, -1, -1, 920, 1, ! -1, -1, 4, 5, 6, 7, 8, 434, 435, 436, ! 437, 13, 14, 15, -1, 53, -1, -1, 940, -1, ! -1, 943, -1, 945, 946, -1, -1, 29, 950, -1, ! -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, ! 78, -1, 80, -1, -1, -1, -1, -1, -1, -1, ! -1, 53, 90, 91, -1, -1, -1, 685, 686, 687, ! 688, -1, -1, 31, 986, 693, 694, 695, 696, -1, ! -1, -1, -1, 75, -1, 43, 44, 45, 80, 47, ! 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, 95, -1, 1017, -1, -1, 1020, 43, ! 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, ! 54, 55, 56, 57, 58, 59, 60, 544, 545, -1, ! -1, 548, 549, -1, -1, 1, 1048, 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, 13, 14, 15, 16, -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, 53, -1, -1, ! 56, 57, 58, -1, 4, 61, 62, 7, 8, -1, ! 66, 67, -1, 13, 14, 15, 72, -1, 74, 75, ! -1, -1, -1, 79, 80, -1, -1, 83, 84, 29, ! -1, 87, 88, -1, 90, 91, 92, 93, -1, 95, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 53, -1, -1, -1, -1, 1, -1, ! -1, 4, -1, -1, 7, 8, -1, -1, -1, -1, ! 13, 14, 15, -1, -1, 75, -1, -1, -1, -1, ! 80, -1, 689, 690, 691, 692, 29, -1, 31, 32, ! 697, 698, 699, 700, 1, -1, 3, 4, 5, 6, ! 7, 8, 9, 10, -1, 12, 13, 14, 15, 16, ! 53, 18, 19, 20, 21, 22, 23, 24, 25, 26, ! 27, 28, 29, 30, 31, 32, -1, 34, 35, 36, ! 37, 38, 75, -1, -1, 42, -1, 80, -1, -1, ! -1, 48, -1, -1, 51, -1, 53, 90, 91, 56, ! 57, 58, -1, -1, 61, 62, -1, -1, -1, 66, ! 67, -1, -1, -1, -1, 72, -1, 74, 75, -1, ! -1, -1, 79, 80, -1, -1, 83, 84, -1, -1, ! 87, 88, -1, 90, -1, 92, 93, 1, 95, 3, ! 4, -1, -1, -1, -1, 9, 10, -1, 12, -1, ! -1, -1, 16, -1, 18, 19, 20, 21, 22, 23, ! 24, 25, 26, 27, 28, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, ! -1, -1, 56, 57, 58, -1, -1, 61, 62, -1, ! -1, -1, 66, 67, -1, -1, -1, -1, 72, -1, ! 74, 75, -1, -1, -1, 79, 80, -1, -1, 83, ! 84, -1, -1, 87, 88, -1, 90, -1, 92, 93, 1, 95, 3, 4, -1, -1, -1, -1, 9, 10, ! -1, 12, -1, -1, -1, 16, -1, 18, 19, 20, ! 21, 22, 23, 24, 25, 26, 27, 28, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! 61, 62, -1, -1, -1, 66, 67, -1, -1, -1, ! -1, 72, -1, 74, 75, -1, -1, -1, 79, 80, ! -1, -1, 83, 84, -1, -1, 87, 88, -1, 90, ! -1, 92, 93, 1, 95, 3, 4, -1, -1, 7, ! 8, 9, 10, -1, 12, 13, 14, 15, -1, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, ! 48, -1, -1, 51, -1, 53, -1, -1, 56, 57, ! 58, -1, -1, 61, 62, -1, -1, -1, 66, 67, ! -1, -1, -1, -1, 72, -1, 74, 75, -1, -1, ! -1, 79, 80, -1, -1, -1, -1, -1, -1, -1, ! 88, -1, -1, -1, 92, 93, 1, 95, 3, 4, ! -1, -1, -1, -1, 9, 10, 1, 12, 3, 4, ! 5, 6, 7, 8, -1, -1, -1, -1, 13, 14, ! 15, -1, -1, -1, -1, 30, -1, 32, -1, 34, ! 35, 36, 37, 38, 29, -1, 31, 42, -1, -1, ! -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, ! -1, 56, 57, 58, -1, -1, 61, 62, 53, -1, ! 65, 66, 67, 58, -1, -1, -1, 72, -1, 74, ! 75, 66, -1, -1, 79, 80, -1, -1, -1, -1, ! 75, -1, -1, 88, -1, 80, 91, 92, 93, 1, ! 95, 3, 4, -1, -1, 90, -1, 9, 10, 45, ! 12, 47, 48, 49, 50, 51, 52, 53, 54, 55, ! 56, 57, 58, 59, 60, -1, -1, -1, 30, -1, ! 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, ! 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, ! -1, -1, -1, -1, 56, 57, 58, -1, -1, 61, ! 62, -1, -1, 65, 66, 67, -1, -1, -1, -1, ! 72, -1, 74, 75, 1, -1, 3, 79, 80, -1, ! -1, -1, 9, 10, -1, 12, 88, -1, -1, 91, ! 92, 93, -1, 95, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 30, -1, 32, -1, 34, 35, 36, ! 37, 38, -1, -1, -1, 42, 43, -1, -1, -1, ! -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, ! 57, 58, -1, -1, 61, 62, -1, -1, 65, 66, ! 67, -1, 1, -1, 3, 72, -1, 74, -1, -1, ! 9, 10, 79, 12, -1, -1, -1, -1, -1, -1, ! -1, 88, -1, -1, -1, 92, 93, -1, 95, -1, ! -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, ! -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, ! -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, ! -1, -1, 61, 62, -1, -1, -1, 66, 67, -1, ! 1, -1, 3, 72, -1, 74, -1, -1, 9, 10, ! 79, 12, -1, -1, -1, -1, -1, -1, -1, 88, ! -1, -1, -1, 92, 93, -1, 95, -1, -1, 30, ! -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, ! -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, ! 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! 61, 62, -1, -1, -1, 66, 67, -1, -1, -1, ! -1, 72, -1, 74, -1, -1, 1, -1, 79, 4, ! 5, 6, 7, 8, -1, -1, -1, 88, 13, 14, ! 15, 92, 93, -1, 95, -1, -1, -1, -1, -1, ! -1, -1, -1, 28, 29, -1, 31, 1, -1, -1, ! 4, 5, 6, 7, 8, -1, -1, -1, 43, 13, ! 14, 15, -1, -1, -1, -1, -1, -1, 53, -1, -1, -1, -1, -1, 28, 29, -1, 31, -1, -1, ! -1, 66, 67, -1, -1, -1, -1, -1, -1, 43, ! 75, -1, -1, -1, -1, 80, -1, -1, -1, 53, ! -1, -1, -1, -1, -1, 90, -1, -1, -1, 94, ! 95, -1, 66, 67, -1, -1, 3, -1, -1, -1, ! -1, 75, 9, 10, -1, 12, 80, -1, 4, 5, ! 6, 7, 8, -1, -1, -1, 90, 13, 14, 15, ! 94, 95, -1, 30, -1, 32, -1, 34, 35, 36, ! 37, 38, -1, 29, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, ! 57, 58, -1, -1, 61, 62, -1, 53, -1, 66, ! 67, -1, -1, -1, 3, 72, -1, 74, -1, -1, ! 9, 10, 79, 12, -1, -1, -1, -1, -1, 75, ! -1, 88, -1, -1, 80, 92, 93, -1, -1, 96, ! -1, 30, -1, 32, 90, 34, 35, 36, 37, 38, ! -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, ! -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, ! -1, -1, 61, 62, -1, -1, -1, 66, 67, -1, ! -1, -1, -1, 72, -1, 74, -1, -1, -1, -1, ! 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, ! -1, -1, -1, 92, 93, -1, -1, 96, 3, 4, ! 5, 6, 7, 8, 9, 10, -1, 12, 13, 14, ! 15, -1, -1, -1, -1, -1, -1, 22, 23, 24, ! 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, ! 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, ! -1, -1, -1, 48, -1, -1, 51, -1, 53, -1, ! -1, 56, 57, 58, -1, -1, 61, 62, -1, -1, ! -1, 66, 67, -1, -1, -1, -1, 72, -1, 74, ! 75, -1, -1, -1, 79, 80, -1, -1, 83, 84, ! -1, -1, 87, 88, -1, 90, -1, 92, 93, -1, ! 95, 3, 4, -1, -1, -1, -1, 9, 10, -1, ! 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! 22, 23, 24, 25, 26, 27, 28, -1, 30, -1, ! 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, ! -1, -1, -1, -1, 56, 57, 58, -1, -1, 61, ! 62, -1, -1, -1, 66, 67, -1, -1, -1, -1, ! 72, -1, 74, 75, -1, -1, -1, 79, 80, -1, ! -1, 83, 84, -1, -1, 87, 88, -1, 90, 3, ! 92, 93, -1, 95, -1, 9, 10, 1, 12, 3, ! 4, 5, 6, 7, 8, -1, -1, 11, -1, 13, ! 14, 15, -1, -1, -1, -1, 30, -1, 32, -1, ! 34, 35, 36, 37, 38, 29, -1, -1, 42, -1, ! -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, ! -1, -1, 56, 57, 58, -1, -1, 61, 62, 53, ! -1, -1, 66, 67, -1, -1, -1, -1, 72, -1, ! 74, -1, -1, -1, -1, 79, -1, -1, -1, -1, ! -1, 75, -1, -1, 88, -1, 80, -1, 92, 93, ! -1, 95, 3, 4, -1, 89, 7, 8, -1, -1, ! -1, 12, 13, 14, 15, 16, 17, 18, 19, 20, ! 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, ! -1, -1, 3, 4, 5, 6, 7, 8, 9, 10, ! -1, 12, 13, 14, 15, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, -1, -1, ! -1, 42, -1, -1, 75, -1, -1, 48, -1, 80, ! 51, -1, 53, -1, -1, 56, 57, 58, -1, -1, ! 61, 62, -1, 94, -1, 66, 67, -1, -1, -1, -1, 72, -1, 74, 75, -1, -1, -1, 79, 80, -1, -1, -1, -1, -1, -1, -1, 88, -1, 3, 4, 92, 93, 7, 8, 9, 10, -1, 12, 13, *************** static const short yycheck[] = *** 2105,2411 **** -1, -1, -1, -1, -1, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, 53, ! -1, -1, 56, 57, 58, -1, -1, -1, 62, 63, ! -1, -1, -1, 67, 68, -1, -1, -1, 72, -1, 74, 75, 3, 4, -1, 79, 80, -1, 9, 10, ! -1, 12, -1, -1, 88, -1, -1, -1, 92, 93, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, 30, ! -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, ! -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! -1, 62, 63, -1, -1, -1, 67, 68, -1, -1, 3, 72, -1, 74, 75, -1, 9, 10, 79, 12, ! -1, -1, -1, -1, -1, -1, -1, 88, -1, -1, -1, 92, 93, -1, -1, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, ! -1, -1, -1, 56, 57, 58, -1, -1, -1, 62, ! 63, -1, -1, -1, 67, 68, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, 90, -1, 92, 93, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, ! 57, 58, -1, -1, -1, 62, 63, -1, -1, -1, ! 67, 68, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, 90, -1, 92, 93, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! -1, 62, 63, -1, -1, -1, 67, 68, 3, -1, ! -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, ! -1, -1, -1, -1, -1, -1, -1, 88, -1, -1, ! -1, 92, 93, -1, -1, 30, -1, 32, -1, 34, ! 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, ! -1, 56, 57, 58, -1, -1, -1, 62, 63, -1, ! -1, -1, 67, 68, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, ! -1, -1, -1, 88, -1, -1, -1, 92, 93, -1, ! -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, ! -1, -1, -1, 62, 63, -1, -1, -1, 67, 68, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, ! 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, ! -1, -1, -1, 92, 93, -1, -1, 30, -1, 32, ! -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, ! -1, -1, -1, -1, 1, 48, -1, 4, 51, -1, ! 7, 8, -1, 56, 57, 58, 13, 14, 15, 62, ! 63, -1, -1, -1, 67, 68, -1, -1, -1, 72, ! -1, 74, 29, -1, 31, -1, 79, -1, -1, -1, ! 1, -1, -1, 4, -1, 88, 7, 8, -1, 92, ! 93, -1, 13, 14, 15, -1, 53, -1, -1, 1, ! -1, -1, 4, -1, -1, 7, 8, -1, 29, -1, ! 31, 13, 14, 15, -1, -1, -1, -1, 75, 76, ! 77, 78, -1, 80, -1, -1, -1, 29, -1, 31, ! 32, -1, 53, 90, 91, 1, -1, 3, 4, 5, ! 6, 7, 8, -1, -1, -1, -1, 13, 14, 15, ! -1, 53, -1, -1, 75, 76, 77, 78, -1, 80, ! -1, -1, 28, 29, -1, 31, 32, -1, -1, 90, ! 91, -1, -1, 75, -1, -1, -1, -1, 80, -1, ! -1, -1, -1, -1, -1, -1, -1, 53, 90, 91, ! 56, 57, 58, -1, -1, -1, -1, -1, -1, -1, ! -1, 67, -1, 69, 70, 71, -1, -1, -1, 75, ! -1, -1, -1, 79, 80, 81, 82, -1, -1, -1, ! -1, -1, -1, 1, 90, 3, 4, 5, 6, 7, ! 8, -1, -1, 11, -1, 13, 14, 15, -1, -1, ! 1, -1, -1, 4, 5, 6, 7, 8, -1, -1, ! 11, 29, 13, 14, 15, 4, 5, 6, 7, 8, ! -1, -1, -1, -1, 13, 14, 15, -1, 29, -1, ! -1, -1, -1, -1, -1, 53, -1, -1, -1, -1, ! 29, -1, 31, -1, -1, 4, 5, 6, 7, 8, ! -1, -1, 53, -1, 13, 14, 15, 75, -1, -1, ! -1, -1, 80, -1, 53, -1, -1, -1, -1, -1, ! 29, 89, 31, -1, 75, -1, -1, -1, -1, 80, ! -1, -1, -1, -1, -1, -1, 75, -1, 89, -1, ! -1, 80, -1, -1, 53, 4, 5, 6, 7, 8, ! -1, 90, -1, -1, 13, 14, 15, -1, 4, 5, ! 6, 7, 8, -1, -1, -1, 75, 13, 14, 15, ! 29, 80, -1, -1, -1, 4, 5, 6, 7, 8, ! -1, 90, -1, 29, 13, 14, 15, -1, -1, -1, ! -1, -1, -1, -1, 53, -1, -1, -1, -1, -1, ! 29, -1, -1, -1, -1, -1, -1, 53, 4, 5, ! 6, 7, 8, -1, -1, -1, 75, 13, 14, 15, ! -1, 80, -1, -1, 53, -1, 11, -1, -1, 75, ! -1, 90, -1, 29, 80, 31, -1, -1, -1, -1, ! -1, -1, -1, -1, 90, -1, 75, -1, -1, -1, ! -1, 80, -1, -1, -1, -1, -1, 53, 43, 44, ! 45, 90, 47, 48, 49, 50, 51, 52, 53, 54, ! 55, 56, 57, 58, 59, 60, 3, 4, -1, 75, ! 7, 8, -1, -1, 80, 12, 13, 14, 15, 16, ! 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, ! 27, 28, 29, 30, -1, -1, -1, -1, -1, -1, ! -1, 96, 3, 4, -1, -1, 7, 8, -1, 46, ! -1, 12, 13, 14, 15, 16, 17, 18, 19, 20, ! 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, ! 67, -1, -1, -1, -1, -1, -1, -1, 75, -1, ! -1, -1, -1, 80, -1, 46, 3, 4, -1, -1, ! 7, 8, -1, -1, -1, 12, 13, 14, 15, 16, ! 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, ! 27, 28, 29, 30, 75, -1, -1, -1, -1, 80, ! -1, 4, 5, 6, 7, 8, -1, -1, -1, 46, ! 13, 14, 15, -1, 4, 5, 6, 7, 8, -1, ! -1, -1, -1, 13, 14, 15, 29, -1, 31, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, 75, 29, ! -1, 31, -1, 80, 4, 5, 6, 7, 8, -1, ! 53, -1, -1, 13, 14, 15, 4, 5, 6, 7, ! 8, -1, -1, 53, -1, 13, 14, 15, -1, 29, ! -1, 31, 75, -1, -1, -1, -1, 80, -1, -1, ! -1, 29, -1, 31, -1, 75, -1, -1, -1, -1, ! 80, -1, -1, 53, -1, -1, -1, 4, 5, 6, ! 7, 8, -1, -1, -1, 53, 13, 14, 15, -1, ! -1, -1, -1, -1, -1, 75, -1, -1, -1, -1, ! 80, -1, 29, -1, -1, -1, -1, 75, -1, -1, ! -1, -1, 80, 4, 5, 6, 7, 8, -1, -1, ! -1, -1, 13, 14, 15, -1, 53, -1, -1, -1, ! 4, 5, 6, 7, 8, -1, -1, -1, 29, 13, ! 14, 15, -1, -1, -1, -1, -1, -1, 75, -1, ! -1, -1, -1, 80, -1, 29, 4, 5, 6, 7, ! 8, -1, 53, -1, -1, 13, 14, 15, -1, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, ! -1, 29, -1, -1, 75, -1, -1, -1, -1, 80, ! -1, -1, -1, 4, 5, 6, 7, 8, -1, -1, ! -1, 75, 13, 14, 15, 53, 80, -1, -1, -1, ! 4, -1, -1, 7, 8, -1, -1, -1, 29, 13, ! 14, 15, -1, -1, -1, -1, -1, 75, -1, -1, ! 4, -1, 80, 7, 8, 29, -1, 31, -1, 13, ! 14, 15, 53, 4, -1, -1, 7, 8, -1, -1, ! -1, -1, 13, 14, 15, 29, -1, 31, -1, 53, ! -1, -1, 4, -1, 75, 7, 8, -1, 29, 80, ! -1, 13, 14, 15, -1, -1, -1, -1, -1, 53, ! -1, 75, -1, -1, -1, -1, 80, 29, -1, -1, ! -1, -1, 53, -1, -1, -1, -1, -1, -1, -1, -1, 75, -1, -1, -1, -1, 80, -1, -1, -1, ! -1, 53, -1, -1, 75, -1, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 75, -1, 43, 44, 45, 80, 47, ! 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, 43, 44, 45, -1, 47, 48, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, 43, 44, 45, 96, 47, ! 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, 43, 44, 45, 96, 47, 48, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, 43, 44, 45, 96, 47, ! 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, ! 58, 59, 60, 43, 44, 45, 96, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 43, 44, 45, 94, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, 43, 44, 45, 94, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, 31, -1, 94, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, 43, 44, 45, 89, 47, 48, ! 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, ! 59, 60, 43, 44, 45, 46, 47, 48, 49, 50, ! 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ! 43, 44, 45, -1, 47, 48, 49, 50, 51, 52, ! 53, 54, 55, 56, 57, 58, 59, 60 }; - /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ - #line 3 "/usr/share/bison/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. */ - - #if ! defined (yyoverflow) || defined (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 ! # else ! # ifdef __GNUC__ ! # define YYSTACK_ALLOC __builtin_alloca ! # endif ! # endif ! # endif ! # endif ! ! # ifdef YYSTACK_ALLOC ! /* Pacify GCC's `empty if-body' warning. */ ! # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) ! # else ! # if defined (__STDC__) || defined (__cplusplus) ! # include /* INFRINGES ON USER NAME SPACE */ ! # define YYSIZE_T size_t ! # endif ! # define YYSTACK_ALLOC malloc ! # define YYSTACK_FREE free ! # endif ! #endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ ! ! ! #if (! defined (yyoverflow) \ ! && (! defined (__cplusplus) \ ! || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) ! ! /* A type that is properly aligned for any stack member. */ ! union yyalloc { ! short 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) - - /* 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 - - /* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ - # ifndef YYCOPY - # if 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; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (0) - # endif - # endif - - /* Relocate STACK from its old location to the new one. The - local variables YYSIZE and YYSTACKSIZE give the old and new number of - elements in the stack, and YYPTR gives the new location of the - stack. Advance YYPTR to a properly aligned location for the next - stack. */ - # define YYSTACK_RELOCATE(Stack) \ - do \ - { \ - YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \ - yyptr += yynewbytes / sizeof (*yyptr); \ - } \ - while (0) - - #endif - - #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) # define YYSIZE_T __SIZE_TYPE__ #endif --- 2395,2675 ---- -1, -1, -1, -1, -1, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, 53, ! -1, -1, 56, 57, 58, -1, -1, 61, 62, -1, ! -1, -1, 66, 67, -1, -1, -1, -1, 72, -1, 74, 75, 3, 4, -1, 79, 80, -1, 9, 10, ! -1, 12, -1, 4, 88, -1, 7, 8, 92, 93, ! -1, -1, 13, 14, 15, -1, -1, -1, -1, 30, ! -1, 32, -1, 34, 35, 36, 37, 38, 29, -1, ! 31, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! 61, 62, 53, -1, -1, 66, 67, -1, -1, -1, 3, 72, -1, 74, 75, -1, 9, 10, 79, 12, ! -1, -1, -1, -1, 75, -1, -1, 88, -1, 80, -1, 92, 93, -1, -1, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, ! -1, -1, -1, 56, 57, 58, -1, -1, 61, 62, ! -1, -1, -1, 66, 67, -1, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, 90, -1, 92, 93, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, ! 57, 58, -1, -1, 61, 62, -1, -1, -1, 66, ! 67, -1, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, -1, -1, -1, 88, -1, 90, -1, 92, 93, -1, -1, 30, -1, 32, -1, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, -1, -1, ! 61, 62, -1, -1, -1, 66, 67, -1, 3, -1, ! -1, 72, -1, 74, 9, 10, 1, 12, 79, 4, ! 5, 6, 7, 8, -1, -1, 11, 88, 13, 14, ! 15, 92, 93, -1, -1, 30, -1, 32, -1, 34, ! 35, 36, 37, 38, 29, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, ! -1, 56, 57, 58, -1, -1, 61, 62, 53, -1, ! -1, 66, 67, -1, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, 79, -1, -1, -1, -1, -1, ! 75, -1, -1, 88, -1, 80, -1, 92, 93, -1, ! -1, 30, -1, 32, 89, 34, 35, 36, 37, 38, -1, -1, -1, 42, -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, 56, 57, 58, ! -1, -1, 61, 62, -1, -1, -1, 66, 67, -1, 3, -1, -1, 72, -1, 74, 9, 10, -1, 12, ! 79, 4, 5, 6, 7, 8, -1, -1, 11, 88, ! 13, 14, 15, 92, 93, -1, -1, 30, -1, 32, ! -1, 34, 35, 36, 37, 38, 29, -1, 31, 42, ! -1, -1, -1, -1, -1, 48, -1, -1, 51, -1, ! -1, -1, -1, 56, 57, 58, -1, -1, 61, 62, ! 53, -1, -1, 66, 67, -1, -1, 1, -1, 72, ! 4, 74, -1, 7, 8, -1, 79, -1, -1, 13, ! 14, 15, 75, -1, -1, 88, -1, 80, -1, 92, ! 93, -1, -1, -1, -1, 29, 1, 31, 3, 4, ! 5, 6, 7, 8, -1, -1, -1, -1, 13, 14, ! 15, 4, 5, 6, 7, 8, -1, -1, -1, 53, ! 13, 14, 15, 28, 29, -1, 31, 32, -1, -1, ! -1, -1, -1, -1, -1, -1, 29, -1, 31, -1, ! -1, 75, 76, 77, 78, -1, 80, -1, 53, -1, ! -1, 56, 57, 58, -1, -1, 90, 91, -1, -1, ! 53, 66, -1, -1, 69, 70, 71, -1, -1, -1, ! 75, -1, -1, -1, 79, 80, 81, 82, -1, -1, ! -1, -1, 75, -1, -1, 90, -1, 80, -1, 4, ! 5, 6, 7, 8, -1, -1, -1, 90, 13, 14, ! 15, 4, 5, 6, 7, 8, -1, -1, -1, -1, ! 13, 14, 15, -1, 29, -1, 31, -1, -1, -1, ! 4, 5, 6, 7, 8, -1, 29, -1, 31, 13, ! 14, 15, 4, 5, 6, 7, 8, -1, 53, -1, ! -1, 13, 14, 15, -1, 29, -1, -1, -1, -1, ! 53, -1, -1, -1, -1, -1, -1, 29, -1, -1, ! 75, -1, -1, -1, -1, 80, -1, -1, -1, 53, ! -1, -1, 75, -1, -1, 90, -1, 80, -1, -1, ! -1, 53, -1, -1, -1, -1, -1, 90, -1, -1, ! 4, 75, -1, 7, 8, -1, 80, -1, -1, 13, ! 14, 15, -1, 75, -1, -1, 90, -1, 80, -1, ! 4, 5, 6, 7, 8, 29, -1, 31, 90, 13, ! 14, 15, -1, -1, 1, -1, -1, 4, -1, -1, ! 7, 8, -1, -1, -1, 29, 13, 14, 15, 53, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, 29, -1, 31, 32, -1, -1, -1, 53, -1, 75, -1, -1, -1, -1, 80, -1, -1, -1, ! -1, -1, -1, -1, -1, -1, 53, -1, -1, -1, ! -1, 75, -1, -1, -1, -1, 80, -1, -1, -1, ! -1, -1, -1, -1, -1, -1, 90, -1, 75, -1, ! 3, 4, -1, 80, 7, 8, -1, -1, -1, 12, ! 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, ! 23, 24, 25, 26, 27, 28, 29, 30, -1, -1, ! -1, -1, -1, -1, -1, 3, 4, -1, -1, 7, ! 8, -1, -1, 46, 12, 13, 14, 15, 16, 17, ! 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, ! 28, 29, 30, 66, -1, -1, -1, -1, -1, -1, ! 3, 4, 75, -1, 7, 8, -1, 80, 46, 12, ! 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, ! 23, 24, 25, 26, 27, 28, 29, 30, -1, -1, ! -1, -1, -1, -1, -1, 3, 4, 75, -1, 7, ! 8, -1, 80, 46, 12, 13, 14, 15, 16, 17, ! 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, ! 28, 29, 30, -1, 4, 5, 6, 7, 8, -1, ! -1, -1, 75, 13, 14, 15, -1, 80, 46, -1, ! -1, -1, -1, 4, 5, 6, 7, 8, -1, 29, ! -1, 31, 13, 14, 15, 4, 5, 6, 7, 8, ! -1, -1, 11, -1, 13, 14, 15, 75, 29, -1, ! 31, -1, 80, 53, 4, 5, 6, 7, 8, -1, ! 29, -1, -1, 13, 14, 15, -1, 4, 5, 6, ! 7, 8, 53, -1, -1, 75, 13, 14, 15, 29, ! 80, 31, -1, -1, 53, -1, -1, 4, 5, 6, ! 7, 8, 29, -1, 75, -1, 13, 14, 15, 80, ! -1, -1, -1, 53, -1, -1, 75, -1, -1, -1, ! -1, 80, 29, -1, 31, -1, 53, 4, 5, 6, ! 7, 8, -1, -1, -1, 75, 13, 14, 15, -1, ! 80, -1, -1, -1, -1, -1, 53, -1, 75, -1, ! -1, -1, 29, 80, 31, 4, 5, 6, 7, 8, ! -1, -1, -1, -1, 13, 14, 15, -1, 75, -1, ! -1, -1, -1, 80, -1, -1, 53, -1, -1, -1, ! 29, 4, 5, 6, 7, 8, -1, -1, -1, -1, ! 13, 14, 15, -1, -1, -1, -1, -1, 75, -1, ! -1, -1, -1, 80, 53, -1, 29, 4, 5, 6, ! 7, 8, -1, -1, -1, -1, 13, 14, 15, -1, ! -1, -1, -1, -1, -1, -1, 75, -1, -1, -1, ! 53, 80, 29, 4, 5, 6, 7, 8, -1, -1, ! -1, -1, 13, 14, 15, -1, -1, -1, -1, -1, ! 4, -1, 75, 7, 8, -1, 53, 80, 29, 13, ! 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, 29, -1, -1, 75, -1, ! -1, -1, 53, 80, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, ! -1, -1, -1, -1, 75, -1, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, 75, -1, 43, 44, 45, 80, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, 43, 44, 45, -1, 47, 48, 49, 50, 51, ! 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, ! -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 43, 44, 45, 96, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, 43, 44, 45, 96, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, -1, -1, 43, 44, 45, 96, 47, 48, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, 43, 44, 45, 96, 47, 48, 49, 50, 51, ! 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, ! -1, 11, -1, -1, -1, -1, -1, -1, -1, -1, ! -1, 43, 44, 45, 94, 47, 48, 49, 50, 51, ! 52, 53, 54, 55, 56, 57, 58, 59, 60, -1, ! -1, -1, 94, 43, 44, 45, 46, 47, 48, 49, ! 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, ! 60, -1, -1, -1, -1, -1, -1, -1, -1, 43, ! 44, 45, 94, 47, 48, 49, 50, 51, 52, 53, ! 54, 55, 56, 57, 58, 59, 60, 43, 44, 45, ! -1, 47, 48, 49, 50, 51, 52, 53, 54, 55, ! 56, 57, 58, 59, 60, -1, -1, -1, -1, -1, ! -1, -1, -1, -1, -1, 89 }; ! /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing ! symbol of state STATE-NUM. */ ! static const unsigned short yystos[] = { ! 0, 98, 99, 100, 0, 101, 1, 4, 5, 6, ! 7, 8, 13, 14, 15, 28, 29, 31, 32, 53, ! 56, 57, 69, 70, 71, 75, 79, 80, 81, 82, ! 90, 102, 103, 104, 105, 120, 136, 139, 140, 141, ! 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, ! 152, 153, 154, 155, 156, 162, 164, 165, 166, 167, ! 168, 177, 178, 182, 205, 206, 207, 208, 213, 307, ! 308, 310, 311, 314, 319, 322, 329, 330, 102, 90, ! 91, 177, 177, 177, 66, 66, 3, 4, 75, 80, ! 112, 309, 112, 112, 321, 322, 112, 309, 321, 309, ! 112, 66, 3, 58, 66, 170, 174, 204, 8, 164, ! 165, 177, 182, 8, 164, 165, 182, 8, 164, 165, ! 177, 182, 8, 164, 165, 182, 8, 166, 167, 177, ! 182, 8, 166, 167, 182, 8, 166, 167, 177, 182, ! 8, 166, 167, 182, 8, 164, 165, 177, 182, 8, ! 164, 165, 182, 8, 164, 165, 177, 182, 8, 164, ! 165, 182, 8, 166, 167, 177, 182, 8, 166, 167, ! 182, 8, 166, 167, 177, 182, 8, 166, 167, 182, ! 136, 136, 90, 178, 95, 112, 95, 112, 95, 112, ! 102, 331, 3, 9, 10, 12, 30, 34, 35, 36, ! 37, 38, 42, 48, 51, 56, 57, 58, 61, 62, ! 66, 67, 72, 74, 79, 88, 92, 93, 113, 114, ! 116, 117, 118, 119, 121, 122, 128, 252, 307, 359, ! 363, 364, 365, 66, 53, 94, 46, 66, 312, 66, ! 312, 321, 90, 90, 112, 114, 139, 140, 141, 142, ! 143, 144, 145, 146, 161, 225, 139, 140, 141, 142, ! 160, 163, 176, 177, 90, 94, 1, 28, 66, 67, ! 110, 171, 233, 4, 58, 66, 80, 169, 172, 199, ! 200, 204, 170, 204, 73, 216, 217, 95, 216, 95, ! 212, 95, 3, 4, 7, 8, 12, 13, 14, 15, ! 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, ! 26, 27, 28, 29, 30, 46, 66, 75, 80, 340, ! 349, 350, 351, 352, 353, 121, 121, 66, 66, 66, ! 112, 121, 1, 95, 114, 225, 4, 75, 114, 358, ! 66, 66, 66, 121, 89, 94, 66, 117, 66, 117, ! 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, ! 54, 55, 56, 57, 58, 59, 60, 61, 62, 65, ! 66, 67, 68, 1, 91, 241, 250, 121, 7, 8, ! 112, 179, 180, 181, 182, 112, 112, 112, 321, 112, ! 317, 320, 90, 89, 226, 89, 204, 204, 137, 176, ! 66, 176, 302, 6, 160, 163, 1, 130, 131, 132, ! 133, 240, 259, 176, 163, 176, 90, 94, 1, 106, ! 171, 66, 233, 90, 1, 108, 66, 91, 1, 90, ! 139, 140, 141, 142, 143, 144, 145, 146, 159, 160, ! 218, 307, 209, 91, 210, 1, 112, 223, 224, 211, ! 66, 112, 225, 332, 94, 347, 351, 353, 46, 122, ! 122, 225, 89, 89, 89, 46, 351, 354, 355, 357, ! 46, 351, 360, 361, 362, 225, 112, 90, 122, 225, ! 225, 122, 122, 125, 127, 124, 123, 122, 122, 122, ! 122, 122, 122, 122, 122, 122, 122, 122, 122, 112, ! 115, 116, 114, 112, 89, 33, 245, 246, 247, 89, ! 89, 94, 66, 89, 315, 89, 95, 313, 334, 58, ! 66, 227, 229, 230, 231, 232, 233, 89, 174, 204, ! 10, 303, 163, 6, 58, 96, 122, 90, 259, 240, ! 132, 134, 139, 140, 143, 144, 147, 148, 151, 152, ! 157, 158, 43, 200, 200, 137, 130, 176, 302, 130, ! 75, 176, 136, 136, 90, 218, 216, 176, 216, 43, ! 94, 215, 223, 225, 89, 90, 341, 11, 348, 66, ! 112, 94, 94, 94, 95, 121, 116, 356, 46, 96, ! 351, 357, 46, 89, 351, 362, 89, 89, 89, 89, ! 114, 46, 122, 122, 89, 96, 112, 306, 1, 135, ! 234, 235, 236, 237, 238, 239, 240, 251, 259, 262, ! 263, 247, 89, 180, 3, 115, 321, 313, 323, 325, ! 71, 329, 335, 337, 163, 176, 292, 66, 233, 89, ! 1, 3, 11, 157, 158, 294, 297, 298, 300, 304, ! 305, 122, 122, 96, 96, 111, 90, 136, 90, 136, ! 175, 89, 172, 199, 259, 43, 259, 89, 46, 199, ! 219, 221, 46, 204, 220, 222, 91, 91, 122, 224, ! 91, 215, 89, 349, 350, 139, 140, 141, 142, 143, ! 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, ! 154, 155, 156, 240, 342, 343, 344, 333, 297, 298, ! 225, 225, 122, 225, 129, 356, 46, 122, 90, 94, ! 135, 262, 263, 135, 262, 263, 259, 262, 263, 135, ! 262, 263, 240, 91, 3, 4, 22, 23, 24, 25, ! 26, 27, 28, 75, 80, 83, 84, 87, 90, 95, ! 112, 114, 138, 155, 156, 162, 243, 249, 253, 274, ! 277, 279, 285, 307, 89, 94, 89, 318, 316, 76, ! 77, 78, 91, 324, 1, 90, 159, 160, 326, 338, ! 104, 136, 155, 156, 230, 231, 229, 293, 176, 292, ! 89, 136, 301, 301, 89, 90, 94, 89, 94, 96, ! 96, 1, 248, 253, 169, 170, 1, 95, 122, 183, ! 107, 173, 109, 122, 46, 176, 94, 122, 46, 176, ! 94, 176, 176, 176, 91, 112, 347, 90, 136, 90, ! 344, 240, 248, 89, 89, 94, 89, 1, 65, 67, ! 95, 112, 122, 185, 186, 187, 189, 191, 192, 126, ! 112, 242, 122, 46, 90, 90, 90, 114, 58, 112, ! 8, 286, 90, 114, 280, 66, 259, 90, 136, 136, ! 90, 16, 18, 19, 20, 21, 254, 255, 257, 264, ! 250, 275, 278, 138, 116, 334, 334, 325, 136, 136, ! 90, 340, 136, 136, 89, 294, 4, 58, 66, 80, ! 201, 202, 203, 204, 228, 229, 230, 58, 66, 204, ! 228, 295, 11, 155, 156, 299, 3, 253, 90, 90, ! 184, 248, 183, 248, 176, 122, 137, 176, 122, 137, ! 176, 201, 204, 228, 345, 346, 112, 122, 112, 122, ! 190, 46, 91, 94, 214, 43, 67, 192, 189, 122, ! 11, 46, 90, 114, 90, 66, 90, 253, 114, 46, ! 169, 193, 199, 170, 196, 204, 256, 266, 258, 268, ! 66, 17, 1, 243, 261, 1, 66, 244, 86, 284, ! 85, 281, 282, 89, 71, 71, 46, 199, 327, 328, ! 327, 339, 163, 176, 176, 66, 233, 66, 233, 176, ! 177, 163, 176, 176, 176, 136, 136, 185, 176, 221, ! 176, 222, 176, 176, 90, 94, 89, 11, 96, 185, ! 188, 187, 189, 122, 122, 90, 114, 89, 176, 90, ! 194, 90, 197, 66, 66, 261, 66, 114, 1, 265, ! 260, 262, 263, 114, 253, 66, 282, 122, 46, 94, ! 1, 90, 336, 202, 203, 203, 302, 302, 296, 201, ! 204, 228, 204, 228, 91, 346, 122, 91, 189, 46, ! 46, 89, 276, 130, 130, 114, 114, 18, 114, 138, ! 273, 287, 89, 261, 244, 260, 89, 299, 122, 137, ! 89, 294, 176, 176, 176, 96, 10, 67, 288, 289, ! 290, 90, 253, 259, 259, 89, 89, 269, 90, 272, ! 90, 89, 328, 66, 112, 46, 89, 94, 195, 198, ! 267, 287, 261, 283, 114, 96, 288, 90, 290, 253, ! 253, 261, 90, 253, 89, 10, 46, 89, 270, 66, ! 10, 291, 90, 287, 114, 89, 94, 89, 89, 90, ! 10, 271, 261 }; #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) # define YYSIZE_T __SIZE_TYPE__ #endif *************** union yyalloc *** 2424,2452 **** #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) ! #define YYEMPTY -2 #define YYEOF 0 #define YYACCEPT goto yyacceptlab ! #define YYABORT goto yyabortlab #define YYERROR goto yyerrlab1 /* 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); \ YYPOPSTACK; \ goto yybackup; \ } \ else \ { \ ! yyerror ("syntax error: cannot back up"); \ YYERROR; \ } \ while (0) --- 2688,2721 ---- #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) ! #define YYEMPTY (-2) #define YYEOF 0 + #define YYACCEPT goto yyacceptlab ! #define YYABORT goto yyabortlab #define YYERROR goto yyerrlab1 + /* 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); \ ! yytoken = YYTRANSLATE (yychar); \ YYPOPSTACK; \ goto yybackup; \ } \ else \ { \ ! yyerror ("syntax error: cannot back up");\ YYERROR; \ } \ while (0) *************** while (0) *** 2454,2494 **** #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. */ #ifndef YYLLOC_DEFAULT ! # define YYLLOC_DEFAULT(Current, Rhs, N) \ ! Current.last_line = Rhs[N].last_line; \ ! Current.last_column = Rhs[N].last_column; #endif - /* YYLEX -- calling `yylex' with the right arguments. */ ! #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 */ ! /* Enable debugging if requested. */ #if YYDEBUG --- 2723,2746 ---- #define YYTERROR 1 #define YYERRCODE 256 /* YYLLOC_DEFAULT -- Compute the default location (before the actions ! are run). */ #ifndef YYLLOC_DEFAULT ! # define YYLLOC_DEFAULT(Current, Rhs, N) \ ! Current.first_line = Rhs[1].first_line; \ ! Current.first_column = Rhs[1].first_column; \ ! Current.last_line = Rhs[N].last_line; \ ! Current.last_column = Rhs[N].last_column; #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 *************** do { \ *** 2503,2515 **** --- 2755,2847 ---- if (yydebug) \ YYFPRINTF Args; \ } while (0) + + # define YYDSYMPRINT(Args) \ + do { \ + if (yydebug) \ + yysymprint Args; \ + } while (0) + + # define YYDSYMPRINTF(Title, Token, Value, Location) \ + do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yysymprint (stderr, \ + Token, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ + } while (0) + + /*------------------------------------------------------------------. + | yy_stack_print -- Print the state stack from its BOTTOM up to its | + | TOP (cinluded). | + `------------------------------------------------------------------*/ + + #if defined (__STDC__) || defined (__cplusplus) + static void + yy_stack_print (short *bottom, short *top) + #else + static void + yy_stack_print (bottom, top) + short *bottom; + short *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 int yylineno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", + yyrule - 1, yylineno); + /* 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 YYDSYMPRINT(Args) + # define YYDSYMPRINTF(Title, Token, 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 *************** int yydebug; *** 2529,2536 **** #ifndef YYMAXDEPTH # define YYMAXDEPTH 10000 #endif ! #ifdef YYERROR_VERBOSE # ifndef yystrlen # if defined (__GLIBC__) && defined (_STRING_H) --- 2861,2870 ---- #ifndef YYMAXDEPTH # define YYMAXDEPTH 10000 #endif + ! ! #if YYERROR_VERBOSE # ifndef yystrlen # if defined (__GLIBC__) && defined (_STRING_H) *************** yystpcpy (yydest, yysrc) *** 2580,2665 **** } # endif # endif ! #endif - #line 315 "/usr/share/bison/bison.simple" ! /* 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. */ #ifdef YYPARSE_PARAM # if defined (__STDC__) || defined (__cplusplus) ! # define YYPARSE_PARAM_ARG void *YYPARSE_PARAM ! # define YYPARSE_PARAM_DECL # else ! # define YYPARSE_PARAM_ARG YYPARSE_PARAM ! # define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; # 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 int yyparse (void); ! # endif #endif - /* 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 ! /* If nonreentrant, generate the variables here. */ - #if !YYPURE - YY_DECL_VARIABLES - #endif /* !YYPURE */ int ! yyparse (YYPARSE_PARAM_ARG) ! YYPARSE_PARAM_DECL ! { ! /* If reentrant, generate the variables here. */ ! #if YYPURE ! YY_DECL_VARIABLES ! #endif /* !YYPURE */ register int yystate; register 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; /* Three stacks and their tools: `yyss': related to states, --- 2914,3047 ---- } # endif # endif ! ! #endif /* !YYERROR_VERBOSE */ ! + #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]); ! # ifdef YYPRINT ! YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); ! # endif ! } ! else ! YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); ! ! switch (yytype) ! { ! default: ! break; ! } ! YYFPRINTF (yyoutput, ")"); ! } ! ! #endif /* ! YYDEBUG */ ! /*-----------------------------------------------. ! | Release the memory associated to this symbol. | ! `-----------------------------------------------*/ ! ! #if defined (__STDC__) || defined (__cplusplus) ! static void ! yydestruct (int yytype, YYSTYPE *yyvaluep) ! #else ! static void ! yydestruct (yytype, yyvaluep) ! int yytype; ! YYSTYPE *yyvaluep; ! #endif ! { ! /* Pacify ``unused variable'' warnings. */ ! (void) yyvaluep; ! ! switch (yytype) ! { ! ! default: ! break; ! } ! } ! ! ! /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM # if defined (__STDC__) || defined (__cplusplus) ! int yyparse (void *YYPARSE_PARAM); # else ! int yyparse (); # endif ! #else /* ! YYPARSE_PARAM */ ! #if defined (__STDC__) || defined (__cplusplus) int yyparse (void); ! #else ! int yyparse (); #endif + #endif /* ! YYPARSE_PARAM */ ! /* The lookahead symbol. */ ! int yychar; + /* The semantic value of the lookahead symbol. */ + YYSTYPE yylval; ! /* Number of syntax errors so far. */ ! int yynerrs; + + /*----------. + | 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 (void) ! #else ! int ! yyparse () + #endif + #endif + { + register int yystate; register int yyn; int yyresult; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; /* Lookahead token as an internal (translated) token number. */ ! int yytoken = 0; /* Three stacks and their tools: `yyss': related to states, *************** yyparse (YYPARSE_PARAM_ARG) *** 2669,2675 **** 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; --- 3051,3057 ---- 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; *************** yyparse (YYPARSE_PARAM_ARG) *** 2679,2709 **** YYSTYPE *yyvs = yyvsa; register 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; /* 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. */ int yylen; YYDPRINTF ((stderr, "Starting parse\n")); --- 3061,3079 ---- YYSTYPE *yyvs = yyvsa; register YYSTYPE *yyvsp; ! #define YYPOPSTACK (yyvsp--, yyssp--) + YYSIZE_T yystacksize = YYINITDEPTH; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; ! /* When reducing, the number of symbols on the RHS of the reduced ! rule. */ int yylen; YYDPRINTF ((stderr, "Starting parse\n")); *************** yyparse (YYPARSE_PARAM_ARG) *** 2720,2728 **** yyssp = yyss; yyvsp = yyvs; ! #if YYLSP_NEEDED ! yylsp = yyls; ! #endif goto yysetstate; /*------------------------------------------------------------. --- 3090,3096 ---- yyssp = yyss; yyvsp = yyvs; ! goto yysetstate; /*------------------------------------------------------------. *************** yyparse (YYPARSE_PARAM_ARG) *** 2737,2743 **** yysetstate: *yyssp = yystate; ! if (yyssp >= yyss + yystacksize - 1) { /* Get the current used size of the three stacks, in elements. */ YYSIZE_T yysize = yyssp - yyss + 1; --- 3105,3111 ---- yysetstate: *yyssp = yystate; ! if (yyss + yystacksize - 1 <= yyssp) { /* Get the current used size of the three stacks, in elements. */ YYSIZE_T yysize = yyssp - yyss + 1; *************** yyparse (YYPARSE_PARAM_ARG) *** 2750,2773 **** YYSTYPE *yyvs1 = yyvs; short *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", &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), &yystacksize); ! # endif yyss = yyss1; yyvs = yyvs1; } --- 3118,3134 ---- YYSTYPE *yyvs1 = yyvs; short *yyss1 = yyss; + /* Each stack pointer address is followed by the size of the ! 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 ("parser stack overflow", &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), + &yystacksize); ! yyss = yyss1; yyvs = yyvs1; } *************** yyparse (YYPARSE_PARAM_ARG) *** 2776,2785 **** goto yyoverflowlab; # else /* Extend the stack our own way. */ ! if (yystacksize >= YYMAXDEPTH) goto yyoverflowlab; yystacksize *= 2; ! if (yystacksize > YYMAXDEPTH) yystacksize = YYMAXDEPTH; { --- 3137,3146 ---- goto yyoverflowlab; # else /* Extend the stack our own way. */ ! if (YYMAXDEPTH <= yystacksize) goto yyoverflowlab; yystacksize *= 2; ! if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; { *************** yyparse (YYPARSE_PARAM_ARG) *** 2790,2799 **** goto yyoverflowlab; YYSTACK_RELOCATE (yyss); YYSTACK_RELOCATE (yyvs); ! # if YYLSP_NEEDED ! YYSTACK_RELOCATE (yyls); ! # endif ! # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); } --- 3151,3158 ---- goto yyoverflowlab; YYSTACK_RELOCATE (yyss); YYSTACK_RELOCATE (yyvs); ! ! # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); } *************** yyparse (YYPARSE_PARAM_ARG) *** 2802,2815 **** 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) YYABORT; } --- 3161,3172 ---- yyssp = yyss + yysize - 1; yyvsp = yyvs + yysize - 1; ! YYDPRINTF ((stderr, "Stack size increased to %lu\n", (unsigned long int) yystacksize)); ! if (yyss + yystacksize - 1 <= yyssp) YYABORT; } *************** yyparse (YYPARSE_PARAM_ARG) *** 2817,2823 **** goto yybackup; - /*-----------. | yybackup. | `-----------*/ --- 3174,3179 ---- *************** yybackup: *** 2830,2917 **** /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; ! if (yyn == YYFLAG) 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. */ ! 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. */ { ! yychar1 = 0; ! yychar = YYEOF; /* Don't call YYLEX any more */ ! 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 } ! yyn += yychar1; ! if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) 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 == YYFLAG) 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])); /* 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. */ --- 3186,3240 ---- /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; ! 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 lookahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); yychar = YYLEX; } ! if (yychar <= YYEOF) { ! yychar = yytoken = YYEOF; YYDPRINTF ((stderr, "Now at end of input.\n")); } else { ! yytoken = YYTRANSLATE (yychar); ! YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc); } ! /* 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]; ! if (yyn <= 0) { ! if (yyn == 0 || yyn == YYTABLE_NINF) goto yyerrlab; yyn = -yyn; goto yyreduce; } if (yyn == YYFINAL) YYACCEPT; /* Shift the lookahead token. */ ! YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken])); /* Discard the token being shifted unless it is eof. */ if (yychar != YYEOF) yychar = YYEMPTY; *++yyvsp = yylval; ! /* Count tokens shifted since error; after three, turn off error status. */ *************** yyreduce: *** 2942,3375 **** /* 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 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) { ! 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 1: #line 343 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids an empty source file"); ! ; ! break;} ! case 3: #line 354 "objc/objc-parse.y" ! {yyval.ttype = NULL_TREE; ; ! break;} ! case 5: #line 355 "objc/objc-parse.y" ! {yyval.ttype = NULL_TREE; ggc_collect(); ; ! break;} ! case 7: #line 360 "objc/objc-parse.y" ! { parsing_iso_function_signature = false; ; ! break;} ! case 11: #line 368 "objc/objc-parse.y" ! { STRIP_NOPS (yyvsp[-2].ttype); if ((TREE_CODE (yyvsp[-2].ttype) == ADDR_EXPR && TREE_CODE (TREE_OPERAND (yyvsp[-2].ttype, 0)) == STRING_CST) || TREE_CODE (yyvsp[-2].ttype) == STRING_CST) assemble_asm (yyvsp[-2].ttype); else ! error ("argument of `asm' is not a constant string"); ; ! break;} ! case 12: #line 376 "objc/objc-parse.y" ! { RESTORE_EXT_FLAGS (yyvsp[-1].itype); ; ! break;} ! case 13: #line 381 "objc/objc-parse.y" ! { if (pedantic) error ("ISO C forbids data definition with no type or storage class"); else warning ("data definition has no type or storage class"); ! POP_DECLSPEC_STACK; ; ! break;} ! case 14: #line 388 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 15: #line 390 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 16: #line 392 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ; ! break;} ! case 19: #line 396 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C does not allow extra `;' outside of a function"); ; ! break;} ! case 20: #line 402 "objc/objc-parse.y" ! { if (! start_function (current_declspecs, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ; ! break;} ! case 21: #line 407 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ; ! break;} ! case 22: #line 410 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ; ! break;} ! case 23: #line 413 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 24: #line 415 "objc/objc-parse.y" ! { if (! start_function (current_declspecs, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ; ! break;} ! case 25: #line 420 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ; ! break;} ! case 26: #line 423 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ; ! break;} ! case 27: #line 426 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 28: #line 428 "objc/objc-parse.y" ! { if (! start_function (NULL_TREE, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ; ! break;} ! case 29: #line 433 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ; ! break;} ! case 30: #line 436 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ; ! break;} ! case 31: #line 439 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 36: #line 450 "objc/objc-parse.y" ! { yyval.code = ADDR_EXPR; ; ! break;} ! case 37: #line 452 "objc/objc-parse.y" ! { yyval.code = NEGATE_EXPR; ; ! break;} ! case 38: #line 454 "objc/objc-parse.y" ! { yyval.code = CONVERT_EXPR; ! ; ! break;} ! case 39: #line 457 "objc/objc-parse.y" ! { yyval.code = PREINCREMENT_EXPR; ; ! break;} ! case 40: #line 459 "objc/objc-parse.y" ! { yyval.code = PREDECREMENT_EXPR; ; ! break;} ! case 41: #line 461 "objc/objc-parse.y" ! { yyval.code = BIT_NOT_EXPR; ; ! break;} ! case 42: #line 463 "objc/objc-parse.y" ! { yyval.code = TRUTH_NOT_EXPR; ; ! break;} ! case 43: #line 467 "objc/objc-parse.y" ! { yyval.ttype = build_compound_expr (yyvsp[0].ttype); ; ! break;} ! case 44: #line 472 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 46: #line 478 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; ! break;} ! case 47: #line 480 "objc/objc-parse.y" ! { chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; ! break;} ! case 49: #line 486 "objc/objc-parse.y" ! { yyval.ttype = build_indirect_ref (yyvsp[0].ttype, "unary *"); ; ! break;} ! case 50: #line 489 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! RESTORE_EXT_FLAGS (yyvsp[-1].itype); ; ! break;} ! case 51: #line 492 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (yyvsp[-1].code, yyvsp[0].ttype, 0); ! overflow_warning (yyval.ttype); ; ! break;} ! case 52: #line 496 "objc/objc-parse.y" ! { yyval.ttype = finish_label_address_expr (yyvsp[0].ttype); ; ! break;} ! case 53: #line 498 "objc/objc-parse.y" ! { skip_evaluation--; if (TREE_CODE (yyvsp[0].ttype) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (yyvsp[0].ttype, 1))) error ("`sizeof' applied to a bit-field"); ! yyval.ttype = c_sizeof (TREE_TYPE (yyvsp[0].ttype)); ; ! break;} ! case 54: #line 504 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ttype)); ; ! break;} ! case 55: #line 507 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_alignof_expr (yyvsp[0].ttype); ; ! break;} ! case 56: #line 510 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_alignof (groktypename (yyvsp[-1].ttype)); ; ! break;} ! case 57: #line 513 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (REALPART_EXPR, yyvsp[0].ttype, 0); ; ! break;} ! case 58: #line 515 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (IMAGPART_EXPR, yyvsp[0].ttype, 0); ; ! break;} ! case 59: #line 519 "objc/objc-parse.y" ! { skip_evaluation++; ; ! break;} ! case 60: #line 523 "objc/objc-parse.y" ! { skip_evaluation++; ; ! break;} ! case 61: #line 527 "objc/objc-parse.y" ! { skip_evaluation++; ; ! break;} ! case 63: #line 533 "objc/objc-parse.y" ! { yyval.ttype = c_cast_expr (yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 65: #line 539 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 66: #line 541 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 67: #line 543 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 68: #line 545 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 69: #line 547 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 70: #line 549 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 71: #line 551 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 72: #line 553 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 73: #line 555 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 74: #line 557 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 75: #line 559 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 76: #line 561 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 77: #line 563 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_false_node; ; ! break;} ! case 78: #line 567 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-3].ttype == truthvalue_false_node; ! yyval.ttype = parser_build_binary_op (TRUTH_ANDIF_EXPR, yyvsp[-3].ttype, yyvsp[0].ttype); ; ! break;} ! case 79: #line 570 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_true_node; ; ! break;} ! case 80: #line 574 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-3].ttype == truthvalue_true_node; ! yyval.ttype = parser_build_binary_op (TRUTH_ORIF_EXPR, yyvsp[-3].ttype, yyvsp[0].ttype); ; ! break;} ! case 81: #line 577 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_false_node; ; ! break;} ! case 82: #line 581 "objc/objc-parse.y" ! { skip_evaluation += ((yyvsp[-4].ttype == truthvalue_true_node) ! - (yyvsp[-4].ttype == truthvalue_false_node)); ; ! break;} ! case 83: #line 584 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-6].ttype == truthvalue_true_node; ! yyval.ttype = build_conditional_expr (yyvsp[-6].ttype, yyvsp[-3].ttype, yyvsp[0].ttype); ; ! break;} ! case 84: #line 587 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids omitting the middle term of a ?: expression"); /* Make sure first operand is calculated only once. */ yyvsp[0].ttype = save_expr (yyvsp[-1].ttype); yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[0].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_true_node; ; ! break;} ! case 85: #line 595 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-4].ttype == truthvalue_true_node; ! yyval.ttype = build_conditional_expr (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[0].ttype); ; ! break;} ! case 86: #line 598 "objc/objc-parse.y" ! { char class; yyval.ttype = build_modify_expr (yyvsp[-2].ttype, NOP_EXPR, yyvsp[0].ttype); class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyval.ttype, MODIFY_EXPR); ! ; ! break;} ! case 87: #line 605 "objc/objc-parse.y" ! { char class; yyval.ttype = build_modify_expr (yyvsp[-2].ttype, yyvsp[-1].code, yyvsp[0].ttype); /* This inhibits warnings in c_common_truthvalue_conversion. */ class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyval.ttype, ERROR_MARK); ! ; ! break;} ! case 88: #line 617 "objc/objc-parse.y" ! { if (yychar == YYEMPTY) yychar = YYLEX; yyval.ttype = build_external_ref (yyvsp[0].ttype, yychar == '('); ! ; ! break;} ! case 91: #line 625 "objc/objc-parse.y" ! { yyval.ttype = fname_decl (C_RID_CODE (yyval.ttype), yyval.ttype); ; ! break;} ! case 92: #line 627 "objc/objc-parse.y" ! { start_init (NULL_TREE, NULL, 0); yyvsp[-2].ttype = groktypename (yyvsp[-2].ttype); ! really_start_incremental_init (yyvsp[-2].ttype); ; ! break;} ! case 93: #line 631 "objc/objc-parse.y" ! { tree constructor = pop_init_level (0); tree type = yyvsp[-5].ttype; finish_init (); if (pedantic && ! flag_isoc99) pedwarn ("ISO C90 forbids compound literals"); yyval.ttype = build_compound_literal (type, constructor); ! ; ! break;} ! case 94: #line 640 "objc/objc-parse.y" ! { char class = TREE_CODE_CLASS (TREE_CODE (yyvsp[-1].ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyvsp[-1].ttype, ERROR_MARK); ! yyval.ttype = yyvsp[-1].ttype; ; ! break;} ! case 95: #line 645 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ; ! break;} ! case 96: #line 647 "objc/objc-parse.y" ! { tree saved_last_tree; if (pedantic) pedwarn ("ISO C forbids braced-groups within expressions"); --- 3265,3753 ---- /* If YYLEN is nonzero, implement the default value of the action: `$$ = $1'. ! 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]; ! YY_REDUCE_PRINT (yyn); ! switch (yyn) { ! case 2: #line 343 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids an empty source file"); ! ;} ! break; ! ! case 4: #line 354 "objc/objc-parse.y" ! {yyval.ttype = NULL_TREE; ;} ! break; ! ! case 6: #line 355 "objc/objc-parse.y" ! {yyval.ttype = NULL_TREE; ggc_collect(); ;} ! break; ! ! case 8: #line 360 "objc/objc-parse.y" ! { parsing_iso_function_signature = false; ;} ! break; ! ! case 12: #line 368 "objc/objc-parse.y" ! { STRIP_NOPS (yyvsp[-2].ttype); if ((TREE_CODE (yyvsp[-2].ttype) == ADDR_EXPR && TREE_CODE (TREE_OPERAND (yyvsp[-2].ttype, 0)) == STRING_CST) || TREE_CODE (yyvsp[-2].ttype) == STRING_CST) assemble_asm (yyvsp[-2].ttype); else ! error ("argument of `asm' is not a constant string"); ;} ! break; ! ! case 13: #line 376 "objc/objc-parse.y" ! { RESTORE_EXT_FLAGS (yyvsp[-1].itype); ;} ! break; ! ! case 14: #line 381 "objc/objc-parse.y" ! { if (pedantic) error ("ISO C forbids data definition with no type or storage class"); else warning ("data definition has no type or storage class"); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 15: #line 388 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 16: #line 390 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 17: #line 392 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ;} ! break; ! ! case 20: #line 396 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C does not allow extra `;' outside of a function"); ;} ! break; ! ! case 21: #line 402 "objc/objc-parse.y" ! { if (! start_function (current_declspecs, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ;} ! break; ! ! case 22: #line 407 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ;} ! break; ! ! case 23: #line 410 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 24: #line 413 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 25: #line 415 "objc/objc-parse.y" ! { if (! start_function (current_declspecs, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ;} ! break; ! ! case 26: #line 420 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ;} ! break; ! ! case 27: #line 423 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 28: #line 426 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 29: #line 428 "objc/objc-parse.y" ! { if (! start_function (NULL_TREE, yyvsp[0].ttype, all_prefix_attributes)) YYERROR1; ! ;} ! break; ! ! case 30: #line 433 "objc/objc-parse.y" ! { DECL_SOURCE_LOCATION (current_function_decl) = yyvsp[0].location; ! store_parm_decls (); ;} ! break; ! ! case 31: #line 436 "objc/objc-parse.y" ! { finish_function (); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 32: #line 439 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 37: #line 450 "objc/objc-parse.y" ! { yyval.code = ADDR_EXPR; ;} ! break; ! ! case 38: #line 452 "objc/objc-parse.y" ! { yyval.code = NEGATE_EXPR; ;} ! break; ! ! case 39: #line 454 "objc/objc-parse.y" ! { yyval.code = CONVERT_EXPR; ! ;} ! break; ! ! case 40: #line 457 "objc/objc-parse.y" ! { yyval.code = PREINCREMENT_EXPR; ;} ! break; ! ! case 41: #line 459 "objc/objc-parse.y" ! { yyval.code = PREDECREMENT_EXPR; ;} ! break; ! ! case 42: #line 461 "objc/objc-parse.y" ! { yyval.code = BIT_NOT_EXPR; ;} ! break; ! ! case 43: #line 463 "objc/objc-parse.y" ! { yyval.code = TRUTH_NOT_EXPR; ;} ! break; ! ! case 44: #line 467 "objc/objc-parse.y" ! { yyval.ttype = build_compound_expr (yyvsp[0].ttype); ;} ! break; ! ! case 45: #line 472 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 47: #line 478 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;} ! break; ! ! case 48: #line 480 "objc/objc-parse.y" ! { chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;} ! break; ! ! case 50: #line 486 "objc/objc-parse.y" ! { yyval.ttype = build_indirect_ref (yyvsp[0].ttype, "unary *"); ;} ! break; ! ! case 51: #line 489 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! RESTORE_EXT_FLAGS (yyvsp[-1].itype); ;} ! break; ! ! case 52: #line 492 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (yyvsp[-1].code, yyvsp[0].ttype, 0); ! overflow_warning (yyval.ttype); ;} ! break; ! ! case 53: #line 496 "objc/objc-parse.y" ! { yyval.ttype = finish_label_address_expr (yyvsp[0].ttype); ;} ! break; ! ! case 54: #line 498 "objc/objc-parse.y" ! { skip_evaluation--; if (TREE_CODE (yyvsp[0].ttype) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (yyvsp[0].ttype, 1))) error ("`sizeof' applied to a bit-field"); ! yyval.ttype = c_sizeof (TREE_TYPE (yyvsp[0].ttype)); ;} ! break; ! ! case 55: #line 504 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ttype)); ;} ! break; ! ! case 56: #line 507 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_alignof_expr (yyvsp[0].ttype); ;} ! break; ! ! case 57: #line 510 "objc/objc-parse.y" ! { skip_evaluation--; ! yyval.ttype = c_alignof (groktypename (yyvsp[-1].ttype)); ;} ! break; ! ! case 58: #line 513 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (REALPART_EXPR, yyvsp[0].ttype, 0); ;} ! break; ! ! case 59: #line 515 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (IMAGPART_EXPR, yyvsp[0].ttype, 0); ;} ! break; ! ! case 60: #line 519 "objc/objc-parse.y" ! { skip_evaluation++; ;} ! break; ! ! case 61: #line 523 "objc/objc-parse.y" ! { skip_evaluation++; ;} ! break; ! ! case 62: #line 527 "objc/objc-parse.y" ! { skip_evaluation++; ;} ! break; ! ! case 64: #line 533 "objc/objc-parse.y" ! { yyval.ttype = c_cast_expr (yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 66: #line 539 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 67: #line 541 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 68: #line 543 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 69: #line 545 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 70: #line 547 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 71: #line 549 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 72: #line 551 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 73: #line 553 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 74: #line 555 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 75: #line 557 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 76: #line 559 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 77: #line 561 "objc/objc-parse.y" ! { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 78: #line 563 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_false_node; ;} ! break; ! ! case 79: #line 567 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-3].ttype == truthvalue_false_node; ! yyval.ttype = parser_build_binary_op (TRUTH_ANDIF_EXPR, yyvsp[-3].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 80: #line 570 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_true_node; ;} ! break; ! ! case 81: #line 574 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-3].ttype == truthvalue_true_node; ! yyval.ttype = parser_build_binary_op (TRUTH_ORIF_EXPR, yyvsp[-3].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 82: #line 577 "objc/objc-parse.y" ! { yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[-1].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_false_node; ;} ! break; ! ! case 83: #line 581 "objc/objc-parse.y" ! { skip_evaluation += ((yyvsp[-4].ttype == truthvalue_true_node) ! - (yyvsp[-4].ttype == truthvalue_false_node)); ;} ! break; ! ! case 84: #line 584 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-6].ttype == truthvalue_true_node; ! yyval.ttype = build_conditional_expr (yyvsp[-6].ttype, yyvsp[-3].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 85: #line 587 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids omitting the middle term of a ?: expression"); /* Make sure first operand is calculated only once. */ yyvsp[0].ttype = save_expr (yyvsp[-1].ttype); yyvsp[-1].ttype = c_common_truthvalue_conversion (default_conversion (yyvsp[0].ttype)); ! skip_evaluation += yyvsp[-1].ttype == truthvalue_true_node; ;} ! break; ! ! case 86: #line 595 "objc/objc-parse.y" ! { skip_evaluation -= yyvsp[-4].ttype == truthvalue_true_node; ! yyval.ttype = build_conditional_expr (yyvsp[-4].ttype, yyvsp[-3].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 87: #line 598 "objc/objc-parse.y" ! { char class; yyval.ttype = build_modify_expr (yyvsp[-2].ttype, NOP_EXPR, yyvsp[0].ttype); class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyval.ttype, MODIFY_EXPR); ! ;} ! break; ! ! case 88: #line 605 "objc/objc-parse.y" ! { char class; yyval.ttype = build_modify_expr (yyvsp[-2].ttype, yyvsp[-1].code, yyvsp[0].ttype); /* This inhibits warnings in c_common_truthvalue_conversion. */ class = TREE_CODE_CLASS (TREE_CODE (yyval.ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyval.ttype, ERROR_MARK); ! ;} ! break; ! ! case 89: #line 617 "objc/objc-parse.y" ! { if (yychar == YYEMPTY) yychar = YYLEX; yyval.ttype = build_external_ref (yyvsp[0].ttype, yychar == '('); ! ;} ! break; ! ! case 92: #line 625 "objc/objc-parse.y" ! { yyval.ttype = fname_decl (C_RID_CODE (yyval.ttype), yyval.ttype); ;} ! break; ! ! case 93: #line 627 "objc/objc-parse.y" ! { start_init (NULL_TREE, NULL, 0); yyvsp[-2].ttype = groktypename (yyvsp[-2].ttype); ! really_start_incremental_init (yyvsp[-2].ttype); ;} ! break; ! ! case 94: #line 631 "objc/objc-parse.y" ! { tree constructor = pop_init_level (0); tree type = yyvsp[-5].ttype; finish_init (); if (pedantic && ! flag_isoc99) pedwarn ("ISO C90 forbids compound literals"); yyval.ttype = build_compound_literal (type, constructor); ! ;} ! break; ! ! case 95: #line 640 "objc/objc-parse.y" ! { char class = TREE_CODE_CLASS (TREE_CODE (yyvsp[-1].ttype)); if (IS_EXPR_CODE_CLASS (class)) C_SET_EXP_ORIGINAL_CODE (yyvsp[-1].ttype, ERROR_MARK); ! yyval.ttype = yyvsp[-1].ttype; ;} ! break; ! ! case 96: #line 645 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ;} ! break; ! ! case 97: #line 647 "objc/objc-parse.y" ! { tree saved_last_tree; if (pedantic) pedwarn ("ISO C forbids braced-groups within expressions"); *************** case 96: *** 3381,3407 **** last_expr_type = void_type_node; yyval.ttype = build1 (STMT_EXPR, last_expr_type, yyvsp[-2].ttype); TREE_SIDE_EFFECTS (yyval.ttype) = 1; ! ; ! break;} ! case 97: #line 661 "objc/objc-parse.y" ! { last_tree = COMPOUND_BODY (yyvsp[-2].ttype); TREE_CHAIN (last_tree) = NULL_TREE; yyval.ttype = error_mark_node; ! ; ! break;} ! case 98: #line 667 "objc/objc-parse.y" ! { yyval.ttype = build_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype); ; ! break;} ! case 99: #line 669 "objc/objc-parse.y" ! { yyval.ttype = build_va_arg (yyvsp[-3].ttype, groktypename (yyvsp[-1].ttype)); ; ! break;} ! case 100: #line 672 "objc/objc-parse.y" ! { tree c; c = fold (yyvsp[-5].ttype); --- 3759,3789 ---- last_expr_type = void_type_node; yyval.ttype = build1 (STMT_EXPR, last_expr_type, yyvsp[-2].ttype); TREE_SIDE_EFFECTS (yyval.ttype) = 1; ! ;} ! break; ! ! case 98: #line 661 "objc/objc-parse.y" ! { last_tree = COMPOUND_BODY (yyvsp[-2].ttype); TREE_CHAIN (last_tree) = NULL_TREE; yyval.ttype = error_mark_node; ! ;} ! break; ! ! case 99: #line 667 "objc/objc-parse.y" ! { yyval.ttype = build_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype); ;} ! break; ! ! case 100: #line 669 "objc/objc-parse.y" ! { yyval.ttype = build_va_arg (yyvsp[-3].ttype, groktypename (yyvsp[-1].ttype)); ;} ! break; ! ! case 101: #line 672 "objc/objc-parse.y" ! { tree c; c = fold (yyvsp[-5].ttype); *************** case 100: *** 3409,3419 **** if (TREE_CODE (c) != INTEGER_CST) error ("first argument to __builtin_choose_expr not a constant"); yyval.ttype = integer_zerop (c) ? yyvsp[-1].ttype : yyvsp[-3].ttype; ! ; ! break;} ! case 101: #line 682 "objc/objc-parse.y" ! { tree e1, e2; e1 = TYPE_MAIN_VARIANT (groktypename (yyvsp[-3].ttype)); --- 3791,3802 ---- if (TREE_CODE (c) != INTEGER_CST) error ("first argument to __builtin_choose_expr not a constant"); yyval.ttype = integer_zerop (c) ? yyvsp[-1].ttype : yyvsp[-3].ttype; ! ;} ! break; ! ! case 102: #line 682 "objc/objc-parse.y" ! { tree e1, e2; e1 = TYPE_MAIN_VARIANT (groktypename (yyvsp[-3].ttype)); *************** case 101: *** 3421,3489 **** yyval.ttype = comptypes (e1, e2, COMPARE_STRICT) ? build_int_2 (1, 0) : build_int_2 (0, 0); ! ; ! break;} ! case 102: #line 692 "objc/objc-parse.y" ! { yyval.ttype = build_array_ref (yyvsp[-3].ttype, yyvsp[-1].ttype); ; ! break;} ! case 103: #line 694 "objc/objc-parse.y" ! { if (!is_public (yyvsp[-2].ttype, yyvsp[0].ttype)) yyval.ttype = error_mark_node; else yyval.ttype = build_component_ref (yyvsp[-2].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 104: #line 701 "objc/objc-parse.y" ! { tree expr = build_indirect_ref (yyvsp[-2].ttype, "->"); if (!is_public (expr, yyvsp[0].ttype)) yyval.ttype = error_mark_node; else yyval.ttype = build_component_ref (expr, yyvsp[0].ttype); ! ; ! break;} ! case 105: #line 710 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (POSTINCREMENT_EXPR, yyvsp[-1].ttype, 0); ; ! break;} ! case 106: #line 712 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (POSTDECREMENT_EXPR, yyvsp[-1].ttype, 0); ; ! break;} ! case 107: #line 714 "objc/objc-parse.y" ! { yyval.ttype = build_message_expr (yyvsp[0].ttype); ; ! break;} ! case 108: #line 716 "objc/objc-parse.y" ! { yyval.ttype = build_selector_expr (yyvsp[0].ttype); ; ! break;} ! case 109: #line 718 "objc/objc-parse.y" ! { yyval.ttype = build_protocol_expr (yyvsp[0].ttype); ; ! break;} ! case 110: #line 720 "objc/objc-parse.y" ! { yyval.ttype = build_encode_expr (yyvsp[0].ttype); ; ! break;} ! case 111: #line 722 "objc/objc-parse.y" ! { yyval.ttype = build_objc_string_object (yyvsp[0].ttype); ; ! break;} ! case 112: #line 727 "objc/objc-parse.y" ! { parsing_iso_function_signature = false; /* Reset after decls. */ ! ; ! break;} ! case 113: #line 734 "objc/objc-parse.y" ! { if (warn_traditional && !in_system_header && parsing_iso_function_signature) warning ("traditional C rejects ISO C style function definitions"); --- 3804,3884 ---- yyval.ttype = comptypes (e1, e2, COMPARE_STRICT) ? build_int_2 (1, 0) : build_int_2 (0, 0); ! ;} ! break; ! ! case 103: #line 692 "objc/objc-parse.y" ! { yyval.ttype = build_array_ref (yyvsp[-3].ttype, yyvsp[-1].ttype); ;} ! break; ! ! case 104: #line 694 "objc/objc-parse.y" ! { if (!is_public (yyvsp[-2].ttype, yyvsp[0].ttype)) yyval.ttype = error_mark_node; else yyval.ttype = build_component_ref (yyvsp[-2].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 105: #line 701 "objc/objc-parse.y" ! { tree expr = build_indirect_ref (yyvsp[-2].ttype, "->"); if (!is_public (expr, yyvsp[0].ttype)) yyval.ttype = error_mark_node; else yyval.ttype = build_component_ref (expr, yyvsp[0].ttype); ! ;} ! break; ! ! case 106: #line 710 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (POSTINCREMENT_EXPR, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 107: #line 712 "objc/objc-parse.y" ! { yyval.ttype = build_unary_op (POSTDECREMENT_EXPR, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 108: #line 714 "objc/objc-parse.y" ! { yyval.ttype = build_message_expr (yyvsp[0].ttype); ;} ! break; ! ! case 109: #line 716 "objc/objc-parse.y" ! { yyval.ttype = build_selector_expr (yyvsp[0].ttype); ;} ! break; ! ! case 110: #line 718 "objc/objc-parse.y" ! { yyval.ttype = build_protocol_expr (yyvsp[0].ttype); ;} ! break; ! ! case 111: #line 720 "objc/objc-parse.y" ! { yyval.ttype = build_encode_expr (yyvsp[0].ttype); ;} ! break; ! ! case 112: #line 722 "objc/objc-parse.y" ! { yyval.ttype = build_objc_string_object (yyvsp[0].ttype); ;} ! break; ! ! case 113: #line 727 "objc/objc-parse.y" ! { parsing_iso_function_signature = false; /* Reset after decls. */ ! ;} ! break; ! ! case 114: #line 734 "objc/objc-parse.y" ! { if (warn_traditional && !in_system_header && parsing_iso_function_signature) warning ("traditional C rejects ISO C style function definitions"); *************** case 113: *** 3491,4198 **** && !parsing_iso_function_signature) warning ("old-style parameter declaration"); parsing_iso_function_signature = false; /* Reset after warning. */ ! ; ! break;} ! case 114: #line 744 "objc/objc-parse.y" ! { if (warn_old_style_definition && !in_system_header) warning ("old-style parameter declaration"); ! ; ! break;} ! case 115: #line 755 "objc/objc-parse.y" ! { ; ! break;} ! case 120: #line 771 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 121: #line 773 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 122: #line 775 "objc/objc-parse.y" ! { shadow_tag_warned (yyvsp[-1].ttype, 1); ! pedwarn ("empty declaration"); ; ! break;} ! case 123: #line 778 "objc/objc-parse.y" ! { pedwarn ("empty declaration"); ; ! break;} ! case 124: #line 787 "objc/objc-parse.y" ! { ; ! break;} ! case 125: #line 795 "objc/objc-parse.y" ! { pending_xref_error (); PUSH_DECLSPEC_STACK; split_specs_attrs (yyvsp[0].ttype, ¤t_declspecs, &prefix_attributes); ! all_prefix_attributes = prefix_attributes; ; ! break;} ! case 126: #line 806 "objc/objc-parse.y" ! { all_prefix_attributes = chainon (yyvsp[0].ttype, prefix_attributes); ; ! break;} ! case 127: #line 811 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 128: #line 813 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 129: #line 815 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 130: #line 817 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 131: #line 819 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ; ! break;} ! case 132: #line 821 "objc/objc-parse.y" ! { RESTORE_EXT_FLAGS (yyvsp[-1].itype); ; ! break;} ! case 133: #line 878 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 134: #line 881 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 135: #line 884 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 136: #line 890 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 137: #line 896 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 138: #line 899 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 139: #line 905 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 0; ; ! break;} ! case 140: #line 908 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 141: #line 914 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 142: #line 917 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 143: #line 920 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 144: #line 923 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 145: #line 926 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 146: #line 929 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 147: #line 932 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 148: #line 938 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 149: #line 941 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 150: #line 944 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 151: #line 947 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 152: #line 950 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 153: #line 953 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 154: #line 959 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 155: #line 962 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 156: #line 965 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 157: #line 968 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 158: #line 971 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 159: #line 974 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 160: #line 980 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 161: #line 983 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 162: #line 986 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 163: #line 989 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 164: #line 992 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 165: #line 998 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 0; ; ! break;} ! case 166: #line 1001 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 167: #line 1004 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 168: #line 1007 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 169: #line 1013 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 170: #line 1019 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 171: #line 1025 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 172: #line 1034 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 173: #line 1040 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 174: #line 1043 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 175: #line 1046 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 176: #line 1052 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 177: #line 1058 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 178: #line 1064 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 179: #line 1073 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 180: #line 1079 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 181: #line 1082 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 182: #line 1085 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 183: #line 1088 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 184: #line 1091 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 185: #line 1094 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 186: #line 1097 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 187: #line 1103 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 188: #line 1109 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 189: #line 1115 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 190: #line 1124 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 191: #line 1127 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 192: #line 1130 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 193: #line 1133 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 194: #line 1136 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 195: #line 1142 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 196: #line 1145 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 197: #line 1148 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 198: #line 1151 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 199: #line 1154 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 200: #line 1157 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 201: #line 1160 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 202: #line 1166 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 203: #line 1172 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 204: #line 1178 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 205: #line 1187 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ; ! break;} ! case 206: #line 1190 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 207: #line 1193 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 208: #line 1196 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 209: #line 1199 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ; ! break;} ! case 266: #line 1287 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 267: #line 1289 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 271: #line 1324 "objc/objc-parse.y" ! { OBJC_NEED_RAW_IDENTIFIER (1); ; ! break;} ! case 274: #line 1334 "objc/objc-parse.y" ! { /* For a typedef name, record the meaning, not the name. In case of `foo foo, bar;'. */ ! yyval.ttype = lookup_name (yyvsp[0].ttype); ; ! break;} ! case 275: #line 1338 "objc/objc-parse.y" ! { yyval.ttype = get_static_reference (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 276: #line 1340 "objc/objc-parse.y" ! { yyval.ttype = get_object_reference (yyvsp[0].ttype); ; ! break;} ! case 277: #line 1345 "objc/objc-parse.y" ! { yyval.ttype = get_object_reference (yyvsp[0].ttype); ; ! break;} ! case 278: #line 1347 "objc/objc-parse.y" ! { skip_evaluation--; if (TREE_CODE (yyvsp[-1].ttype) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (yyvsp[-1].ttype, 1))) error ("`typeof' applied to a bit-field"); ! yyval.ttype = TREE_TYPE (yyvsp[-1].ttype); ; ! break;} ! case 279: #line 1353 "objc/objc-parse.y" ! { skip_evaluation--; yyval.ttype = groktypename (yyvsp[-1].ttype); ; ! break;} ! case 284: #line 1370 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 285: #line 1372 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ; ! break;} ! case 286: #line 1377 "objc/objc-parse.y" ! { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1, chainon (yyvsp[-1].ttype, all_prefix_attributes)); ! start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ; ! break;} ! case 287: #line 1382 "objc/objc-parse.y" ! { finish_init (); ! finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ; ! break;} ! case 288: #line 1385 "objc/objc-parse.y" ! { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0, chainon (yyvsp[0].ttype, all_prefix_attributes)); finish_decl (d, NULL_TREE, yyvsp[-1].ttype); ! ; ! break;} ! case 289: #line 1393 "objc/objc-parse.y" ! { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1, chainon (yyvsp[-1].ttype, all_prefix_attributes)); ! start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ; ! break;} ! case 290: #line 1398 "objc/objc-parse.y" ! { finish_init (); ! finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ; ! break;} ! case 291: #line 1401 "objc/objc-parse.y" ! { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0, chainon (yyvsp[0].ttype, all_prefix_attributes)); ! finish_decl (d, NULL_TREE, yyvsp[-1].ttype); ; ! break;} ! case 292: #line 1409 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 293: #line 1411 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 294: #line 1416 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 295: #line 1418 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 296: #line 1423 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype; ; ! break;} ! case 297: #line 1428 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 298: #line 1430 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 299: #line 1435 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 300: #line 1437 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 301: #line 1439 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-3].ttype, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ; ! break;} ! case 302: #line 1441 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-5].ttype, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ; ! break;} ! case 303: #line 1443 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ; ! break;} ! case 311: #line 1466 "objc/objc-parse.y" ! { really_start_incremental_init (NULL_TREE); ; ! break;} ! case 312: #line 1468 "objc/objc-parse.y" ! { yyval.ttype = pop_init_level (0); ; ! break;} ! case 313: #line 1470 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ; ! break;} ! case 314: #line 1476 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C forbids empty initializer braces"); ; ! break;} ! case 318: #line 1490 "objc/objc-parse.y" ! { if (pedantic && ! flag_isoc99) ! pedwarn ("ISO C90 forbids specifying subobject to initialize"); ; ! break;} ! case 319: #line 1493 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("obsolete use of designated initializer without `='"); ; ! break;} ! case 320: #line 1496 "objc/objc-parse.y" ! { set_init_label (yyvsp[-1].ttype); if (pedantic) ! pedwarn ("obsolete use of designated initializer with `:'"); ; ! break;} ! case 321: #line 1500 "objc/objc-parse.y" ! {; ! break;} ! case 323: #line 1506 "objc/objc-parse.y" ! { push_init_level (0); ; ! break;} ! case 324: #line 1508 "objc/objc-parse.y" ! { process_init_element (pop_init_level (0)); ; ! break;} ! case 325: #line 1510 "objc/objc-parse.y" ! { process_init_element (yyvsp[0].ttype); ; ! break;} ! case 329: #line 1521 "objc/objc-parse.y" ! { set_init_label (yyvsp[0].ttype); ; ! break;} ! case 330: #line 1523 "objc/objc-parse.y" ! { set_init_index (yyvsp[-3].ttype, yyvsp[-1].ttype); if (pedantic) ! pedwarn ("ISO C forbids specifying range of elements to initialize"); ; ! break;} ! case 331: #line 1527 "objc/objc-parse.y" ! { set_init_index (yyvsp[-1].ttype, NULL_TREE); ; ! break;} ! case 332: #line 1532 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids nested functions"); push_function_context (); --- 3886,4729 ---- && !parsing_iso_function_signature) warning ("old-style parameter declaration"); parsing_iso_function_signature = false; /* Reset after warning. */ ! ;} ! break; ! ! case 115: #line 744 "objc/objc-parse.y" ! { if (warn_old_style_definition && !in_system_header) warning ("old-style parameter declaration"); ! ;} ! break; ! ! case 116: #line 755 "objc/objc-parse.y" ! { ;} ! break; ! ! case 121: #line 771 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 122: #line 773 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 123: #line 775 "objc/objc-parse.y" ! { shadow_tag_warned (yyvsp[-1].ttype, 1); ! pedwarn ("empty declaration"); ;} ! break; ! ! case 124: #line 778 "objc/objc-parse.y" ! { pedwarn ("empty declaration"); ;} ! break; ! ! case 125: #line 787 "objc/objc-parse.y" ! { ;} ! break; ! ! case 126: #line 795 "objc/objc-parse.y" ! { pending_xref_error (); PUSH_DECLSPEC_STACK; split_specs_attrs (yyvsp[0].ttype, ¤t_declspecs, &prefix_attributes); ! all_prefix_attributes = prefix_attributes; ;} ! break; ! ! case 127: #line 806 "objc/objc-parse.y" ! { all_prefix_attributes = chainon (yyvsp[0].ttype, prefix_attributes); ;} ! break; ! ! case 128: #line 811 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 129: #line 813 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 130: #line 815 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 131: #line 817 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 132: #line 819 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ;} ! break; ! ! case 133: #line 821 "objc/objc-parse.y" ! { RESTORE_EXT_FLAGS (yyvsp[-1].itype); ;} ! break; ! ! case 134: #line 878 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 135: #line 881 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 136: #line 884 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 137: #line 890 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 138: #line 896 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 139: #line 899 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 140: #line 905 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 0; ;} ! break; ! ! case 141: #line 908 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 142: #line 914 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 143: #line 917 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 144: #line 920 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 145: #line 923 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 146: #line 926 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 147: #line 929 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 148: #line 932 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 149: #line 938 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 150: #line 941 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 151: #line 944 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 152: #line 947 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 153: #line 950 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 154: #line 953 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 155: #line 959 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 156: #line 962 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 157: #line 965 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 158: #line 968 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 159: #line 971 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 160: #line 974 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 161: #line 980 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 162: #line 983 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 163: #line 986 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 164: #line 989 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 165: #line 992 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 166: #line 998 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! TREE_STATIC (yyval.ttype) = 0; ;} ! break; ! ! case 167: #line 1001 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 168: #line 1004 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 169: #line 1007 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 170: #line 1013 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 171: #line 1019 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 172: #line 1025 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 173: #line 1034 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 174: #line 1040 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 175: #line 1043 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 176: #line 1046 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 177: #line 1052 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 178: #line 1058 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 179: #line 1064 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 180: #line 1073 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 181: #line 1079 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 182: #line 1082 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 183: #line 1085 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 184: #line 1088 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 185: #line 1091 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 186: #line 1094 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 187: #line 1097 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 188: #line 1103 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 189: #line 1109 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 190: #line 1115 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 191: #line 1124 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 192: #line 1127 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 193: #line 1130 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 194: #line 1133 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 195: #line 1136 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 196: #line 1142 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 197: #line 1145 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 198: #line 1148 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 199: #line 1151 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 200: #line 1154 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 201: #line 1157 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 202: #line 1160 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 203: #line 1166 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 204: #line 1172 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 205: #line 1178 "objc/objc-parse.y" ! { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype)) warning ("`%s' is not at beginning of declaration", IDENTIFIER_POINTER (yyvsp[0].ttype)); yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 206: #line 1187 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (yyvsp[0].ttype, NULL_TREE, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;} ! break; ! ! case 207: #line 1190 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 208: #line 1193 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 209: #line 1196 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 210: #line 1199 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ! TREE_STATIC (yyval.ttype) = 1; ;} ! break; ! ! case 267: #line 1287 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 268: #line 1289 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 272: #line 1324 "objc/objc-parse.y" ! { OBJC_NEED_RAW_IDENTIFIER (1); ;} ! break; ! ! case 275: #line 1334 "objc/objc-parse.y" ! { /* For a typedef name, record the meaning, not the name. In case of `foo foo, bar;'. */ ! yyval.ttype = lookup_name (yyvsp[0].ttype); ;} ! break; ! ! case 276: #line 1338 "objc/objc-parse.y" ! { yyval.ttype = get_static_reference (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 277: #line 1340 "objc/objc-parse.y" ! { yyval.ttype = get_object_reference (yyvsp[0].ttype); ;} ! break; ! ! case 278: #line 1345 "objc/objc-parse.y" ! { yyval.ttype = get_object_reference (yyvsp[0].ttype); ;} ! break; ! ! case 279: #line 1347 "objc/objc-parse.y" ! { skip_evaluation--; if (TREE_CODE (yyvsp[-1].ttype) == COMPONENT_REF && DECL_C_BIT_FIELD (TREE_OPERAND (yyvsp[-1].ttype, 1))) error ("`typeof' applied to a bit-field"); ! yyval.ttype = TREE_TYPE (yyvsp[-1].ttype); ;} ! break; ! ! case 280: #line 1353 "objc/objc-parse.y" ! { skip_evaluation--; yyval.ttype = groktypename (yyvsp[-1].ttype); ;} ! break; ! ! case 285: #line 1370 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 286: #line 1372 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ;} ! break; ! ! case 287: #line 1377 "objc/objc-parse.y" ! { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1, chainon (yyvsp[-1].ttype, all_prefix_attributes)); ! start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ;} ! break; ! ! case 288: #line 1382 "objc/objc-parse.y" ! { finish_init (); ! finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;} ! break; ! ! case 289: #line 1385 "objc/objc-parse.y" ! { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0, chainon (yyvsp[0].ttype, all_prefix_attributes)); finish_decl (d, NULL_TREE, yyvsp[-1].ttype); ! ;} ! break; ! ! case 290: #line 1393 "objc/objc-parse.y" ! { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1, chainon (yyvsp[-1].ttype, all_prefix_attributes)); ! start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ;} ! break; ! ! case 291: #line 1398 "objc/objc-parse.y" ! { finish_init (); ! finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;} ! break; ! ! case 292: #line 1401 "objc/objc-parse.y" ! { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0, chainon (yyvsp[0].ttype, all_prefix_attributes)); ! finish_decl (d, NULL_TREE, yyvsp[-1].ttype); ;} ! break; ! ! case 293: #line 1409 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 294: #line 1411 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 295: #line 1416 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 296: #line 1418 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 297: #line 1423 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype; ;} ! break; ! ! case 298: #line 1428 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 299: #line 1430 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 300: #line 1435 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 301: #line 1437 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 302: #line 1439 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-3].ttype, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;} ! break; ! ! case 303: #line 1441 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-5].ttype, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;} ! break; ! ! case 304: #line 1443 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ;} ! break; ! ! case 312: #line 1466 "objc/objc-parse.y" ! { really_start_incremental_init (NULL_TREE); ;} ! break; ! ! case 313: #line 1468 "objc/objc-parse.y" ! { yyval.ttype = pop_init_level (0); ;} ! break; ! ! case 314: #line 1470 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ;} ! break; ! ! case 315: #line 1476 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C forbids empty initializer braces"); ;} ! break; ! ! case 319: #line 1490 "objc/objc-parse.y" ! { if (pedantic && ! flag_isoc99) ! pedwarn ("ISO C90 forbids specifying subobject to initialize"); ;} ! break; ! ! case 320: #line 1493 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("obsolete use of designated initializer without `='"); ;} ! break; ! ! case 321: #line 1496 "objc/objc-parse.y" ! { set_init_label (yyvsp[-1].ttype); if (pedantic) ! pedwarn ("obsolete use of designated initializer with `:'"); ;} ! break; ! ! case 322: #line 1500 "objc/objc-parse.y" ! {;} ! break; ! ! case 324: #line 1506 "objc/objc-parse.y" ! { push_init_level (0); ;} ! break; ! ! case 325: #line 1508 "objc/objc-parse.y" ! { process_init_element (pop_init_level (0)); ;} ! break; ! ! case 326: #line 1510 "objc/objc-parse.y" ! { process_init_element (yyvsp[0].ttype); ;} ! break; ! ! case 330: #line 1521 "objc/objc-parse.y" ! { set_init_label (yyvsp[0].ttype); ;} ! break; ! ! case 331: #line 1523 "objc/objc-parse.y" ! { set_init_index (yyvsp[-3].ttype, yyvsp[-1].ttype); if (pedantic) ! pedwarn ("ISO C forbids specifying range of elements to initialize"); ;} ! break; ! ! case 332: #line 1527 "objc/objc-parse.y" ! { set_init_index (yyvsp[-1].ttype, NULL_TREE); ;} ! break; ! ! case 333: #line 1532 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids nested functions"); push_function_context (); *************** case 332: *** 4203,4226 **** YYERROR1; } parsing_iso_function_signature = false; /* Don't warn about nested functions. */ ! ; ! break;} ! case 333: #line 1545 "objc/objc-parse.y" ! { tree decl = current_function_decl; DECL_SOURCE_LOCATION (decl) = yyvsp[0].location; ! store_parm_decls (); ; ! break;} ! case 334: #line 1555 "objc/objc-parse.y" ! { tree decl = current_function_decl; finish_function (); pop_function_context (); ! add_decl_stmt (decl); ; ! break;} ! case 335: #line 1563 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids nested functions"); push_function_context (); --- 4734,4760 ---- YYERROR1; } parsing_iso_function_signature = false; /* Don't warn about nested functions. */ ! ;} ! break; ! ! case 334: #line 1545 "objc/objc-parse.y" ! { tree decl = current_function_decl; DECL_SOURCE_LOCATION (decl) = yyvsp[0].location; ! store_parm_decls (); ;} ! break; ! ! case 335: #line 1555 "objc/objc-parse.y" ! { tree decl = current_function_decl; finish_function (); pop_function_context (); ! add_decl_stmt (decl); ;} ! break; ! ! case 336: #line 1563 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids nested functions"); push_function_context (); *************** case 335: *** 4231,4440 **** YYERROR1; } parsing_iso_function_signature = false; /* Don't warn about nested functions. */ ! ; ! break;} ! case 336: #line 1576 "objc/objc-parse.y" ! { tree decl = current_function_decl; DECL_SOURCE_LOCATION (decl) = yyvsp[0].location; ! store_parm_decls (); ; ! break;} ! case 337: #line 1586 "objc/objc-parse.y" ! { tree decl = current_function_decl; finish_function (); pop_function_context (); ! add_decl_stmt (decl); ; ! break;} ! case 340: #line 1604 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ; ! break;} ! case 341: #line 1606 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 342: #line 1611 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ; ! break;} ! case 343: #line 1613 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 348: #line 1629 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 349: #line 1634 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ; ! break;} ! case 352: #line 1641 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 353: #line 1646 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ; ! break;} ! case 354: #line 1648 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 355: #line 1650 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 356: #line 1652 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ; ! break;} ! case 357: #line 1660 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 358: #line 1665 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ; ! break;} ! case 359: #line 1667 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 360: #line 1669 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ; ! break;} ! case 362: #line 1675 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 363: #line 1677 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 364: #line 1682 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 365: #line 1684 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 366: #line 1689 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 367: #line 1691 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 368: #line 1702 "objc/objc-parse.y" ! { yyval.ttype = start_struct (RECORD_TYPE, yyvsp[-1].ttype); /* Start scope of tag before parsing components. */ ! ; ! break;} ! case 369: #line 1706 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (yyvsp[-3].ttype, nreverse (yyvsp[-2].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ; ! break;} ! case 370: #line 1709 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (start_struct (RECORD_TYPE, NULL_TREE), nreverse (yyvsp[-2].ttype), chainon (yyvsp[-4].ttype, yyvsp[0].ttype)); ! ; ! break;} ! case 371: #line 1713 "objc/objc-parse.y" ! { yyval.ttype = start_struct (UNION_TYPE, yyvsp[-1].ttype); ; ! break;} ! case 372: #line 1715 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (yyvsp[-3].ttype, nreverse (yyvsp[-2].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ; ! break;} ! case 373: #line 1718 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (start_struct (UNION_TYPE, NULL_TREE), nreverse (yyvsp[-2].ttype), chainon (yyvsp[-4].ttype, yyvsp[0].ttype)); ! ; ! break;} ! case 374: #line 1722 "objc/objc-parse.y" ! { yyval.ttype = start_enum (yyvsp[-1].ttype); ; ! break;} ! case 375: #line 1724 "objc/objc-parse.y" ! { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), ! chainon (yyvsp[-7].ttype, yyvsp[0].ttype)); ; ! break;} ! case 376: #line 1727 "objc/objc-parse.y" ! { yyval.ttype = start_enum (NULL_TREE); ; ! break;} ! case 377: #line 1729 "objc/objc-parse.y" ! { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ; ! break;} ! case 378: #line 1735 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (RECORD_TYPE, yyvsp[0].ttype); ; ! break;} ! case 379: #line 1737 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (UNION_TYPE, yyvsp[0].ttype); ; ! break;} ! case 380: #line 1739 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (ENUMERAL_TYPE, yyvsp[0].ttype); /* In ISO C, enumerated types can be referred to only if already defined. */ if (pedantic && !COMPLETE_TYPE_P (yyval.ttype)) ! pedwarn ("ISO C forbids forward references to `enum' types"); ; ! break;} ! case 384: #line 1754 "objc/objc-parse.y" ! { if (pedantic && ! flag_isoc99) ! pedwarn ("comma at end of enumerator list"); ; ! break;} ! case 385: #line 1772 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 386: #line 1774 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[0].ttype, yyvsp[-1].ttype); ! pedwarn ("no semicolon at end of struct or union"); ; ! break;} ! case 387: #line 1779 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 388: #line 1781 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[-2].ttype); ; ! break;} ! case 389: #line 1783 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("extra semicolon in struct or union specified"); ; ! break;} ! case 390: #line 1787 "objc/objc-parse.y" ! { yyval.ttype = nreverse (get_class_ivars_from_name (yyvsp[-1].ttype)); ; ! break;} ! case 391: #line 1792 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 392: #line 1795 "objc/objc-parse.y" ! { /* Support for unnamed structs or unions as members of structs or unions (which is [a] useful and [b] supports MS P-SDK). */ --- 4765,5019 ---- YYERROR1; } parsing_iso_function_signature = false; /* Don't warn about nested functions. */ ! ;} ! break; ! ! case 337: #line 1576 "objc/objc-parse.y" ! { tree decl = current_function_decl; DECL_SOURCE_LOCATION (decl) = yyvsp[0].location; ! store_parm_decls (); ;} ! break; ! ! case 338: #line 1586 "objc/objc-parse.y" ! { tree decl = current_function_decl; finish_function (); pop_function_context (); ! add_decl_stmt (decl); ;} ! break; ! ! case 341: #line 1604 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ;} ! break; ! ! case 342: #line 1606 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 343: #line 1611 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 344: #line 1613 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 349: #line 1629 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 350: #line 1634 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 353: #line 1641 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 354: #line 1646 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 355: #line 1648 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 356: #line 1650 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 357: #line 1652 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ;} ! break; ! ! case 358: #line 1660 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 359: #line 1665 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ;} ! break; ! ! case 360: #line 1667 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 361: #line 1669 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 0); ;} ! break; ! ! case 363: #line 1675 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 364: #line 1677 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 365: #line 1682 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 366: #line 1684 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 367: #line 1689 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 368: #line 1691 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 369: #line 1702 "objc/objc-parse.y" ! { yyval.ttype = start_struct (RECORD_TYPE, yyvsp[-1].ttype); /* Start scope of tag before parsing components. */ ! ;} ! break; ! ! case 370: #line 1706 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (yyvsp[-3].ttype, nreverse (yyvsp[-2].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ;} ! break; ! ! case 371: #line 1709 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (start_struct (RECORD_TYPE, NULL_TREE), nreverse (yyvsp[-2].ttype), chainon (yyvsp[-4].ttype, yyvsp[0].ttype)); ! ;} ! break; ! ! case 372: #line 1713 "objc/objc-parse.y" ! { yyval.ttype = start_struct (UNION_TYPE, yyvsp[-1].ttype); ;} ! break; ! ! case 373: #line 1715 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (yyvsp[-3].ttype, nreverse (yyvsp[-2].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ;} ! break; ! ! case 374: #line 1718 "objc/objc-parse.y" ! { yyval.ttype = finish_struct (start_struct (UNION_TYPE, NULL_TREE), nreverse (yyvsp[-2].ttype), chainon (yyvsp[-4].ttype, yyvsp[0].ttype)); ! ;} ! break; ! ! case 375: #line 1722 "objc/objc-parse.y" ! { yyval.ttype = start_enum (yyvsp[-1].ttype); ;} ! break; ! ! case 376: #line 1724 "objc/objc-parse.y" ! { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), ! chainon (yyvsp[-7].ttype, yyvsp[0].ttype)); ;} ! break; ! ! case 377: #line 1727 "objc/objc-parse.y" ! { yyval.ttype = start_enum (NULL_TREE); ;} ! break; ! ! case 378: #line 1729 "objc/objc-parse.y" ! { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), ! chainon (yyvsp[-6].ttype, yyvsp[0].ttype)); ;} ! break; ! ! case 379: #line 1735 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (RECORD_TYPE, yyvsp[0].ttype); ;} ! break; ! ! case 380: #line 1737 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (UNION_TYPE, yyvsp[0].ttype); ;} ! break; ! ! case 381: #line 1739 "objc/objc-parse.y" ! { yyval.ttype = xref_tag (ENUMERAL_TYPE, yyvsp[0].ttype); /* In ISO C, enumerated types can be referred to only if already defined. */ if (pedantic && !COMPLETE_TYPE_P (yyval.ttype)) ! pedwarn ("ISO C forbids forward references to `enum' types"); ;} ! break; ! ! case 385: #line 1754 "objc/objc-parse.y" ! { if (pedantic && ! flag_isoc99) ! pedwarn ("comma at end of enumerator list"); ;} ! break; ! ! case 386: #line 1772 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 387: #line 1774 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[0].ttype, yyvsp[-1].ttype); ! pedwarn ("no semicolon at end of struct or union"); ;} ! break; ! ! case 388: #line 1779 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 389: #line 1781 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[-2].ttype); ;} ! break; ! ! case 390: #line 1783 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("extra semicolon in struct or union specified"); ;} ! break; ! ! case 391: #line 1787 "objc/objc-parse.y" ! { yyval.ttype = nreverse (get_class_ivars_from_name (yyvsp[-1].ttype)); ;} ! break; ! ! case 392: #line 1792 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 393: #line 1795 "objc/objc-parse.y" ! { /* Support for unnamed structs or unions as members of structs or unions (which is [a] useful and [b] supports MS P-SDK). */ *************** case 392: *** 4442,4648 **** pedwarn ("ISO C doesn't support unnamed structs/unions"); yyval.ttype = grokfield(NULL, current_declspecs, NULL_TREE); ! POP_DECLSPEC_STACK; ; ! break;} ! case 393: #line 1805 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 394: #line 1808 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids member declarations with no members"); shadow_tag_warned (yyvsp[0].ttype, pedantic); ! yyval.ttype = NULL_TREE; ; ! break;} ! case 395: #line 1813 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 396: #line 1815 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! RESTORE_EXT_FLAGS (yyvsp[-1].itype); ; ! break;} ! case 398: #line 1822 "objc/objc-parse.y" ! { TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-3].ttype; yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 400: #line 1828 "objc/objc-parse.y" ! { TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-3].ttype; yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 401: #line 1833 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-1].ttype, current_declspecs, NULL_TREE); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 402: #line 1837 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 403: #line 1841 "objc/objc-parse.y" ! { yyval.ttype = grokfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 404: #line 1848 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-1].ttype, current_declspecs, NULL_TREE); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 405: #line 1852 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 406: #line 1856 "objc/objc-parse.y" ! { yyval.ttype = grokfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ; ! break;} ! case 408: #line 1867 "objc/objc-parse.y" ! { if (yyvsp[-2].ttype == error_mark_node) yyval.ttype = yyvsp[-2].ttype; else ! TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-2].ttype, yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 409: #line 1872 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ; ! break;} ! case 410: #line 1878 "objc/objc-parse.y" ! { yyval.ttype = build_enumerator (yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 411: #line 1880 "objc/objc-parse.y" ! { yyval.ttype = build_enumerator (yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 412: #line 1885 "objc/objc-parse.y" ! { pending_xref_error (); ! yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 413: #line 1888 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 414: #line 1893 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 416: #line 1899 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, NULL_TREE), ! all_prefix_attributes); ; ! break;} ! case 417: #line 1903 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[0].ttype), ! all_prefix_attributes); ; ! break;} ! case 418: #line 1907 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ; ! break;} ! case 422: #line 1920 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 423: #line 1925 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 424: #line 1927 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; ! break;} ! case 425: #line 1932 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ; ! break;} ! case 426: #line 1934 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 427: #line 1936 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 1); ; ! break;} ! case 428: #line 1938 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 429: #line 1940 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, NULL_TREE, 1); ; ! break;} ! case 430: #line 1947 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-2].ttype, 0, 0); ; ! break;} ! case 431: #line 1949 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (NULL_TREE, yyvsp[-1].ttype, 0, 0); ; ! break;} ! case 432: #line 1951 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (NULL_TREE, yyvsp[-2].ttype, 0, 1); ; ! break;} ! case 433: #line 1953 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-2].ttype, 1, 0); ; ! break;} ! case 434: #line 1956 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-3].ttype, 1, 0); ; ! break;} ! case 437: #line 1969 "objc/objc-parse.y" ! { error ("label at end of compound statement"); ! ; ! break;} ! case 445: #line 1986 "objc/objc-parse.y" ! { if ((pedantic && !flag_isoc99) || warn_declaration_after_statement) pedwarn_c90 ("ISO C90 forbids mixed declarations and code"); ! ; ! break;} ! case 460: #line 2019 "objc/objc-parse.y" ! { pushlevel (0); clear_last_expr (); add_scope_stmt (/*begin_p=*/1, /*partial_p=*/0); ! ; ! break;} ! case 461: #line 2026 "objc/objc-parse.y" ! { if (c_dialect_objc ()) objc_clear_super_receiver (); yyval.ttype = add_scope_stmt (/*begin_p=*/0, /*partial_p=*/0); ! ; ! break;} ! case 462: #line 2035 "objc/objc-parse.y" ! { if (flag_isoc99) { yyval.ttype = c_begin_compound_stmt (); pushlevel (0); --- 5021,5267 ---- pedwarn ("ISO C doesn't support unnamed structs/unions"); yyval.ttype = grokfield(NULL, current_declspecs, NULL_TREE); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 394: #line 1805 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 395: #line 1808 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids member declarations with no members"); shadow_tag_warned (yyvsp[0].ttype, pedantic); ! yyval.ttype = NULL_TREE; ;} ! break; ! ! case 396: #line 1813 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 397: #line 1815 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! RESTORE_EXT_FLAGS (yyvsp[-1].itype); ;} ! break; ! ! case 399: #line 1822 "objc/objc-parse.y" ! { TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-3].ttype; yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 401: #line 1828 "objc/objc-parse.y" ! { TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-3].ttype; yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 402: #line 1833 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-1].ttype, current_declspecs, NULL_TREE); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 403: #line 1837 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 404: #line 1841 "objc/objc-parse.y" ! { yyval.ttype = grokfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 405: #line 1848 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-1].ttype, current_declspecs, NULL_TREE); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 406: #line 1852 "objc/objc-parse.y" ! { yyval.ttype = grokfield (yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 407: #line 1856 "objc/objc-parse.y" ! { yyval.ttype = grokfield (NULL_TREE, current_declspecs, yyvsp[-1].ttype); decl_attributes (&yyval.ttype, ! chainon (yyvsp[0].ttype, all_prefix_attributes), 0); ;} ! break; ! ! case 409: #line 1867 "objc/objc-parse.y" ! { if (yyvsp[-2].ttype == error_mark_node) yyval.ttype = yyvsp[-2].ttype; else ! TREE_CHAIN (yyvsp[0].ttype) = yyvsp[-2].ttype, yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 410: #line 1872 "objc/objc-parse.y" ! { yyval.ttype = error_mark_node; ;} ! break; ! ! case 411: #line 1878 "objc/objc-parse.y" ! { yyval.ttype = build_enumerator (yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 412: #line 1880 "objc/objc-parse.y" ! { yyval.ttype = build_enumerator (yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 413: #line 1885 "objc/objc-parse.y" ! { pending_xref_error (); ! yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 414: #line 1888 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 415: #line 1893 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 417: #line 1899 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, NULL_TREE), ! all_prefix_attributes); ;} ! break; ! ! case 418: #line 1903 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[0].ttype), ! all_prefix_attributes); ;} ! break; ! ! case 419: #line 1907 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ;} ! break; ! ! case 423: #line 1920 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 424: #line 1925 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 425: #line 1927 "objc/objc-parse.y" ! { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 426: #line 1932 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype ? tree_cons (yyvsp[-2].ttype, yyvsp[-1].ttype, NULL_TREE) : yyvsp[-1].ttype; ;} ! break; ! ! case 427: #line 1934 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 428: #line 1936 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, yyvsp[-1].ttype, 1); ;} ! break; ! ! case 429: #line 1938 "objc/objc-parse.y" ! { yyval.ttype = build_nt (CALL_EXPR, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 430: #line 1940 "objc/objc-parse.y" ! { yyval.ttype = set_array_declarator_type (yyvsp[0].ttype, NULL_TREE, 1); ;} ! break; ! ! case 431: #line 1947 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-2].ttype, 0, 0); ;} ! break; ! ! case 432: #line 1949 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (NULL_TREE, yyvsp[-1].ttype, 0, 0); ;} ! break; ! ! case 433: #line 1951 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (NULL_TREE, yyvsp[-2].ttype, 0, 1); ;} ! break; ! ! case 434: #line 1953 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-2].ttype, 1, 0); ;} ! break; ! ! case 435: #line 1956 "objc/objc-parse.y" ! { yyval.ttype = build_array_declarator (yyvsp[-1].ttype, yyvsp[-3].ttype, 1, 0); ;} ! break; ! ! case 438: #line 1969 "objc/objc-parse.y" ! { error ("label at end of compound statement"); ! ;} ! break; ! ! case 446: #line 1986 "objc/objc-parse.y" ! { if ((pedantic && !flag_isoc99) || warn_declaration_after_statement) pedwarn_c90 ("ISO C90 forbids mixed declarations and code"); ! ;} ! break; ! ! case 461: #line 2019 "objc/objc-parse.y" ! { pushlevel (0); clear_last_expr (); add_scope_stmt (/*begin_p=*/1, /*partial_p=*/0); ! ;} ! break; ! ! case 462: #line 2026 "objc/objc-parse.y" ! { if (c_dialect_objc ()) objc_clear_super_receiver (); yyval.ttype = add_scope_stmt (/*begin_p=*/0, /*partial_p=*/0); ! ;} ! break; ! ! case 463: #line 2035 "objc/objc-parse.y" ! { if (flag_isoc99) { yyval.ttype = c_begin_compound_stmt (); pushlevel (0); *************** case 462: *** 4651,4661 **** } else yyval.ttype = NULL_TREE; ! ; ! break;} ! case 463: #line 2051 "objc/objc-parse.y" ! { if (flag_isoc99) { tree scope_stmt = add_scope_stmt (/*begin_p=*/0, /*partial_p=*/0); yyval.ttype = poplevel (KEEP_MAYBE, 0, 0); --- 5270,5281 ---- } else yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 464: #line 2051 "objc/objc-parse.y" ! { if (flag_isoc99) { tree scope_stmt = add_scope_stmt (/*begin_p=*/0, /*partial_p=*/0); yyval.ttype = poplevel (KEEP_MAYBE, 0, 0); *************** case 463: *** 4664,4710 **** = yyval.ttype; } else ! yyval.ttype = NULL_TREE; ; ! break;} ! case 465: #line 2068 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C forbids label declarations"); ; ! break;} ! case 468: #line 2079 "objc/objc-parse.y" ! { tree link; for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link)) { tree label = declare_label (TREE_VALUE (link)); C_DECLARED_LABEL_FLAG (label) = 1; add_decl_stmt (label); } ! ; ! break;} ! case 469: #line 2093 "objc/objc-parse.y" ! {; ! break;} ! case 471: #line 2097 "objc/objc-parse.y" ! { compstmt_count++; ! yyval.ttype = c_begin_compound_stmt (); ; ! break;} ! case 472: #line 2102 "objc/objc-parse.y" ! { yyval.ttype = convert (void_type_node, integer_zero_node); ; ! break;} ! case 473: #line 2104 "objc/objc-parse.y" ! { yyval.ttype = poplevel (KEEP_MAYBE, 0, 0); SCOPE_STMT_BLOCK (TREE_PURPOSE (yyvsp[0].ttype)) = SCOPE_STMT_BLOCK (TREE_VALUE (yyvsp[0].ttype)) ! = yyval.ttype; ; ! break;} ! case 476: #line 2117 "objc/objc-parse.y" ! { if (last_tree == NULL) { error ("braced-group within expression allowed only inside a function"); YYERROR; --- 5284,5337 ---- = yyval.ttype; } else ! yyval.ttype = NULL_TREE; ;} ! break; ! ! case 466: #line 2068 "objc/objc-parse.y" ! { if (pedantic) ! pedwarn ("ISO C forbids label declarations"); ;} ! break; ! ! case 469: #line 2079 "objc/objc-parse.y" ! { tree link; for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link)) { tree label = declare_label (TREE_VALUE (link)); C_DECLARED_LABEL_FLAG (label) = 1; add_decl_stmt (label); } ! ;} ! break; ! ! case 470: #line 2093 "objc/objc-parse.y" ! {;} ! break; ! ! case 472: #line 2097 "objc/objc-parse.y" ! { compstmt_count++; ! yyval.ttype = c_begin_compound_stmt (); ;} ! break; ! ! case 473: #line 2102 "objc/objc-parse.y" ! { yyval.ttype = convert (void_type_node, integer_zero_node); ;} ! break; ! ! case 474: #line 2104 "objc/objc-parse.y" ! { yyval.ttype = poplevel (KEEP_MAYBE, 0, 0); SCOPE_STMT_BLOCK (TREE_PURPOSE (yyvsp[0].ttype)) = SCOPE_STMT_BLOCK (TREE_VALUE (yyvsp[0].ttype)) ! = yyval.ttype; ;} ! break; ! ! case 477: #line 2117 "objc/objc-parse.y" ! { if (last_tree == NULL) { error ("braced-group within expression allowed only inside a function"); YYERROR; *************** case 476: *** 4717,4748 **** compstmt_count++; yyval.ttype = add_stmt (build_stmt (COMPOUND_STMT, last_tree)); last_expr_type = NULL_TREE; ! ; ! break;} ! case 477: #line 2134 "objc/objc-parse.y" ! { RECHAIN_STMTS (yyvsp[-1].ttype, COMPOUND_BODY (yyvsp[-1].ttype)); last_expr_type = NULL_TREE; ! yyval.ttype = yyvsp[-1].ttype; ; ! break;} ! case 478: #line 2142 "objc/objc-parse.y" ! { c_finish_then (); ; ! break;} ! case 480: #line 2159 "objc/objc-parse.y" ! { yyval.ttype = c_begin_if_stmt (); ; ! break;} ! case 481: #line 2161 "objc/objc-parse.y" ! { c_expand_start_cond (c_common_truthvalue_conversion (yyvsp[-1].ttype), compstmt_count,yyvsp[-3].ttype); yyval.itype = stmt_count; ! if_stmt_locus = yyvsp[-6].location; ; ! break;} ! case 482: #line 2172 "objc/objc-parse.y" ! { stmt_count++; compstmt_count++; c_in_iteration_stmt++; yyval.ttype --- 5344,5380 ---- compstmt_count++; yyval.ttype = add_stmt (build_stmt (COMPOUND_STMT, last_tree)); last_expr_type = NULL_TREE; ! ;} ! break; ! ! case 478: #line 2134 "objc/objc-parse.y" ! { RECHAIN_STMTS (yyvsp[-1].ttype, COMPOUND_BODY (yyvsp[-1].ttype)); last_expr_type = NULL_TREE; ! yyval.ttype = yyvsp[-1].ttype; ;} ! break; ! ! case 479: #line 2142 "objc/objc-parse.y" ! { c_finish_then (); ;} ! break; ! ! case 481: #line 2159 "objc/objc-parse.y" ! { yyval.ttype = c_begin_if_stmt (); ;} ! break; ! ! case 482: #line 2161 "objc/objc-parse.y" ! { c_expand_start_cond (c_common_truthvalue_conversion (yyvsp[-1].ttype), compstmt_count,yyvsp[-3].ttype); yyval.itype = stmt_count; ! if_stmt_locus = yyvsp[-6].location; ;} ! break; ! ! case 483: #line 2172 "objc/objc-parse.y" ! { stmt_count++; compstmt_count++; c_in_iteration_stmt++; yyval.ttype *************** case 482: *** 4752,4779 **** parsing the complete do-statement, set the condition now. Otherwise, we can get crashes at RTL-generation time. */ ! DO_COND (yyval.ttype) = error_mark_node; ; ! break;} ! case 483: #line 2184 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype; RECHAIN_STMTS (yyval.ttype, DO_BODY (yyval.ttype)); ! c_in_iteration_stmt--; ; ! break;} ! case 484: #line 2194 "objc/objc-parse.y" ! { if (yychar == YYEMPTY) yychar = YYLEX; ! yyval.location = input_location; ; ! break;} ! case 487: #line 2207 "objc/objc-parse.y" ! { if (flag_isoc99) ! RECHAIN_STMTS (yyvsp[-2].ttype, COMPOUND_BODY (yyvsp[-2].ttype)); ; ! break;} ! case 488: #line 2213 "objc/objc-parse.y" ! { if (yyvsp[0].ttype) { STMT_LINENO (yyvsp[0].ttype) = yyvsp[-1].location.line; /* ??? We currently have no way of recording --- 5384,5415 ---- parsing the complete do-statement, set the condition now. Otherwise, we can get crashes at RTL-generation time. */ ! DO_COND (yyval.ttype) = error_mark_node; ;} ! break; ! ! case 484: #line 2184 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-2].ttype; RECHAIN_STMTS (yyval.ttype, DO_BODY (yyval.ttype)); ! c_in_iteration_stmt--; ;} ! break; ! ! case 485: #line 2194 "objc/objc-parse.y" ! { if (yychar == YYEMPTY) yychar = YYLEX; ! yyval.location = input_location; ;} ! break; ! ! case 488: #line 2207 "objc/objc-parse.y" ! { if (flag_isoc99) ! RECHAIN_STMTS (yyvsp[-2].ttype, COMPOUND_BODY (yyvsp[-2].ttype)); ;} ! break; ! ! case 489: #line 2213 "objc/objc-parse.y" ! { if (yyvsp[0].ttype) { STMT_LINENO (yyvsp[0].ttype) = yyvsp[-1].location.line; /* ??? We currently have no way of recording *************** case 488: *** 4782,4966 **** but I suspect that problems will occur when doing inlining at the tree level. */ } ! ; ! break;} ! case 489: #line 2227 "objc/objc-parse.y" ! { if (yyvsp[0].ttype) { STMT_LINENO (yyvsp[0].ttype) = yyvsp[-1].location.line; } ! ; ! break;} ! case 490: #line 2236 "objc/objc-parse.y" ! { c_expand_start_else (); ! yyvsp[-1].itype = stmt_count; ; ! break;} ! case 491: #line 2239 "objc/objc-parse.y" ! { c_finish_else (); c_expand_end_cond (); if (extra_warnings && stmt_count == yyvsp[-3].itype) ! warning ("empty body in an else-statement"); ; ! break;} ! case 492: #line 2244 "objc/objc-parse.y" ! { c_expand_end_cond (); /* This warning is here instead of in simple_if, because we do not want a warning if an empty if is followed by an else statement. Increment stmt_count so we don't give a second error if this is a nested `if'. */ if (extra_warnings && stmt_count++ == yyvsp[0].itype) warning ("%Hempty body in an if-statement", ! &if_stmt_locus); ; ! break;} ! case 493: #line 2256 "objc/objc-parse.y" ! { c_expand_end_cond (); ; ! break;} ! case 494: #line 2266 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_begin_while_stmt (); ; ! break;} ! case 495: #line 2269 "objc/objc-parse.y" ! { c_in_iteration_stmt++; yyvsp[-1].ttype = c_common_truthvalue_conversion (yyvsp[-1].ttype); c_finish_while_stmt_cond (c_common_truthvalue_conversion (yyvsp[-1].ttype), yyvsp[-3].ttype); ! yyval.ttype = add_stmt (yyvsp[-3].ttype); ; ! break;} ! case 496: #line 2275 "objc/objc-parse.y" ! { c_in_iteration_stmt--; ! RECHAIN_STMTS (yyvsp[-1].ttype, WHILE_BODY (yyvsp[-1].ttype)); ; ! break;} ! case 497: #line 2279 "objc/objc-parse.y" ! { DO_COND (yyvsp[-4].ttype) = c_common_truthvalue_conversion (yyvsp[-2].ttype); ; ! break;} ! case 498: #line 2281 "objc/objc-parse.y" ! { ; ! break;} ! case 499: #line 2283 "objc/objc-parse.y" ! { yyval.ttype = build_stmt (FOR_STMT, NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE); ! add_stmt (yyval.ttype); ; ! break;} ! case 500: #line 2287 "objc/objc-parse.y" ! { stmt_count++; ! RECHAIN_STMTS (yyvsp[-2].ttype, FOR_INIT_STMT (yyvsp[-2].ttype)); ; ! break;} ! case 501: #line 2290 "objc/objc-parse.y" ! { if (yyvsp[-1].ttype) FOR_COND (yyvsp[-5].ttype) ! = c_common_truthvalue_conversion (yyvsp[-1].ttype); ; ! break;} ! case 502: #line 2294 "objc/objc-parse.y" ! { c_in_iteration_stmt++; ! FOR_EXPR (yyvsp[-8].ttype) = yyvsp[-1].ttype; ; ! break;} ! case 503: #line 2297 "objc/objc-parse.y" ! { RECHAIN_STMTS (yyvsp[-10].ttype, FOR_BODY (yyvsp[-10].ttype)); ! c_in_iteration_stmt--;; ! break;} ! case 504: #line 2300 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = c_start_case (yyvsp[-1].ttype); ! c_in_case_stmt++; ; ! break;} ! case 505: #line 2304 "objc/objc-parse.y" ! { c_finish_case (); ! c_in_case_stmt--; ; ! break;} ! case 506: #line 2310 "objc/objc-parse.y" ! { add_stmt (build_stmt (EXPR_STMT, yyvsp[-1].ttype)); ; ! break;} ! case 507: #line 2312 "objc/objc-parse.y" ! { check_for_loop_decls (); ; ! break;} ! case 508: #line 2318 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 509: #line 2320 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_expr_stmt (yyvsp[-1].ttype); ; ! break;} ! case 510: #line 2323 "objc/objc-parse.y" ! { if (flag_isoc99) RECHAIN_STMTS (yyvsp[-2].ttype, COMPOUND_BODY (yyvsp[-2].ttype)); ! yyval.ttype = NULL_TREE; ; ! break;} ! case 511: #line 2327 "objc/objc-parse.y" ! { stmt_count++; if (!(c_in_iteration_stmt || c_in_case_stmt)) { error ("break statement not within loop or switch"); yyval.ttype = NULL_TREE; } else ! yyval.ttype = add_stmt (build_break_stmt ()); ; ! break;} ! case 512: #line 2336 "objc/objc-parse.y" ! { stmt_count++; if (!c_in_iteration_stmt) { error ("continue statement not within a loop"); yyval.ttype = NULL_TREE; } else ! yyval.ttype = add_stmt (build_continue_stmt ()); ; ! break;} ! case 513: #line 2345 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_return (NULL_TREE); ; ! break;} ! case 514: #line 2348 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_return (yyvsp[-1].ttype); ; ! break;} ! case 515: #line 2351 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = simple_asm_stmt (yyvsp[-2].ttype); ; ! break;} ! case 516: #line 2355 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE); ; ! break;} ! case 517: #line 2360 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE); ; ! break;} ! case 518: #line 2365 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-10].ttype, yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype); ; ! break;} ! case 519: #line 2368 "objc/objc-parse.y" ! { tree decl; stmt_count++; decl = lookup_label (yyvsp[-1].ttype); if (decl != 0) --- 5418,5633 ---- but I suspect that problems will occur when doing inlining at the tree level. */ } ! ;} ! break; ! ! case 490: #line 2227 "objc/objc-parse.y" ! { if (yyvsp[0].ttype) { STMT_LINENO (yyvsp[0].ttype) = yyvsp[-1].location.line; } ! ;} ! break; ! ! case 491: #line 2236 "objc/objc-parse.y" ! { c_expand_start_else (); ! yyvsp[-1].itype = stmt_count; ;} ! break; ! ! case 492: #line 2239 "objc/objc-parse.y" ! { c_finish_else (); c_expand_end_cond (); if (extra_warnings && stmt_count == yyvsp[-3].itype) ! warning ("empty body in an else-statement"); ;} ! break; ! ! case 493: #line 2244 "objc/objc-parse.y" ! { c_expand_end_cond (); /* This warning is here instead of in simple_if, because we do not want a warning if an empty if is followed by an else statement. Increment stmt_count so we don't give a second error if this is a nested `if'. */ if (extra_warnings && stmt_count++ == yyvsp[0].itype) warning ("%Hempty body in an if-statement", ! &if_stmt_locus); ;} ! break; ! ! case 494: #line 2256 "objc/objc-parse.y" ! { c_expand_end_cond (); ;} ! break; ! ! case 495: #line 2266 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_begin_while_stmt (); ;} ! break; ! ! case 496: #line 2269 "objc/objc-parse.y" ! { c_in_iteration_stmt++; yyvsp[-1].ttype = c_common_truthvalue_conversion (yyvsp[-1].ttype); c_finish_while_stmt_cond (c_common_truthvalue_conversion (yyvsp[-1].ttype), yyvsp[-3].ttype); ! yyval.ttype = add_stmt (yyvsp[-3].ttype); ;} ! break; ! ! case 497: #line 2275 "objc/objc-parse.y" ! { c_in_iteration_stmt--; ! RECHAIN_STMTS (yyvsp[-1].ttype, WHILE_BODY (yyvsp[-1].ttype)); ;} ! break; ! ! case 498: #line 2279 "objc/objc-parse.y" ! { DO_COND (yyvsp[-4].ttype) = c_common_truthvalue_conversion (yyvsp[-2].ttype); ;} ! break; ! ! case 499: #line 2281 "objc/objc-parse.y" ! { ;} ! break; ! ! case 500: #line 2283 "objc/objc-parse.y" ! { yyval.ttype = build_stmt (FOR_STMT, NULL_TREE, NULL_TREE, NULL_TREE, NULL_TREE); ! add_stmt (yyval.ttype); ;} ! break; ! ! case 501: #line 2287 "objc/objc-parse.y" ! { stmt_count++; ! RECHAIN_STMTS (yyvsp[-2].ttype, FOR_INIT_STMT (yyvsp[-2].ttype)); ;} ! break; ! ! case 502: #line 2290 "objc/objc-parse.y" ! { if (yyvsp[-1].ttype) FOR_COND (yyvsp[-5].ttype) ! = c_common_truthvalue_conversion (yyvsp[-1].ttype); ;} ! break; ! ! case 503: #line 2294 "objc/objc-parse.y" ! { c_in_iteration_stmt++; ! FOR_EXPR (yyvsp[-8].ttype) = yyvsp[-1].ttype; ;} ! break; ! ! case 504: #line 2297 "objc/objc-parse.y" ! { RECHAIN_STMTS (yyvsp[-10].ttype, FOR_BODY (yyvsp[-10].ttype)); ! c_in_iteration_stmt--;;} ! break; ! ! case 505: #line 2300 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = c_start_case (yyvsp[-1].ttype); ! c_in_case_stmt++; ;} ! break; ! ! case 506: #line 2304 "objc/objc-parse.y" ! { c_finish_case (); ! c_in_case_stmt--; ;} ! break; ! ! case 507: #line 2310 "objc/objc-parse.y" ! { add_stmt (build_stmt (EXPR_STMT, yyvsp[-1].ttype)); ;} ! break; ! ! case 508: #line 2312 "objc/objc-parse.y" ! { check_for_loop_decls (); ;} ! break; ! ! case 509: #line 2318 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 510: #line 2320 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_expr_stmt (yyvsp[-1].ttype); ;} ! break; ! ! case 511: #line 2323 "objc/objc-parse.y" ! { if (flag_isoc99) RECHAIN_STMTS (yyvsp[-2].ttype, COMPOUND_BODY (yyvsp[-2].ttype)); ! yyval.ttype = NULL_TREE; ;} ! break; ! ! case 512: #line 2327 "objc/objc-parse.y" ! { stmt_count++; if (!(c_in_iteration_stmt || c_in_case_stmt)) { error ("break statement not within loop or switch"); yyval.ttype = NULL_TREE; } else ! yyval.ttype = add_stmt (build_break_stmt ()); ;} ! break; ! ! case 513: #line 2336 "objc/objc-parse.y" ! { stmt_count++; if (!c_in_iteration_stmt) { error ("continue statement not within a loop"); yyval.ttype = NULL_TREE; } else ! yyval.ttype = add_stmt (build_continue_stmt ()); ;} ! break; ! ! case 514: #line 2345 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_return (NULL_TREE); ;} ! break; ! ! case 515: #line 2348 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = c_expand_return (yyvsp[-1].ttype); ;} ! break; ! ! case 516: #line 2351 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = simple_asm_stmt (yyvsp[-2].ttype); ;} ! break; ! ! case 517: #line 2355 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE); ;} ! break; ! ! case 518: #line 2360 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE); ;} ! break; ! ! case 519: #line 2365 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = build_asm_stmt (yyvsp[-10].ttype, yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype); ;} ! break; ! ! case 520: #line 2368 "objc/objc-parse.y" ! { tree decl; stmt_count++; decl = lookup_label (yyvsp[-1].ttype); if (decl != 0) *************** case 519: *** 4970,5067 **** } else yyval.ttype = NULL_TREE; ! ; ! break;} ! case 520: #line 2380 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids `goto *expr;'"); stmt_count++; yyvsp[-1].ttype = convert (ptr_type_node, yyvsp[-1].ttype); ! yyval.ttype = add_stmt (build_stmt (GOTO_STMT, yyvsp[-1].ttype)); ; ! break;} ! case 521: #line 2386 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 522: #line 2388 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = objc_build_throw_stmt (yyvsp[-1].ttype); ! ; ! break;} ! case 523: #line 2392 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = objc_build_throw_stmt (NULL_TREE); ! ; ! break;} ! case 524: #line 2396 "objc/objc-parse.y" ! { objc_build_finally_prologue (); ; ! break;} ! case 525: #line 2398 "objc/objc-parse.y" ! { yyval.ttype = objc_build_try_catch_finally_stmt (yyvsp[-2].itype, yyvsp[0].itype); ; ! break;} ! case 526: #line 2400 "objc/objc-parse.y" ! { objc_build_synchronized_prologue (yyvsp[-1].ttype); ; ! break;} ! case 527: #line 2402 "objc/objc-parse.y" ! { yyval.ttype = objc_build_synchronized_epilogue (); ; ! break;} ! case 528: #line 2407 "objc/objc-parse.y" ! { objc_build_try_epilogue (1); ; ! break;} ! case 529: #line 2409 "objc/objc-parse.y" ! { objc_build_catch_epilogue (); yyval.itype = 1; ; ! break;} ! case 530: #line 2411 "objc/objc-parse.y" ! { objc_build_try_epilogue (0); yyval.itype = 0; ; ! break;} ! case 531: #line 2417 "objc/objc-parse.y" ! { objc_build_try_prologue (); ; ! break;} ! case 535: #line 2428 "objc/objc-parse.y" ! { objc_build_catch_stmt (yyvsp[-1].ttype); ; ! break;} ! case 536: #line 2430 "objc/objc-parse.y" ! { stmt_count++; ; ! break;} ! case 537: #line 2435 "objc/objc-parse.y" ! { yyval.itype = 1; ; ! break;} ! case 538: #line 2437 "objc/objc-parse.y" ! { yyval.itype = 0; ; ! break;} ! case 539: #line 2445 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (yyvsp[-1].ttype, NULL_TREE); ; ! break;} ! case 540: #line 2448 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (yyvsp[-3].ttype, yyvsp[-1].ttype); ; ! break;} ! case 541: #line 2451 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (NULL_TREE, NULL_TREE); ; ! break;} ! case 542: #line 2454 "objc/objc-parse.y" ! { tree label = define_label (yyvsp[-2].location, yyvsp[-3].ttype); stmt_count++; if (label) { --- 5637,5754 ---- } else yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 521: #line 2380 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("ISO C forbids `goto *expr;'"); stmt_count++; yyvsp[-1].ttype = convert (ptr_type_node, yyvsp[-1].ttype); ! yyval.ttype = add_stmt (build_stmt (GOTO_STMT, yyvsp[-1].ttype)); ;} ! break; ! ! case 522: #line 2386 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 523: #line 2388 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = objc_build_throw_stmt (yyvsp[-1].ttype); ! ;} ! break; ! ! case 524: #line 2392 "objc/objc-parse.y" ! { stmt_count++; yyval.ttype = objc_build_throw_stmt (NULL_TREE); ! ;} ! break; ! ! case 525: #line 2396 "objc/objc-parse.y" ! { objc_build_finally_prologue (); ;} ! break; ! ! case 526: #line 2398 "objc/objc-parse.y" ! { yyval.ttype = objc_build_try_catch_finally_stmt (yyvsp[-2].itype, yyvsp[0].itype); ;} ! break; ! ! case 527: #line 2400 "objc/objc-parse.y" ! { objc_build_synchronized_prologue (yyvsp[-1].ttype); ;} ! break; ! ! case 528: #line 2402 "objc/objc-parse.y" ! { yyval.ttype = objc_build_synchronized_epilogue (); ;} ! break; ! ! case 529: #line 2407 "objc/objc-parse.y" ! { objc_build_try_epilogue (1); ;} ! break; ! ! case 530: #line 2409 "objc/objc-parse.y" ! { objc_build_catch_epilogue (); yyval.itype = 1; ;} ! break; ! ! case 531: #line 2411 "objc/objc-parse.y" ! { objc_build_try_epilogue (0); yyval.itype = 0; ;} ! break; ! ! case 532: #line 2417 "objc/objc-parse.y" ! { objc_build_try_prologue (); ;} ! break; ! ! case 536: #line 2428 "objc/objc-parse.y" ! { objc_build_catch_stmt (yyvsp[-1].ttype); ;} ! break; ! ! case 537: #line 2430 "objc/objc-parse.y" ! { stmt_count++; ;} ! break; ! ! case 538: #line 2435 "objc/objc-parse.y" ! { yyval.itype = 1; ;} ! break; ! ! case 539: #line 2437 "objc/objc-parse.y" ! { yyval.itype = 0; ;} ! break; ! ! case 540: #line 2445 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (yyvsp[-1].ttype, NULL_TREE); ;} ! break; ! ! case 541: #line 2448 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (yyvsp[-3].ttype, yyvsp[-1].ttype); ;} ! break; ! ! case 542: #line 2451 "objc/objc-parse.y" ! { stmt_count++; ! yyval.ttype = do_case (NULL_TREE, NULL_TREE); ;} ! break; ! ! case 543: #line 2454 "objc/objc-parse.y" ! { tree label = define_label (yyvsp[-2].location, yyvsp[-3].ttype); stmt_count++; if (label) { *************** case 542: *** 5070,5149 **** } else yyval.ttype = NULL_TREE; ! ; ! break;} ! case 543: #line 2470 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 544: #line 2472 "objc/objc-parse.y" ! { ; ! break;} ! case 545: #line 2477 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 547: #line 2484 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 550: #line 2491 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ; ! break;} ! case 551: #line 2496 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (NULL_TREE, yyvsp[-3].ttype), yyvsp[-1].ttype); ; ! break;} ! case 552: #line 2498 "objc/objc-parse.y" ! { yyvsp[-5].ttype = build_string (IDENTIFIER_LENGTH (yyvsp[-5].ttype), IDENTIFIER_POINTER (yyvsp[-5].ttype)); ! yyval.ttype = build_tree_list (build_tree_list (yyvsp[-5].ttype, yyvsp[-3].ttype), yyvsp[-1].ttype); ; ! break;} ! case 553: #line 2505 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ; ! break;} ! case 554: #line 2507 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype); ; ! break;} ! case 555: #line 2517 "objc/objc-parse.y" ! { pushlevel (0); ! declare_parm_level (); ; ! break;} ! case 556: #line 2520 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! poplevel (0, 0, 0); ; ! break;} ! case 558: #line 2527 "objc/objc-parse.y" ! { mark_forward_parm_decls (); ; ! break;} ! case 559: #line 2529 "objc/objc-parse.y" ! { /* Dummy action so attributes are in known place ! on parser stack. */ ; ! break;} ! case 560: #line 2532 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 561: #line 2534 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, NULL_TREE); ; ! break;} ! case 562: #line 2540 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); ; ! break;} ! case 563: #line 2542 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); /* Gcc used to allow this as an extension. However, it does not work for all targets, and thus has been disabled. Also, since func (...) and func () are indistinguishable, --- 5757,5853 ---- } else yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 544: #line 2470 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 545: #line 2472 "objc/objc-parse.y" ! { ;} ! break; ! ! case 546: #line 2477 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 548: #line 2484 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 551: #line 2491 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;} ! break; ! ! case 552: #line 2496 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (NULL_TREE, yyvsp[-3].ttype), yyvsp[-1].ttype); ;} ! break; ! ! case 553: #line 2498 "objc/objc-parse.y" ! { yyvsp[-5].ttype = build_string (IDENTIFIER_LENGTH (yyvsp[-5].ttype), IDENTIFIER_POINTER (yyvsp[-5].ttype)); ! yyval.ttype = build_tree_list (build_tree_list (yyvsp[-5].ttype, yyvsp[-3].ttype), yyvsp[-1].ttype); ;} ! break; ! ! case 554: #line 2505 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;} ! break; ! ! case 555: #line 2507 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-2].ttype); ;} ! break; ! ! case 556: #line 2517 "objc/objc-parse.y" ! { pushlevel (0); ! declare_parm_level (); ;} ! break; ! ! case 557: #line 2520 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! poplevel (0, 0, 0); ;} ! break; ! ! case 559: #line 2527 "objc/objc-parse.y" ! { mark_forward_parm_decls (); ;} ! break; ! ! case 560: #line 2529 "objc/objc-parse.y" ! { /* Dummy action so attributes are in known place ! on parser stack. */ ;} ! break; ! ! case 561: #line 2532 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 562: #line 2534 "objc/objc-parse.y" ! { yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, NULL_TREE); ;} ! break; ! ! case 563: #line 2540 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); ;} ! break; ! ! case 564: #line 2542 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); /* Gcc used to allow this as an extension. However, it does not work for all targets, and thus has been disabled. Also, since func (...) and func () are indistinguishable, *************** case 563: *** 5152,5259 **** correctly. */ error ("ISO C requires a named argument before `...'"); parsing_iso_function_signature = true; ! ; ! break;} ! case 564: #line 2553 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (1); parsing_iso_function_signature = true; ! ; ! break;} ! case 565: #line 2557 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); parsing_iso_function_signature = true; ! ; ! break;} ! case 566: #line 2564 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ; ! break;} ! case 567: #line 2566 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ; ! break;} ! case 568: #line 2573 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 569: #line 2578 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 570: #line 2583 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 571: #line 2586 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 572: #line 2592 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 573: #line 2600 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 574: #line 2605 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 575: #line 2610 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 576: #line 2613 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ; ! break;} ! case 577: #line 2619 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 578: #line 2625 "objc/objc-parse.y" ! { prefix_attributes = chainon (prefix_attributes, yyvsp[-3].ttype); ! all_prefix_attributes = prefix_attributes; ; ! break;} ! case 579: #line 2634 "objc/objc-parse.y" ! { pushlevel (0); ! declare_parm_level (); ; ! break;} ! case 580: #line 2637 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! poplevel (0, 0, 0); ; ! break;} ! case 582: #line 2644 "objc/objc-parse.y" ! { tree t; for (t = yyvsp[-1].ttype; t; t = TREE_CHAIN (t)) if (TREE_VALUE (t) == NULL_TREE) error ("`...' in old-style identifier list"); --- 5856,5981 ---- correctly. */ error ("ISO C requires a named argument before `...'"); parsing_iso_function_signature = true; ! ;} ! break; ! ! case 565: #line 2553 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (1); parsing_iso_function_signature = true; ! ;} ! break; ! ! case 566: #line 2557 "objc/objc-parse.y" ! { yyval.ttype = get_parm_info (0); parsing_iso_function_signature = true; ! ;} ! break; ! ! case 567: #line 2564 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ;} ! break; ! ! case 568: #line 2566 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ;} ! break; ! ! case 569: #line 2573 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 570: #line 2578 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 571: #line 2583 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 572: #line 2586 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 573: #line 2592 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 574: #line 2600 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 575: #line 2605 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 576: #line 2610 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 577: #line 2613 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), chainon (yyvsp[0].ttype, all_prefix_attributes)); ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 578: #line 2619 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 579: #line 2625 "objc/objc-parse.y" ! { prefix_attributes = chainon (prefix_attributes, yyvsp[-3].ttype); ! all_prefix_attributes = prefix_attributes; ;} ! break; ! ! case 580: #line 2634 "objc/objc-parse.y" ! { pushlevel (0); ! declare_parm_level (); ;} ! break; ! ! case 581: #line 2637 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! poplevel (0, 0, 0); ;} ! break; ! ! case 583: #line 2644 "objc/objc-parse.y" ! { tree t; for (t = yyvsp[-1].ttype; t; t = TREE_CHAIN (t)) if (TREE_VALUE (t) == NULL_TREE) error ("`...' in old-style identifier list"); *************** case 582: *** 5265,5299 **** || TREE_PURPOSE (yyval.ttype) == 0 || TREE_CODE (TREE_PURPOSE (yyval.ttype)) != PARM_DECL)) YYERROR1; ! ; ! break;} ! case 583: #line 2662 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; ! break;} ! case 584: #line 2664 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; ! break;} ! case 585: #line 2670 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; ! break;} ! case 586: #line 2672 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; ! break;} ! case 587: #line 2677 "objc/objc-parse.y" ! { yyval.itype = SAVE_EXT_FLAGS(); pedantic = 0; warn_pointer_arith = 0; warn_traditional = 0; ! flag_iso = 0; ; ! break;} ! case 593: #line 2693 "objc/objc-parse.y" ! { if (objc_implementation_context) { finish_class (objc_implementation_context); --- 5987,6027 ---- || TREE_PURPOSE (yyval.ttype) == 0 || TREE_CODE (TREE_PURPOSE (yyval.ttype)) != PARM_DECL)) YYERROR1; ! ;} ! break; ! ! case 584: #line 2662 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;} ! break; ! ! case 585: #line 2664 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;} ! break; ! ! case 586: #line 2670 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;} ! break; ! ! case 587: #line 2672 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;} ! break; ! ! case 588: #line 2677 "objc/objc-parse.y" ! { yyval.itype = SAVE_EXT_FLAGS(); pedantic = 0; warn_pointer_arith = 0; warn_traditional = 0; ! flag_iso = 0; ;} ! break; ! ! case 594: #line 2693 "objc/objc-parse.y" ! { if (objc_implementation_context) { finish_class (objc_implementation_context); *************** case 593: *** 5302,5786 **** } else warning ("`@end' must appear in an implementation context"); ! ; ! break;} ! case 594: #line 2708 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; ! break;} ! case 595: #line 2710 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; ! break;} ! case 596: #line 2715 "objc/objc-parse.y" ! { objc_declare_class (yyvsp[-1].ttype); ! ; ! break;} ! case 597: #line 2722 "objc/objc-parse.y" ! { objc_declare_alias (yyvsp[-2].ttype, yyvsp[-1].ttype); ! ; ! break;} ! case 598: #line 2728 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 599: #line 2729 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 602: #line 2739 "objc/objc-parse.y" ! { objc_interface_context = objc_ivar_context = start_class (CLASS_INTERFACE_TYPE, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); objc_public_flag = 0; ! ; ! break;} ! case 603: #line 2745 "objc/objc-parse.y" ! { continue_class (objc_interface_context); ! ; ! break;} ! case 604: #line 2749 "objc/objc-parse.y" ! { finish_class (objc_interface_context); objc_interface_context = NULL_TREE; ! ; ! break;} ! case 605: #line 2755 "objc/objc-parse.y" ! { objc_implementation_context = objc_ivar_context = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE); objc_public_flag = 0; ! ; ! break;} ! case 606: #line 2761 "objc/objc-parse.y" ! { objc_ivar_chain = continue_class (objc_implementation_context); ! ; ! break;} ! case 607: #line 2767 "objc/objc-parse.y" ! { objc_interface_context = start_class (CATEGORY_INTERFACE_TYPE, yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); continue_class (objc_interface_context); ! ; ! break;} ! case 608: #line 2773 "objc/objc-parse.y" ! { finish_class (objc_interface_context); objc_interface_context = NULL_TREE; ! ; ! break;} ! case 609: #line 2779 "objc/objc-parse.y" ! { objc_implementation_context = start_class (CATEGORY_IMPLEMENTATION_TYPE, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE); objc_ivar_chain = continue_class (objc_implementation_context); ! ; ! break;} ! case 610: #line 2789 "objc/objc-parse.y" ! { objc_pq_context = 1; objc_interface_context = start_protocol(PROTOCOL_INTERFACE_TYPE, yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 611: #line 2795 "objc/objc-parse.y" ! { objc_pq_context = 0; finish_protocol(objc_interface_context); objc_interface_context = NULL_TREE; ! ; ! break;} ! case 612: #line 2804 "objc/objc-parse.y" ! { objc_declare_protocols (yyvsp[-1].ttype); ! ; ! break;} ! case 613: #line 2811 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ; ! break;} ! case 615: #line 2819 "objc/objc-parse.y" ! { if (yyvsp[-2].code == LT_EXPR && yyvsp[0].code == GT_EXPR) yyval.ttype = yyvsp[-1].ttype; else YYERROR1; ! ; ! break;} ! case 618: #line 2833 "objc/objc-parse.y" ! { objc_public_flag = 2; ; ! break;} ! case 619: #line 2834 "objc/objc-parse.y" ! { objc_public_flag = 0; ; ! break;} ! case 620: #line 2835 "objc/objc-parse.y" ! { objc_public_flag = 1; ; ! break;} ! case 621: #line 2840 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ; ! break;} ! case 623: #line 2845 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("extra semicolon in struct or union specified"); ! ; ! break;} ! case 624: #line 2863 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 625: #line 2866 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ; ! break;} ! case 626: #line 2869 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 627: #line 2874 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 630: #line 2881 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, yyvsp[0].ttype, current_declspecs, NULL_TREE); ! ; ! break;} ! case 631: #line 2888 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, yyvsp[-2].ttype, current_declspecs, yyvsp[0].ttype); ! ; ! break;} ! case 632: #line 2894 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, NULL_TREE, current_declspecs, yyvsp[0].ttype); ! ; ! break;} ! case 633: #line 2904 "objc/objc-parse.y" ! { objc_inherit_code = CLASS_METHOD_DECL; ; ! break;} ! case 634: #line 2906 "objc/objc-parse.y" ! { objc_inherit_code = INSTANCE_METHOD_DECL; ; ! break;} ! case 635: #line 2911 "objc/objc-parse.y" ! { objc_pq_context = 1; if (!objc_implementation_context) fatal_error ("method definition not in class context"); ! ; ! break;} ! case 636: #line 2917 "objc/objc-parse.y" ! { objc_pq_context = 0; objc_add_method (objc_implementation_context, yyvsp[0].ttype, objc_inherit_code == CLASS_METHOD_DECL); start_method_def (yyvsp[0].ttype); ! ; ! break;} ! case 637: #line 2925 "objc/objc-parse.y" ! { continue_method_def (); ! ; ! break;} ! case 638: #line 2929 "objc/objc-parse.y" ! { finish_method_def (); ! ; ! break;} ! case 641: #line 2941 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ; ! break;} ! case 645: #line 2951 "objc/objc-parse.y" ! { /* Remember protocol qualifiers in prototypes. */ objc_pq_context = 1; ! ; ! break;} ! case 646: #line 2956 "objc/objc-parse.y" ! { /* Forget protocol qualifiers here. */ objc_pq_context = 0; objc_add_method (objc_interface_context, yyvsp[0].ttype, objc_inherit_code == CLASS_METHOD_DECL); ! ; ! break;} ! case 648: #line 2968 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ! ; ! break;} ! case 649: #line 2973 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! ; ! break;} ! case 650: #line 2978 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 651: #line 2983 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 660: #line 3013 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ; ! break;} ! case 661: #line 3015 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ; ! break;} ! case 662: #line 3017 "objc/objc-parse.y" ! { pedwarn ("empty declaration"); ; ! break;} ! case 663: #line 3022 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ; ! break;} ! case 664: #line 3024 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ; ! break;} ! case 665: #line 3032 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ; ! break;} ! case 666: #line 3036 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ; ! break;} ! case 667: #line 3040 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ; ! break;} ! case 668: #line 3045 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ; ! break;} ! case 669: #line 3049 "objc/objc-parse.y" ! { /* oh what a kludge! */ yyval.ttype = objc_ellipsis_node; ! ; ! break;} ! case 670: #line 3054 "objc/objc-parse.y" ! { pushlevel (0); ! ; ! break;} ! case 671: #line 3058 "objc/objc-parse.y" ! { /* returns a tree list node generated by get_parm_info */ yyval.ttype = yyvsp[0].ttype; poplevel (0, 0, 0); ! ; ! break;} ! case 674: #line 3073 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 701: #line 3095 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (yyvsp[-5].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 702: #line 3100 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (yyvsp[-2].ttype, NULL_TREE, yyvsp[0].ttype); ! ; ! break;} ! case 703: #line 3105 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 704: #line 3110 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ! ; ! break;} ! case 708: #line 3123 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 709: #line 3131 "objc/objc-parse.y" ! { if (TREE_CHAIN (yyvsp[0].ttype) == NULL_TREE) /* just return the expr., remove a level of indirection */ yyval.ttype = TREE_VALUE (yyvsp[0].ttype); else /* we have a comma expr., we will collapse later */ yyval.ttype = yyvsp[0].ttype; ! ; ! break;} ! case 710: #line 3143 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 711: #line 3147 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ! ; ! break;} ! case 713: #line 3155 "objc/objc-parse.y" ! { yyval.ttype = get_class_reference (yyvsp[0].ttype); ! ; ! break;} ! case 714: #line 3159 "objc/objc-parse.y" ! { yyval.ttype = get_class_reference (yyvsp[0].ttype); ! ; ! break;} ! case 715: #line 3166 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[-1].ttype); ; ! break;} ! case 719: #line 3177 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ; ! break;} ! case 720: #line 3184 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-1].ttype, NULL_TREE); ! ; ! break;} ! case 721: #line 3188 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, NULL_TREE); ! ; ! break;} ! case 722: #line 3195 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ! ; ! break;} ! case 723: #line 3202 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ! ; ! break;} ! case 724: #line 3211 "objc/objc-parse.y" ! { yyval.ttype = groktypename (yyvsp[-1].ttype); ! ; ! break;} ! } - #line 705 "/usr/share/bison/bison.simple" 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 *++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 --- 6030,6577 ---- } else warning ("`@end' must appear in an implementation context"); ! ;} ! break; ! ! case 595: #line 2708 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;} ! break; ! ! case 596: #line 2710 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;} ! break; ! ! case 597: #line 2715 "objc/objc-parse.y" ! { objc_declare_class (yyvsp[-1].ttype); ! ;} ! break; ! ! case 598: #line 2722 "objc/objc-parse.y" ! { objc_declare_alias (yyvsp[-2].ttype, yyvsp[-1].ttype); ! ;} ! break; ! ! case 599: #line 2728 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 600: #line 2729 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 603: #line 2739 "objc/objc-parse.y" ! { objc_interface_context = objc_ivar_context = start_class (CLASS_INTERFACE_TYPE, yyvsp[-2].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); objc_public_flag = 0; ! ;} ! break; ! ! case 604: #line 2745 "objc/objc-parse.y" ! { continue_class (objc_interface_context); ! ;} ! break; ! ! case 605: #line 2749 "objc/objc-parse.y" ! { finish_class (objc_interface_context); objc_interface_context = NULL_TREE; ! ;} ! break; ! ! case 606: #line 2755 "objc/objc-parse.y" ! { objc_implementation_context = objc_ivar_context = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[-1].ttype, yyvsp[0].ttype, NULL_TREE); objc_public_flag = 0; ! ;} ! break; ! ! case 607: #line 2761 "objc/objc-parse.y" ! { objc_ivar_chain = continue_class (objc_implementation_context); ! ;} ! break; ! ! case 608: #line 2767 "objc/objc-parse.y" ! { objc_interface_context = start_class (CATEGORY_INTERFACE_TYPE, yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); continue_class (objc_interface_context); ! ;} ! break; ! ! case 609: #line 2773 "objc/objc-parse.y" ! { finish_class (objc_interface_context); objc_interface_context = NULL_TREE; ! ;} ! break; ! ! case 610: #line 2779 "objc/objc-parse.y" ! { objc_implementation_context = start_class (CATEGORY_IMPLEMENTATION_TYPE, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE); objc_ivar_chain = continue_class (objc_implementation_context); ! ;} ! break; ! ! case 611: #line 2789 "objc/objc-parse.y" ! { objc_pq_context = 1; objc_interface_context = start_protocol(PROTOCOL_INTERFACE_TYPE, yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 612: #line 2795 "objc/objc-parse.y" ! { objc_pq_context = 0; finish_protocol(objc_interface_context); objc_interface_context = NULL_TREE; ! ;} ! break; ! ! case 613: #line 2804 "objc/objc-parse.y" ! { objc_declare_protocols (yyvsp[-1].ttype); ! ;} ! break; ! ! case 614: #line 2811 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 616: #line 2819 "objc/objc-parse.y" ! { if (yyvsp[-2].code == LT_EXPR && yyvsp[0].code == GT_EXPR) yyval.ttype = yyvsp[-1].ttype; else YYERROR1; ! ;} ! break; ! ! case 619: #line 2833 "objc/objc-parse.y" ! { objc_public_flag = 2; ;} ! break; ! ! case 620: #line 2834 "objc/objc-parse.y" ! { objc_public_flag = 0; ;} ! break; ! ! case 621: #line 2835 "objc/objc-parse.y" ! { objc_public_flag = 1; ;} ! break; ! ! case 622: #line 2840 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 624: #line 2845 "objc/objc-parse.y" ! { if (pedantic) pedwarn ("extra semicolon in struct or union specified"); ! ;} ! break; ! ! case 625: #line 2863 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 626: #line 2866 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ! POP_DECLSPEC_STACK; ;} ! break; ! ! case 627: #line 2869 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 628: #line 2874 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 631: #line 2881 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, yyvsp[0].ttype, current_declspecs, NULL_TREE); ! ;} ! break; ! ! case 632: #line 2888 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, yyvsp[-2].ttype, current_declspecs, yyvsp[0].ttype); ! ;} ! break; ! ! case 633: #line 2894 "objc/objc-parse.y" ! { yyval.ttype = add_instance_variable (objc_ivar_context, objc_public_flag, NULL_TREE, current_declspecs, yyvsp[0].ttype); ! ;} ! break; ! ! case 634: #line 2904 "objc/objc-parse.y" ! { objc_inherit_code = CLASS_METHOD_DECL; ;} ! break; ! ! case 635: #line 2906 "objc/objc-parse.y" ! { objc_inherit_code = INSTANCE_METHOD_DECL; ;} ! break; ! ! case 636: #line 2911 "objc/objc-parse.y" ! { objc_pq_context = 1; if (!objc_implementation_context) fatal_error ("method definition not in class context"); ! ;} ! break; ! ! case 637: #line 2917 "objc/objc-parse.y" ! { objc_pq_context = 0; objc_add_method (objc_implementation_context, yyvsp[0].ttype, objc_inherit_code == CLASS_METHOD_DECL); start_method_def (yyvsp[0].ttype); ! ;} ! break; ! ! case 638: #line 2925 "objc/objc-parse.y" ! { continue_method_def (); ! ;} ! break; ! ! case 639: #line 2929 "objc/objc-parse.y" ! { finish_method_def (); ! ;} ! break; ! ! case 642: #line 2941 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ;} ! break; ! ! case 646: #line 2951 "objc/objc-parse.y" ! { /* Remember protocol qualifiers in prototypes. */ objc_pq_context = 1; ! ;} ! break; ! ! case 647: #line 2956 "objc/objc-parse.y" ! { /* Forget protocol qualifiers here. */ objc_pq_context = 0; objc_add_method (objc_interface_context, yyvsp[0].ttype, objc_inherit_code == CLASS_METHOD_DECL); ! ;} ! break; ! ! case 649: #line 2968 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ! ;} ! break; ! ! case 650: #line 2973 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ! ;} ! break; ! ! case 651: #line 2978 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 652: #line 2983 "objc/objc-parse.y" ! { yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 661: #line 3013 "objc/objc-parse.y" ! { POP_DECLSPEC_STACK; ;} ! break; ! ! case 662: #line 3015 "objc/objc-parse.y" ! { shadow_tag (yyvsp[-1].ttype); ;} ! break; ! ! case 663: #line 3017 "objc/objc-parse.y" ! { pedwarn ("empty declaration"); ;} ! break; ! ! case 664: #line 3022 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ;} ! break; ! ! case 665: #line 3024 "objc/objc-parse.y" ! { push_parm_decl (yyvsp[0].ttype); ;} ! break; ! ! case 666: #line 3032 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ;} ! break; ! ! case 667: #line 3036 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), ! chainon (yyvsp[0].ttype, all_prefix_attributes)); ;} ! break; ! ! case 668: #line 3040 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[0].ttype; ;} ! break; ! ! case 669: #line 3045 "objc/objc-parse.y" ! { yyval.ttype = NULL_TREE; ! ;} ! break; ! ! case 670: #line 3049 "objc/objc-parse.y" ! { /* oh what a kludge! */ yyval.ttype = objc_ellipsis_node; ! ;} ! break; ! ! case 671: #line 3054 "objc/objc-parse.y" ! { pushlevel (0); ! ;} ! break; ! ! case 672: #line 3058 "objc/objc-parse.y" ! { /* returns a tree list node generated by get_parm_info */ yyval.ttype = yyvsp[0].ttype; poplevel (0, 0, 0); ! ;} ! break; ! ! case 675: #line 3073 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 702: #line 3095 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (yyvsp[-5].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 703: #line 3100 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (yyvsp[-2].ttype, NULL_TREE, yyvsp[0].ttype); ! ;} ! break; ! ! case 704: #line 3105 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 705: #line 3110 "objc/objc-parse.y" ! { yyval.ttype = build_keyword_decl (NULL_TREE, NULL_TREE, yyvsp[0].ttype); ! ;} ! break; ! ! case 709: #line 3123 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 710: #line 3131 "objc/objc-parse.y" ! { if (TREE_CHAIN (yyvsp[0].ttype) == NULL_TREE) /* just return the expr., remove a level of indirection */ yyval.ttype = TREE_VALUE (yyvsp[0].ttype); else /* we have a comma expr., we will collapse later */ yyval.ttype = yyvsp[0].ttype; ! ;} ! break; ! ! case 711: #line 3143 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 712: #line 3147 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ! ;} ! break; ! ! case 714: #line 3155 "objc/objc-parse.y" ! { yyval.ttype = get_class_reference (yyvsp[0].ttype); ! ;} ! break; ! ! case 715: #line 3159 "objc/objc-parse.y" ! { yyval.ttype = get_class_reference (yyvsp[0].ttype); ! ;} ! break; ! ! case 716: #line 3166 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[-1].ttype); ;} ! break; ! ! case 720: #line 3177 "objc/objc-parse.y" ! { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ! ;} ! break; ! ! case 721: #line 3184 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (yyvsp[-1].ttype, NULL_TREE); ! ;} ! break; ! ! case 722: #line 3188 "objc/objc-parse.y" ! { yyval.ttype = build_tree_list (NULL_TREE, NULL_TREE); ! ;} ! break; ! ! case 723: #line 3195 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ! ;} ! break; ! ! case 724: #line 3202 "objc/objc-parse.y" ! { yyval.ttype = yyvsp[-1].ttype; ! ;} ! break; ! ! case 725: #line 3211 "objc/objc-parse.y" ! { yyval.ttype = groktypename (yyvsp[-1].ttype); ! ;} ! break; + } + + /* Line 991 of yacc.c. */ + #line 6565 "objc/objc-parse.c" yyvsp -= yylen; yyssp -= yylen; ! ! YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; ! /* Now `shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule *************** case 724: *** 5788,5798 **** yyn = yyr1[yyn]; ! yystate = yypgoto[yyn - YYNTBASE] + *yyssp; ! if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) yystate = yytable[yystate]; else ! yystate = yydefgoto[yyn - YYNTBASE]; goto yynewstate; --- 6579,6589 ---- yyn = yyr1[yyn]; ! yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; ! if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) yystate = yytable[yystate]; else ! yystate = yydefgoto[yyn - YYNTOKENS]; goto yynewstate; *************** yyerrlab: *** 5805,5817 **** if (!yyerrstatus) { ++yynerrs; ! ! #ifdef YYERROR_VERBOSE yyn = yypact[yystate]; ! if (yyn > YYFLAG && yyn < YYLAST) { YYSIZE_T yysize = 0; char *yymsg; int yyx, yycount; --- 6596,6608 ---- if (!yyerrstatus) { ++yynerrs; ! #if YYERROR_VERBOSE yyn = yypact[yystate]; ! if (YYPACT_NINF < yyn && yyn < YYLAST) { YYSIZE_T yysize = 0; + int yytype = YYTRANSLATE (yychar); char *yymsg; int yyx, yycount; *************** yyerrlab: *** 5820,5834 **** 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)]); if (yycount < 5) { --- 6611,6625 ---- YYCHECK. */ for (yyx = yyn < 0 ? -yyn : 0; yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) ! if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) yysize += yystrlen (yytname[yyx]) + 15, yycount++; ! yysize += yystrlen ("syntax error, unexpected ") + 1; ! yysize += yystrlen (yytname[yytype]); yymsg = (char *) YYSTACK_ALLOC (yysize); if (yymsg != 0) { ! char *yyp = yystpcpy (yymsg, "syntax error, unexpected "); ! yyp = yystpcpy (yyp, yytname[yytype]); if (yycount < 5) { *************** yyerrlab: *** 5836,5842 **** 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); --- 6627,6633 ---- for (yyx = yyn < 0 ? -yyn : 0; yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) ! if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) { const char *yyq = ! yycount ? ", expecting " : " or "; yyp = yystpcpy (yyp, yyq); *************** yyerrlab: *** 5848,5949 **** YYSTACK_FREE (yymsg); } else ! yyerror ("parse error; also virtual memory exhausted"); } else ! #endif /* defined (YYERROR_VERBOSE) */ ! yyerror ("parse 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 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; } /* Else will try to reuse lookahead token after shifting the error token. */ - yyerrstatus = 3; /* Each real token shifted decrements this */ ! goto yyerrhandle; - /*-------------------------------------------------------------------. - | 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 /*---------------------------------------------------------------. ! | 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 ! #if YYDEBUG ! if (yydebug) { ! short *yyssp1 = yyss - 1; ! YYFPRINTF (stderr, "Error: state stack now"); ! while (yyssp1 != yyssp) ! YYFPRINTF (stderr, " %d", *++yyssp1); ! YYFPRINTF (stderr, "\n"); ! } ! #endif ! /*--------------. ! | yyerrhandle. | ! `--------------*/ ! yyerrhandle: ! yyn = yypact[yystate]; ! if (yyn == YYFLAG) ! goto yyerrdefault; ! 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; } - else if (yyn == 0) - goto yyerrpop; if (yyn == YYFINAL) YYACCEPT; --- 6639,6731 ---- YYSTACK_FREE (yymsg); } else ! yyerror ("syntax error; also virtual memory exhausted"); } else ! #endif /* YYERROR_VERBOSE */ ! yyerror ("syntax error"); } ! if (yyerrstatus == 3) { /* If just tried and failed to reuse lookahead token after an error, discard it. */ ! /* Return failure if at end of input. */ if (yychar == YYEOF) ! { ! /* Pop the error token. */ ! YYPOPSTACK; ! /* Pop the rest of the stack. */ ! while (yyss < yyssp) ! { ! YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); ! yydestruct (yystos[*yyssp], yyvsp); ! YYPOPSTACK; ! } ! YYABORT; ! } ! ! YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc); ! yydestruct (yytoken, &yylval); yychar = YYEMPTY; + } /* Else will try to reuse lookahead token after shifting the error token. */ + goto yyerrlab2; ! /*----------------------------------------------------. ! | yyerrlab1 -- error raised explicitly by an action. | ! `----------------------------------------------------*/ ! yyerrlab1: + /* Suppress GCC warning that yyerrlab1 is unused when no action + invokes YYERROR. */ + #if defined (__GNUC_MINOR__) && 2093 <= (__GNUC__ * 1000 + __GNUC_MINOR__) \ + && !defined __cplusplus + __attribute__ ((__unused__)) + #endif ! goto yyerrlab2; /*---------------------------------------------------------------. ! | yyerrlab2 -- pop states until the error token can be shifted. | `---------------------------------------------------------------*/ ! yyerrlab2: ! yyerrstatus = 3; /* Each real token shifted decrements this. */ ! for (;;) { ! yyn = yypact[yystate]; ! if (yyn != YYPACT_NINF) ! { ! yyn += YYTERROR; ! if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) ! { ! yyn = yytable[yyn]; ! if (0 < yyn) ! break; ! } ! } ! /* Pop the current state because it cannot handle the error token. */ ! if (yyssp == yyss) ! YYABORT; ! YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); ! yydestruct (yystos[yystate], yyvsp); ! yyvsp--; ! yystate = *--yyssp; ! YY_STACK_PRINT (yyss, yyssp); } if (yyn == YYFINAL) YYACCEPT; *************** yyerrhandle: *** 5951,5959 **** YYDPRINTF ((stderr, "Shifting error token, ")); *++yyvsp = yylval; ! #if YYLSP_NEEDED ! *++yylsp = yylloc; ! #endif yystate = yyn; goto yynewstate; --- 6733,6739 ---- YYDPRINTF ((stderr, "Shifting error token, ")); *++yyvsp = yylval; ! yystate = yyn; goto yynewstate; *************** yyabortlab: *** 5973,5985 **** yyresult = 1; goto yyreturn; ! /*---------------------------------------------. ! | yyoverflowab -- parser overflow comes here. | ! `---------------------------------------------*/ yyoverflowlab: yyerror ("parser stack overflow"); yyresult = 2; /* Fall through. */ yyreturn: #ifndef yyoverflow --- 6753,6767 ---- yyresult = 1; goto yyreturn; ! #ifndef yyoverflow ! /*----------------------------------------------. ! | yyoverflowlab -- parser overflow comes here. | ! `----------------------------------------------*/ yyoverflowlab: yyerror ("parser stack overflow"); yyresult = 2; /* Fall through. */ + #endif yyreturn: #ifndef yyoverflow *************** yyreturn: *** 5988,5993 **** --- 6770,6777 ---- #endif return yyresult; } + + #line 3216 "objc/objc-parse.y" *************** c_parse_file (void) *** 6516,6518 **** --- 7300,7304 ---- } #include "gt-c-parse.h" + + diff -Nrcpad gcc-3.4.4/libobjc/ChangeLog gcc-3.4.5/libobjc/ChangeLog *** gcc-3.4.4/libobjc/ChangeLog 2005-05-19 07:51:26.000000000 +0000 --- gcc-3.4.5/libobjc/ChangeLog 2005-12-01 02:39:27.000000000 +0000 *************** *** 1,3 **** --- 1,7 ---- + 2005-11-30 Release Manager + + * GCC 3.4.5 released. + 2005-05-19 Release Manager * GCC 3.4.4 released.