Annotation of gcc/objc-parse.c, revision 1.1.1.8

1.1       root        1: 
1.1.1.6   root        2: /*  A Bison parser, made from objc-parse.y with Bison version GNU Bison version 1.22
                      3:   */
1.1       root        4: 
                      5: #define YYBISON 1  /* Identify Bison output.  */
                      6: 
                      7: #define        IDENTIFIER      258
                      8: #define        TYPENAME        259
                      9: #define        SCSPEC  260
                     10: #define        TYPESPEC        261
                     11: #define        TYPE_QUAL       262
                     12: #define        CONSTANT        263
                     13: #define        STRING  264
                     14: #define        ELLIPSIS        265
                     15: #define        SIZEOF  266
                     16: #define        ENUM    267
                     17: #define        STRUCT  268
                     18: #define        UNION   269
                     19: #define        IF      270
                     20: #define        ELSE    271
                     21: #define        WHILE   272
                     22: #define        DO      273
                     23: #define        FOR     274
                     24: #define        SWITCH  275
                     25: #define        CASE    276
                     26: #define        DEFAULT 277
                     27: #define        BREAK   278
                     28: #define        CONTINUE        279
                     29: #define        RETURN  280
                     30: #define        GOTO    281
1.1.1.2   root       31: #define        ASM_KEYWORD     282
1.1       root       32: #define        TYPEOF  283
                     33: #define        ALIGNOF 284
1.1.1.8 ! root       34: #define        ATTRIBUTE       285
        !            35: #define        EXTENSION       286
        !            36: #define        LABEL   287
        !            37: #define        REALPART        288
        !            38: #define        IMAGPART        289
        !            39: #define        ASSIGN  290
        !            40: #define        OROR    291
        !            41: #define        ANDAND  292
        !            42: #define        EQCOMPARE       293
        !            43: #define        ARITHCOMPARE    294
        !            44: #define        LSHIFT  295
        !            45: #define        RSHIFT  296
        !            46: #define        UNARY   297
        !            47: #define        PLUSPLUS        298
        !            48: #define        MINUSMINUS      299
        !            49: #define        HYPERUNARY      300
        !            50: #define        POINTSAT        301
        !            51: #define        INTERFACE       302
        !            52: #define        IMPLEMENTATION  303
        !            53: #define        END     304
        !            54: #define        SELECTOR        305
        !            55: #define        DEFS    306
        !            56: #define        ENCODE  307
        !            57: #define        CLASSNAME       308
        !            58: #define        PUBLIC  309
        !            59: #define        PRIVATE 310
        !            60: #define        PROTECTED       311
        !            61: #define        PROTOCOL        312
        !            62: #define        OBJECTNAME      313
        !            63: #define        CLASS   314
        !            64: #define        ALIAS   315
        !            65: #define        OBJC_STRING     316
1.1       root       66: 
1.1.1.8 ! root       67: #line 32 "objc-parse.y"
1.1       root       68: 
                     69: #include <stdio.h>
                     70: #include <errno.h>
                     71: #include <setjmp.h>
                     72: 
                     73: #include "config.h"
                     74: #include "tree.h"
                     75: #include "input.h"
                     76: #include "c-lex.h"
                     77: #include "c-tree.h"
                     78: #include "flags.h"
                     79: 
1.1.1.4   root       80: #ifdef MULTIBYTE_CHARS
                     81: #include <stdlib.h>
                     82: #include <locale.h>
                     83: #endif
                     84: 
1.1.1.5   root       85: #include "objc-act.h"
                     86: 
                     87: /* Since parsers are distinct for each language, put the language string
                     88:    definition here.  */
                     89: char *language_string = "GNU Obj-C";
1.1       root       90: 
                     91: #ifndef errno
                     92: extern int errno;
                     93: #endif
                     94: 
                     95: void yyerror ();
                     96: 
                     97: /* Like YYERROR but do call yyerror.  */
                     98: #define YYERROR1 { yyerror ("syntax error"); YYERROR; }
                     99: 
                    100: /* Cause the `yydebug' variable to be defined.  */
                    101: #define YYDEBUG 1
                    102: 
1.1.1.8 ! root      103: #line 70 "objc-parse.y"
1.1       root      104: typedef union {long itype; tree ttype; enum tree_code code;
1.1.1.8 ! root      105:        char *filename; int lineno; int ends_in_label; } YYSTYPE;
        !           106: #line 194 "objc-parse.y"
1.1       root      107: 
                    108: /* Number of statements (loosely speaking) seen so far.  */
                    109: static int stmt_count;
                    110: 
                    111: /* Input file and line number of the end of the body of last simple_if;
                    112:    used by the stmt-rule immediately after simple_if returns.  */
                    113: static char *if_stmt_file;
                    114: static int if_stmt_line;
                    115: 
                    116: /* List of types and structure classes of the current declaration.  */
                    117: static tree current_declspecs;
1.1.1.8 ! root      118: static tree prefix_attributes = NULL_TREE;
1.1       root      119: 
1.1.1.8 ! root      120: /* Stack of saved values of current_declspecs and prefix_attributes.  */
1.1       root      121: static tree declspec_stack;
                    122: 
                    123: /* 1 if we explained undeclared var errors.  */
                    124: static int undeclared_variable_notice;
                    125: 
                    126: /* Objective-C specific information */
                    127: 
                    128: tree objc_interface_context;
                    129: tree objc_implementation_context;
                    130: tree objc_method_context;
                    131: tree objc_ivar_chain;
                    132: tree objc_ivar_context;
                    133: enum tree_code objc_inherit_code;
                    134: int objc_receiver_context;
                    135: int objc_public_flag;
                    136: 
1.1.1.4   root      137: 
1.1       root      138: /* Tell yyparse how to print a token's value, if yydebug is set.  */
                    139: 
                    140: #define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)
                    141: extern void yyprint ();
                    142: 
                    143: #ifndef YYLTYPE
                    144: typedef
                    145:   struct yyltype
                    146:     {
                    147:       int timestamp;
                    148:       int first_line;
                    149:       int first_column;
                    150:       int last_line;
                    151:       int last_column;
                    152:       char *text;
                    153:    }
                    154:   yyltype;
                    155: 
                    156: #define YYLTYPE yyltype
                    157: #endif
                    158: 
                    159: #include <stdio.h>
                    160: 
1.1.1.6   root      161: #ifndef __cplusplus
1.1       root      162: #ifndef __STDC__
                    163: #define const
                    164: #endif
1.1.1.6   root      165: #endif
1.1       root      166: 
                    167: 
                    168: 
1.1.1.8 ! root      169: #define        YYFINAL         915
1.1       root      170: #define        YYFLAG          -32768
1.1.1.8 ! root      171: #define        YYNTBASE        84
1.1       root      172: 
1.1.1.8 ! root      173: #define YYTRANSLATE(x) ((unsigned)(x) <= 316 ? yytranslate[x] : 294)
1.1       root      174: 
                    175: static const char yytranslate[] = {     0,
                    176:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    177:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    178:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1.1.1.8 ! root      179:      2,     2,    80,     2,     2,     2,    52,    43,     2,    59,
        !           180:     76,    50,    48,    81,    49,    58,    51,     2,     2,     2,
        !           181:      2,     2,     2,     2,     2,     2,     2,    38,    77,     2,
        !           182:     36,     2,    37,     2,     2,     2,     2,     2,     2,     2,
1.1       root      183:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    184:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1.1.1.8 ! root      185:     60,     2,    83,    42,     2,     2,     2,     2,     2,     2,
1.1       root      186:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    187:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1.1.1.8 ! root      188:      2,     2,    82,    41,    78,    79,     2,     2,     2,     2,
1.1       root      189:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    190:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    191:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    192:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    193:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    194:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    195:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    196:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    197:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    198:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    199:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    200:      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    201:      2,     2,     2,     2,     2,     1,     2,     3,     4,     5,
                    202:      6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
                    203:     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
1.1.1.5   root      204:     26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
1.1.1.8 ! root      205:     39,    40,    44,    45,    46,    47,    53,    54,    55,    56,
        !           206:     57,    61,    62,    63,    64,    65,    66,    67,    68,    69,
        !           207:     70,    71,    72,    73,    74,    75
1.1       root      208: };
                    209: 
1.1.1.6   root      210: #if YYDEBUG != 0
1.1       root      211: static const short yyprhs[] = {     0,
                    212:      0,     1,     3,     4,     7,     8,    12,    14,    16,    18,
                    213:     24,    28,    33,    38,    41,    44,    47,    50,    52,    53,
                    214:     54,    62,    67,    68,    69,    77,    82,    83,    84,    91,
                    215:     95,    97,    99,   101,   103,   105,   107,   109,   111,   113,
1.1.1.5   root      216:    115,   117,   119,   120,   122,   124,   128,   130,   133,   134,
                    217:    138,   141,   144,   147,   152,   155,   160,   163,   166,   168,
1.1.1.6   root      218:    173,   174,   182,   184,   188,   192,   196,   200,   204,   208,
                    219:    212,   216,   220,   224,   228,   232,   236,   240,   246,   250,
                    220:    254,   256,   258,   260,   264,   268,   269,   274,   279,   284,
                    221:    288,   292,   295,   298,   300,   302,   304,   306,   308,   310,
                    222:    313,   315,   318,   319,   321,   324,   328,   330,   332,   335,
                    223:    338,   343,   348,   351,   354,   358,   360,   362,   365,   368,
1.1.1.8 ! root      224:    369,   370,   375,   380,   384,   388,   391,   394,   397,   401,
        !           225:    402,   405,   408,   410,   412,   415,   418,   421,   425,   426,
        !           226:    429,   431,   433,   435,   438,   441,   446,   451,   453,   455,
        !           227:    457,   459,   463,   465,   469,   470,   475,   476,   483,   487,
        !           228:    488,   495,   499,   500,   502,   504,   507,   514,   516,   520,
        !           229:    521,   523,   528,   535,   540,   542,   544,   546,   548,   550,
        !           230:    551,   556,   558,   559,   562,   564,   568,   570,   571,   576,
        !           231:    578,   579,   584,   585,   591,   592,   593,   599,   600,   601,
        !           232:    607,   609,   611,   615,   619,   624,   628,   632,   636,   638,
        !           233:    640,   644,   649,   653,   657,   661,   663,   667,   671,   675,
        !           234:    680,   684,   688,   690,   691,   699,   705,   708,   709,   717,
        !           235:    723,   726,   727,   736,   737,   745,   748,   749,   751,   752,
        !           236:    754,   756,   759,   760,   764,   767,   772,   776,   778,   782,
        !           237:    784,   786,   788,   792,   797,   804,   810,   812,   816,   818,
        !           238:    820,   824,   827,   830,   831,   833,   835,   838,   839,   842,
        !           239:    846,   850,   853,   857,   862,   866,   869,   873,   876,   880,
        !           240:    882,   884,   887,   890,   891,   893,   896,   897,   898,   900,
        !           241:    902,   905,   909,   911,   914,   917,   924,   930,   936,   939,
        !           242:    942,   947,   948,   953,   954,   955,   959,   964,   968,   970,
        !           243:    972,   974,   976,   979,   980,   985,   987,   991,   992,   993,
        !           244:   1001,  1007,  1010,  1011,  1012,  1013,  1026,  1027,  1034,  1037,
        !           245:   1040,  1043,  1047,  1054,  1063,  1074,  1087,  1091,  1096,  1098,
        !           246:   1100,  1101,  1108,  1112,  1118,  1121,  1124,  1125,  1127,  1128,
        !           247:   1130,  1131,  1133,  1135,  1139,  1144,  1146,  1150,  1151,  1154,
        !           248:   1157,  1158,  1163,  1166,  1167,  1169,  1171,  1175,  1177,  1181,
        !           249:   1186,  1191,  1196,  1201,  1206,  1207,  1210,  1212,  1215,  1217,
        !           250:   1221,  1223,  1227,  1229,  1231,  1233,  1235,  1237,  1239,  1241,
        !           251:   1245,  1249,  1254,  1255,  1256,  1267,  1268,  1275,  1276,  1277,
        !           252:   1290,  1291,  1300,  1301,  1308,  1311,  1312,  1321,  1326,  1327,
        !           253:   1337,  1343,  1344,  1351,  1352,  1356,  1360,  1362,  1364,  1366,
        !           254:   1368,  1369,  1373,  1376,  1380,  1384,  1386,  1387,  1389,  1393,
        !           255:   1395,  1399,  1402,  1403,  1404,  1405,  1413,  1414,  1415,  1416,
        !           256:   1424,  1425,  1426,  1429,  1431,  1433,  1436,  1437,  1441,  1443,
        !           257:   1445,  1446,  1447,  1453,  1454,  1455,  1461,  1466,  1468,  1474,
        !           258:   1477,  1478,  1481,  1482,  1484,  1486,  1488,  1491,  1494,  1499,
        !           259:   1502,  1505,  1507,  1511,  1514,  1517,  1520,  1521,  1524,  1525,
        !           260:   1529,  1531,  1533,  1536,  1538,  1540,  1542,  1544,  1546,  1548,
        !           261:   1550,  1552,  1554,  1556,  1558,  1560,  1562,  1564,  1566,  1568,
        !           262:   1570,  1572,  1574,  1576,  1578,  1580,  1582,  1584,  1586,  1593,
        !           263:   1597,  1603,  1606,  1608,  1610,  1612,  1615,  1617,  1621,  1624,
        !           264:   1626,  1628,  1629,  1630,  1637,  1639,  1641,  1643,  1646,  1649,
        !           265:   1651,  1656,  1661
1.1       root      266: };
                    267: 
                    268: static const short yyrhs[] = {    -1,
1.1.1.8 ! root      269:     85,     0,     0,    86,    88,     0,     0,    85,    87,    88,
        !           270:      0,    90,     0,    89,     0,   226,     0,    27,    59,    99,
        !           271:     76,    77,     0,   117,   128,    77,     0,   122,   117,   128,
        !           272:     77,     0,   120,   117,   127,    77,     0,   122,    77,     0,
        !           273:    120,    77,     0,     1,    77,     0,     1,    78,     0,    77,
        !           274:      0,     0,     0,   120,   117,   154,    91,   111,    92,   185,
        !           275:      0,   120,   117,   154,     1,     0,     0,     0,   122,   117,
        !           276:    157,    93,   111,    94,   185,     0,   122,   117,   157,     1,
        !           277:      0,     0,     0,   117,   157,    95,   111,    96,   185,     0,
        !           278:    117,   157,     1,     0,     3,     0,     4,     0,    72,     0,
        !           279:     67,     0,    43,     0,    49,     0,    48,     0,    54,     0,
        !           280:     55,     0,    79,     0,    80,     0,   101,     0,     0,   101,
        !           281:      0,   106,     0,   101,    81,   106,     0,   107,     0,    50,
        !           282:    104,     0,     0,    31,   103,   104,     0,    98,   104,     0,
        !           283:     40,    97,     0,    11,   102,     0,    11,    59,   172,    76,
        !           284:      0,    29,   102,     0,    29,    59,   172,    76,     0,    33,
        !           285:    104,     0,    34,   104,     0,   102,     0,    59,   172,    76,
        !           286:    104,     0,     0,    59,   172,    76,    82,   105,   142,    78,
        !           287:      0,   104,     0,   106,    48,   106,     0,   106,    49,   106,
        !           288:      0,   106,    50,   106,     0,   106,    51,   106,     0,   106,
        !           289:     52,   106,     0,   106,    46,   106,     0,   106,    47,   106,
        !           290:      0,   106,    45,   106,     0,   106,    44,   106,     0,   106,
        !           291:     43,   106,     0,   106,    41,   106,     0,   106,    42,   106,
        !           292:      0,   106,    40,   106,     0,   106,    39,   106,     0,   106,
        !           293:     37,   209,    38,   106,     0,   106,    36,   106,     0,   106,
        !           294:     35,   106,     0,     3,     0,     8,     0,   109,     0,    59,
        !           295:     99,    76,     0,    59,     1,    76,     0,     0,    59,   108,
        !           296:    186,    76,     0,   107,    59,   100,    76,     0,   107,    60,
        !           297:     99,    83,     0,   107,    58,    97,     0,   107,    57,    97,
        !           298:      0,   107,    54,     0,   107,    55,     0,   285,     0,   291,
        !           299:      0,   292,     0,   293,     0,   110,     0,     9,     0,   109,
        !           300:      9,     0,    75,     0,   110,    75,     0,     0,   113,     0,
        !           301:    113,    10,     0,   191,   192,   114,     0,   112,     0,   180,
        !           302:      0,   113,   112,     0,   112,   180,     0,   120,   117,   127,
        !           303:     77,     0,   122,   117,   128,    77,     0,   120,    77,     0,
        !           304:    122,    77,     0,   191,   192,   119,     0,   115,     0,   180,
        !           305:      0,   116,   115,     0,   115,   180,     0,     0,     0,   120,
        !           306:    117,   127,    77,     0,   122,   117,   128,    77,     0,   120,
        !           307:    117,   148,     0,   122,   117,   151,     0,   120,    77,     0,
        !           308:    122,    77,     0,   125,   121,     0,   122,   125,   121,     0,
        !           309:      0,   121,   126,     0,   121,     5,     0,     7,     0,     5,
        !           310:      0,   122,     7,     0,   122,     5,     0,   125,   124,     0,
        !           311:    174,   125,   124,     0,     0,   124,   126,     0,     6,     0,
        !           312:    158,     0,     4,     0,    67,   242,     0,    72,   242,     0,
        !           313:     28,    59,    99,    76,     0,    28,    59,   172,    76,     0,
        !           314:      6,     0,     7,     0,   158,     0,   130,     0,   127,    81,
        !           315:    130,     0,   132,     0,   128,    81,   130,     0,     0,    27,
        !           316:     59,   109,    76,     0,     0,   154,   129,   134,    36,   131,
        !           317:    140,     0,   154,   129,   134,     0,     0,   157,   129,   134,
        !           318:     36,   133,   140,     0,   157,   129,   134,     0,     0,   135,
        !           319:      0,   136,     0,   135,   136,     0,    30,    59,    59,   137,
        !           320:     76,    76,     0,   138,     0,   137,    81,   138,     0,     0,
        !           321:    139,     0,   139,    59,     3,    76,     0,   139,    59,     3,
        !           322:     81,   101,    76,     0,   139,    59,   100,    76,     0,    97,
        !           323:      0,     5,     0,     6,     0,     7,     0,   106,     0,     0,
        !           324:     82,   141,   142,    78,     0,     1,     0,     0,   143,   163,
        !           325:      0,   144,     0,   143,    81,   144,     0,   106,     0,     0,
        !           326:     82,   145,   142,    78,     0,     1,     0,     0,    97,    38,
        !           327:    146,   144,     0,     0,    58,    97,    36,   147,   144,     0,
        !           328:      0,     0,   154,   149,   111,   150,   186,     0,     0,     0,
        !           329:    157,   152,   111,   153,   186,     0,   155,     0,   157,     0,
        !           330:     59,   155,    76,     0,   155,    59,   221,     0,   155,    60,
        !           331:     99,    83,     0,   155,    60,    83,     0,    50,   175,   155,
        !           332:      0,   135,   118,   155,     0,     4,     0,    72,     0,   156,
        !           333:     59,   221,     0,   156,    60,    99,    83,     0,   156,    60,
        !           334:     83,     0,    50,   175,   156,     0,   135,   118,   156,     0,
        !           335:      4,     0,   157,    59,   221,     0,    59,   157,    76,     0,
        !           336:     50,   175,   157,     0,   157,    60,    99,    83,     0,   157,
        !           337:     60,    83,     0,   135,   118,   157,     0,     3,     0,     0,
        !           338:     13,    97,    82,   159,   165,    78,   134,     0,    13,    82,
        !           339:    165,    78,   134,     0,    13,    97,     0,     0,    14,    97,
        !           340:     82,   160,   165,    78,   134,     0,    14,    82,   165,    78,
        !           341:    134,     0,    14,    97,     0,     0,    12,    97,    82,   161,
        !           342:    170,   164,    78,   134,     0,     0,    12,    82,   162,   170,
        !           343:    164,    78,   134,     0,    12,    97,     0,     0,    81,     0,
        !           344:      0,    81,     0,   166,     0,   166,   167,     0,     0,   166,
        !           345:    167,    77,     0,   166,    77,     0,    65,    59,    67,    76,
        !           346:      0,   123,   117,   168,     0,   123,     0,   174,   117,   168,
        !           347:      0,   174,     0,     1,     0,   169,     0,   168,    81,   169,
        !           348:      0,   191,   192,   154,   134,     0,   191,   192,   154,    38,
        !           349:    106,   134,     0,   191,   192,    38,   106,   134,     0,   171,
        !           350:      0,   170,    81,   171,     0,     1,     0,    97,     0,    97,
        !           351:     36,   106,     0,   123,   173,     0,   174,   173,     0,     0,
        !           352:    176,     0,     7,     0,   174,     7,     0,     0,   175,     7,
        !           353:      0,    59,   176,    76,     0,    50,   175,   176,     0,    50,
        !           354:    175,     0,   176,    59,   214,     0,   176,    60,    99,    83,
        !           355:      0,   176,    60,    83,     0,    59,   214,     0,    60,    99,
        !           356:     83,     0,    60,    83,     0,   135,   118,   176,     0,   178,
        !           357:      0,   194,     0,   178,   194,     0,   178,   180,     0,     0,
        !           358:    177,     0,     1,    77,     0,     0,     0,   183,     0,   184,
        !           359:      0,   183,   184,     0,    32,   225,    77,     0,   186,     0,
        !           360:      1,   186,     0,    82,    78,     0,    82,   181,   182,   116,
        !           361:    179,    78,     0,    82,   181,   182,     1,    78,     0,    82,
        !           362:    181,   182,   177,    78,     0,   188,   193,     0,   188,     1,
        !           363:      0,    15,    59,    99,    76,     0,     0,    18,   190,   193,
        !           364:     17,     0,     0,     0,   191,   192,   196,     0,   191,   192,
        !           365:    207,   193,     0,   191,   192,   195,     0,   196,     0,   207,
        !           366:      0,   186,     0,   204,     0,    99,    77,     0,     0,   187,
        !           367:     16,   197,   193,     0,   187,     0,   187,    16,     1,     0,
        !           368:      0,     0,    17,   198,    59,    99,    76,   199,   193,     0,
        !           369:    189,    59,    99,    76,    77,     0,   189,     1,     0,     0,
        !           370:      0,     0,    19,    59,   209,    77,   200,   209,    77,   201,
        !           371:    209,    76,   202,   193,     0,     0,    20,    59,    99,    76,
        !           372:    203,   193,     0,    23,    77,     0,    24,    77,     0,    25,
        !           373:     77,     0,    25,    99,    77,     0,    27,   208,    59,    99,
        !           374:     76,    77,     0,    27,   208,    59,    99,    38,   210,    76,
        !           375:     77,     0,    27,   208,    59,    99,    38,   210,    38,   210,
        !           376:     76,    77,     0,    27,   208,    59,    99,    38,   210,    38,
        !           377:    210,    38,   213,    76,    77,     0,    26,    97,    77,     0,
        !           378:     26,    50,    99,    77,     0,    77,     0,   205,     0,     0,
        !           379:     19,    59,   107,    76,   206,   193,     0,    21,   106,    38,
        !           380:      0,    21,   106,    10,   106,    38,     0,    22,    38,     0,
        !           381:     97,    38,     0,     0,     7,     0,     0,    99,     0,     0,
        !           382:    211,     0,   212,     0,   211,    81,   212,     0,     9,    59,
        !           383:     99,    76,     0,   109,     0,   213,    81,   109,     0,     0,
        !           384:    215,   216,     0,   218,    76,     0,     0,   219,    77,   217,
        !           385:    216,     0,     1,    76,     0,     0,    10,     0,   219,     0,
        !           386:    219,    81,    10,     0,   220,     0,   219,    81,   220,     0,
        !           387:    120,   117,   156,   134,     0,   120,   117,   157,   134,     0,
        !           388:    120,   117,   173,   134,     0,   122,   117,   157,   134,     0,
        !           389:    122,   117,   173,   134,     0,     0,   222,   223,     0,   216,
        !           390:      0,   224,    76,     0,     3,     0,   224,    81,     3,     0,
        !           391:     97,     0,   225,    81,    97,     0,   230,     0,   228,     0,
        !           392:    229,     0,   240,     0,   249,     0,    63,     0,    97,     0,
        !           393:    227,    81,    97,     0,    73,   227,    77,     0,    74,    97,
        !           394:     97,    77,     0,     0,     0,    61,    97,   242,    82,   231,
        !           395:    243,    78,   232,   256,    63,     0,     0,    61,    97,   242,
        !           396:    233,   256,    63,     0,     0,     0,    61,    97,    38,    97,
        !           397:    242,    82,   234,   243,    78,   235,   256,    63,     0,     0,
        !           398:     61,    97,    38,    97,   242,   236,   256,    63,     0,     0,
        !           399:     62,    97,    82,   237,   243,    78,     0,    62,    97,     0,
        !           400:      0,    62,    97,    38,    97,    82,   238,   243,    78,     0,
        !           401:     62,    97,    38,    97,     0,     0,    61,    97,    59,    97,
        !           402:     76,   242,   239,   256,    63,     0,    62,    97,    59,    97,
        !           403:     76,     0,     0,    71,    97,   242,   241,   256,    63,     0,
        !           404:      0,    45,   227,    45,     0,   243,   244,   245,     0,   245,
        !           405:      0,    69,     0,    70,     0,    68,     0,     0,   245,   246,
        !           406:     77,     0,   245,    77,     0,   123,   117,   247,     0,   174,
        !           407:    117,   247,     0,     1,     0,     0,   248,     0,   247,    81,
        !           408:    248,     0,   154,     0,   154,    38,   106,     0,    38,   106,
        !           409:      0,     0,     0,     0,    48,   250,   266,   251,   267,   252,
        !           410:    185,     0,     0,     0,     0,    49,   253,   266,   254,   267,
        !           411:    255,   185,     0,     0,     0,   257,   258,     0,   261,     0,
        !           412:     89,     0,   258,   261,     0,     0,   258,   259,    89,     0,
        !           413:     77,     0,     1,     0,     0,     0,    48,   262,   266,   263,
        !           414:    260,     0,     0,     0,    49,   264,   266,   265,   260,     0,
        !           415:     59,   172,    76,   275,     0,   275,     0,    59,   172,    76,
        !           416:    276,   273,     0,   276,   273,     0,     0,    77,   268,     0,
        !           417:      0,   269,     0,   270,     0,   180,     0,   269,   270,     0,
        !           418:    270,   180,     0,   120,   117,   271,    77,     0,   120,    77,
        !           419:      0,   122,    77,     0,   272,     0,   271,    81,   272,     0,
        !           420:    156,   134,     0,   157,   134,     0,   173,   134,     0,     0,
        !           421:     81,    10,     0,     0,    81,   274,   218,     0,   277,     0,
        !           422:    279,     0,   276,   279,     0,     3,     0,     4,     0,    72,
        !           423:      0,   278,     0,    12,     0,    13,     0,    14,     0,    15,
        !           424:      0,    16,     0,    17,     0,    18,     0,    19,     0,    20,
        !           425:      0,    21,     0,    22,     0,    23,     0,    24,     0,    25,
        !           426:      0,    26,     0,    27,     0,    11,     0,    28,     0,    29,
        !           427:      0,     6,     0,     7,     0,   277,    38,    59,   172,    76,
        !           428:     97,     0,   277,    38,    97,     0,    38,    59,   172,    76,
        !           429:     97,     0,    38,    97,     0,   277,     0,   281,     0,   283,
        !           430:      0,   281,   283,     0,   101,     0,   277,    38,   282,     0,
        !           431:     38,   282,     0,    99,     0,    67,     0,     0,     0,    60,
        !           432:    286,   284,   287,   280,    83,     0,   277,     0,   289,     0,
        !           433:    290,     0,   289,   290,     0,   277,    38,     0,    38,     0,
        !           434:     64,    59,   288,    76,     0,    71,    59,    97,    76,     0,
        !           435:     66,    59,   172,    76,     0
1.1       root      436: };
                    437: 
1.1.1.6   root      438: #endif
                    439: 
1.1       root      440: #if YYDEBUG != 0
                    441: static const short yyrline[] = { 0,
1.1.1.8 ! root      442:    232,   237,   251,   253,   253,   254,   256,   258,   259,   260,
        !           443:    270,   281,   286,   291,   293,   295,   296,   297,   302,   309,
        !           444:    311,   316,   321,   327,   329,   334,   339,   345,   347,   352,
        !           445:    359,   361,   362,   363,   366,   368,   370,   372,   374,   376,
        !           446:    378,   382,   386,   389,   392,   395,   399,   401,   404,   407,
        !           447:    410,   414,   442,   447,   449,   451,   453,   455,   459,   461,
        !           448:    464,   468,   495,   497,   499,   501,   503,   505,   507,   509,
        !           449:    511,   513,   515,   517,   519,   521,   523,   525,   527,   530,
        !           450:    536,   696,   697,   699,   705,   707,   721,   744,   746,   748,
        !           451:    760,   774,   776,   778,   780,   782,   784,   786,   791,   793,
        !           452:    799,   801,   805,   807,   808,   818,   823,   825,   826,   827,
        !           453:    830,   836,   841,   844,   852,   857,   859,   860,   861,   868,
        !           454:    878,   882,   888,   893,   898,   903,   905,   913,   916,   920,
        !           455:    922,   924,   935,   939,   941,   944,   957,   960,   964,   966,
        !           456:    974,   975,   976,   980,   982,   984,   986,   992,   993,   994,
        !           457:    997,   999,  1002,  1004,  1007,  1010,  1016,  1023,  1025,  1032,
        !           458:   1039,  1042,  1049,  1052,  1056,  1059,  1063,  1068,  1071,  1075,
        !           459:   1078,  1080,  1082,  1084,  1091,  1093,  1094,  1095,  1100,  1102,
        !           460:   1107,  1115,  1120,  1124,  1127,  1129,  1134,  1137,  1139,  1141,
        !           461:   1145,  1148,  1148,  1151,  1153,  1164,  1172,  1176,  1187,  1195,
        !           462:   1202,  1204,  1209,  1212,  1217,  1219,  1221,  1223,  1225,  1226,
        !           463:   1234,  1240,  1242,  1244,  1246,  1248,  1254,  1260,  1262,  1264,
        !           464:   1266,  1268,  1270,  1273,  1278,  1280,  1284,  1286,  1288,  1290,
        !           465:   1294,  1296,  1299,  1302,  1305,  1308,  1312,  1314,  1317,  1319,
        !           466:   1323,  1326,  1331,  1333,  1335,  1339,  1363,  1370,  1375,  1381,
        !           467:   1386,  1390,  1392,  1396,  1400,  1404,  1414,  1416,  1421,  1426,
        !           468:   1429,  1433,  1436,  1440,  1443,  1446,  1449,  1453,  1456,  1460,
        !           469:   1464,  1466,  1468,  1470,  1472,  1474,  1476,  1478,  1480,  1488,
        !           470:   1496,  1498,  1500,  1504,  1506,  1509,  1512,  1525,  1527,  1532,
        !           471:   1534,  1537,  1551,  1554,  1557,  1559,  1567,  1575,  1586,  1591,
        !           472:   1594,  1607,  1615,  1619,  1623,  1627,  1633,  1637,  1642,  1645,
        !           473:   1650,  1653,  1654,  1671,  1676,  1679,  1691,  1693,  1703,  1713,
        !           474:   1714,  1722,  1725,  1737,  1741,  1758,  1768,  1777,  1782,  1787,
        !           475:   1792,  1796,  1800,  1811,  1818,  1825,  1832,  1843,  1847,  1850,
        !           476:   1855,  1878,  1912,  1937,  1966,  1981,  1992,  1996,  2000,  2003,
        !           477:   2008,  2010,  2013,  2015,  2019,  2024,  2027,  2033,  2038,  2043,
        !           478:   2045,  2054,  2055,  2061,  2063,  2073,  2075,  2079,  2082,  2088,
        !           479:   2098,  2107,  2116,  2126,  2140,  2145,  2150,  2152,  2161,  2164,
        !           480:   2169,  2172,  2178,  2180,  2181,  2182,  2183,  2184,  2198,  2201,
        !           481:   2205,  2211,  2217,  2224,  2229,  2235,  2242,  2248,  2254,  2259,
        !           482:   2265,  2272,  2278,  2284,  2290,  2298,  2304,  2310,  2318,  2325,
        !           483:   2331,  2340,  2347,  2355,  2360,  2369,  2371,  2374,  2376,  2377,
        !           484:   2380,  2385,  2386,  2403,  2410,  2416,  2420,  2423,  2424,  2427,
        !           485:   2435,  2441,  2450,  2460,  2467,  2471,  2476,  2485,  2492,  2496,
        !           486:   2506,  2508,  2509,  2511,  2513,  2514,  2515,  2516,  2518,  2520,
        !           487:   2523,  2529,  2534,  2534,  2539,  2543,  2545,  2551,  2556,  2561,
        !           488:   2570,  2572,  2578,  2580,  2583,  2585,  2586,  2587,  2590,  2596,
        !           489:   2598,  2602,  2605,  2612,  2618,  2623,  2630,  2635,  2640,  2645,
        !           490:   2652,  2656,  2659,  2665,  2667,  2668,  2669,  2672,  2674,  2675,
        !           491:   2676,  2677,  2678,  2679,  2680,  2681,  2682,  2683,  2684,  2685,
        !           492:   2686,  2687,  2688,  2689,  2690,  2691,  2692,  2692,  2695,  2701,
        !           493:   2706,  2711,  2717,  2719,  2722,  2724,  2731,  2743,  2748,  2754,
        !           494:   2756,  2762,  2766,  2767,  2773,  2775,  2778,  2780,  2786,  2791,
        !           495:   2797,  2804,  2813
1.1       root      496: };
                    497: 
                    498: static const char * const yytname[] = {   "$","error","$illegal.","IDENTIFIER",
                    499: "TYPENAME","SCSPEC","TYPESPEC","TYPE_QUAL","CONSTANT","STRING","ELLIPSIS","SIZEOF",
                    500: "ENUM","STRUCT","UNION","IF","ELSE","WHILE","DO","FOR","SWITCH","CASE","DEFAULT",
1.1.1.8 ! root      501: "BREAK","CONTINUE","RETURN","GOTO","ASM_KEYWORD","TYPEOF","ALIGNOF","ATTRIBUTE",
        !           502: "EXTENSION","LABEL","REALPART","IMAGPART","ASSIGN","'='","'?'","':'","OROR",
        !           503: "ANDAND","'|'","'^'","'&'","EQCOMPARE","ARITHCOMPARE","LSHIFT","RSHIFT","'+'",
        !           504: "'-'","'*'","'/'","'%'","UNARY","PLUSPLUS","MINUSMINUS","HYPERUNARY","POINTSAT",
1.1.1.5   root      505: "'.'","'('","'['","INTERFACE","IMPLEMENTATION","END","SELECTOR","DEFS","ENCODE",
                    506: "CLASSNAME","PUBLIC","PRIVATE","PROTECTED","PROTOCOL","OBJECTNAME","CLASS","ALIAS",
                    507: "OBJC_STRING","')'","';'","'}'","'~'","'!'","','","'{'","']'","program","extdefs",
                    508: "@1","@2","extdef","datadef","fndef","@3","@4","@5","@6","@7","@8","identifier",
1.1.1.6   root      509: "unop","expr","exprlist","nonnull_exprlist","unary_expr","@9","cast_expr","@10",
                    510: "expr_no_commas","primary","@11","string","objc_string","xdecls","lineno_datadecl",
1.1.1.8 ! root      511: "datadecls","datadecl","lineno_decl","decls","setspecs","setattrs","decl","typed_declspecs",
1.1.1.6   root      512: "reserved_declspecs","declmods","typed_typespecs","reserved_typespecquals","typespec",
                    513: "typespecqual_reserved","initdecls","notype_initdecls","maybeasm","initdcl",
1.1.1.7   root      514: "@12","notype_initdcl","@13","maybe_attribute","attributes","attribute","attribute_list",
                    515: "attrib","any_word","init","@14","initlist_maybe_comma","initlist1","initelt",
1.1.1.8 ! root      516: "@15","@16","@17","nested_function","@18","@19","notype_nested_function","@20",
        !           517: "@21","declarator","after_type_declarator","parm_declarator","notype_declarator",
        !           518: "structsp","@22","@23","@24","@25","maybecomma","maybecomma_warn","component_decl_list",
        !           519: "component_decl_list2","component_decl","components","component_declarator",
        !           520: "enumlist","enumerator","typename","absdcl","nonempty_type_quals","type_quals",
        !           521: "absdcl1","stmts","lineno_stmt_or_labels","xstmts","errstmt","pushlevel","maybe_label_decls",
        !           522: "label_decls","label_decl","compstmt_or_error","compstmt","simple_if","if_prefix",
        !           523: "do_stmt_start","@26","save_filename","save_lineno","lineno_labeled_stmt","lineno_stmt_or_label",
        !           524: "stmt_or_label","stmt","@27","@28","@29","@30","@31","@32","@33","all_iter_stmt",
        !           525: "all_iter_stmt_simple","@34","label","maybe_type_qual","xexpr","asm_operands",
        !           526: "nonnull_asm_operands","asm_operand","asm_clobbers","parmlist","@35","parmlist_1",
        !           527: "@36","parmlist_2","parms","parm","parmlist_or_identifiers","@37","parmlist_or_identifiers_1",
        !           528: "identifiers","identifiers_or_typenames","objcdef","identifier_list","classdecl",
        !           529: "aliasdecl","classdef","@38","@39","@40","@41","@42","@43","@44","@45","@46",
        !           530: "protocoldef","@47","protocolrefs","ivar_decl_list","visibility_spec","ivar_decls",
        !           531: "ivar_decl","ivars","ivar_declarator","methoddef","@48","@49","@50","@51","@52",
        !           532: "@53","methodprotolist","@54","methodprotolist2","@55","semi_or_error","methodproto",
        !           533: "@56","@57","@58","@59","methoddecl","optarglist","myxdecls","mydecls","mydecl",
        !           534: "myparms","myparm","optparmlist","@60","unaryselector","keywordselector","selector",
        !           535: "reservedwords","keyworddecl","messageargs","keywordarglist","keywordexpr","keywordarg",
        !           536: "receiver","objcmessageexpr","@61","@62","selectorarg","keywordnamelist","keywordname",
        !           537: "objcselectorexpr","objcprotocolexpr","objcencodeexpr",""
1.1       root      538: };
                    539: #endif
                    540: 
                    541: static const short yyr1[] = {     0,
1.1.1.8 ! root      542:     84,    84,    86,    85,    87,    85,    88,    88,    88,    88,
        !           543:     89,    89,    89,    89,    89,    89,    89,    89,    91,    92,
        !           544:     90,    90,    93,    94,    90,    90,    95,    96,    90,    90,
        !           545:     97,    97,    97,    97,    98,    98,    98,    98,    98,    98,
        !           546:     98,    99,   100,   100,   101,   101,   102,   102,   103,   102,
        !           547:    102,   102,   102,   102,   102,   102,   102,   102,   104,   104,
        !           548:    105,   104,   106,   106,   106,   106,   106,   106,   106,   106,
        !           549:    106,   106,   106,   106,   106,   106,   106,   106,   106,   106,
        !           550:    107,   107,   107,   107,   107,   108,   107,   107,   107,   107,
        !           551:    107,   107,   107,   107,   107,   107,   107,   107,   109,   109,
        !           552:    110,   110,   111,   111,   111,   112,   113,   113,   113,   113,
        !           553:    114,   114,   114,   114,   115,   116,   116,   116,   116,   117,
        !           554:    118,   119,   119,   119,   119,   119,   119,   120,   120,   121,
        !           555:    121,   121,   122,   122,   122,   122,   123,   123,   124,   124,
        !           556:    125,   125,   125,   125,   125,   125,   125,   126,   126,   126,
        !           557:    127,   127,   128,   128,   129,   129,   131,   130,   130,   133,
        !           558:    132,   132,   134,   134,   135,   135,   136,   137,   137,   138,
        !           559:    138,   138,   138,   138,   139,   139,   139,   139,   140,   141,
        !           560:    140,   140,   142,   142,   143,   143,   144,   145,   144,   144,
        !           561:    146,   144,   147,   144,   149,   150,   148,   152,   153,   151,
        !           562:    154,   154,   155,   155,   155,   155,   155,   155,   155,   155,
        !           563:    156,   156,   156,   156,   156,   156,   157,   157,   157,   157,
        !           564:    157,   157,   157,   159,   158,   158,   158,   160,   158,   158,
        !           565:    158,   161,   158,   162,   158,   158,   163,   163,   164,   164,
        !           566:    165,   165,   166,   166,   166,   166,   167,   167,   167,   167,
        !           567:    167,   168,   168,   169,   169,   169,   170,   170,   170,   171,
        !           568:    171,   172,   172,   173,   173,   174,   174,   175,   175,   176,
        !           569:    176,   176,   176,   176,   176,   176,   176,   176,   176,   177,
        !           570:    178,   178,   178,   179,   179,   180,   181,   182,   182,   183,
        !           571:    183,   184,   185,   185,   186,   186,   186,   186,   187,   187,
        !           572:    188,   190,   189,   191,   192,   193,   193,   194,   195,   195,
        !           573:    196,   196,   196,   197,   196,   196,   196,   198,   199,   196,
        !           574:    196,   196,   200,   201,   202,   196,   203,   196,   196,   196,
        !           575:    196,   196,   196,   196,   196,   196,   196,   196,   196,   204,
        !           576:    206,   205,   207,   207,   207,   207,   208,   208,   209,   209,
        !           577:    210,   210,   211,   211,   212,   213,   213,   215,   214,   216,
        !           578:    217,   216,   216,   218,   218,   218,   218,   219,   219,   220,
        !           579:    220,   220,   220,   220,   222,   221,   223,   223,   224,   224,
        !           580:    225,   225,   226,   226,   226,   226,   226,   226,   227,   227,
        !           581:    228,   229,   231,   232,   230,   233,   230,   234,   235,   230,
        !           582:    236,   230,   237,   230,   230,   238,   230,   230,   239,   230,
        !           583:    230,   241,   240,   242,   242,   243,   243,   244,   244,   244,
        !           584:    245,   245,   245,   246,   246,   246,   247,   247,   247,   248,
        !           585:    248,   248,   250,   251,   252,   249,   253,   254,   255,   249,
        !           586:    256,   257,   256,   258,   258,   258,   259,   258,   260,   260,
        !           587:    262,   263,   261,   264,   265,   261,   266,   266,   266,   266,
        !           588:    267,   267,   268,   268,   269,   269,   269,   269,   270,   270,
        !           589:    270,   271,   271,   272,   272,   272,   273,   273,   274,   273,
        !           590:    275,   276,   276,   277,   277,   277,   277,   278,   278,   278,
        !           591:    278,   278,   278,   278,   278,   278,   278,   278,   278,   278,
        !           592:    278,   278,   278,   278,   278,   278,   278,   278,   279,   279,
        !           593:    279,   279,   280,   280,   281,   281,   282,   283,   283,   284,
        !           594:    284,   286,   287,   285,   288,   288,   289,   289,   290,   290,
        !           595:    291,   292,   293
1.1       root      596: };
                    597: 
                    598: static const short yyr2[] = {     0,
                    599:      0,     1,     0,     2,     0,     3,     1,     1,     1,     5,
                    600:      3,     4,     4,     2,     2,     2,     2,     1,     0,     0,
                    601:      7,     4,     0,     0,     7,     4,     0,     0,     6,     3,
                    602:      1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1.1.1.5   root      603:      1,     1,     0,     1,     1,     3,     1,     2,     0,     3,
                    604:      2,     2,     2,     4,     2,     4,     2,     2,     1,     4,
1.1.1.6   root      605:      0,     7,     1,     3,     3,     3,     3,     3,     3,     3,
                    606:      3,     3,     3,     3,     3,     3,     3,     5,     3,     3,
                    607:      1,     1,     1,     3,     3,     0,     4,     4,     4,     3,
                    608:      3,     2,     2,     1,     1,     1,     1,     1,     1,     2,
                    609:      1,     2,     0,     1,     2,     3,     1,     1,     2,     2,
                    610:      4,     4,     2,     2,     3,     1,     1,     2,     2,     0,
1.1.1.8 ! root      611:      0,     4,     4,     3,     3,     2,     2,     2,     3,     0,
        !           612:      2,     2,     1,     1,     2,     2,     2,     3,     0,     2,
        !           613:      1,     1,     1,     2,     2,     4,     4,     1,     1,     1,
        !           614:      1,     3,     1,     3,     0,     4,     0,     6,     3,     0,
        !           615:      6,     3,     0,     1,     1,     2,     6,     1,     3,     0,
        !           616:      1,     4,     6,     4,     1,     1,     1,     1,     1,     0,
        !           617:      4,     1,     0,     2,     1,     3,     1,     0,     4,     1,
        !           618:      0,     4,     0,     5,     0,     0,     5,     0,     0,     5,
        !           619:      1,     1,     3,     3,     4,     3,     3,     3,     1,     1,
        !           620:      3,     4,     3,     3,     3,     1,     3,     3,     3,     4,
        !           621:      3,     3,     1,     0,     7,     5,     2,     0,     7,     5,
        !           622:      2,     0,     8,     0,     7,     2,     0,     1,     0,     1,
        !           623:      1,     2,     0,     3,     2,     4,     3,     1,     3,     1,
        !           624:      1,     1,     3,     4,     6,     5,     1,     3,     1,     1,
        !           625:      3,     2,     2,     0,     1,     1,     2,     0,     2,     3,
        !           626:      3,     2,     3,     4,     3,     2,     3,     2,     3,     1,
        !           627:      1,     2,     2,     0,     1,     2,     0,     0,     1,     1,
        !           628:      2,     3,     1,     2,     2,     6,     5,     5,     2,     2,
        !           629:      4,     0,     4,     0,     0,     3,     4,     3,     1,     1,
        !           630:      1,     1,     2,     0,     4,     1,     3,     0,     0,     7,
        !           631:      5,     2,     0,     0,     0,    12,     0,     6,     2,     2,
        !           632:      2,     3,     6,     8,    10,    12,     3,     4,     1,     1,
        !           633:      0,     6,     3,     5,     2,     2,     0,     1,     0,     1,
        !           634:      0,     1,     1,     3,     4,     1,     3,     0,     2,     2,
        !           635:      0,     4,     2,     0,     1,     1,     3,     1,     3,     4,
        !           636:      4,     4,     4,     4,     0,     2,     1,     2,     1,     3,
        !           637:      1,     3,     1,     1,     1,     1,     1,     1,     1,     3,
        !           638:      3,     4,     0,     0,    10,     0,     6,     0,     0,    12,
        !           639:      0,     8,     0,     6,     2,     0,     8,     4,     0,     9,
        !           640:      5,     0,     6,     0,     3,     3,     1,     1,     1,     1,
        !           641:      0,     3,     2,     3,     3,     1,     0,     1,     3,     1,
        !           642:      3,     2,     0,     0,     0,     7,     0,     0,     0,     7,
        !           643:      0,     0,     2,     1,     1,     2,     0,     3,     1,     1,
        !           644:      0,     0,     5,     0,     0,     5,     4,     1,     5,     2,
        !           645:      0,     2,     0,     1,     1,     1,     2,     2,     4,     2,
        !           646:      2,     1,     3,     2,     2,     2,     0,     2,     0,     3,
        !           647:      1,     1,     2,     1,     1,     1,     1,     1,     1,     1,
1.1       root      648:      1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1.1.1.8 ! root      649:      1,     1,     1,     1,     1,     1,     1,     1,     6,     3,
        !           650:      5,     2,     1,     1,     1,     2,     1,     3,     2,     1,
        !           651:      1,     0,     0,     6,     1,     1,     1,     2,     2,     1,
        !           652:      4,     4,     4
1.1       root      653: };
                    654: 
                    655: static const short yydefact[] = {     3,
1.1.1.8 ! root      656:      5,     0,     0,     0,   143,   134,   141,   133,     0,     0,
        !           657:      0,     0,     0,   433,   437,     0,     0,   388,   414,     0,
        !           658:    414,     0,     0,    18,     4,     8,     7,     0,   120,   120,
        !           659:    130,   142,     9,   384,   385,   383,   386,   387,     6,    16,
        !           660:     17,    31,    32,    34,    33,   234,   236,   243,   227,   243,
        !           661:    231,     0,     0,     0,     0,   414,   405,     0,   144,   414,
        !           662:    145,   389,     0,     0,   223,     0,   268,     0,     0,   153,
        !           663:    121,   165,     0,    15,     0,   136,   135,    14,     0,   130,
        !           664:    128,     0,   232,     0,     0,     0,   224,     0,   228,    81,
        !           665:     82,    99,     0,     0,    49,     0,     0,     0,    35,    37,
        !           666:     36,     0,    38,    39,     0,   522,     0,     0,     0,   101,
        !           667:     40,    41,     0,     0,    42,    59,    63,    45,    47,    83,
        !           668:     98,    94,    95,    96,    97,   266,     0,   264,   139,     0,
        !           669:    264,   484,   485,   507,   508,   504,   488,   489,   490,   491,
        !           670:    492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
        !           671:    502,   503,   505,   506,     0,     0,   486,   434,   458,   477,
        !           672:    481,   487,   482,   438,     0,     0,   396,     0,     0,   403,
        !           673:      0,   412,   391,     0,     0,     0,     0,     0,    11,     0,
        !           674:      0,   166,    30,     0,   375,     0,     0,   163,   209,   268,
        !           675:      0,   210,     0,   151,   121,     0,   201,   202,     0,     0,
        !           676:    129,   132,   148,   149,   131,   150,   259,   260,   239,   257,
        !           677:      0,     0,   163,   251,   245,   120,   242,   120,   243,   163,
        !           678:    243,     0,    53,     0,    55,     0,    57,    58,    52,    48,
        !           679:      0,     0,     0,     0,     0,     0,     0,     0,    51,     0,
        !           680:      0,     0,     0,   349,     0,     0,     0,     0,     0,     0,
        !           681:      0,     0,     0,     0,     0,     0,     0,     0,    92,    93,
        !           682:      0,     0,    43,     0,   100,   102,   146,   268,   358,     0,
        !           683:    121,   262,   265,   137,   147,   267,   139,   263,     0,   512,
        !           684:      0,   461,   479,   460,     0,   483,     0,   461,   414,     0,
        !           685:    393,   442,   408,     0,   421,   415,   442,   390,   392,   170,
        !           686:    269,   219,   218,   154,   155,   222,     0,   217,     0,   221,
        !           687:      0,     0,    28,     0,   304,   108,   305,   162,   164,     0,
        !           688:      0,    13,     0,     0,    22,     0,   163,   375,     0,    12,
        !           689:     26,     0,     0,   240,     0,   239,     0,   226,   304,   244,
        !           690:    304,     0,   230,     0,     0,     0,    50,    85,    84,   287,
        !           691:      0,     0,   521,   520,   523,   530,   525,     0,   526,   527,
        !           692:      0,     0,    10,    46,    80,    79,   350,     0,    77,    76,
        !           693:     74,    75,    73,    72,    71,    69,    70,    64,    65,    66,
        !           694:     67,    68,    91,    90,     0,    44,     0,   272,     0,   276,
        !           695:      0,   278,     0,     0,   358,     0,   140,   138,     0,     0,
        !           696:      0,   435,   478,   364,     0,   510,   439,   401,   414,   421,
        !           697:      0,     0,   406,   411,     0,     0,     0,   176,   177,   178,
        !           698:    175,     0,   168,   171,     0,     0,   379,   365,   120,   120,
        !           699:    377,     0,   366,   368,   376,     0,   220,   286,     0,   110,
        !           700:    105,   109,     0,   160,   207,   203,   152,   208,    20,   159,
        !           701:    204,   206,     0,    24,   261,   258,   163,     0,   246,   247,
        !           702:    252,   305,   249,   163,   163,    54,    56,   295,   288,    87,
        !           703:     61,    60,     0,   529,   531,     0,   528,   533,   532,     0,
        !           704:     88,    89,   271,   270,   359,   277,   279,   273,   275,     0,
        !           705:      0,   457,   477,   120,     0,   466,   462,   464,     0,     0,
        !           706:    480,   366,     0,     0,   398,   442,   409,     0,   397,   451,
        !           707:    454,   445,     0,   120,   120,   447,   444,   421,   420,   418,
        !           708:    419,   404,   421,   426,   423,   120,   120,     0,   413,     0,
        !           709:    170,    43,   156,   363,   264,   264,   360,   361,     0,   378,
        !           710:      0,     0,    29,   293,   106,   120,   120,     0,     0,   157,
        !           711:    205,     0,   235,   163,   304,     0,   225,   229,     0,     0,
        !           712:    289,   290,     0,     0,   513,     0,   514,   515,    78,   274,
        !           713:    511,   459,   470,   264,   471,   467,   468,   436,     0,   440,
        !           714:    421,     0,   442,   394,     0,     0,   155,     0,     0,     0,
        !           715:    446,     0,     0,   427,   427,   422,   167,   169,    81,     0,
        !           716:    216,   268,   358,   121,   163,   163,   163,   268,   121,   163,
        !           717:    163,     0,   367,   369,   380,   294,   113,     0,   114,     0,
        !           718:    182,   180,   179,   161,    21,     0,    25,   233,   253,     0,
        !           719:    163,   381,     0,     0,     0,   304,     0,     0,   117,   305,
        !           720:    281,   291,   190,    81,     0,   188,     0,   187,     0,   237,
        !           721:    185,   517,   519,     0,   524,     0,   516,   163,   163,   163,
        !           722:      0,   472,   509,     0,   402,     0,   442,   452,   455,   448,
        !           723:    407,     0,   430,   424,   428,   425,   172,     0,   174,   272,
        !           724:      0,   375,     0,   370,   371,   372,   272,     0,   373,   374,
        !           725:    362,     0,     0,     0,   158,   163,     0,   254,   292,     0,
        !           726:    297,   119,   118,   285,     0,   298,   283,   305,   282,     0,
        !           727:      0,     0,   191,    62,     0,   184,   518,   474,   475,   476,
        !           728:    469,   264,   399,   410,     0,     0,     0,   432,     0,     0,
        !           729:      0,   214,   215,   211,   213,     0,   111,   112,     0,   256,
        !           730:    163,   382,   296,     0,   143,     0,   318,   302,     0,     0,
        !           731:      0,     0,     0,     0,     0,     0,   347,   414,   414,   339,
        !           732:      0,     0,   115,   120,   120,   311,   316,     0,     0,   308,
        !           733:    309,   312,   340,   310,   193,     0,     0,   186,   473,   442,
        !           734:    395,   450,   449,   453,   456,   431,   429,   173,   212,   181,
        !           735:    255,     0,     0,   304,   349,     0,     0,   345,   329,   330,
        !           736:    331,     0,     0,     0,   348,     0,   346,   313,   126,     0,
        !           737:    127,     0,     0,   300,   305,   299,   322,     0,     0,   189,
        !           738:    192,     0,     0,     0,     0,    47,     0,     0,     0,   343,
        !           739:    332,     0,   337,     0,     0,   124,   195,     0,   125,   198,
        !           740:    317,   304,     0,     0,   194,   400,   301,     0,   303,   341,
        !           741:    323,   327,     0,   338,     0,   122,     0,   123,     0,   315,
        !           742:    306,   304,     0,   319,   304,   349,   304,   344,   351,     0,
        !           743:    196,   199,   307,   321,   304,   342,     0,   328,     0,     0,
        !           744:    352,   353,   333,     0,     0,   320,   324,     0,   351,     0,
        !           745:      0,   197,   200,   349,     0,     0,   334,   354,     0,   355,
        !           746:      0,     0,   325,   356,     0,   335,   304,     0,     0,   326,
        !           747:    336,   357,     0,     0,     0
1.1       root      748: };
                    749: 
1.1.1.8 ! root      750: static const short yydefgoto[] = {   913,
        !           751:      1,     2,     3,    25,    26,    27,   326,   549,   332,   552,
        !           752:    187,   439,   647,   113,   367,   385,   115,   116,   226,   117,
        !           753:    563,   118,   119,   233,   120,   121,   313,   314,   315,   545,
        !           754:    635,   636,    28,   181,   763,   429,    81,   430,   128,   274,
        !           755:     31,   205,   193,    69,   188,   194,   626,    70,   548,   318,
        !           756:    319,    72,   422,   423,   424,   624,   694,   649,   650,   651,
        !           757:    712,   777,   819,   836,   857,   884,   839,   859,   885,   305,
        !           758:    197,   658,   198,    32,   219,   221,   211,    82,   716,   335,
        !           759:     85,    86,   217,   460,   461,   209,   210,   130,   660,   131,
        !           760:    177,   273,   637,   638,   705,   316,   469,   560,   561,   562,
        !           761:    543,   544,   767,   768,   769,   794,   815,   443,   816,   641,
        !           762:    770,   771,   842,   793,   875,   866,   894,   907,   867,   772,
        !           763:    773,   865,   774,   806,   368,   880,   881,   882,   905,   390,
        !           764:    391,   431,   612,   432,   433,   434,   308,   309,   435,   436,
        !           765:    633,    33,    63,    34,    35,    36,   410,   667,   292,   581,
        !           766:    780,   506,   295,   518,   583,    37,   297,    59,   415,   523,
        !           767:    416,   528,   674,   675,    38,    54,   282,   500,    55,   288,
        !           768:    504,   411,   412,   516,   590,   784,   517,   585,   726,   586,
        !           769:    727,   158,   402,   497,   498,   499,   661,   662,   284,   404,
        !           770:    159,   160,   161,   162,   163,   566,   567,   653,   568,   355,
        !           771:    122,   235,   473,   358,   359,   360,   123,   124,   125
1.1       root      772: };
                    773: 
1.1.1.8 ! root      774: static const short yypact[] = {    94,
        !           775:     97,  2746,  2746,   129,-32768,-32768,-32768,-32768,    76,   213,
        !           776:    226,    57,    86,-32768,-32768,   327,   327,-32768,   102,   327,
        !           777:    102,   327,   327,-32768,-32768,-32768,-32768,    71,    27,  2946,
1.1.1.5   root      778: -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1.1.1.8 ! root      779: -32768,-32768,-32768,-32768,-32768,-32768,    70,   104,   115,   104,
        !           780:    118,  2455,  2293,  3046,  3046,    61,   186,   327,-32768,   102,
        !           781: -32768,-32768,   173,   327,-32768,   156,-32768,    71,   222,-32768,
        !           782:    195,-32768,   757,-32768,   351,-32768,-32768,-32768,    71,-32768,
        !           783:    813,   107,-32768,   176,   165,   235,-32768,   179,-32768,-32768,
        !           784: -32768,-32768,  2509,  2563,-32768,  2455,  2455,   327,-32768,-32768,
        !           785: -32768,  2455,-32768,-32768,  1255,-32768,   192,   201,   211,-32768,
        !           786: -32768,-32768,  2455,   203,   224,-32768,-32768,  3369,   789,   318,
        !           787:    240,-32768,-32768,-32768,-32768,-32768,   270,   214,-32768,   277,
        !           788:   1720,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1.1       root      789: -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1.1.1.8 ! root      790: -32768,-32768,-32768,-32768,   199,  3255,-32768,-32768,-32768,  2265,
        !           791:    340,-32768,-32768,-32768,   327,   327,   303,   327,   327,-32768,
        !           792:     45,-32768,-32768,   327,   311,   334,   421,   280,-32768,   351,
        !           793:     71,-32768,-32768,   337,-32768,  1734,   623,   195,-32768,-32768,
        !           794:    351,-32768,   268,-32768,   195,  1658,   316,   395,   331,  1579,
        !           795:    813,-32768,-32768,-32768,-32768,-32768,-32768,   362,   325,-32768,
        !           796:    107,   342,   195,-32768,-32768,   401,   339,  2929,   104,   195,
        !           797:    104,  1255,-32768,  1255,-32768,  2455,-32768,-32768,-32768,-32768,
        !           798:    343,   353,   370,   391,  2347,  3108,  3255,   327,-32768,   399,
        !           799:   2455,  2455,  2455,  2455,  2455,  2455,  2455,  2455,  2455,  2455,
        !           800:   2455,  2455,  2455,  2455,  2455,  2455,  2455,  2455,-32768,-32768,
        !           801:    327,   327,  2455,  2455,-32768,-32768,-32768,-32768,   214,  1793,
        !           802:    195,-32768,   443,   718,-32768,-32768,-32768,-32768,  3255,-32768,
        !           803:    416,   412,   485,-32768,   340,-32768,   333,   412,   102,   423,
        !           804: -32768,   442,   428,   438,-32768,-32768,   442,-32768,-32768,   319,
        !           805: -32768,   395,-32768,-32768,   493,   395,   519,-32768,  2899,-32768,
        !           806:    450,   463,-32768,  1677,    68,-32768,-32768,   508,   195,   458,
        !           807:    358,-32768,   351,   351,-32768,   623,   195,-32768,  1852,-32768,
        !           808: -32768,   623,  2455,   327,   457,   325,   474,-32768,-32768,-32768,
        !           809: -32768,   489,-32768,   494,   495,   498,-32768,-32768,-32768,   497,
        !           810:    501,  2185,-32768,-32768,-32768,-32768,   549,   510,  3108,-32768,
        !           811:    517,   525,-32768,  3369,  3369,  3369,-32768,   557,  1230,  1386,
        !           812:   1465,  1666,  2264,  1706,   753,   838,   838,   554,   554,-32768,
        !           813: -32768,-32768,-32768,-32768,   533,   224,   530,   548,   372,-32768,
        !           814:   2918,-32768,   534,   214,-32768,  1911,-32768,   718,   542,  3136,
        !           815:    708,-32768,-32768,  3199,  3255,-32768,-32768,   541,   102,-32768,
        !           816:    563,  2821,-32768,-32768,   273,  2694,   569,-32768,-32768,-32768,
        !           817: -32768,    22,-32768,   561,    59,   558,-32768,-32768,-32768,  3227,
        !           818: -32768,   566,   359,-32768,-32768,   128,-32768,-32768,    85,-32768,
        !           819: -32768,-32768,  3244,-32768,   316,-32768,-32768,   316,-32768,   589,
        !           820: -32768,-32768,   555,-32768,  3369,-32768,   195,   570,-32768,   568,
        !           821: -32768,-32768,   568,   195,   195,-32768,-32768,-32768,   620,-32768,
        !           822: -32768,-32768,  3172,-32768,-32768,   549,-32768,-32768,-32768,  2455,
        !           823: -32768,-32768,   443,-32768,-32768,-32768,   443,-32768,-32768,   567,
        !           824:    327,-32768,  2265,   576,  2974,-32768,-32768,  3244,  1694,    85,
        !           825: -32768,   575,   583,    85,-32768,   442,-32768,   511,-32768,-32768,
        !           826: -32768,-32768,    71,    27,  2946,   285,-32768,-32768,-32768,-32768,
        !           827: -32768,-32768,-32768,-32768,-32768,-32768,  3272,   588,-32768,   587,
        !           828:    319,  2617,-32768,-32768,   562,   237,-32768,-32768,  3210,-32768,
        !           829:    663,   370,-32768,-32768,-32768,   592,  3015,  1570,    85,-32768,
        !           830: -32768,    85,-32768,   195,-32768,   538,-32768,-32768,   327,   935,
        !           831:    620,-32768,  1335,  2455,   635,   595,  3172,-32768,  1308,-32768,
        !           832: -32768,-32768,-32768,   562,-32768,-32768,-32768,-32768,   327,-32768,
        !           833: -32768,   619,   442,-32768,  3046,  3046,    69,   351,    71,  2849,
        !           834: -32768,   602,  2711,   651,   651,-32768,-32768,-32768,   202,   609,
        !           835: -32768,-32768,   237,   195,    58,   232,   195,-32768,   195,   232,
        !           836:    195,  2918,-32768,-32768,-32768,-32768,-32768,   351,-32768,    71,
        !           837: -32768,-32768,  3369,-32768,-32768,  1570,-32768,-32768,-32768,  2455,
        !           838:    106,-32768,   365,   470,   851,   613,   615,  1015,-32768,-32768,
        !           839: -32768,-32768,-32768,   659,   327,-32768,   660,  3369,   621,   625,
        !           840: -32768,   224,-32768,  2455,-32768,   635,-32768,    58,   232,   195,
        !           841:    376,-32768,-32768,   618,-32768,   637,   442,-32768,-32768,-32768,
        !           842: -32768,  2455,   669,   627,-32768,   627,-32768,  2455,-32768,   791,
        !           843:    562,-32768,  1970,-32768,-32768,-32768,    82,   237,-32768,-32768,
        !           844: -32768,   389,   392,  1335,-32768,  3333,  2455,-32768,-32768,   327,
        !           845: -32768,-32768,-32768,-32768,   633,-32768,-32768,-32768,-32768,  2051,
        !           846:    680,  1335,-32768,-32768,  1415,-32768,-32768,-32768,-32768,-32768,
        !           847: -32768,   562,-32768,-32768,   664,    56,    56,  3369,  2455,   651,
        !           848:    233,   499,   499,-32768,-32768,   645,-32768,-32768,   655,-32768,
        !           849:   3333,-32768,-32768,  2131,   691,   675,-32768,-32768,   682,   684,
        !           850:   2455,   709,   671,   672,  2401,   234,   746,    62,   153,-32768,
        !           851:    716,   678,-32768,   683,  3026,-32768,   743,  1095,    64,-32768,
        !           852: -32768,-32768,-32768,-32768,-32768,   687,  1495,-32768,-32768,   442,
        !           853: -32768,-32768,-32768,-32768,-32768,  3369,-32768,-32768,-32768,-32768,
        !           854: -32768,  2455,   714,-32768,  2455,  2455,  3310,-32768,-32768,-32768,
        !           855: -32768,   690,  2455,   699,-32768,   719,-32768,-32768,-32768,   351,
        !           856: -32768,    71,  1175,-32768,-32768,-32768,-32768,  2455,  1495,-32768,
        !           857: -32768,   705,   701,  2455,   762,   586,   704,   707,  2455,-32768,
        !           858: -32768,   712,-32768,  2455,   410,-32768,   420,   413,-32768,   944,
        !           859: -32768,-32768,  2131,   710,-32768,-32768,-32768,   720,-32768,-32768,
        !           860: -32768,-32768,  3351,-32768,    43,-32768,   623,-32768,   623,-32768,
        !           861: -32768,-32768,   730,-32768,-32768,  2455,-32768,-32768,   788,   732,
        !           862: -32768,-32768,-32768,-32768,-32768,-32768,   734,-32768,   755,    46,
        !           863:    731,-32768,-32768,   370,   370,-32768,-32768,  2455,   788,   738,
        !           864:    788,-32768,-32768,  2455,   747,    49,-32768,-32768,   754,-32768,
        !           865:    519,   745,-32768,   318,   306,-32768,-32768,   756,   519,-32768,
        !           866: -32768,   318,   832,   835,-32768
1.1       root      867: };
                    868: 
                    869: static const short yypgoto[] = {-32768,
1.1.1.8 ! root      870: -32768,-32768,-32768,   837,  -367,-32768,-32768,-32768,-32768,-32768,
        !           871: -32768,-32768,    -6,-32768,   -52,   310,  -243,   468,-32768,   -41,
        !           872: -32768,   116,    66,-32768,  -298,-32768,  -314,   577,-32768,-32768,
        !           873:    217,-32768,    -8,  -166,-32768,    25,   801,    29,   -56,   606,
        !           874:      9,  -220,  -584,   -60,  -190,  -139,-32768,-32768,-32768,  -147,
        !           875:     -4,   -58,-32768,   364,-32768,   271,-32768,  -603,-32768,  -638,
        !           876: -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   -73,
        !           877:   -131,  -486,   -20,   -46,-32768,-32768,-32768,-32768,-32768,   560,
        !           878:      1,-32768,-32768,   571,   347,   692,   564,    -3,   -91,   -36,
        !           879:   -175,  -206,   272,-32768,-32768,  -288,-32768,-32768,-32768,   346,
        !           880:   -214,  -210,-32768,-32768,-32768,-32768,  -140,  -426,  -711,   266,
        !           881: -32768,    73,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
        !           882: -32768,-32768,    77,-32768,  -728,    20,-32768,    23,-32768,   518,
        !           883: -32768,  -353,-32768,   515,   520,   382,  -303,-32768,-32768,-32768,
        !           884: -32768,-32768,   867,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
        !           885: -32768,-32768,-32768,-32768,-32768,-32768,-32768,   -14,  -328,-32768,
        !           886:    404,-32768,   356,   204,-32768,-32768,-32768,-32768,-32768,-32768,
        !           887: -32768,  -254,-32768,-32768,-32768,   205,   449,-32768,-32768,-32768,
        !           888: -32768,   -22,   649,-32768,-32768,   469,-32768,   248,   479,-32768,
        !           889:    573,   579,   -90,-32768,  -116,-32768,-32768,   322,   414,-32768,
        !           890: -32768,-32768,-32768,-32768,-32768,   628,-32768,-32768,-32768
1.1       root      891: };
                    892: 
                    893: 
1.1.1.8 ! root      894: #define        YYLAST          3421
1.1       root      895: 
                    896: 
1.1.1.8 ! root      897: static const short yytable[] = {   114,
        !           898:    127,   196,    47,    49,    51,   327,    61,    73,   425,    56,
        !           899:     57,   449,   182,    60,   320,    62,    64,   454,   199,   386,
        !           900:     75,    79,   351,    71,   451,   440,    29,    29,   324,   216,
        !           901:     30,    30,   164,   692,   206,   556,   272,   485,    80,   278,
        !           902:    304,   167,   417,   286,   512,   172,   317,   178,   605,   218,
        !           903:     88,    62,   232,   397,   227,   228,   782,   175,   200,   321,
        !           904:    230,   129,   389,    71,   817,   338,   827,   265,  -104,   285,
        !           905:    195,   239,   343,    65,    71,   208,   778,   441,    42,    43,
        !           906:    869,   508,   825,   889,    65,   542,   901,    66,   301,   296,
        !           907:    739,   229,   388,    -1,   129,   184,    -2,   530,   165,   -34,
        !           908:     66,   234,   531,    74,   394,    58,    58,   207,   776,    42,
        !           909:     43,    66,   496,   129,   327,    52,   682,   683,   870,   166,
        !           910:     67,   890,   818,   271,   902,   174,   271,   185,   186,    68,
        !           911:    860,   608,   783,   311,   533,    66,   182,   877,   821,   277,
        !           912:    603,   270,    44,   697,    53,   357,    58,    45,   280,  -104,
        !           913:    873,    83,   281,   876,   206,   878,   302,    46,   289,   290,
        !           914:    306,   293,   294,   886,   129,   899,   350,   298,    84,   232,
        !           915:    178,   232,    71,    44,   317,   195,    71,   397,    45,   450,
        !           916:    845,   483,   354,   447,   347,   317,   195,   487,   445,   592,
        !           917:    -33,   317,   448,   732,   733,   910,    87,    58,   462,    89,
        !           918:    462,    42,    43,   540,   208,    40,    41,   339,   541,   341,
        !           919:    577,   387,   182,   710,   176,    42,    43,   393,   345,   342,
        !           920:    346,   344,   670,   168,    66,   835,   277,   206,    42,    43,
        !           921:    129,   362,   129,   361,   212,   214,    42,    43,     5,    65,
        !           922:      7,   126,   213,    66,   169,   129,     9,    10,    11,   173,
        !           923:    236,   582,   664,   174,   383,   384,   220,   279,   691,   237,
        !           924:    182,    66,    13,   268,   271,    44,    66,   170,   476,   238,
        !           925:     45,   639,   269,   270,   408,   399,   453,   677,   240,    44,
        !           926:    406,   744,   678,   803,    45,   578,   608,   129,   386,   580,
        !           927:    185,   186,    44,   421,    48,   603,   270,    45,   179,   302,
        !           928:     44,    19,   180,   306,   241,    45,    21,    50,   788,   553,
        !           929:    472,   215,  -241,   241,   266,   195,   557,   558,   195,   195,
        !           930:    652,    42,    43,   418,   419,   420,   265,   208,   666,    42,
        !           931:     43,   616,   510,   511,   625,    42,    43,   627,   185,   186,
        !           932:    519,   520,   521,   490,   322,   267,   702,  -443,   323,   707,
        !           933:    522,   206,   275,    65,   189,   303,   364,   365,   366,   526,
        !           934:    369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
        !           935:    379,   380,   381,   382,   328,   329,   286,   287,   734,   527,
        !           936:     66,   908,   565,   271,   291,    44,   909,   299,   843,   271,
        !           937:     45,   405,   300,    44,   507,   307,   389,   333,    45,    44,
        !           938:    190,   503,   285,   513,    45,   334,   628,   330,   337,   191,
        !           939:    652,   180,   725,   129,   462,   340,   328,   329,   348,   640,
        !           940:    535,   536,   192,    65,   129,   494,   680,   301,   349,   495,
        !           941:    395,   396,   687,   446,   731,   538,   514,   681,    80,   539,
        !           942:    515,   699,   688,   607,   611,   700,   184,   484,   455,  -155,
        !           943:     66,   350,   721,   185,   186,  -155,   722,   684,   685,   686,
        !           944:     65,   189,   689,   690,   301,   737,   352,   546,   738,   323,
        !           945:     67,   547,   180,   483,   487,   363,   656,  -248,  -248,    68,
        !           946:    483,   487,   631,   698,   571,   574,   856,    66,   401,   858,
        !           947:    323,   400,   587,   180,   403,   640,  -155,   708,   409,   766,
        !           948:   -155,   395,   396,    80,  -441,   588,   589,   190,    71,   413,
        !           949:    718,   719,   720,   414,   606,   610,   191,   594,   595,   184,
        !           950:    673,   673,   494,    80,   421,   822,   495,    92,   199,   192,
        !           951:    604,   609,   437,   766,   457,   277,   526,   618,   620,   438,
        !           952:     65,   189,   871,   444,   872,   182,   438,   701,   740,   459,
        !           953:    182,   195,   632,   659,   301,    80,   527,   682,   683,   693,
        !           954:    223,   225,   668,   669,    65,   601,   464,    66,   587,   604,
        !           955:    466,   465,   663,   467,   468,   630,   470,    66,   519,   520,
        !           956:    521,   513,   178,   195,    71,   475,   474,   190,   584,   195,
        !           957:    195,    66,   478,   791,   480,   569,   191,   268,   609,   587,
        !           958:    479,   129,   904,   256,   257,   258,   269,   270,   481,   192,
        !           959:    912,   602,   482,   195,   514,    71,   486,   491,   515,   532,
        !           960:    603,   270,   505,   312,   550,   509,  -304,  -304,  -304,  -304,
        !           961:    736,   529,   766,   534,  -304,  -304,  -304,   551,   711,   259,
        !           962:    260,   537,   261,   262,   263,   264,   327,   554,   555,   570,
        !           963:   -304,   559,   573,    65,   189,   539,   673,   762,   579,   302,
        !           964:    306,   850,   597,   623,   596,   615,   302,   306,   617,   519,
        !           965:    520,   521,   654,   892,   893,   604,   604,   655,   648,   671,
        !           966:     66,   665,   609,   609,   679,   519,   520,   521,   672,  -304,
        !           967:   -284,   762,   706,   742,  -304,   723,   -31,   713,   714,   724,
        !           968:    190,   659,   802,   761,  -103,   715,   729,   730,   312,   191,
        !           969:    743,     5,     6,     7,     8,   775,   317,   604,   317,     9,
        !           970:     10,    11,   192,   203,   204,   195,   781,   789,   -32,     9,
        !           971:     10,    11,   790,   792,   764,    13,   837,   761,   765,   823,
        !           972:    795,   623,   796,   828,    61,   696,   798,   799,   800,   804,
        !           973:    832,   838,   805,   807,   808,   810,   812,   183,   813,   809,
        !           974:    -27,   -27,   -27,   -27,   820,   844,   831,   846,   -27,   -27,
        !           975:    -27,   848,   824,    80,    19,   833,   847,   834,   849,    21,
        !           976:    851,   855,   852,   184,   -27,   863,  -155,   728,   854,  -463,
        !           977:    762,   840,  -155,    65,   601,   864,   879,   301,   252,   253,
        !           978:    254,   255,   256,   257,   258,   195,   874,    71,   883,   648,
        !           979:    887,   891,   741,   888,   897,   185,   186,   202,   203,   204,
        !           980:     66,   906,   900,   -27,     9,    10,    11,   648,   -27,   903,
        !           981:    648,   914,   911,  -155,   915,   895,   761,  -155,   -27,    39,
        !           982:    602,   600,   259,   260,   786,   261,   262,   263,   264,   603,
        !           983:    270,   312,   703,  -116,  -116,  -116,  -116,  -116,  -116,  -116,
        !           984:    826,  -116,  -116,  -116,  -116,  -116,   797,  -116,  -116,  -116,
        !           985:   -116,  -116,  -116,  -116,  -116,  -116,  -116,  -116,  -116,  -116,
        !           986:    201,  -116,   398,  -116,  -116,   254,   255,   256,   257,   258,
        !           987:   -116,   442,   648,  -116,   598,   458,   695,   456,  -116,  -116,
        !           988:   -116,   629,   336,   709,  -116,  -116,   642,   704,   896,  -116,
        !           989:   -116,   463,   488,   898,  -116,   861,  -116,  -116,   501,   862,
        !           990:    614,  -116,  -116,   502,   171,  -116,   593,  -116,  -116,  -116,
        !           991:   -116,   785,  -116,   787,   648,   634,   407,  -304,  -304,  -304,
        !           992:   -304,  -304,  -304,  -304,   853,  -304,  -304,  -304,  -304,  -304,
        !           993:    676,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,
        !           994:   -304,  -304,  -304,  -304,   591,  -304,   576,  -304,  -304,   779,
        !           995:    184,   572,   492,  -155,  -304,   717,     0,  -304,   493,  -155,
        !           996:    657,     0,  -304,  -304,  -304,     0,   477,     0,  -304,  -304,
        !           997:      0,     0,     0,  -304,  -304,     0,     0,     0,  -304,     0,
        !           998:   -304,  -304,   185,   186,     0,  -304,  -304,     0,     0,  -304,
        !           999:      0,  -304,     0,  -304,  -304,   312,  -304,  -304,  -304,     0,
        !          1000:   -155,     0,  -304,  -304,  -155,  -304,     0,     0,     0,  -304,
        !          1001:      0,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,
        !          1002:   -304,  -304,     0,  -304,     0,  -304,     0,  -304,  -304,     0,
        !          1003:      0,     0,     0,     0,  -304,     0,     0,  -304,     0,     0,
        !          1004:      0,     0,  -304,  -304,  -304,     0,     0,     0,  -304,  -304,
        !          1005:      0,     0,     0,  -304,  -304,     0,     0,     0,  -304,     0,
        !          1006:   -304,  -304,     0,     0,     0,  -304,  -304,     0,     0,  -304,
        !          1007:      0,  -304,  -280,  -304,  -304,   814,  -304,  -304,  -304,     0,
        !          1008:      0,     0,  -304,  -304,     0,  -304,     0,     0,     0,  -304,
        !          1009:      0,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,  -304,
        !          1010:   -304,  -304,     0,  -304,     0,  -304,     0,  -304,  -304,     0,
        !          1011:      0,     0,     0,     0,  -304,     0,     0,  -304,     0,     0,
        !          1012:      0,     0,  -304,  -304,  -304,     0,     0,     0,  -304,  -304,
        !          1013:      0,     0,     0,  -304,  -304,     0,     0,     0,  -304,     0,
        !          1014:   -304,  -304,     0,     0,     0,  -304,  -304,     0,     0,  -304,
        !          1015:      0,  -304,     0,  -304,  -304,   841,  -304,  -314,  -314,     0,
        !          1016:      0,     0,  -314,  -314,     0,  -314,     0,     0,     0,  -314,
        !          1017:      0,  -314,  -314,  -314,  -314,  -314,  -314,  -314,  -314,  -314,
        !          1018:   -314,  -314,     0,  -314,     0,  -314,     0,  -314,  -314,     0,
        !          1019:      0,     0,     0,     0,  -314,     0,     0,  -314,     0,     0,
        !          1020:      0,     0,  -314,  -314,  -314,     0,     0,     0,  -314,  -314,
        !          1021:      0,     0,     0,  -314,  -314,     0,     0,     0,  -314,     0,
        !          1022:   -314,  -314,     0,     0,     0,  -314,  -314,     0,     0,  -314,
        !          1023:      0,  -314,     0,  -314,  -314,   231,  -314,    90,     5,     0,
        !          1024:      7,   126,    91,    92,     0,    93,     9,    10,    11,   246,
        !          1025:    247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
        !          1026:    257,   258,    13,    94,     0,    95,     0,    96,    97,     0,
        !          1027:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1028:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1029:      0,     0,     0,   105,   106,     0,     0,     0,   107,     0,
        !          1030:    108,    19,     0,     0,     0,   109,    21,     0,     0,   110,
        !          1031:      0,     0,     0,   111,   112,   643,   -86,   644,    43,     0,
        !          1032:      0,     0,    91,    92,   244,    93,   245,   246,   247,   248,
        !          1033:    249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
        !          1034:      0,     0,     0,    94,     0,    95,     0,    96,    97,     0,
        !          1035:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1036:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1037:      0,     0,   645,   105,   106,     0,     0,     0,   107,     0,
        !          1038:    108,    44,     0,     0,     0,   109,    45,     0,     0,   110,
        !          1039:      0,     0,  -183,   111,   112,   643,   646,   644,    43,     0,
        !          1040:      0,     0,    91,    92,     0,    93,   247,   248,   249,   250,
        !          1041:    251,   252,   253,   254,   255,   256,   257,   258,     0,     0,
        !          1042:      0,     0,     0,    94,     0,    95,     0,    96,    97,     0,
        !          1043:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1044:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1045:      0,     0,   645,   105,   106,     0,     0,     0,   107,     0,
        !          1046:    108,    44,     0,     0,     0,   109,    45,     0,     0,   110,
        !          1047:      0,     0,  -238,   111,   112,   643,   646,   644,    43,     0,
        !          1048:      0,     0,    91,    92,     0,    93,   248,   249,   250,   251,
        !          1049:    252,   253,   254,   255,   256,   257,   258,     0,     0,     0,
        !          1050:      0,     0,     0,    94,     0,    95,     0,    96,    97,     0,
        !          1051:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1052:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1053:      0,     0,   645,   105,   106,     0,     0,     0,   107,     0,
        !          1054:    108,    44,     0,     0,     0,   109,    45,     0,     0,   110,
        !          1055:    621,     0,    90,   111,   112,     0,   646,    91,    92,   331,
        !          1056:     93,     0,   -23,   -23,   -23,   -23,     0,     0,     0,     0,
        !          1057:    -23,   -23,   -23,     0,     0,     0,     0,     0,    94,     0,
        !          1058:     95,     0,    96,    97,     0,   184,   -23,     0,  -155,    98,
        !          1059:      0,     0,    99,     0,  -155,     0,     0,   100,   101,   102,
        !          1060:      0,     0,     0,   103,   104,     0,     0,     0,   105,   106,
        !          1061:      0,     0,     0,   107,     0,   108,     0,   185,   186,     0,
        !          1062:    109,     0,     0,     0,   110,   -23,     0,     0,   111,   112,
        !          1063:    -23,   622,     0,     0,     0,  -155,     0,     0,   325,  -155,
        !          1064:    -23,   -19,   -19,   -19,   -19,     0,     0,     0,     0,   -19,
        !          1065:    -19,   -19,     0,     0,     0,     0,     0,   312,     0,     0,
        !          1066:   -107,  -107,  -107,  -107,   184,   -19,  -107,  -155,  -107,  -107,
        !          1067:   -107,     0,     0,  -155,   312,     0,     0,  -465,  -465,  -465,
        !          1068:   -465,     0,     0,     0,  -107,  -465,  -465,  -465,   249,   250,
        !          1069:    251,   252,   253,   254,   255,   256,   257,   258,     0,     0,
        !          1070:      0,  -465,     0,     5,   -19,     7,   276,     0,     0,   -19,
        !          1071:      0,     9,    10,    11,  -155,     0,    90,     0,  -155,   -19,
        !          1072:      0,    91,    92,  -107,    93,     0,     0,    13,  -107,    66,
        !          1073:    251,   252,   253,   254,   255,   256,   257,   258,  -107,     0,
        !          1074:   -465,     0,    94,     0,    95,  -465,    96,    97,     0,   268,
        !          1075:      0,     0,     0,    98,     0,  -465,    99,     0,   269,   270,
        !          1076:      0,   100,   101,   102,     0,     0,    19,   103,   104,     0,
        !          1077:      0,    21,   105,   106,     0,    90,     0,   107,     0,   108,
        !          1078:     91,    92,     0,    93,   109,     0,     0,     0,   110,     0,
        !          1079:      0,     0,   111,   112,     0,     0,   310,     0,     0,     0,
        !          1080:      0,    94,     0,    95,     0,    96,    97,     0,     0,     0,
        !          1081:      0,     0,    98,     0,     0,    99,     0,     0,     0,     0,
        !          1082:    100,   101,   102,     0,     0,     0,   103,   104,     0,     0,
        !          1083:      0,   105,   106,     0,    90,     0,   107,     0,   108,    91,
        !          1084:     92,     0,    93,   109,     0,     0,     0,   110,     0,     0,
        !          1085:      0,   111,   112,     0,     0,   392,     0,     0,     0,     0,
        !          1086:     94,     0,    95,     0,    96,    97,     0,     0,     0,     0,
        !          1087:      0,    98,     0,     0,    99,     0,     0,     0,     0,   100,
        !          1088:    101,   102,     0,     0,     0,   103,   104,     0,     0,     0,
        !          1089:    105,   106,     0,    90,     0,   107,     0,   108,    91,    92,
        !          1090:      0,    93,   109,     0,     0,     0,   110,     0,     0,     0,
        !          1091:    111,   112,     0,     0,   452,     0,     0,     0,     0,    94,
        !          1092:      0,    95,     0,    96,    97,     0,     0,     0,     0,     0,
        !          1093:     98,     0,     0,    99,     0,     0,     0,     0,   100,   101,
        !          1094:    102,     0,     0,     0,   103,   104,     0,     0,     0,   105,
        !          1095:    106,     0,    90,     0,   107,     0,   108,    91,    92,     0,
        !          1096:     93,   109,     0,     0,     0,   110,     0,     0,     0,   111,
        !          1097:    112,     0,     0,   489,     0,     0,     0,     0,    94,     0,
        !          1098:     95,     0,    96,    97,     0,     0,     0,     0,     0,    98,
        !          1099:      0,     0,    99,     0,     0,     0,     0,   100,   101,   102,
        !          1100:      0,     0,     0,   103,   104,     0,     0,     0,   105,   106,
        !          1101:      0,     0,     0,   107,     0,   108,     0,     0,     0,     0,
        !          1102:    109,     0,     0,     0,   110,     0,     0,     0,   111,   112,
        !          1103:      0,     0,   735,   644,   745,     6,     7,     8,    91,    92,
        !          1104:      0,    93,     9,    10,    11,   746,     0,   747,   748,   749,
        !          1105:    750,   751,   752,   753,   754,   755,   756,   757,    13,    94,
        !          1106:      0,    95,     0,    96,    97,     0,     0,     0,     0,     0,
        !          1107:     98,     0,     0,    99,     0,     0,     0,     0,   100,   101,
        !          1108:    102,     0,     0,     0,   103,   104,     0,     0,     0,   105,
        !          1109:    106,     0,     0,     0,   107,     0,   108,   758,     0,     0,
        !          1110:      0,   109,   759,     0,     0,   110,     0,   760,     0,   111,
        !          1111:    112,     0,   350,   644,    43,     0,     0,     0,    91,    92,
        !          1112:      0,    93,     0,     0,     0,   746,     0,   747,   748,   749,
        !          1113:    750,   751,   752,   753,   754,   755,   756,   757,     0,    94,
        !          1114:      0,    95,     0,    96,    97,     0,     0,     0,     0,     0,
        !          1115:     98,     0,     0,    99,     0,     0,     0,     0,   100,   101,
        !          1116:    102,     0,     0,     0,   103,   104,     0,    90,     0,   105,
        !          1117:    106,     0,    91,    92,   107,    93,   108,    44,     0,     0,
        !          1118:      0,   109,    45,     0,     0,   110,     0,   760,     0,   111,
        !          1119:    112,     0,   350,    94,     0,    95,     0,    96,    97,     0,
        !          1120:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1121:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1122:      0,     0,     0,   105,   106,     0,     0,     0,   107,     0,
        !          1123:    108,     0,     0,     0,     0,   109,     0,     0,     0,   110,
        !          1124:      0,     0,     0,   111,   112,     0,   471,   132,   133,     0,
        !          1125:    134,   135,     0,     0,     0,   136,   137,   138,   139,   140,
1.1.1.7   root     1126:    141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1.1.1.8 ! root     1127:    151,   152,   153,   154,     0,    90,     5,     0,     7,   126,
        !          1128:     91,    92,   155,    93,     9,    10,    11,   250,   251,   252,
        !          1129:    253,   254,   255,   256,   257,   258,     0,     0,     0,     0,
        !          1130:     13,    94,     0,    95,     0,    96,    97,     0,     0,     0,
        !          1131:      0,     0,    98,     0,     0,    99,   157,     0,     0,     0,
        !          1132:    100,   101,   102,     0,     0,   283,   103,   104,     0,    90,
        !          1133:      0,   105,   106,     0,    91,    92,   107,    93,   108,    19,
        !          1134:      0,     0,     0,   109,    21,     0,     0,   110,     0,     0,
        !          1135:      0,   111,   112,     0,     0,    94,     0,    95,     0,    96,
        !          1136:     97,     0,     0,     0,     0,     0,    98,     0,     0,    99,
        !          1137:      0,     0,     0,     0,   100,   101,   102,     0,     0,     0,
        !          1138:    103,   104,     0,    90,     0,   105,   106,     0,    91,    92,
        !          1139:    107,    93,   108,   353,     0,     0,     0,   109,     0,     0,
        !          1140:      0,   110,     0,     0,     0,   111,   112,     0,     0,    94,
        !          1141:      0,    95,     0,    96,    97,     0,     0,     0,     0,     0,
        !          1142:     98,     0,     0,    99,     0,     0,     0,     0,   100,   101,
        !          1143:    102,     0,     0,     0,   103,   104,     0,    90,     0,   105,
        !          1144:    106,     0,    91,    92,   107,    93,   108,     0,     0,     0,
        !          1145:      0,   109,     0,     0,     0,   110,     0,   801,     0,   111,
        !          1146:    112,     0,     0,    94,     0,    95,     0,    96,    97,     0,
        !          1147:      0,     0,     0,     0,    98,     0,     0,    99,     0,     0,
        !          1148:      0,     0,   100,   101,   102,     0,     0,     0,   103,   104,
        !          1149:      0,    90,     0,   105,   106,     0,    91,    92,   107,    93,
        !          1150:    108,     0,     0,     0,     0,   109,     0,     0,     0,   110,
        !          1151:      0,     0,     0,   111,   112,     0,     0,    94,     0,    95,
        !          1152:      0,    96,    97,     0,     0,     0,     0,     0,    98,     0,
        !          1153:      0,    99,     0,     0,     0,     0,   100,   101,   102,     0,
        !          1154:      0,     0,   103,   104,     0,    90,     0,   222,   106,     0,
        !          1155:     91,    92,   107,    93,   108,     0,     0,     0,     0,   109,
        !          1156:      0,     0,     0,   110,     0,     0,     0,   111,   112,     0,
        !          1157:      0,    94,     0,    95,     0,    96,    97,     0,     0,     0,
        !          1158:      0,     0,    98,     0,     0,    99,     0,     0,     0,     0,
        !          1159:    100,   101,   102,     0,     0,     0,   103,   104,     0,   599,
        !          1160:      0,   224,   106,     0,    91,    92,   107,    93,   108,     0,
        !          1161:      0,     0,     0,   109,     0,     0,     0,   110,     0,     0,
        !          1162:      0,   111,   112,     0,     0,    94,     0,    95,     0,    96,
        !          1163:     97,     0,     0,     0,     0,     0,    98,     0,     0,    99,
        !          1164:      0,     0,     0,     0,   100,   101,   102,     0,     0,     0,
        !          1165:    103,   104,     0,     0,     0,   105,   106,     0,     0,     0,
        !          1166:    107,     0,   108,     0,     0,     0,     0,   109,     0,     0,
        !          1167:      0,   110,     0,     0,   524,   111,   112,     5,     0,     7,
        !          1168:    126,     0,     0,     0,     0,     9,    10,    11,     0,     0,
        !          1169:      0,   524,     0,     0,     5,     0,     7,   126,     0,     0,
1.1.1.7   root     1170:      0,    13,     9,    10,    11,     0,     0,     0,     0,     0,
1.1.1.8 ! root     1171:      0,     0,     0,     0,     0,     0,     0,     0,    13,     0,
        !          1172:      0,     0,     0,     0,     0,     0,     4,     0,  -120,     5,
        !          1173:      6,     7,     8,     0,     0,     0,     0,     9,    10,    11,
        !          1174:     19,  -417,  -417,  -417,     0,    21,     0,     0,     0,     0,
        !          1175:    525,  -417,    12,    13,     0,  -120,     0,    19,  -416,  -416,
        !          1176:   -416,     0,    21,     0,     0,     0,     0,   525,  -416,     0,
        !          1177:      0,     0,     0,    14,    15,  -120,     0,     0,     0,     0,
        !          1178:      0,     0,     0,     0,  -120,     0,    16,    17,    18,     0,
        !          1179:      0,     0,    19,     0,     0,     0,    20,    21,    22,    23,
        !          1180:      0,     4,    24,  -120,     5,     6,     7,     8,     0,     0,
        !          1181:      0,     0,     9,    10,    11,     0,     0,     0,     0,     0,
        !          1182:      0,     0,     0,     0,     0,     0,     0,     0,    13,     4,
        !          1183:   -120,  -120,     5,     6,     7,     8,     0,     0,     0,     0,
        !          1184:      9,    10,    11,     0,     0,     0,     0,     0,   510,   511,
        !          1185:   -120,     0,     0,     0,     0,     0,    13,     0,  -120,  -120,
        !          1186:      0,     0,     0,     0,     0,     0,     0,    19,     0,     0,
        !          1187:      0,     0,    21,     0,     0,     0,     0,    24,  -120,   426,
        !          1188:      0,   427,     5,     6,     7,     8,     0,  -120,   428,     0,
        !          1189:      9,    10,    11,     0,     0,    19,     0,     0,   426,     0,
        !          1190:     21,     5,     6,     7,     8,    24,    13,   428,     0,     9,
        !          1191:     10,    11,     5,     0,     7,   276,     0,     0,     0,     0,
        !          1192:      9,    10,    11,     0,     0,    13,     0,     0,     0,     5,
        !          1193:     76,     7,    77,     0,     0,     0,    13,     9,    10,    11,
        !          1194:      0,     0,     0,     0,     0,    19,     0,     0,     0,     0,
        !          1195:     21,     0,     0,    13,  -364,     0,     0,     5,    76,     7,
        !          1196:     77,     0,     0,     0,    19,     9,    10,    11,     0,    21,
        !          1197:      0,     0,     0,  -364,     0,    19,     0,     0,     0,     0,
        !          1198:     21,    13,     0,     0,     0,  -250,  -250,     0,     0,     0,
        !          1199:      0,     0,    19,     0,     0,     0,     0,    21,     5,    76,
        !          1200:      7,    77,    78,     0,     0,     0,     9,    10,    11,     5,
        !          1201:     76,     7,    77,     0,     0,     0,     0,     9,    10,    11,
        !          1202:     19,     0,    13,     0,     0,    21,     0,     0,   132,   133,
        !          1203:    575,   134,   135,    13,     0,     0,   136,   137,   138,   139,
        !          1204:    140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
        !          1205:    150,   151,   152,   153,   154,     0,     0,     0,     0,     0,
        !          1206:      0,    19,     0,   155,     0,     0,    21,     0,     0,     0,
        !          1207:      0,   619,    19,     0,     0,     0,     0,    21,     0,     0,
        !          1208:      0,     0,   811,     0,   156,     0,     0,     0,     0,     0,
        !          1209:    132,   133,     0,   134,   135,     0,     0,   157,   136,   137,
        !          1210:    138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
        !          1211:    148,   149,   150,   151,   152,   153,   154,     0,   132,   133,
        !          1212:      0,   134,   135,     0,     0,   356,   136,   137,   138,   139,
        !          1213:    140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
        !          1214:    150,   151,   152,   153,   154,     0,     0,     0,     0,     0,
        !          1215:      0,     0,     0,   155,   132,   133,     0,   134,   135,   157,
        !          1216:      0,     0,   136,   137,   138,   139,   140,   141,   142,   143,
        !          1217:    144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
        !          1218:    154,     0,     5,     6,     7,     8,     0,   157,   428,   564,
        !          1219:      9,    10,    11,     5,     6,     7,     8,     0,     0,   613,
        !          1220:      0,     9,    10,    11,     0,     0,    13,     0,     0,     0,
        !          1221:      5,    76,     7,    77,     0,     0,     0,    13,     9,    10,
        !          1222:     11,     0,     0,   157,     0,     0,     0,     5,     6,     7,
        !          1223:      8,     0,     0,     0,    13,     9,    10,    11,     5,     0,
        !          1224:      7,   126,     0,     0,     0,    19,     9,    10,    11,     0,
        !          1225:     21,    13,     0,     0,     0,     5,    19,     7,   276,     0,
        !          1226:      0,    21,    13,     9,    10,    11,     0,     0,     0,     0,
        !          1227:      0,     0,     0,    19,     0,     0,     0,     0,    21,    13,
        !          1228:      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        !          1229:     19,     0,     0,     0,     0,    21,     0,     0,     0,   829,
1.1.1.7   root     1230:      0,    19,     0,     0,     0,     0,    21,     0,     0,     0,
                   1231:      0,     0,     0,     0,     0,     0,     0,     0,    19,     0,
1.1.1.8 ! root     1232:      0,     0,     0,    21,   242,   243,   244,   830,   245,   246,
        !          1233:    247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
        !          1234:    257,   258,    66,     0,     0,     0,     0,   242,   243,   244,
        !          1235:      0,   245,   246,   247,   248,   249,   250,   251,   252,   253,
        !          1236:    254,   255,   256,   257,   258,   242,   243,   244,   868,   245,
        !          1237:    246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
        !          1238:    256,   257,   258,   242,   243,   244,     0,   245,   246,   247,
        !          1239:    248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
        !          1240:    258
1.1       root     1241: };
                   1242: 
1.1.1.5   root     1243: static const short yycheck[] = {    52,
1.1.1.8 ! root     1244:     53,    75,     9,    10,    11,   196,    21,    28,   307,    16,
        !          1245:     17,   326,    71,    20,   190,    22,    23,   332,    79,   263,
        !          1246:     29,    30,   233,    28,   328,   314,     2,     3,   195,    86,
        !          1247:      2,     3,    55,   618,    81,   462,   128,   391,    30,   131,
        !          1248:    180,    56,   297,   160,   412,    60,   187,    68,   535,    86,
        !          1249:     50,    58,   105,   274,    96,    97,     1,    64,    79,   191,
        !          1250:    102,    53,   269,    68,     1,   213,   795,     9,     1,   160,
        !          1251:     75,   113,   220,     3,    79,    82,   715,    10,     3,     4,
        !          1252:     38,   410,   794,    38,     3,     1,    38,    30,     7,    45,
        !          1253:    694,    98,   268,     0,    86,    27,     0,    76,    38,    38,
        !          1254:     30,   105,    81,    77,   271,    45,    45,     1,   712,     3,
        !          1255:      4,    30,   401,   105,   305,    59,    59,    60,    76,    59,
        !          1256:     50,    76,    59,   128,    76,    81,   131,    59,    60,    59,
        !          1257:    842,    50,    77,   186,    76,    30,   195,   866,   777,   131,
        !          1258:     59,    60,    67,    38,    59,   236,    45,    72,   155,    82,
        !          1259:    862,    82,   156,   865,   201,   867,   177,    82,   165,   166,
        !          1260:    181,   168,   169,   875,   156,   894,    82,   174,    65,   222,
        !          1261:    191,   224,   177,    67,   315,   180,   181,   398,    72,   327,
        !          1262:    819,   388,   235,   323,   226,   326,   191,   394,   320,   518,
        !          1263:     38,   332,   324,   680,   681,   907,    82,    45,   339,    82,
        !          1264:    341,     3,     4,    76,   211,    77,    78,   216,    81,   218,
        !          1265:    499,   264,   271,   640,    59,     3,     4,   270,   222,   219,
        !          1266:    224,   221,   590,    38,    30,   810,   218,   274,     3,     4,
        !          1267:    222,   238,   224,   237,    59,     1,     3,     4,     4,     3,
        !          1268:      6,     7,    78,    30,    59,   237,    12,    13,    14,    77,
        !          1269:     59,   506,   581,    81,   261,   262,    78,    59,   612,    59,
        !          1270:    319,    30,    28,    50,   269,    67,    30,    82,   359,    59,
        !          1271:     72,   560,    59,    60,   289,   279,   329,    76,    76,    67,
        !          1272:    287,   708,    81,    50,    72,   500,    50,   279,   532,   504,
        !          1273:     59,    60,    67,   300,    82,    59,    60,    72,    77,   320,
        !          1274:     67,    67,    81,   324,    81,    72,    72,    82,    76,   457,
        !          1275:    352,    77,    78,    81,    75,   320,   464,   465,   323,   324,
        !          1276:    564,     3,     4,     5,     6,     7,     9,   334,   583,     3,
        !          1277:      4,   542,    48,    49,   549,     3,     4,   552,    59,    60,
        !          1278:     68,    69,    70,   396,    77,    76,   635,    63,    81,   638,
        !          1279:     78,   398,    76,     3,     4,    76,   241,   242,   243,   416,
        !          1280:    245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
        !          1281:    255,   256,   257,   258,    59,    60,   493,    38,   682,   416,
        !          1282:     30,    76,   473,   388,    82,    67,    81,    77,   815,   394,
        !          1283:     72,    59,    59,    67,   409,    59,   603,    36,    72,    67,
        !          1284:     50,   405,   493,   412,    72,    81,   554,    77,    67,    59,
        !          1285:    654,    81,   667,   405,   555,    77,    59,    60,    76,   560,
        !          1286:    429,   430,    72,     3,   416,   401,   602,     7,    76,   401,
        !          1287:     59,    60,   608,    76,   678,    77,   412,   604,   430,    81,
        !          1288:    412,    77,   609,   535,   536,    81,    27,    76,   333,    30,
        !          1289:     30,    82,    77,    59,    60,    36,    81,   605,   606,   607,
        !          1290:      3,     4,   610,   611,     7,    77,    76,   443,    77,    81,
        !          1291:     50,   443,    81,   680,   681,    77,   567,    77,    78,    59,
        !          1292:    687,   688,   556,   631,   491,   494,    77,    30,    77,    77,
        !          1293:     81,    76,   513,    81,    10,   636,    77,   638,    76,   710,
        !          1294:     81,    59,    60,   495,    63,   514,   515,    50,   513,    82,
        !          1295:    658,   659,   660,    76,   535,   536,    59,   526,   527,    27,
        !          1296:    594,   595,   498,   515,   531,   780,   498,     9,   589,    72,
        !          1297:    535,   536,    83,   744,    78,   527,   593,   546,   547,    77,
        !          1298:      3,     4,   857,    36,   859,   604,    77,    78,   696,    76,
        !          1299:    609,   556,   559,   574,     7,   547,   593,    59,    60,   620,
        !          1300:     93,    94,   585,   586,     3,     4,    78,    30,   589,   574,
        !          1301:     76,    78,   579,    76,    78,    38,    76,    30,    68,    69,
        !          1302:     70,   590,   603,   588,   589,    76,    38,    50,    78,   594,
        !          1303:    595,    30,    76,   741,    38,   480,    59,    50,   603,   620,
        !          1304:     76,   593,   901,    50,    51,    52,    59,    60,    76,    72,
        !          1305:    909,    50,    83,   618,   590,   620,    83,    76,   590,    59,
        !          1306:     59,    60,    82,     1,    36,    63,     4,     5,     6,     7,
        !          1307:    683,    63,   843,    76,    12,    13,    14,    83,   645,    54,
        !          1308:     55,    76,    57,    58,    59,    60,   837,    78,    81,    83,
        !          1309:     28,    32,    77,     3,     4,    81,   730,   710,    76,   680,
        !          1310:    681,    76,    76,   548,    77,     3,   687,   688,    77,    68,
        !          1311:     69,    70,    38,   884,   885,   680,   681,    83,   563,    78,
        !          1312:     30,    63,   687,   688,    76,    68,    69,    70,    38,    67,
        !          1313:     78,   744,    78,   700,    72,    78,    38,    38,    78,    63,
        !          1314:     50,   722,   755,   710,    82,    81,    38,    81,     1,    59,
        !          1315:     78,     4,     5,     6,     7,    36,   857,   722,   859,    12,
        !          1316:     13,    14,    72,     6,     7,   730,    63,    83,    38,    12,
        !          1317:     13,    14,    78,    59,   710,    28,   810,   744,   710,   792,
        !          1318:     59,   626,    59,   796,   759,   630,    38,    77,    77,   756,
        !          1319:    803,   812,     7,    38,    77,   764,   765,     1,    16,    77,
        !          1320:      4,     5,     6,     7,    78,   818,    77,    63,    12,    13,
        !          1321:     14,   824,    59,   765,    67,    77,    76,    59,    17,    72,
        !          1322:     77,   834,    76,    27,    28,    76,    30,   672,    77,    82,
        !          1323:    843,   812,    36,     3,     4,    76,     9,     7,    46,    47,
        !          1324:     48,    49,    50,    51,    52,   810,    77,   812,    77,   694,
        !          1325:     77,    81,   697,    59,    77,    59,    60,     5,     6,     7,
        !          1326:     30,    77,    76,    67,    12,    13,    14,   712,    72,    76,
        !          1327:    715,     0,    77,    77,     0,   888,   843,    81,    82,     3,
        !          1328:     50,   532,    54,    55,   729,    57,    58,    59,    60,    59,
        !          1329:     60,     1,   636,     3,     4,     5,     6,     7,     8,     9,
        !          1330:    795,    11,    12,    13,    14,    15,   751,    17,    18,    19,
        !          1331:     20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
        !          1332:     80,    31,   277,    33,    34,    48,    49,    50,    51,    52,
        !          1333:     40,   315,   777,    43,   531,   336,   626,   334,    48,    49,
        !          1334:     50,   555,   211,   638,    54,    55,   561,   636,   889,    59,
        !          1335:     60,   341,   395,   891,    64,   843,    66,    67,   404,   843,
        !          1336:    539,    71,    72,   404,    58,    75,   523,    77,    78,    79,
        !          1337:     80,   727,    82,   730,   819,     1,   288,     3,     4,     5,
        !          1338:      6,     7,     8,     9,   829,    11,    12,    13,    14,    15,
        !          1339:    595,    17,    18,    19,    20,    21,    22,    23,    24,    25,
        !          1340:     26,    27,    28,    29,   516,    31,   498,    33,    34,   722,
        !          1341:     27,   493,   400,    30,    40,   654,    -1,    43,   400,    36,
        !          1342:    567,    -1,    48,    49,    50,    -1,   359,    -1,    54,    55,
        !          1343:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1344:     66,    67,    59,    60,    -1,    71,    72,    -1,    -1,    75,
        !          1345:     -1,    77,    -1,    79,    80,     1,    82,     3,     4,    -1,
        !          1346:     77,    -1,     8,     9,    81,    11,    -1,    -1,    -1,    15,
        !          1347:     -1,    17,    18,    19,    20,    21,    22,    23,    24,    25,
        !          1348:     26,    27,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1349:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1350:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1351:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1352:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1353:     -1,    77,    78,    79,    80,     1,    82,     3,     4,    -1,
1.1.1.4   root     1354:     -1,    -1,     8,     9,    -1,    11,    -1,    -1,    -1,    15,
1.1.1.5   root     1355:     -1,    17,    18,    19,    20,    21,    22,    23,    24,    25,
1.1.1.8 ! root     1356:     26,    27,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1357:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1358:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1359:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1360:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1361:     -1,    77,    -1,    79,    80,     1,    82,     3,     4,    -1,
1.1.1.7   root     1362:     -1,    -1,     8,     9,    -1,    11,    -1,    -1,    -1,    15,
                   1363:     -1,    17,    18,    19,    20,    21,    22,    23,    24,    25,
1.1.1.8 ! root     1364:     26,    27,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1365:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1366:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1367:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1368:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1369:     -1,    77,    -1,    79,    80,     1,    82,     3,     4,    -1,
        !          1370:      6,     7,     8,     9,    -1,    11,    12,    13,    14,    40,
        !          1371:     41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
        !          1372:     51,    52,    28,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1373:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1374:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1375:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1376:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1377:     -1,    -1,    -1,    79,    80,     1,    82,     3,     4,    -1,
        !          1378:     -1,    -1,     8,     9,    37,    11,    39,    40,    41,    42,
        !          1379:     43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
        !          1380:     -1,    -1,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1381:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1382:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1383:     -1,    -1,    58,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1384:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1385:     -1,    -1,    78,    79,    80,     1,    82,     3,     4,    -1,
        !          1386:     -1,    -1,     8,     9,    -1,    11,    41,    42,    43,    44,
        !          1387:     45,    46,    47,    48,    49,    50,    51,    52,    -1,    -1,
        !          1388:     -1,    -1,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1389:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1390:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1391:     -1,    -1,    58,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1392:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1393:     -1,    -1,    78,    79,    80,     1,    82,     3,     4,    -1,
        !          1394:     -1,    -1,     8,     9,    -1,    11,    42,    43,    44,    45,
        !          1395:     46,    47,    48,    49,    50,    51,    52,    -1,    -1,    -1,
        !          1396:     -1,    -1,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1397:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1398:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1399:     -1,    -1,    58,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1400:     66,    67,    -1,    -1,    -1,    71,    72,    -1,    -1,    75,
        !          1401:      1,    -1,     3,    79,    80,    -1,    82,     8,     9,     1,
        !          1402:     11,    -1,     4,     5,     6,     7,    -1,    -1,    -1,    -1,
        !          1403:     12,    13,    14,    -1,    -1,    -1,    -1,    -1,    29,    -1,
        !          1404:     31,    -1,    33,    34,    -1,    27,    28,    -1,    30,    40,
        !          1405:     -1,    -1,    43,    -1,    36,    -1,    -1,    48,    49,    50,
        !          1406:     -1,    -1,    -1,    54,    55,    -1,    -1,    -1,    59,    60,
        !          1407:     -1,    -1,    -1,    64,    -1,    66,    -1,    59,    60,    -1,
        !          1408:     71,    -1,    -1,    -1,    75,    67,    -1,    -1,    79,    80,
        !          1409:     72,    82,    -1,    -1,    -1,    77,    -1,    -1,     1,    81,
        !          1410:     82,     4,     5,     6,     7,    -1,    -1,    -1,    -1,    12,
        !          1411:     13,    14,    -1,    -1,    -1,    -1,    -1,     1,    -1,    -1,
        !          1412:      4,     5,     6,     7,    27,    28,    10,    30,    12,    13,
        !          1413:     14,    -1,    -1,    36,     1,    -1,    -1,     4,     5,     6,
        !          1414:      7,    -1,    -1,    -1,    28,    12,    13,    14,    43,    44,
        !          1415:     45,    46,    47,    48,    49,    50,    51,    52,    -1,    -1,
        !          1416:     -1,    28,    -1,     4,    67,     6,     7,    -1,    -1,    72,
        !          1417:     -1,    12,    13,    14,    77,    -1,     3,    -1,    81,    82,
        !          1418:     -1,     8,     9,    67,    11,    -1,    -1,    28,    72,    30,
        !          1419:     45,    46,    47,    48,    49,    50,    51,    52,    82,    -1,
        !          1420:     67,    -1,    29,    -1,    31,    72,    33,    34,    -1,    50,
        !          1421:     -1,    -1,    -1,    40,    -1,    82,    43,    -1,    59,    60,
        !          1422:     -1,    48,    49,    50,    -1,    -1,    67,    54,    55,    -1,
        !          1423:     -1,    72,    59,    60,    -1,     3,    -1,    64,    -1,    66,
        !          1424:      8,     9,    -1,    11,    71,    -1,    -1,    -1,    75,    -1,
        !          1425:     -1,    -1,    79,    80,    -1,    -1,    83,    -1,    -1,    -1,
        !          1426:     -1,    29,    -1,    31,    -1,    33,    34,    -1,    -1,    -1,
        !          1427:     -1,    -1,    40,    -1,    -1,    43,    -1,    -1,    -1,    -1,
        !          1428:     48,    49,    50,    -1,    -1,    -1,    54,    55,    -1,    -1,
        !          1429:     -1,    59,    60,    -1,     3,    -1,    64,    -1,    66,     8,
        !          1430:      9,    -1,    11,    71,    -1,    -1,    -1,    75,    -1,    -1,
        !          1431:     -1,    79,    80,    -1,    -1,    83,    -1,    -1,    -1,    -1,
        !          1432:     29,    -1,    31,    -1,    33,    34,    -1,    -1,    -1,    -1,
        !          1433:     -1,    40,    -1,    -1,    43,    -1,    -1,    -1,    -1,    48,
        !          1434:     49,    50,    -1,    -1,    -1,    54,    55,    -1,    -1,    -1,
        !          1435:     59,    60,    -1,     3,    -1,    64,    -1,    66,     8,     9,
        !          1436:     -1,    11,    71,    -1,    -1,    -1,    75,    -1,    -1,    -1,
        !          1437:     79,    80,    -1,    -1,    83,    -1,    -1,    -1,    -1,    29,
        !          1438:     -1,    31,    -1,    33,    34,    -1,    -1,    -1,    -1,    -1,
        !          1439:     40,    -1,    -1,    43,    -1,    -1,    -1,    -1,    48,    49,
        !          1440:     50,    -1,    -1,    -1,    54,    55,    -1,    -1,    -1,    59,
        !          1441:     60,    -1,     3,    -1,    64,    -1,    66,     8,     9,    -1,
        !          1442:     11,    71,    -1,    -1,    -1,    75,    -1,    -1,    -1,    79,
        !          1443:     80,    -1,    -1,    83,    -1,    -1,    -1,    -1,    29,    -1,
        !          1444:     31,    -1,    33,    34,    -1,    -1,    -1,    -1,    -1,    40,
        !          1445:     -1,    -1,    43,    -1,    -1,    -1,    -1,    48,    49,    50,
        !          1446:     -1,    -1,    -1,    54,    55,    -1,    -1,    -1,    59,    60,
        !          1447:     -1,    -1,    -1,    64,    -1,    66,    -1,    -1,    -1,    -1,
        !          1448:     71,    -1,    -1,    -1,    75,    -1,    -1,    -1,    79,    80,
        !          1449:     -1,    -1,    83,     3,     4,     5,     6,     7,     8,     9,
        !          1450:     -1,    11,    12,    13,    14,    15,    -1,    17,    18,    19,
1.1.1.7   root     1451:     20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
1.1.1.8 ! root     1452:     -1,    31,    -1,    33,    34,    -1,    -1,    -1,    -1,    -1,
        !          1453:     40,    -1,    -1,    43,    -1,    -1,    -1,    -1,    48,    49,
        !          1454:     50,    -1,    -1,    -1,    54,    55,    -1,    -1,    -1,    59,
        !          1455:     60,    -1,    -1,    -1,    64,    -1,    66,    67,    -1,    -1,
        !          1456:     -1,    71,    72,    -1,    -1,    75,    -1,    77,    -1,    79,
        !          1457:     80,    -1,    82,     3,     4,    -1,    -1,    -1,     8,     9,
        !          1458:     -1,    11,    -1,    -1,    -1,    15,    -1,    17,    18,    19,
        !          1459:     20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
        !          1460:     -1,    31,    -1,    33,    34,    -1,    -1,    -1,    -1,    -1,
        !          1461:     40,    -1,    -1,    43,    -1,    -1,    -1,    -1,    48,    49,
        !          1462:     50,    -1,    -1,    -1,    54,    55,    -1,     3,    -1,    59,
        !          1463:     60,    -1,     8,     9,    64,    11,    66,    67,    -1,    -1,
        !          1464:     -1,    71,    72,    -1,    -1,    75,    -1,    77,    -1,    79,
        !          1465:     80,    -1,    82,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1466:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1467:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1468:     -1,    -1,    -1,    59,    60,    -1,    -1,    -1,    64,    -1,
        !          1469:     66,    -1,    -1,    -1,    -1,    71,    -1,    -1,    -1,    75,
        !          1470:     -1,    -1,    -1,    79,    80,    -1,    82,     3,     4,    -1,
        !          1471:      6,     7,    -1,    -1,    -1,    11,    12,    13,    14,    15,
        !          1472:     16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
        !          1473:     26,    27,    28,    29,    -1,     3,     4,    -1,     6,     7,
        !          1474:      8,     9,    38,    11,    12,    13,    14,    44,    45,    46,
        !          1475:     47,    48,    49,    50,    51,    52,    -1,    -1,    -1,    -1,
        !          1476:     28,    29,    -1,    31,    -1,    33,    34,    -1,    -1,    -1,
        !          1477:     -1,    -1,    40,    -1,    -1,    43,    72,    -1,    -1,    -1,
        !          1478:     48,    49,    50,    -1,    -1,    81,    54,    55,    -1,     3,
        !          1479:     -1,    59,    60,    -1,     8,     9,    64,    11,    66,    67,
        !          1480:     -1,    -1,    -1,    71,    72,    -1,    -1,    75,    -1,    -1,
        !          1481:     -1,    79,    80,    -1,    -1,    29,    -1,    31,    -1,    33,
        !          1482:     34,    -1,    -1,    -1,    -1,    -1,    40,    -1,    -1,    43,
        !          1483:     -1,    -1,    -1,    -1,    48,    49,    50,    -1,    -1,    -1,
        !          1484:     54,    55,    -1,     3,    -1,    59,    60,    -1,     8,     9,
        !          1485:     64,    11,    66,    67,    -1,    -1,    -1,    71,    -1,    -1,
        !          1486:     -1,    75,    -1,    -1,    -1,    79,    80,    -1,    -1,    29,
        !          1487:     -1,    31,    -1,    33,    34,    -1,    -1,    -1,    -1,    -1,
        !          1488:     40,    -1,    -1,    43,    -1,    -1,    -1,    -1,    48,    49,
        !          1489:     50,    -1,    -1,    -1,    54,    55,    -1,     3,    -1,    59,
        !          1490:     60,    -1,     8,     9,    64,    11,    66,    -1,    -1,    -1,
        !          1491:     -1,    71,    -1,    -1,    -1,    75,    -1,    77,    -1,    79,
        !          1492:     80,    -1,    -1,    29,    -1,    31,    -1,    33,    34,    -1,
        !          1493:     -1,    -1,    -1,    -1,    40,    -1,    -1,    43,    -1,    -1,
        !          1494:     -1,    -1,    48,    49,    50,    -1,    -1,    -1,    54,    55,
        !          1495:     -1,     3,    -1,    59,    60,    -1,     8,     9,    64,    11,
        !          1496:     66,    -1,    -1,    -1,    -1,    71,    -1,    -1,    -1,    75,
        !          1497:     -1,    -1,    -1,    79,    80,    -1,    -1,    29,    -1,    31,
        !          1498:     -1,    33,    34,    -1,    -1,    -1,    -1,    -1,    40,    -1,
        !          1499:     -1,    43,    -1,    -1,    -1,    -1,    48,    49,    50,    -1,
        !          1500:     -1,    -1,    54,    55,    -1,     3,    -1,    59,    60,    -1,
        !          1501:      8,     9,    64,    11,    66,    -1,    -1,    -1,    -1,    71,
        !          1502:     -1,    -1,    -1,    75,    -1,    -1,    -1,    79,    80,    -1,
        !          1503:     -1,    29,    -1,    31,    -1,    33,    34,    -1,    -1,    -1,
        !          1504:     -1,    -1,    40,    -1,    -1,    43,    -1,    -1,    -1,    -1,
        !          1505:     48,    49,    50,    -1,    -1,    -1,    54,    55,    -1,     3,
        !          1506:     -1,    59,    60,    -1,     8,     9,    64,    11,    66,    -1,
        !          1507:     -1,    -1,    -1,    71,    -1,    -1,    -1,    75,    -1,    -1,
        !          1508:     -1,    79,    80,    -1,    -1,    29,    -1,    31,    -1,    33,
        !          1509:     34,    -1,    -1,    -1,    -1,    -1,    40,    -1,    -1,    43,
        !          1510:     -1,    -1,    -1,    -1,    48,    49,    50,    -1,    -1,    -1,
        !          1511:     54,    55,    -1,    -1,    -1,    59,    60,    -1,    -1,    -1,
        !          1512:     64,    -1,    66,    -1,    -1,    -1,    -1,    71,    -1,    -1,
        !          1513:     -1,    75,    -1,    -1,     1,    79,    80,     4,    -1,     6,
        !          1514:      7,    -1,    -1,    -1,    -1,    12,    13,    14,    -1,    -1,
        !          1515:     -1,     1,    -1,    -1,     4,    -1,     6,     7,    -1,    -1,
1.1.1.7   root     1516:     -1,    28,    12,    13,    14,    -1,    -1,    -1,    -1,    -1,
1.1.1.8 ! root     1517:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    28,    -1,
        !          1518:     -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,     3,     4,
        !          1519:      5,     6,     7,    -1,    -1,    -1,    -1,    12,    13,    14,
        !          1520:     67,    68,    69,    70,    -1,    72,    -1,    -1,    -1,    -1,
        !          1521:     77,    78,    27,    28,    -1,    30,    -1,    67,    68,    69,
        !          1522:     70,    -1,    72,    -1,    -1,    -1,    -1,    77,    78,    -1,
        !          1523:     -1,    -1,    -1,    48,    49,    50,    -1,    -1,    -1,    -1,
        !          1524:     -1,    -1,    -1,    -1,    59,    -1,    61,    62,    63,    -1,
        !          1525:     -1,    -1,    67,    -1,    -1,    -1,    71,    72,    73,    74,
        !          1526:     -1,     1,    77,     3,     4,     5,     6,     7,    -1,    -1,
        !          1527:     -1,    -1,    12,    13,    14,    -1,    -1,    -1,    -1,    -1,
        !          1528:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    28,     1,
        !          1529:     30,     3,     4,     5,     6,     7,    -1,    -1,    -1,    -1,
        !          1530:     12,    13,    14,    -1,    -1,    -1,    -1,    -1,    48,    49,
        !          1531:     50,    -1,    -1,    -1,    -1,    -1,    28,    -1,    30,    59,
        !          1532:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,    -1,
        !          1533:     -1,    -1,    72,    -1,    -1,    -1,    -1,    77,    50,     1,
        !          1534:     -1,     3,     4,     5,     6,     7,    -1,    59,    10,    -1,
        !          1535:     12,    13,    14,    -1,    -1,    67,    -1,    -1,     1,    -1,
        !          1536:     72,     4,     5,     6,     7,    77,    28,    10,    -1,    12,
        !          1537:     13,    14,     4,    -1,     6,     7,    -1,    -1,    -1,    -1,
        !          1538:     12,    13,    14,    -1,    -1,    28,    -1,    -1,    -1,     4,
        !          1539:      5,     6,     7,    -1,    -1,    -1,    28,    12,    13,    14,
        !          1540:     -1,    -1,    -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,
        !          1541:     72,    -1,    -1,    28,    76,    -1,    -1,     4,     5,     6,
        !          1542:      7,    -1,    -1,    -1,    67,    12,    13,    14,    -1,    72,
        !          1543:     -1,    -1,    -1,    76,    -1,    67,    -1,    -1,    -1,    -1,
        !          1544:     72,    28,    -1,    -1,    -1,    77,    78,    -1,    -1,    -1,
        !          1545:     -1,    -1,    67,    -1,    -1,    -1,    -1,    72,     4,     5,
        !          1546:      6,     7,    77,    -1,    -1,    -1,    12,    13,    14,     4,
        !          1547:      5,     6,     7,    -1,    -1,    -1,    -1,    12,    13,    14,
        !          1548:     67,    -1,    28,    -1,    -1,    72,    -1,    -1,     3,     4,
        !          1549:     77,     6,     7,    28,    -1,    -1,    11,    12,    13,    14,
        !          1550:     15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
        !          1551:     25,    26,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
        !          1552:     -1,    67,    -1,    38,    -1,    -1,    72,    -1,    -1,    -1,
        !          1553:     -1,    77,    67,    -1,    -1,    -1,    -1,    72,    -1,    -1,
        !          1554:     -1,    -1,    77,    -1,    59,    -1,    -1,    -1,    -1,    -1,
        !          1555:      3,     4,    -1,     6,     7,    -1,    -1,    72,    11,    12,
        !          1556:     13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
        !          1557:     23,    24,    25,    26,    27,    28,    29,    -1,     3,     4,
        !          1558:     -1,     6,     7,    -1,    -1,    38,    11,    12,    13,    14,
        !          1559:     15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
        !          1560:     25,    26,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
        !          1561:     -1,    -1,    -1,    38,     3,     4,    -1,     6,     7,    72,
        !          1562:     -1,    -1,    11,    12,    13,    14,    15,    16,    17,    18,
        !          1563:     19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
        !          1564:     29,    -1,     4,     5,     6,     7,    -1,    72,    10,    38,
        !          1565:     12,    13,    14,     4,     5,     6,     7,    -1,    -1,    10,
        !          1566:     -1,    12,    13,    14,    -1,    -1,    28,    -1,    -1,    -1,
        !          1567:      4,     5,     6,     7,    -1,    -1,    -1,    28,    12,    13,
        !          1568:     14,    -1,    -1,    72,    -1,    -1,    -1,     4,     5,     6,
        !          1569:      7,    -1,    -1,    -1,    28,    12,    13,    14,     4,    -1,
        !          1570:      6,     7,    -1,    -1,    -1,    67,    12,    13,    14,    -1,
        !          1571:     72,    28,    -1,    -1,    -1,     4,    67,     6,     7,    -1,
        !          1572:     -1,    72,    28,    12,    13,    14,    -1,    -1,    -1,    -1,
        !          1573:     -1,    -1,    -1,    67,    -1,    -1,    -1,    -1,    72,    28,
        !          1574:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1575:     67,    -1,    -1,    -1,    -1,    72,    -1,    -1,    -1,    10,
        !          1576:     -1,    67,    -1,    -1,    -1,    -1,    72,    -1,    -1,    -1,
        !          1577:     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    67,    -1,
        !          1578:     -1,    -1,    -1,    72,    35,    36,    37,    38,    39,    40,
        !          1579:     41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
        !          1580:     51,    52,    30,    -1,    -1,    -1,    -1,    35,    36,    37,
        !          1581:     -1,    39,    40,    41,    42,    43,    44,    45,    46,    47,
        !          1582:     48,    49,    50,    51,    52,    35,    36,    37,    38,    39,
        !          1583:     40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
        !          1584:     50,    51,    52,    35,    36,    37,    -1,    39,    40,    41,
1.1.1.7   root     1585:     42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
1.1.1.8 ! root     1586:     52
1.1       root     1587: };
                   1588: /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
1.1.1.6   root     1589: #line 3 "/usr/local/lib/bison.simple"
1.1       root     1590: 
                   1591: /* Skeleton output parser for bison,
                   1592:    Copyright (C) 1984, 1989, 1990 Bob Corbett and Richard Stallman
                   1593: 
                   1594:    This program is free software; you can redistribute it and/or modify
                   1595:    it under the terms of the GNU General Public License as published by
                   1596:    the Free Software Foundation; either version 1, or (at your option)
                   1597:    any later version.
                   1598: 
                   1599:    This program is distributed in the hope that it will be useful,
                   1600:    but WITHOUT ANY WARRANTY; without even the implied warranty of
                   1601:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                   1602:    GNU General Public License for more details.
                   1603: 
                   1604:    You should have received a copy of the GNU General Public License
                   1605:    along with this program; if not, write to the Free Software
                   1606:    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
                   1607: 
                   1608: 
                   1609: #ifndef alloca
                   1610: #ifdef __GNUC__
                   1611: #define alloca __builtin_alloca
                   1612: #else /* not GNU C.  */
1.1.1.6   root     1613: #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
1.1       root     1614: #include <alloca.h>
                   1615: #else /* not sparc */
                   1616: #if defined (MSDOS) && !defined (__TURBOC__)
                   1617: #include <malloc.h>
                   1618: #else /* not MSDOS, or __TURBOC__ */
                   1619: #if defined(_AIX)
                   1620: #include <malloc.h>
                   1621:  #pragma alloca
1.1.1.6   root     1622: #else /* not MSDOS, __TURBOC__, or _AIX */
                   1623: #ifdef __hpux
                   1624: #ifdef __cplusplus
                   1625: extern "C" {
                   1626: void *alloca (unsigned int);
                   1627: };
                   1628: #else /* not __cplusplus */
                   1629: void *alloca ();
                   1630: #endif /* not __cplusplus */
                   1631: #endif /* __hpux */
1.1       root     1632: #endif /* not _AIX */
                   1633: #endif /* not MSDOS, or __TURBOC__ */
                   1634: #endif /* not sparc.  */
                   1635: #endif /* not GNU C.  */
                   1636: #endif /* alloca not defined.  */
                   1637: 
                   1638: /* This is the parser code that is written into each bison parser
                   1639:   when the %semantic_parser declaration is not specified in the grammar.
                   1640:   It was written by Richard Stallman by simplifying the hairy parser
                   1641:   used when %semantic_parser is specified.  */
                   1642: 
                   1643: /* Note: there must be only one dollar sign in this file.
                   1644:    It is replaced by the list of actions, each action
                   1645:    as one case of the switch.  */
                   1646: 
                   1647: #define yyerrok                (yyerrstatus = 0)
                   1648: #define yyclearin      (yychar = YYEMPTY)
                   1649: #define YYEMPTY                -2
                   1650: #define YYEOF          0
                   1651: #define YYACCEPT       return(0)
                   1652: #define YYABORT        return(1)
                   1653: #define YYERROR                goto yyerrlab1
                   1654: /* Like YYERROR except do call yyerror.
                   1655:    This remains here temporarily to ease the
                   1656:    transition to the new meaning of YYERROR, for GCC.
                   1657:    Once GCC version 2 has supplanted version 1, this can go.  */
                   1658: #define YYFAIL         goto yyerrlab
                   1659: #define YYRECOVERING()  (!!yyerrstatus)
                   1660: #define YYBACKUP(token, value) \
                   1661: do                                                             \
                   1662:   if (yychar == YYEMPTY && yylen == 1)                         \
                   1663:     { yychar = (token), yylval = (value);                      \
                   1664:       yychar1 = YYTRANSLATE (yychar);                          \
                   1665:       YYPOPSTACK;                                              \
                   1666:       goto yybackup;                                           \
                   1667:     }                                                          \
                   1668:   else                                                         \
                   1669:     { yyerror ("syntax error: cannot back up"); YYERROR; }     \
                   1670: while (0)
                   1671: 
                   1672: #define YYTERROR       1
                   1673: #define YYERRCODE      256
                   1674: 
                   1675: #ifndef YYPURE
                   1676: #define YYLEX          yylex()
                   1677: #endif
                   1678: 
                   1679: #ifdef YYPURE
                   1680: #ifdef YYLSP_NEEDED
                   1681: #define YYLEX          yylex(&yylval, &yylloc)
                   1682: #else
                   1683: #define YYLEX          yylex(&yylval)
                   1684: #endif
                   1685: #endif
                   1686: 
                   1687: /* If nonreentrant, generate the variables here */
                   1688: 
                   1689: #ifndef YYPURE
                   1690: 
                   1691: int    yychar;                 /*  the lookahead symbol                */
                   1692: YYSTYPE        yylval;                 /*  the semantic value of the           */
                   1693:                                /*  lookahead symbol                    */
                   1694: 
                   1695: #ifdef YYLSP_NEEDED
                   1696: YYLTYPE yylloc;                        /*  location data for the lookahead     */
                   1697:                                /*  symbol                              */
                   1698: #endif
                   1699: 
                   1700: int yynerrs;                   /*  number of parse errors so far       */
                   1701: #endif  /* not YYPURE */
                   1702: 
                   1703: #if YYDEBUG != 0
                   1704: int yydebug;                   /*  nonzero means print parse trace     */
                   1705: /* Since this is uninitialized, it does not stop multiple parsers
                   1706:    from coexisting.  */
                   1707: #endif
                   1708: 
                   1709: /*  YYINITDEPTH indicates the initial size of the parser's stacks      */
                   1710: 
                   1711: #ifndef        YYINITDEPTH
                   1712: #define YYINITDEPTH 200
                   1713: #endif
                   1714: 
                   1715: /*  YYMAXDEPTH is the maximum size the stacks can grow to
                   1716:     (effective only if the built-in stack extension method is used).  */
                   1717: 
                   1718: #if YYMAXDEPTH == 0
                   1719: #undef YYMAXDEPTH
                   1720: #endif
                   1721: 
                   1722: #ifndef YYMAXDEPTH
                   1723: #define YYMAXDEPTH 10000
                   1724: #endif
1.1.1.6   root     1725: 
                   1726: /* Prevent warning if -Wstrict-prototypes.  */
                   1727: #ifdef __GNUC__
                   1728: int yyparse (void);
                   1729: #endif
1.1       root     1730: 
                   1731: #if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
                   1732: #define __yy_bcopy(FROM,TO,COUNT)      __builtin_memcpy(TO,FROM,COUNT)
                   1733: #else                          /* not GNU C or C++ */
                   1734: #ifndef __cplusplus
                   1735: 
                   1736: /* This is the most reliable way to avoid incompatibilities
                   1737:    in available built-in functions on various systems.  */
                   1738: static void
                   1739: __yy_bcopy (from, to, count)
                   1740:      char *from;
                   1741:      char *to;
                   1742:      int count;
                   1743: {
                   1744:   register char *f = from;
                   1745:   register char *t = to;
                   1746:   register int i = count;
                   1747: 
                   1748:   while (i-- > 0)
                   1749:     *t++ = *f++;
                   1750: }
                   1751: 
                   1752: #else /* __cplusplus */
                   1753: 
                   1754: /* This is the most reliable way to avoid incompatibilities
                   1755:    in available built-in functions on various systems.  */
                   1756: static void
                   1757: __yy_bcopy (char *from, char *to, int count)
                   1758: {
                   1759:   register char *f = from;
                   1760:   register char *t = to;
                   1761:   register int i = count;
                   1762: 
                   1763:   while (i-- > 0)
                   1764:     *t++ = *f++;
                   1765: }
                   1766: 
                   1767: #endif
                   1768: #endif
                   1769: 
1.1.1.6   root     1770: #line 184 "/usr/local/lib/bison.simple"
                   1771: 
                   1772: /* The user can define YYPARSE_PARAM as the name of an argument to be passed
                   1773:    into yyparse.  The argument should have type void *.
                   1774:    It should actually point to an object.
                   1775:    Grammar actions can access the variable by casting it
                   1776:    to the proper pointer type.  */
                   1777: 
                   1778: #ifdef YYPARSE_PARAM
                   1779: #define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
                   1780: #else
                   1781: #define YYPARSE_PARAM
                   1782: #define YYPARSE_PARAM_DECL
                   1783: #endif
                   1784: 
1.1       root     1785: int
1.1.1.6   root     1786: yyparse(YYPARSE_PARAM)
                   1787:      YYPARSE_PARAM_DECL
1.1       root     1788: {
                   1789:   register int yystate;
                   1790:   register int yyn;
                   1791:   register short *yyssp;
                   1792:   register YYSTYPE *yyvsp;
                   1793:   int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
1.1.1.6   root     1794:   int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
1.1       root     1795: 
                   1796:   short        yyssa[YYINITDEPTH];     /*  the state stack                     */
                   1797:   YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
                   1798: 
                   1799:   short *yyss = yyssa;         /*  refer to the stacks thru separate pointers */
                   1800:   YYSTYPE *yyvs = yyvsa;       /*  to allow yyoverflow to reallocate them elsewhere */
                   1801: 
                   1802: #ifdef YYLSP_NEEDED
                   1803:   YYLTYPE yylsa[YYINITDEPTH];  /*  the location stack                  */
                   1804:   YYLTYPE *yyls = yylsa;
                   1805:   YYLTYPE *yylsp;
                   1806: 
1.1.1.3   root     1807: #define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
1.1       root     1808: #else
1.1.1.3   root     1809: #define YYPOPSTACK   (yyvsp--, yyssp--)
1.1       root     1810: #endif
                   1811: 
                   1812:   int yystacksize = YYINITDEPTH;
                   1813: 
                   1814: #ifdef YYPURE
                   1815:   int yychar;
                   1816:   YYSTYPE yylval;
                   1817:   int yynerrs;
                   1818: #ifdef YYLSP_NEEDED
                   1819:   YYLTYPE yylloc;
                   1820: #endif
                   1821: #endif
                   1822: 
                   1823:   YYSTYPE yyval;               /*  the variable used to return         */
                   1824:                                /*  semantic values from the action     */
                   1825:                                /*  routines                            */
                   1826: 
                   1827:   int yylen;
                   1828: 
                   1829: #if YYDEBUG != 0
                   1830:   if (yydebug)
                   1831:     fprintf(stderr, "Starting parse\n");
                   1832: #endif
                   1833: 
                   1834:   yystate = 0;
                   1835:   yyerrstatus = 0;
                   1836:   yynerrs = 0;
                   1837:   yychar = YYEMPTY;            /* Cause a token to be read.  */
                   1838: 
                   1839:   /* Initialize stack pointers.
                   1840:      Waste one element of value and location stack
1.1.1.6   root     1841:      so that they stay on the same level as the state stack.
                   1842:      The wasted elements are never initialized.  */
1.1       root     1843: 
                   1844:   yyssp = yyss - 1;
                   1845:   yyvsp = yyvs;
                   1846: #ifdef YYLSP_NEEDED
                   1847:   yylsp = yyls;
                   1848: #endif
                   1849: 
                   1850: /* Push a new state, which is found in  yystate  .  */
                   1851: /* In all cases, when you get here, the value and location stacks
                   1852:    have just been pushed. so pushing a state here evens the stacks.  */
                   1853: yynewstate:
                   1854: 
                   1855:   *++yyssp = yystate;
                   1856: 
                   1857:   if (yyssp >= yyss + yystacksize - 1)
                   1858:     {
                   1859:       /* Give user a chance to reallocate the stack */
                   1860:       /* Use copies of these so that the &'s don't force the real ones into memory. */
                   1861:       YYSTYPE *yyvs1 = yyvs;
                   1862:       short *yyss1 = yyss;
                   1863: #ifdef YYLSP_NEEDED
                   1864:       YYLTYPE *yyls1 = yyls;
                   1865: #endif
                   1866: 
                   1867:       /* Get the current used size of the three stacks, in elements.  */
                   1868:       int size = yyssp - yyss + 1;
                   1869: 
                   1870: #ifdef yyoverflow
                   1871:       /* Each stack pointer address is followed by the size of
                   1872:         the data in use in that stack, in bytes.  */
1.1.1.6   root     1873: #ifdef YYLSP_NEEDED
                   1874:       /* This used to be a conditional around just the two extra args,
                   1875:         but that might be undefined if yyoverflow is a macro.  */
1.1       root     1876:       yyoverflow("parser stack overflow",
                   1877:                 &yyss1, size * sizeof (*yyssp),
                   1878:                 &yyvs1, size * sizeof (*yyvsp),
                   1879:                 &yyls1, size * sizeof (*yylsp),
                   1880:                 &yystacksize);
1.1.1.6   root     1881: #else
                   1882:       yyoverflow("parser stack overflow",
                   1883:                 &yyss1, size * sizeof (*yyssp),
                   1884:                 &yyvs1, size * sizeof (*yyvsp),
                   1885:                 &yystacksize);
                   1886: #endif
1.1       root     1887: 
                   1888:       yyss = yyss1; yyvs = yyvs1;
                   1889: #ifdef YYLSP_NEEDED
                   1890:       yyls = yyls1;
                   1891: #endif
                   1892: #else /* no yyoverflow */
                   1893:       /* Extend the stack our own way.  */
                   1894:       if (yystacksize >= YYMAXDEPTH)
                   1895:        {
                   1896:          yyerror("parser stack overflow");
                   1897:          return 2;
                   1898:        }
                   1899:       yystacksize *= 2;
                   1900:       if (yystacksize > YYMAXDEPTH)
                   1901:        yystacksize = YYMAXDEPTH;
                   1902:       yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
                   1903:       __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
                   1904:       yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
                   1905:       __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
                   1906: #ifdef YYLSP_NEEDED
                   1907:       yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
                   1908:       __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
                   1909: #endif
                   1910: #endif /* no yyoverflow */
                   1911: 
                   1912:       yyssp = yyss + size - 1;
                   1913:       yyvsp = yyvs + size - 1;
                   1914: #ifdef YYLSP_NEEDED
                   1915:       yylsp = yyls + size - 1;
                   1916: #endif
                   1917: 
                   1918: #if YYDEBUG != 0
                   1919:       if (yydebug)
                   1920:        fprintf(stderr, "Stack size increased to %d\n", yystacksize);
                   1921: #endif
                   1922: 
                   1923:       if (yyssp >= yyss + yystacksize - 1)
                   1924:        YYABORT;
                   1925:     }
                   1926: 
                   1927: #if YYDEBUG != 0
                   1928:   if (yydebug)
                   1929:     fprintf(stderr, "Entering state %d\n", yystate);
                   1930: #endif
                   1931: 
1.1.1.6   root     1932:   goto yybackup;
1.1       root     1933:  yybackup:
                   1934: 
                   1935: /* Do appropriate processing given the current state.  */
                   1936: /* Read a lookahead token if we need one and don't already have one.  */
                   1937: /* yyresume: */
                   1938: 
                   1939:   /* First try to decide what to do without reference to lookahead token.  */
                   1940: 
                   1941:   yyn = yypact[yystate];
                   1942:   if (yyn == YYFLAG)
                   1943:     goto yydefault;
                   1944: 
                   1945:   /* Not known => get a lookahead token if don't already have one.  */
                   1946: 
                   1947:   /* yychar is either YYEMPTY or YYEOF
                   1948:      or a valid token in external form.  */
                   1949: 
                   1950:   if (yychar == YYEMPTY)
                   1951:     {
                   1952: #if YYDEBUG != 0
                   1953:       if (yydebug)
                   1954:        fprintf(stderr, "Reading a token: ");
                   1955: #endif
                   1956:       yychar = YYLEX;
                   1957:     }
                   1958: 
                   1959:   /* Convert token to internal form (in yychar1) for indexing tables with */
                   1960: 
                   1961:   if (yychar <= 0)             /* This means end of input. */
                   1962:     {
                   1963:       yychar1 = 0;
                   1964:       yychar = YYEOF;          /* Don't call YYLEX any more */
                   1965: 
                   1966: #if YYDEBUG != 0
                   1967:       if (yydebug)
                   1968:        fprintf(stderr, "Now at end of input.\n");
                   1969: #endif
                   1970:     }
                   1971:   else
                   1972:     {
                   1973:       yychar1 = YYTRANSLATE(yychar);
                   1974: 
                   1975: #if YYDEBUG != 0
                   1976:       if (yydebug)
                   1977:        {
                   1978:          fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
                   1979:          /* Give the individual parser a way to print the precise meaning
                   1980:             of a token, for further debugging info.  */
                   1981: #ifdef YYPRINT
                   1982:          YYPRINT (stderr, yychar, yylval);
                   1983: #endif
                   1984:          fprintf (stderr, ")\n");
                   1985:        }
                   1986: #endif
                   1987:     }
                   1988: 
                   1989:   yyn += yychar1;
                   1990:   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
                   1991:     goto yydefault;
                   1992: 
                   1993:   yyn = yytable[yyn];
                   1994: 
                   1995:   /* yyn is what to do for this token type in this state.
                   1996:      Negative => reduce, -yyn is rule number.
                   1997:      Positive => shift, yyn is new state.
                   1998:        New state is final state => don't bother to shift,
                   1999:        just return success.
                   2000:      0, or most negative number => error.  */
                   2001: 
                   2002:   if (yyn < 0)
                   2003:     {
                   2004:       if (yyn == YYFLAG)
                   2005:        goto yyerrlab;
                   2006:       yyn = -yyn;
                   2007:       goto yyreduce;
                   2008:     }
                   2009:   else if (yyn == 0)
                   2010:     goto yyerrlab;
                   2011: 
                   2012:   if (yyn == YYFINAL)
                   2013:     YYACCEPT;
                   2014: 
                   2015:   /* Shift the lookahead token.  */
                   2016: 
                   2017: #if YYDEBUG != 0
                   2018:   if (yydebug)
                   2019:     fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
                   2020: #endif
                   2021: 
                   2022:   /* Discard the token being shifted unless it is eof.  */
                   2023:   if (yychar != YYEOF)
                   2024:     yychar = YYEMPTY;
                   2025: 
                   2026:   *++yyvsp = yylval;
                   2027: #ifdef YYLSP_NEEDED
                   2028:   *++yylsp = yylloc;
                   2029: #endif
                   2030: 
                   2031:   /* count tokens shifted since error; after three, turn off error status.  */
                   2032:   if (yyerrstatus) yyerrstatus--;
                   2033: 
                   2034:   yystate = yyn;
                   2035:   goto yynewstate;
                   2036: 
                   2037: /* Do the default action for the current state.  */
                   2038: yydefault:
                   2039: 
                   2040:   yyn = yydefact[yystate];
                   2041:   if (yyn == 0)
                   2042:     goto yyerrlab;
                   2043: 
                   2044: /* Do a reduction.  yyn is the number of a rule to reduce with.  */
                   2045: yyreduce:
                   2046:   yylen = yyr2[yyn];
1.1.1.6   root     2047:   if (yylen > 0)
                   2048:     yyval = yyvsp[1-yylen]; /* implement default value of the action */
1.1       root     2049: 
                   2050: #if YYDEBUG != 0
                   2051:   if (yydebug)
                   2052:     {
                   2053:       int i;
                   2054: 
                   2055:       fprintf (stderr, "Reducing via rule %d (line %d), ",
                   2056:               yyn, yyrline[yyn]);
                   2057: 
1.1.1.6   root     2058:       /* Print the symbols being reduced, and their result.  */
1.1       root     2059:       for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
                   2060:        fprintf (stderr, "%s ", yytname[yyrhs[i]]);
                   2061:       fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
                   2062:     }
                   2063: #endif
                   2064: 
                   2065: 
                   2066:   switch (yyn) {
                   2067: 
                   2068: case 1:
1.1.1.8 ! root     2069: #line 233 "objc-parse.y"
1.1       root     2070: { if (pedantic)
                   2071:                    pedwarn ("ANSI C forbids an empty source file");
1.1.1.8 ! root     2072:                  finish_file ();
1.1.1.4   root     2073:                ;
1.1       root     2074:     break;}
                   2075: case 2:
1.1.1.8 ! root     2076: #line 238 "objc-parse.y"
1.1.1.4   root     2077: {
1.1.1.5   root     2078:                  /* In case there were missing closebraces,
                   2079:                     get us back to the global binding level.  */
                   2080:                  while (! global_bindings_p ())
                   2081:                    poplevel (0, 0, 0);
1.1.1.8 ! root     2082:                  finish_file ();
1.1.1.4   root     2083:                ;
1.1       root     2084:     break;}
                   2085: case 3:
1.1.1.8 ! root     2086: #line 252 "objc-parse.y"
1.1       root     2087: {yyval.ttype = NULL_TREE; ;
                   2088:     break;}
                   2089: case 5:
1.1.1.8 ! root     2090: #line 253 "objc-parse.y"
1.1       root     2091: {yyval.ttype = NULL_TREE; ;
                   2092:     break;}
                   2093: case 10:
1.1.1.8 ! root     2094: #line 261 "objc-parse.y"
1.1.1.4   root     2095: { STRIP_NOPS (yyvsp[-2].ttype);
                   2096:                  if ((TREE_CODE (yyvsp[-2].ttype) == ADDR_EXPR
                   2097:                       && TREE_CODE (TREE_OPERAND (yyvsp[-2].ttype, 0)) == STRING_CST)
                   2098:                      || TREE_CODE (yyvsp[-2].ttype) == STRING_CST)
                   2099:                    assemble_asm (yyvsp[-2].ttype);
                   2100:                  else
                   2101:                    error ("argument of `asm' is not a constant string"); ;
1.1       root     2102:     break;}
                   2103: case 11:
1.1.1.8 ! root     2104: #line 272 "objc-parse.y"
1.1       root     2105: { if (pedantic)
                   2106:                    error ("ANSI C forbids data definition with no type or storage class");
                   2107:                  else if (!flag_traditional)
1.1.1.8 ! root     2108:                    warning ("data definition has no type or storage class"); 
        !          2109: 
        !          2110:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          2111:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2112:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2113:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2114:     break;}
                   2115: case 12:
1.1.1.8 ! root     2116: #line 282 "objc-parse.y"
        !          2117: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2118:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2119:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2120:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2121:     break;}
                   2122: case 13:
1.1.1.8 ! root     2123: #line 287 "objc-parse.y"
        !          2124: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2125:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2126:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2127:                  resume_momentary (yyvsp[-2].itype);  ;
1.1       root     2128:     break;}
                   2129: case 14:
1.1.1.8 ! root     2130: #line 292 "objc-parse.y"
1.1.1.4   root     2131: { pedwarn ("empty declaration"); ;
1.1       root     2132:     break;}
                   2133: case 15:
1.1.1.8 ! root     2134: #line 294 "objc-parse.y"
1.1       root     2135: { shadow_tag (yyvsp[-1].ttype); ;
                   2136:     break;}
                   2137: case 18:
1.1.1.8 ! root     2138: #line 298 "objc-parse.y"
1.1       root     2139: { if (pedantic)
                   2140:                    pedwarn ("ANSI C does not allow extra `;' outside of a function"); ;
                   2141:     break;}
                   2142: case 19:
1.1.1.8 ! root     2143: #line 304 "objc-parse.y"
        !          2144: { if (! start_function (yyvsp[-2].ttype, yyvsp[0].ttype, prefix_attributes,
        !          2145:                                        NULL_TREE, 0))
1.1       root     2146:                    YYERROR1;
                   2147:                  reinit_parse_for_function (); ;
                   2148:     break;}
                   2149: case 20:
1.1.1.8 ! root     2150: #line 309 "objc-parse.y"
1.1       root     2151: { store_parm_decls (); ;
                   2152:     break;}
                   2153: case 21:
1.1.1.8 ! root     2154: #line 311 "objc-parse.y"
        !          2155: { finish_function (0); 
        !          2156:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          2157:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2158:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2159:                  resume_momentary (yyvsp[-5].itype); ;
1.1       root     2160:     break;}
                   2161: case 22:
1.1.1.8 ! root     2162: #line 317 "objc-parse.y"
        !          2163: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2164:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2165:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2166:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2167:     break;}
                   2168: case 23:
1.1.1.8 ! root     2169: #line 322 "objc-parse.y"
        !          2170: { if (! start_function (yyvsp[-2].ttype, yyvsp[0].ttype, prefix_attributes,
        !          2171:                                        NULL_TREE, 0))
1.1       root     2172:                    YYERROR1;
                   2173:                  reinit_parse_for_function (); ;
                   2174:     break;}
                   2175: case 24:
1.1.1.8 ! root     2176: #line 327 "objc-parse.y"
1.1       root     2177: { store_parm_decls (); ;
                   2178:     break;}
                   2179: case 25:
1.1.1.8 ! root     2180: #line 329 "objc-parse.y"
        !          2181: { finish_function (0); 
        !          2182:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          2183:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2184:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2185:                  resume_momentary (yyvsp[-5].itype); ;
1.1       root     2186:     break;}
                   2187: case 26:
1.1.1.8 ! root     2188: #line 335 "objc-parse.y"
        !          2189: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2190:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2191:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2192:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2193:     break;}
                   2194: case 27:
1.1.1.8 ! root     2195: #line 340 "objc-parse.y"
        !          2196: { if (! start_function (NULL_TREE, yyvsp[0].ttype,
        !          2197:                                        prefix_attributes, NULL_TREE, 0))
1.1       root     2198:                    YYERROR1;
                   2199:                  reinit_parse_for_function (); ;
                   2200:     break;}
                   2201: case 28:
1.1.1.8 ! root     2202: #line 345 "objc-parse.y"
1.1       root     2203: { store_parm_decls (); ;
                   2204:     break;}
                   2205: case 29:
1.1.1.8 ! root     2206: #line 347 "objc-parse.y"
        !          2207: { finish_function (0); 
        !          2208:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          2209:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2210:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2211:                  resume_momentary (yyvsp[-5].itype); ;
1.1       root     2212:     break;}
                   2213: case 30:
1.1.1.8 ! root     2214: #line 353 "objc-parse.y"
        !          2215: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2216:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2217:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2218:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2219:     break;}
1.1.1.5   root     2220: case 35:
1.1.1.8 ! root     2221: #line 367 "objc-parse.y"
1.1       root     2222: { yyval.code = ADDR_EXPR; ;
                   2223:     break;}
1.1.1.5   root     2224: case 36:
1.1.1.8 ! root     2225: #line 369 "objc-parse.y"
1.1       root     2226: { yyval.code = NEGATE_EXPR; ;
                   2227:     break;}
1.1.1.5   root     2228: case 37:
1.1.1.8 ! root     2229: #line 371 "objc-parse.y"
1.1       root     2230: { yyval.code = CONVERT_EXPR; ;
                   2231:     break;}
1.1.1.5   root     2232: case 38:
1.1.1.8 ! root     2233: #line 373 "objc-parse.y"
1.1       root     2234: { yyval.code = PREINCREMENT_EXPR; ;
                   2235:     break;}
1.1.1.5   root     2236: case 39:
1.1.1.8 ! root     2237: #line 375 "objc-parse.y"
1.1       root     2238: { yyval.code = PREDECREMENT_EXPR; ;
                   2239:     break;}
1.1.1.5   root     2240: case 40:
1.1.1.8 ! root     2241: #line 377 "objc-parse.y"
1.1       root     2242: { yyval.code = BIT_NOT_EXPR; ;
                   2243:     break;}
1.1.1.5   root     2244: case 41:
1.1.1.8 ! root     2245: #line 379 "objc-parse.y"
1.1       root     2246: { yyval.code = TRUTH_NOT_EXPR; ;
                   2247:     break;}
1.1.1.5   root     2248: case 42:
1.1.1.8 ! root     2249: #line 383 "objc-parse.y"
1.1       root     2250: { yyval.ttype = build_compound_expr (yyvsp[0].ttype); ;
                   2251:     break;}
1.1.1.5   root     2252: case 43:
1.1.1.8 ! root     2253: #line 388 "objc-parse.y"
1.1       root     2254: { yyval.ttype = NULL_TREE; ;
                   2255:     break;}
1.1.1.5   root     2256: case 45:
1.1.1.8 ! root     2257: #line 394 "objc-parse.y"
1.1       root     2258: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   2259:     break;}
1.1.1.5   root     2260: case 46:
1.1.1.8 ! root     2261: #line 396 "objc-parse.y"
1.1       root     2262: { chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   2263:     break;}
1.1.1.5   root     2264: case 48:
1.1.1.8 ! root     2265: #line 402 "objc-parse.y"
1.1       root     2266: { yyval.ttype = build_indirect_ref (yyvsp[0].ttype, "unary *"); ;
                   2267:     break;}
1.1.1.5   root     2268: case 49:
1.1.1.8 ! root     2269: #line 405 "objc-parse.y"
1.1       root     2270: { yyvsp[0].itype = pedantic;
                   2271:                  pedantic = 0; ;
                   2272:     break;}
1.1.1.5   root     2273: case 50:
1.1.1.8 ! root     2274: #line 408 "objc-parse.y"
1.1       root     2275: { yyval.ttype = yyvsp[0].ttype;
                   2276:                  pedantic = yyvsp[-2].itype; ;
                   2277:     break;}
                   2278: case 51:
1.1.1.8 ! root     2279: #line 411 "objc-parse.y"
1.1.1.5   root     2280: { yyval.ttype = build_unary_op (yyvsp[-1].code, yyvsp[0].ttype, 0);
                   2281:                  overflow_warning (yyval.ttype); ;
1.1       root     2282:     break;}
                   2283: case 52:
1.1.1.8 ! root     2284: #line 415 "objc-parse.y"
1.1.1.5   root     2285: { tree label = lookup_label (yyvsp[0].ttype);
1.1.1.8 ! root     2286:                  if (pedantic)
        !          2287:                    pedwarn ("ANSI C forbids `&&'");
1.1.1.5   root     2288:                  if (label == 0)
                   2289:                    yyval.ttype = null_pointer_node;
                   2290:                  else
                   2291:                    {
                   2292:                      TREE_USED (label) = 1;
                   2293:                      yyval.ttype = build1 (ADDR_EXPR, ptr_type_node, label);
                   2294:                      TREE_CONSTANT (yyval.ttype) = 1;
                   2295:                    }
                   2296:                ;
                   2297:     break;}
                   2298: case 53:
1.1.1.8 ! root     2299: #line 443 "objc-parse.y"
1.1       root     2300: { if (TREE_CODE (yyvsp[0].ttype) == COMPONENT_REF
                   2301:                      && DECL_BIT_FIELD (TREE_OPERAND (yyvsp[0].ttype, 1)))
                   2302:                    error ("`sizeof' applied to a bit-field");
                   2303:                  yyval.ttype = c_sizeof (TREE_TYPE (yyvsp[0].ttype)); ;
                   2304:     break;}
1.1.1.5   root     2305: case 54:
1.1.1.8 ! root     2306: #line 448 "objc-parse.y"
1.1       root     2307: { yyval.ttype = c_sizeof (groktypename (yyvsp[-1].ttype)); ;
                   2308:     break;}
1.1.1.5   root     2309: case 55:
1.1.1.8 ! root     2310: #line 450 "objc-parse.y"
1.1       root     2311: { yyval.ttype = c_alignof_expr (yyvsp[0].ttype); ;
                   2312:     break;}
1.1.1.5   root     2313: case 56:
1.1.1.8 ! root     2314: #line 452 "objc-parse.y"
1.1       root     2315: { yyval.ttype = c_alignof (groktypename (yyvsp[-1].ttype)); ;
                   2316:     break;}
                   2317: case 57:
1.1.1.8 ! root     2318: #line 454 "objc-parse.y"
1.1.1.5   root     2319: { yyval.ttype = build_unary_op (REALPART_EXPR, yyvsp[0].ttype, 0); ;
                   2320:     break;}
                   2321: case 58:
1.1.1.8 ! root     2322: #line 456 "objc-parse.y"
1.1.1.5   root     2323: { yyval.ttype = build_unary_op (IMAGPART_EXPR, yyvsp[0].ttype, 0); ;
                   2324:     break;}
                   2325: case 60:
1.1.1.8 ! root     2326: #line 462 "objc-parse.y"
1.1       root     2327: { tree type = groktypename (yyvsp[-2].ttype);
                   2328:                  yyval.ttype = build_c_cast (type, yyvsp[0].ttype); ;
                   2329:     break;}
1.1.1.5   root     2330: case 61:
1.1.1.8 ! root     2331: #line 465 "objc-parse.y"
1.1.1.6   root     2332: { start_init (NULL_TREE, NULL, 0);
                   2333:                  yyvsp[-2].ttype = groktypename (yyvsp[-2].ttype);
                   2334:                  really_start_incremental_init (yyvsp[-2].ttype); ;
                   2335:     break;}
                   2336: case 62:
1.1.1.8 ! root     2337: #line 469 "objc-parse.y"
1.1.1.6   root     2338: { char *name;
                   2339:                  tree result = pop_init_level (0);
                   2340:                  tree type = yyvsp[-5].ttype;
                   2341:                  finish_init ();
                   2342: 
1.1       root     2343:                  if (pedantic)
                   2344:                    pedwarn ("ANSI C forbids constructor expressions");
1.1.1.4   root     2345:                  if (TYPE_NAME (type) != 0)
                   2346:                    {
                   2347:                      if (TREE_CODE (TYPE_NAME (type)) == IDENTIFIER_NODE)
                   2348:                        name = IDENTIFIER_POINTER (TYPE_NAME (type));
                   2349:                      else
                   2350:                        name = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (type)));
                   2351:                    }
                   2352:                  else
                   2353:                    name = "";
1.1.1.6   root     2354:                  yyval.ttype = result;
1.1       root     2355:                  if (TREE_CODE (type) == ARRAY_TYPE && TYPE_SIZE (type) == 0)
                   2356:                    {
                   2357:                      int failure = complete_array_type (type, yyval.ttype, 1);
                   2358:                      if (failure)
                   2359:                        abort ();
                   2360:                    }
                   2361:                ;
                   2362:     break;}
                   2363: case 64:
1.1.1.8 ! root     2364: #line 498 "objc-parse.y"
1.1       root     2365: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2366:     break;}
                   2367: case 65:
1.1.1.8 ! root     2368: #line 500 "objc-parse.y"
1.1       root     2369: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2370:     break;}
                   2371: case 66:
1.1.1.8 ! root     2372: #line 502 "objc-parse.y"
1.1       root     2373: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2374:     break;}
                   2375: case 67:
1.1.1.8 ! root     2376: #line 504 "objc-parse.y"
1.1       root     2377: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2378:     break;}
                   2379: case 68:
1.1.1.8 ! root     2380: #line 506 "objc-parse.y"
1.1       root     2381: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2382:     break;}
                   2383: case 69:
1.1.1.8 ! root     2384: #line 508 "objc-parse.y"
1.1       root     2385: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2386:     break;}
                   2387: case 70:
1.1.1.8 ! root     2388: #line 510 "objc-parse.y"
1.1       root     2389: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2390:     break;}
                   2391: case 71:
1.1.1.8 ! root     2392: #line 512 "objc-parse.y"
1.1       root     2393: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2394:     break;}
                   2395: case 72:
1.1.1.8 ! root     2396: #line 514 "objc-parse.y"
1.1.1.5   root     2397: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     2398:     break;}
                   2399: case 73:
1.1.1.8 ! root     2400: #line 516 "objc-parse.y"
1.1.1.5   root     2401: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     2402:     break;}
                   2403: case 74:
1.1.1.8 ! root     2404: #line 518 "objc-parse.y"
1.1.1.5   root     2405: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     2406:     break;}
                   2407: case 75:
1.1.1.8 ! root     2408: #line 520 "objc-parse.y"
1.1.1.6   root     2409: { yyval.ttype = parser_build_binary_op (yyvsp[-1].code, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1.1.5   root     2410:     break;}
                   2411: case 76:
1.1.1.8 ! root     2412: #line 522 "objc-parse.y"
1.1.1.6   root     2413: { yyval.ttype = parser_build_binary_op (TRUTH_ANDIF_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1.1.5   root     2414:     break;}
                   2415: case 77:
1.1.1.8 ! root     2416: #line 524 "objc-parse.y"
1.1.1.6   root     2417: { yyval.ttype = parser_build_binary_op (TRUTH_ORIF_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1.1.5   root     2418:     break;}
                   2419: case 78:
1.1.1.8 ! root     2420: #line 526 "objc-parse.y"
1.1.1.6   root     2421: { yyval.ttype = build_conditional_expr (yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   2422:     break;}
                   2423: case 79:
1.1.1.8 ! root     2424: #line 528 "objc-parse.y"
1.1.1.4   root     2425: { yyval.ttype = build_modify_expr (yyvsp[-2].ttype, NOP_EXPR, yyvsp[0].ttype);
                   2426:                  C_SET_EXP_ORIGINAL_CODE (yyval.ttype, MODIFY_EXPR); ;
1.1       root     2427:     break;}
1.1.1.6   root     2428: case 80:
1.1.1.8 ! root     2429: #line 531 "objc-parse.y"
1.1.1.4   root     2430: { yyval.ttype = build_modify_expr (yyvsp[-2].ttype, yyvsp[-1].code, yyvsp[0].ttype);
1.1.1.5   root     2431:                  /* This inhibits warnings in truthvalue_conversion.  */
                   2432:                  C_SET_EXP_ORIGINAL_CODE (yyval.ttype, ERROR_MARK); ;
1.1       root     2433:     break;}
1.1.1.6   root     2434: case 81:
1.1.1.8 ! root     2435: #line 538 "objc-parse.y"
1.1       root     2436: {
                   2437:                  yyval.ttype = lastiddecl;
                   2438:                  if (!yyval.ttype || yyval.ttype == error_mark_node)
                   2439:                    {
                   2440:                      if (yychar == YYEMPTY)
                   2441:                        yychar = YYLEX;
                   2442:                      if (yychar == '(')
                   2443:                        {
1.1.1.5   root     2444:                          tree decl;
                   2445: 
1.1       root     2446:                          if (objc_receiver_context
                   2447:                              && ! (objc_receiver_context
                   2448:                                    && strcmp (IDENTIFIER_POINTER (yyvsp[0].ttype), "super")))
                   2449:                            /* we have a message to super */
                   2450:                            yyval.ttype = get_super_receiver ();
                   2451:                          else if (objc_method_context
1.1.1.5   root     2452:                                   && (decl = is_ivar (objc_ivar_chain, yyvsp[0].ttype)))
                   2453:                            {
                   2454:                              if (is_private (decl))
                   2455:                                yyval.ttype = error_mark_node;
                   2456:                              else
                   2457:                                yyval.ttype = build_ivar_reference (yyvsp[0].ttype);
                   2458:                            }
1.1       root     2459:                          else
                   2460:                            {
                   2461:                              /* Ordinary implicit function declaration.  */
                   2462:                              yyval.ttype = implicitly_declare (yyvsp[0].ttype);
                   2463:                              assemble_external (yyval.ttype);
                   2464:                              TREE_USED (yyval.ttype) = 1;
                   2465:                            }
                   2466:                        }
                   2467:                      else if (current_function_decl == 0)
                   2468:                        {
1.1.1.5   root     2469:                          error ("`%s' undeclared here (not in a function)",
1.1       root     2470:                                 IDENTIFIER_POINTER (yyvsp[0].ttype));
                   2471:                          yyval.ttype = error_mark_node;
                   2472:                        }
                   2473:                      else
                   2474:                        {
1.1.1.5   root     2475:                          tree decl;
                   2476: 
1.1       root     2477:                          if (objc_receiver_context
1.1.1.4   root     2478:                              && ! strcmp (IDENTIFIER_POINTER (yyvsp[0].ttype), "super"))
1.1       root     2479:                            /* we have a message to super */
                   2480:                            yyval.ttype = get_super_receiver ();
                   2481:                          else if (objc_method_context
1.1.1.5   root     2482:                                   && (decl = is_ivar (objc_ivar_chain, yyvsp[0].ttype)))
                   2483:                            {
                   2484:                              if (is_private (decl))
                   2485:                                yyval.ttype = error_mark_node;
                   2486:                              else
                   2487:                                yyval.ttype = build_ivar_reference (yyvsp[0].ttype);
                   2488:                            }
1.1       root     2489:                          else
                   2490:                            {
                   2491:                              if (IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype) != error_mark_node
                   2492:                                  || IDENTIFIER_ERROR_LOCUS (yyvsp[0].ttype) != current_function_decl)
                   2493:                                {
                   2494:                                  error ("`%s' undeclared (first use this function)",
                   2495:                                         IDENTIFIER_POINTER (yyvsp[0].ttype));
                   2496: 
                   2497:                                  if (! undeclared_variable_notice)
                   2498:                                    {
                   2499:                                      error ("(Each undeclared identifier is reported only once");
                   2500:                                      error ("for each function it appears in.)");
                   2501:                                      undeclared_variable_notice = 1;
                   2502:                                    }
                   2503:                                }
                   2504:                              yyval.ttype = error_mark_node;
                   2505:                              /* Prevent repeated error messages.  */
                   2506:                              IDENTIFIER_GLOBAL_VALUE (yyvsp[0].ttype) = error_mark_node;
                   2507:                              IDENTIFIER_ERROR_LOCUS (yyvsp[0].ttype) = current_function_decl;
1.1.1.4   root     2508:                            }
1.1       root     2509:                        }
                   2510:                    }
1.1.1.4   root     2511:                  else if (TREE_TYPE (yyval.ttype) == error_mark_node)
                   2512:                    yyval.ttype = error_mark_node;
                   2513:                  else if (C_DECL_ANTICIPATED (yyval.ttype))
1.1       root     2514:                    {
1.1.1.4   root     2515:                      /* The first time we see a build-in function used,
                   2516:                         if it has not been declared.  */
                   2517:                      C_DECL_ANTICIPATED (yyval.ttype) = 0;
                   2518:                      if (yychar == YYEMPTY)
                   2519:                        yychar = YYLEX;
                   2520:                      if (yychar == '(')
1.1       root     2521:                        {
1.1.1.4   root     2522:                          /* Omit the implicit declaration we
                   2523:                             would ordinarily do, so we don't lose
                   2524:                             the actual built in type.
                   2525:                             But print a diagnostic for the mismatch.  */
                   2526:                          if (objc_method_context
                   2527:                              && is_ivar (objc_ivar_chain, yyvsp[0].ttype))
                   2528:                            error ("Instance variable `%s' implicitly declared as function",
                   2529:                                   IDENTIFIER_POINTER (DECL_NAME (yyval.ttype)));
                   2530:                          else
                   2531:                            if (TREE_CODE (yyval.ttype) != FUNCTION_DECL)
                   2532:                              error ("`%s' implicitly declared as function",
                   2533:                                     IDENTIFIER_POINTER (DECL_NAME (yyval.ttype)));
                   2534:                          else if ((TYPE_MODE (TREE_TYPE (TREE_TYPE (yyval.ttype)))
                   2535:                                    != TYPE_MODE (integer_type_node))
                   2536:                                   && (TREE_TYPE (TREE_TYPE (yyval.ttype))
                   2537:                                       != void_type_node))
                   2538:                            pedwarn ("type mismatch in implicit declaration for built-in function `%s'",
                   2539:                                     IDENTIFIER_POINTER (DECL_NAME (yyval.ttype)));
                   2540:                          /* If it really returns void, change that to int.  */
                   2541:                          if (TREE_TYPE (TREE_TYPE (yyval.ttype)) == void_type_node)
                   2542:                            TREE_TYPE (yyval.ttype)
                   2543:                              = build_function_type (integer_type_node,
                   2544:                                                     TYPE_ARG_TYPES (TREE_TYPE (yyval.ttype)));
1.1       root     2545:                        }
1.1.1.4   root     2546:                      else
                   2547:                        pedwarn ("built-in function `%s' used without declaration",
                   2548:                                 IDENTIFIER_POINTER (DECL_NAME (yyval.ttype)));
                   2549: 
                   2550:                      /* Do what we would ordinarily do when a fn is used.  */
                   2551:                      assemble_external (yyval.ttype);
                   2552:                      TREE_USED (yyval.ttype) = 1;
                   2553:                    }
                   2554:                  else
                   2555:                    {
                   2556:                      assemble_external (yyval.ttype);
                   2557:                      TREE_USED (yyval.ttype) = 1;
1.1       root     2558:                      /* we have a definition - still check if iVariable */
                   2559: 
                   2560:                      if (!objc_receiver_context
                   2561:                          || (objc_receiver_context
                   2562:                              && strcmp (IDENTIFIER_POINTER (yyvsp[0].ttype), "super")))
                   2563:                         {
1.1.1.5   root     2564:                          tree decl;
                   2565: 
1.1       root     2566:                          if (objc_method_context
1.1.1.5   root     2567:                              && (decl = is_ivar (objc_ivar_chain, yyvsp[0].ttype)))
1.1       root     2568:                             {
                   2569:                               if (IDENTIFIER_LOCAL_VALUE (yyvsp[0].ttype))
                   2570:                                 warning ("local declaration of `%s' hides instance variable",
                   2571:                                         IDENTIFIER_POINTER (yyvsp[0].ttype));
                   2572:                               else
1.1.1.5   root     2573:                                {
                   2574:                                  if (is_private (decl))
                   2575:                                    yyval.ttype = error_mark_node;
                   2576:                                  else
                   2577:                                    yyval.ttype = build_ivar_reference (yyvsp[0].ttype);
                   2578:                                }
1.1       root     2579:                             }
                   2580:                        }
                   2581:                       else /* we have a message to super */
                   2582:                        yyval.ttype = get_super_receiver ();
                   2583:                    }
                   2584: 
                   2585:                  if (TREE_CODE (yyval.ttype) == CONST_DECL)
1.1.1.4   root     2586:                    {
                   2587:                      yyval.ttype = DECL_INITIAL (yyval.ttype);
                   2588:                      /* This is to prevent an enum whose value is 0
                   2589:                         from being considered a null pointer constant.  */
                   2590:                      yyval.ttype = build1 (NOP_EXPR, TREE_TYPE (yyval.ttype), yyval.ttype);
                   2591:                      TREE_CONSTANT (yyval.ttype) = 1;
                   2592:                    }
1.1       root     2593:                ;
                   2594:     break;}
1.1.1.6   root     2595: case 83:
1.1.1.8 ! root     2596: #line 698 "objc-parse.y"
1.1       root     2597: { yyval.ttype = combine_strings (yyvsp[0].ttype); ;
                   2598:     break;}
1.1.1.6   root     2599: case 84:
1.1.1.8 ! root     2600: #line 700 "objc-parse.y"
1.1       root     2601: { char class = TREE_CODE_CLASS (TREE_CODE (yyvsp[-1].ttype));
                   2602:                  if (class == 'e' || class == '1'
                   2603:                      || class == '2' || class == '<')
                   2604:                    C_SET_EXP_ORIGINAL_CODE (yyvsp[-1].ttype, ERROR_MARK);
                   2605:                  yyval.ttype = yyvsp[-1].ttype; ;
                   2606:     break;}
1.1.1.6   root     2607: case 85:
1.1.1.8 ! root     2608: #line 706 "objc-parse.y"
1.1       root     2609: { yyval.ttype = error_mark_node; ;
                   2610:     break;}
1.1.1.6   root     2611: case 86:
1.1.1.8 ! root     2612: #line 708 "objc-parse.y"
1.1       root     2613: { if (current_function_decl == 0)
                   2614:                    {
                   2615:                      error ("braced-group within expression allowed only inside a function");
                   2616:                      YYERROR;
                   2617:                    }
                   2618:                  /* We must force a BLOCK for this level
                   2619:                     so that, if it is not expanded later,
                   2620:                     there is a way to turn off the entire subtree of blocks
                   2621:                     that are contained in it.  */
                   2622:                  keep_next_level ();
1.1.1.5   root     2623:                  push_iterator_stack ();
1.1       root     2624:                  push_label_level ();
                   2625:                  yyval.ttype = expand_start_stmt_expr (); ;
                   2626:     break;}
1.1.1.6   root     2627: case 87:
1.1.1.8 ! root     2628: #line 722 "objc-parse.y"
1.1       root     2629: { tree rtl_exp;
                   2630:                  if (pedantic)
                   2631:                    pedwarn ("ANSI C forbids braced-groups within expressions");
1.1.1.5   root     2632:                  pop_iterator_stack ();
1.1       root     2633:                  pop_label_level ();
                   2634:                  rtl_exp = expand_end_stmt_expr (yyvsp[-2].ttype);
                   2635:                  /* The statements have side effects, so the group does.  */
                   2636:                  TREE_SIDE_EFFECTS (rtl_exp) = 1;
                   2637: 
1.1.1.6   root     2638:                  if (TREE_CODE (yyvsp[-1].ttype) == BLOCK)
                   2639:                    {
                   2640:                      /* Make a BIND_EXPR for the BLOCK already made.  */
                   2641:                      yyval.ttype = build (BIND_EXPR, TREE_TYPE (rtl_exp),
                   2642:                                  NULL_TREE, rtl_exp, yyvsp[-1].ttype);
                   2643:                      /* Remove the block from the tree at this point.
                   2644:                         It gets put back at the proper place
                   2645:                         when the BIND_EXPR is expanded.  */
                   2646:                      delete_block (yyvsp[-1].ttype);
                   2647:                    }
                   2648:                  else
                   2649:                    yyval.ttype = yyvsp[-1].ttype;
1.1       root     2650:                ;
                   2651:     break;}
1.1.1.6   root     2652: case 88:
1.1.1.8 ! root     2653: #line 745 "objc-parse.y"
1.1       root     2654: { yyval.ttype = build_function_call (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
                   2655:     break;}
1.1.1.6   root     2656: case 89:
1.1.1.8 ! root     2657: #line 747 "objc-parse.y"
1.1       root     2658: { yyval.ttype = build_array_ref (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
                   2659:     break;}
1.1.1.6   root     2660: case 90:
1.1.1.8 ! root     2661: #line 749 "objc-parse.y"
1.1       root     2662: {
                   2663:                   if (doing_objc_thang)
                   2664:                     {
                   2665:                      if (is_public (yyvsp[-2].ttype, yyvsp[0].ttype))
                   2666:                        yyval.ttype = build_component_ref (yyvsp[-2].ttype, yyvsp[0].ttype);
                   2667:                      else
                   2668:                        yyval.ttype = error_mark_node;
                   2669:                    }
                   2670:                   else
1.1.1.4   root     2671:                    yyval.ttype = build_component_ref (yyvsp[-2].ttype, yyvsp[0].ttype);
1.1       root     2672:                ;
                   2673:     break;}
1.1.1.6   root     2674: case 91:
1.1.1.8 ! root     2675: #line 761 "objc-parse.y"
1.1       root     2676: {
1.1.1.4   root     2677:                   tree expr = build_indirect_ref (yyvsp[-2].ttype, "->");
1.1       root     2678: 
                   2679:                   if (doing_objc_thang)
                   2680:                     {
1.1.1.4   root     2681:                      if (is_public (expr, yyvsp[0].ttype))
                   2682:                        yyval.ttype = build_component_ref (expr, yyvsp[0].ttype);
1.1       root     2683:                      else
                   2684:                        yyval.ttype = error_mark_node;
                   2685:                    }
                   2686:                   else
1.1.1.4   root     2687:                     yyval.ttype = build_component_ref (expr, yyvsp[0].ttype);
1.1       root     2688:                ;
                   2689:     break;}
1.1.1.6   root     2690: case 92:
1.1.1.8 ! root     2691: #line 775 "objc-parse.y"
1.1       root     2692: { yyval.ttype = build_unary_op (POSTINCREMENT_EXPR, yyvsp[-1].ttype, 0); ;
                   2693:     break;}
1.1.1.6   root     2694: case 93:
1.1.1.8 ! root     2695: #line 777 "objc-parse.y"
1.1       root     2696: { yyval.ttype = build_unary_op (POSTDECREMENT_EXPR, yyvsp[-1].ttype, 0); ;
                   2697:     break;}
1.1.1.6   root     2698: case 94:
1.1.1.8 ! root     2699: #line 779 "objc-parse.y"
1.1       root     2700: { yyval.ttype = build_message_expr (yyvsp[0].ttype); ;
                   2701:     break;}
1.1.1.6   root     2702: case 95:
1.1.1.8 ! root     2703: #line 781 "objc-parse.y"
1.1       root     2704: { yyval.ttype = build_selector_expr (yyvsp[0].ttype); ;
                   2705:     break;}
1.1.1.6   root     2706: case 96:
1.1.1.8 ! root     2707: #line 783 "objc-parse.y"
1.1.1.5   root     2708: { yyval.ttype = build_protocol_expr (yyvsp[0].ttype); ;
                   2709:     break;}
1.1.1.6   root     2710: case 97:
1.1.1.8 ! root     2711: #line 785 "objc-parse.y"
1.1       root     2712: { yyval.ttype = build_encode_expr (yyvsp[0].ttype); ;
                   2713:     break;}
1.1.1.6   root     2714: case 98:
1.1.1.8 ! root     2715: #line 787 "objc-parse.y"
1.1.1.5   root     2716: { yyval.ttype = build_objc_string_object (yyvsp[0].ttype); ;
                   2717:     break;}
1.1.1.6   root     2718: case 100:
1.1.1.8 ! root     2719: #line 794 "objc-parse.y"
1.1       root     2720: { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   2721:     break;}
1.1.1.6   root     2722: case 102:
1.1.1.8 ! root     2723: #line 802 "objc-parse.y"
1.1.1.5   root     2724: { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   2725:     break;}
1.1.1.6   root     2726: case 105:
1.1.1.8 ! root     2727: #line 810 "objc-parse.y"
1.1       root     2728: { c_mark_varargs ();
                   2729:                  if (pedantic)
                   2730:                    pedwarn ("ANSI C does not permit use of `varargs.h'"); ;
                   2731:     break;}
1.1.1.6   root     2732: case 106:
1.1.1.8 ! root     2733: #line 820 "objc-parse.y"
1.1       root     2734: { ;
                   2735:     break;}
1.1.1.6   root     2736: case 111:
1.1.1.8 ! root     2737: #line 832 "objc-parse.y"
1.1.1.4   root     2738: { current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     2739:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1.1.4   root     2740:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   2741:                  resume_momentary (yyvsp[-2].itype); ;
                   2742:     break;}
1.1.1.6   root     2743: case 112:
1.1.1.8 ! root     2744: #line 837 "objc-parse.y"
        !          2745: { current_declspecs = TREE_VALUE (declspec_stack);     
        !          2746:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1.1.4   root     2747:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   2748:                  resume_momentary (yyvsp[-2].itype); ;
                   2749:     break;}
1.1.1.6   root     2750: case 113:
1.1.1.8 ! root     2751: #line 842 "objc-parse.y"
1.1.1.4   root     2752: { shadow_tag_warned (yyvsp[-1].ttype, 1);
                   2753:                  pedwarn ("empty declaration"); ;
                   2754:     break;}
1.1.1.6   root     2755: case 114:
1.1.1.8 ! root     2756: #line 845 "objc-parse.y"
1.1.1.4   root     2757: { pedwarn ("empty declaration"); ;
                   2758:     break;}
1.1.1.6   root     2759: case 115:
1.1.1.8 ! root     2760: #line 854 "objc-parse.y"
1.1.1.4   root     2761: { ;
                   2762:     break;}
1.1.1.6   root     2763: case 120:
1.1.1.8 ! root     2764: #line 869 "objc-parse.y"
1.1       root     2765: { yyval.itype = suspend_momentary ();
                   2766:                  pending_xref_error ();
1.1.1.8 ! root     2767:                  declspec_stack = tree_cons (prefix_attributes,
        !          2768:                                              current_declspecs,
1.1       root     2769:                                              declspec_stack);
1.1.1.8 ! root     2770:                  current_declspecs = yyvsp[0].ttype; 
        !          2771:                  prefix_attributes = NULL_TREE; ;
1.1       root     2772:     break;}
1.1.1.6   root     2773: case 121:
1.1.1.8 ! root     2774: #line 879 "objc-parse.y"
        !          2775: { prefix_attributes = chainon (prefix_attributes, yyvsp[0].ttype); ;
1.1       root     2776:     break;}
1.1.1.6   root     2777: case 122:
1.1.1.8 ! root     2778: #line 884 "objc-parse.y"
1.1       root     2779: { current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     2780:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1       root     2781:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   2782:                  resume_momentary (yyvsp[-2].itype); ;
                   2783:     break;}
1.1.1.6   root     2784: case 123:
1.1.1.8 ! root     2785: #line 889 "objc-parse.y"
1.1       root     2786: { current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     2787:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1       root     2788:                  declspec_stack = TREE_CHAIN (declspec_stack);
1.1.1.8 ! root     2789:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     2790:     break;}
1.1.1.6   root     2791: case 124:
1.1.1.8 ! root     2792: #line 894 "objc-parse.y"
1.1       root     2793: { current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     2794:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1       root     2795:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   2796:                  resume_momentary (yyvsp[-1].itype); ;
                   2797:     break;}
1.1.1.6   root     2798: case 125:
1.1.1.8 ! root     2799: #line 899 "objc-parse.y"
        !          2800: { current_declspecs = TREE_VALUE (declspec_stack);
        !          2801:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          2802:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          2803:                  resume_momentary (yyvsp[-1].itype); ;
1.1       root     2804:     break;}
1.1.1.6   root     2805: case 126:
1.1.1.8 ! root     2806: #line 904 "objc-parse.y"
        !          2807: { shadow_tag (yyvsp[-1].ttype); ;
1.1       root     2808:     break;}
1.1.1.6   root     2809: case 127:
1.1.1.8 ! root     2810: #line 906 "objc-parse.y"
        !          2811: { pedwarn ("empty declaration"); ;
1.1       root     2812:     break;}
1.1.1.6   root     2813: case 128:
1.1.1.8 ! root     2814: #line 915 "objc-parse.y"
        !          2815: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype); ;
1.1       root     2816:     break;}
1.1.1.6   root     2817: case 129:
1.1.1.8 ! root     2818: #line 917 "objc-parse.y"
        !          2819: { yyval.ttype = chainon (yyvsp[0].ttype, tree_cons (NULL_TREE, yyvsp[-1].ttype, yyvsp[-2].ttype)); ;
1.1       root     2820:     break;}
1.1.1.6   root     2821: case 130:
1.1.1.8 ! root     2822: #line 921 "objc-parse.y"
        !          2823: { yyval.ttype = NULL_TREE; ;
1.1       root     2824:     break;}
1.1.1.6   root     2825: case 131:
1.1.1.8 ! root     2826: #line 923 "objc-parse.y"
        !          2827: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
        !          2828:     break;}
        !          2829: case 132:
        !          2830: #line 925 "objc-parse.y"
1.1.1.4   root     2831: { if (extra_warnings)
                   2832:                    warning ("`%s' is not at beginning of declaration",
                   2833:                             IDENTIFIER_POINTER (yyvsp[0].ttype));
                   2834:                  yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
                   2835:     break;}
1.1.1.8 ! root     2836: case 133:
        !          2837: #line 937 "objc-parse.y"
1.1.1.4   root     2838: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE);
                   2839:                  TREE_STATIC (yyval.ttype) = 1; ;
1.1       root     2840:     break;}
1.1.1.8 ! root     2841: case 134:
        !          2842: #line 940 "objc-parse.y"
1.1       root     2843: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
                   2844:     break;}
1.1.1.8 ! root     2845: case 135:
        !          2846: #line 942 "objc-parse.y"
1.1.1.4   root     2847: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype);
                   2848:                  TREE_STATIC (yyval.ttype) = 1; ;
1.1       root     2849:     break;}
1.1.1.8 ! root     2850: case 136:
        !          2851: #line 945 "objc-parse.y"
1.1.1.4   root     2852: { if (extra_warnings && TREE_STATIC (yyvsp[-1].ttype))
                   2853:                    warning ("`%s' is not at beginning of declaration",
                   2854:                             IDENTIFIER_POINTER (yyvsp[0].ttype));
                   2855:                  yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype);
                   2856:                  TREE_STATIC (yyval.ttype) = TREE_STATIC (yyvsp[-1].ttype); ;
1.1       root     2857:     break;}
1.1.1.8 ! root     2858: case 137:
        !          2859: #line 959 "objc-parse.y"
1.1       root     2860: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   2861:     break;}
1.1.1.8 ! root     2862: case 138:
        !          2863: #line 961 "objc-parse.y"
1.1       root     2864: { yyval.ttype = chainon (yyvsp[0].ttype, tree_cons (NULL_TREE, yyvsp[-1].ttype, yyvsp[-2].ttype)); ;
                   2865:     break;}
1.1.1.8 ! root     2866: case 139:
        !          2867: #line 965 "objc-parse.y"
1.1       root     2868: { yyval.ttype = NULL_TREE; ;
                   2869:     break;}
1.1.1.8 ! root     2870: case 140:
        !          2871: #line 967 "objc-parse.y"
1.1       root     2872: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
                   2873:     break;}
1.1.1.8 ! root     2874: case 143:
        !          2875: #line 977 "objc-parse.y"
1.1.1.4   root     2876: { /* For a typedef name, record the meaning, not the name.
                   2877:                     In case of `foo foo, bar;'.  */
                   2878:                  yyval.ttype = lookup_name (yyvsp[0].ttype); ;
                   2879:     break;}
1.1.1.8 ! root     2880: case 144:
        !          2881: #line 981 "objc-parse.y"
1.1.1.5   root     2882: { yyval.ttype = get_static_reference (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   2883:     break;}
1.1.1.8 ! root     2884: case 145:
        !          2885: #line 983 "objc-parse.y"
1.1.1.5   root     2886: { yyval.ttype = get_object_reference (yyvsp[0].ttype); ;
1.1       root     2887:     break;}
1.1.1.8 ! root     2888: case 146:
        !          2889: #line 985 "objc-parse.y"
1.1.1.4   root     2890: { yyval.ttype = TREE_TYPE (yyvsp[-1].ttype); ;
1.1       root     2891:     break;}
1.1.1.8 ! root     2892: case 147:
        !          2893: #line 987 "objc-parse.y"
1.1.1.4   root     2894: { yyval.ttype = groktypename (yyvsp[-1].ttype); ;
1.1       root     2895:     break;}
1.1.1.8 ! root     2896: case 155:
        !          2897: #line 1009 "objc-parse.y"
1.1       root     2898: { yyval.ttype = NULL_TREE; ;
                   2899:     break;}
1.1.1.8 ! root     2900: case 156:
        !          2901: #line 1011 "objc-parse.y"
1.1       root     2902: { if (TREE_CHAIN (yyvsp[-1].ttype)) yyvsp[-1].ttype = combine_strings (yyvsp[-1].ttype);
                   2903:                  yyval.ttype = yyvsp[-1].ttype;
                   2904:                ;
                   2905:     break;}
1.1.1.8 ! root     2906: case 157:
        !          2907: #line 1018 "objc-parse.y"
        !          2908: { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1,
        !          2909:                                          yyvsp[-1].ttype, prefix_attributes);
1.1.1.6   root     2910:                  start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ;
1.1       root     2911:     break;}
1.1.1.8 ! root     2912: case 158:
        !          2913: #line 1023 "objc-parse.y"
1.1.1.6   root     2914: { finish_init ();
                   2915:                  finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;
                   2916:     break;}
1.1.1.5   root     2917: case 159:
1.1.1.8 ! root     2918: #line 1026 "objc-parse.y"
        !          2919: { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0,
        !          2920:                                       yyvsp[0].ttype, prefix_attributes);
        !          2921:                  finish_decl (d, NULL_TREE, yyvsp[-1].ttype); 
        !          2922:                 ;
1.1       root     2923:     break;}
1.1.1.5   root     2924: case 160:
1.1.1.8 ! root     2925: #line 1034 "objc-parse.y"
        !          2926: { yyval.ttype = start_decl (yyvsp[-3].ttype, current_declspecs, 1,
        !          2927:                                          yyvsp[-1].ttype, prefix_attributes);
        !          2928:                  start_init (yyval.ttype, yyvsp[-2].ttype, global_bindings_p ()); ;
1.1.1.6   root     2929:     break;}
                   2930: case 161:
1.1.1.8 ! root     2931: #line 1039 "objc-parse.y"
        !          2932: { finish_init ();
        !          2933:                  decl_attributes (yyvsp[-1].ttype, yyvsp[-3].ttype, prefix_attributes);
        !          2934:                  finish_decl (yyvsp[-1].ttype, yyvsp[0].ttype, yyvsp[-4].ttype); ;
1.1       root     2935:     break;}
1.1.1.6   root     2936: case 162:
1.1.1.8 ! root     2937: #line 1043 "objc-parse.y"
        !          2938: { tree d = start_decl (yyvsp[-2].ttype, current_declspecs, 0,
        !          2939:                                       yyvsp[0].ttype, prefix_attributes);
        !          2940:                  finish_decl (d, NULL_TREE, yyvsp[-1].ttype); ;
1.1       root     2941:     break;}
1.1.1.6   root     2942: case 163:
1.1.1.8 ! root     2943: #line 1051 "objc-parse.y"
        !          2944: { yyval.ttype = NULL_TREE; ;
1.1       root     2945:     break;}
1.1.1.6   root     2946: case 164:
1.1.1.8 ! root     2947: #line 1053 "objc-parse.y"
1.1.1.7   root     2948: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     2949:     break;}
1.1.1.6   root     2950: case 165:
1.1.1.8 ! root     2951: #line 1058 "objc-parse.y"
        !          2952: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     2953:     break;}
1.1.1.6   root     2954: case 166:
1.1.1.8 ! root     2955: #line 1060 "objc-parse.y"
        !          2956: { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype); ;
1.1.1.7   root     2957:     break;}
                   2958: case 167:
1.1.1.8 ! root     2959: #line 1065 "objc-parse.y"
        !          2960: { yyval.ttype = yyvsp[-2].ttype; ;
1.1       root     2961:     break;}
1.1.1.6   root     2962: case 168:
1.1.1.8 ! root     2963: #line 1070 "objc-parse.y"
        !          2964: { yyval.ttype = yyvsp[0].ttype; ;
1.1.1.4   root     2965:     break;}
1.1.1.6   root     2966: case 169:
1.1.1.8 ! root     2967: #line 1072 "objc-parse.y"
        !          2968: { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     2969:     break;}
1.1.1.6   root     2970: case 170:
1.1.1.8 ! root     2971: #line 1077 "objc-parse.y"
        !          2972: { yyval.ttype = NULL_TREE; ;
1.1.1.7   root     2973:     break;}
                   2974: case 171:
1.1.1.8 ! root     2975: #line 1079 "objc-parse.y"
        !          2976: { yyval.ttype = build_tree_list (yyvsp[0].ttype, NULL_TREE); ;
1.1       root     2977:     break;}
1.1.1.5   root     2978: case 172:
1.1.1.8 ! root     2979: #line 1081 "objc-parse.y"
        !          2980: { yyval.ttype = build_tree_list (yyvsp[-3].ttype, build_tree_list (NULL_TREE, yyvsp[-1].ttype)); ;
1.1.1.7   root     2981:     break;}
                   2982: case 173:
1.1.1.8 ! root     2983: #line 1083 "objc-parse.y"
        !          2984: { yyval.ttype = build_tree_list (yyvsp[-5].ttype, tree_cons (NULL_TREE, yyvsp[-3].ttype, yyvsp[-1].ttype)); ;
1.1.1.7   root     2985:     break;}
1.1.1.8 ! root     2986: case 174:
        !          2987: #line 1085 "objc-parse.y"
        !          2988: { yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
        !          2989:     break;}
        !          2990: case 180:
        !          2991: #line 1103 "objc-parse.y"
1.1.1.6   root     2992: { really_start_incremental_init (NULL_TREE);
                   2993:                  /* Note that the call to clear_momentary
                   2994:                     is in process_init_element.  */
                   2995:                  push_momentary (); ;
1.1       root     2996:     break;}
1.1.1.8 ! root     2997: case 181:
        !          2998: #line 1108 "objc-parse.y"
1.1.1.6   root     2999: { yyval.ttype = pop_init_level (0);
1.1.1.7   root     3000:                  if (yyval.ttype == error_mark_node
                   3001:                      && ! (yychar == STRING || yychar == CONSTANT))
1.1.1.6   root     3002:                    pop_momentary ();
                   3003:                  else
                   3004:                    pop_momentary_nofree (); ;
1.1       root     3005:     break;}
1.1.1.8 ! root     3006: case 182:
        !          3007: #line 1116 "objc-parse.y"
1.1.1.6   root     3008: { yyval.ttype = error_mark_node; ;
1.1       root     3009:     break;}
1.1.1.8 ! root     3010: case 183:
        !          3011: #line 1122 "objc-parse.y"
1.1.1.6   root     3012: { if (pedantic)
                   3013:                    pedwarn ("ANSI C forbids empty initializer braces"); ;
                   3014:     break;}
1.1.1.8 ! root     3015: case 187:
        !          3016: #line 1136 "objc-parse.y"
1.1.1.6   root     3017: { process_init_element (yyvsp[0].ttype); ;
                   3018:     break;}
1.1.1.8 ! root     3019: case 188:
        !          3020: #line 1138 "objc-parse.y"
1.1.1.6   root     3021: { push_init_level (0); ;
                   3022:     break;}
1.1.1.8 ! root     3023: case 189:
        !          3024: #line 1140 "objc-parse.y"
1.1.1.6   root     3025: { process_init_element (pop_init_level (0)); ;
1.1       root     3026:     break;}
1.1.1.8 ! root     3027: case 191:
        !          3028: #line 1146 "objc-parse.y"
1.1.1.6   root     3029: { set_init_label (yyvsp[-1].ttype); ;
                   3030:     break;}
1.1.1.8 ! root     3031: case 193:
        !          3032: #line 1149 "objc-parse.y"
1.1.1.6   root     3033: { set_init_label (yyvsp[-1].ttype); ;
1.1       root     3034:     break;}
1.1.1.8 ! root     3035: case 195:
        !          3036: #line 1155 "objc-parse.y"
1.1       root     3037: { push_c_function_context ();
1.1.1.8 ! root     3038:                  if (! start_function (current_declspecs, yyvsp[0].ttype,
        !          3039:                                        prefix_attributes, NULL_TREE, 1))
1.1       root     3040:                    {
                   3041:                      pop_c_function_context ();
                   3042:                      YYERROR1;
                   3043:                    }
1.1.1.8 ! root     3044:                  reinit_parse_for_function (); ;
1.1       root     3045:     break;}
1.1.1.8 ! root     3046: case 196:
        !          3047: #line 1164 "objc-parse.y"
        !          3048: { store_parm_decls (); ;
        !          3049:     break;}
        !          3050: case 197:
        !          3051: #line 1172 "objc-parse.y"
1.1       root     3052: { finish_function (1);
                   3053:                  pop_c_function_context (); ;
                   3054:     break;}
1.1.1.8 ! root     3055: case 198:
        !          3056: #line 1178 "objc-parse.y"
1.1       root     3057: { push_c_function_context ();
1.1.1.8 ! root     3058:                  if (! start_function (current_declspecs, yyvsp[0].ttype,
        !          3059:                                        prefix_attributes, NULL_TREE, 1))
1.1       root     3060:                    {
                   3061:                      pop_c_function_context ();
                   3062:                      YYERROR1;
                   3063:                    }
1.1.1.8 ! root     3064:                  reinit_parse_for_function (); ;
1.1       root     3065:     break;}
1.1.1.8 ! root     3066: case 199:
        !          3067: #line 1187 "objc-parse.y"
        !          3068: { store_parm_decls (); ;
        !          3069:     break;}
        !          3070: case 200:
        !          3071: #line 1195 "objc-parse.y"
1.1       root     3072: { finish_function (1);
                   3073:                  pop_c_function_context (); ;
                   3074:     break;}
1.1.1.8 ! root     3075: case 203:
        !          3076: #line 1211 "objc-parse.y"
1.1       root     3077: { yyval.ttype = yyvsp[-1].ttype; ;
                   3078:     break;}
1.1.1.8 ! root     3079: case 204:
        !          3080: #line 1213 "objc-parse.y"
1.1       root     3081: { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;
                   3082:     break;}
1.1.1.8 ! root     3083: case 205:
        !          3084: #line 1218 "objc-parse.y"
1.1       root     3085: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
                   3086:     break;}
1.1.1.8 ! root     3087: case 206:
        !          3088: #line 1220 "objc-parse.y"
1.1       root     3089: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-2].ttype, NULL_TREE); ;
                   3090:     break;}
1.1.1.7   root     3091: case 207:
1.1.1.8 ! root     3092: #line 1222 "objc-parse.y"
        !          3093: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
1.1       root     3094:     break;}
1.1.1.7   root     3095: case 208:
1.1.1.8 ! root     3096: #line 1224 "objc-parse.y"
        !          3097: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     3098:     break;}
1.1.1.8 ! root     3099: case 211:
        !          3100: #line 1236 "objc-parse.y"
        !          3101: { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;
1.1       root     3102:     break;}
1.1.1.7   root     3103: case 212:
1.1.1.8 ! root     3104: #line 1241 "objc-parse.y"
        !          3105: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
1.1       root     3106:     break;}
1.1.1.7   root     3107: case 213:
1.1.1.8 ! root     3108: #line 1243 "objc-parse.y"
        !          3109: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-2].ttype, NULL_TREE); ;
1.1       root     3110:     break;}
1.1.1.7   root     3111: case 214:
1.1.1.8 ! root     3112: #line 1245 "objc-parse.y"
1.1       root     3113: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   3114:     break;}
1.1.1.7   root     3115: case 215:
1.1.1.8 ! root     3116: #line 1247 "objc-parse.y"
        !          3117: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     3118:     break;}
1.1.1.8 ! root     3119: case 217:
        !          3120: #line 1256 "objc-parse.y"
        !          3121: { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;
1.1       root     3122:     break;}
1.1.1.7   root     3123: case 218:
1.1.1.8 ! root     3124: #line 1261 "objc-parse.y"
        !          3125: { yyval.ttype = yyvsp[-1].ttype; ;
1.1       root     3126:     break;}
1.1.1.7   root     3127: case 219:
1.1.1.8 ! root     3128: #line 1263 "objc-parse.y"
        !          3129: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
1.1       root     3130:     break;}
1.1.1.7   root     3131: case 220:
1.1.1.8 ! root     3132: #line 1265 "objc-parse.y"
        !          3133: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
1.1       root     3134:     break;}
1.1.1.7   root     3135: case 221:
1.1.1.8 ! root     3136: #line 1267 "objc-parse.y"
        !          3137: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-2].ttype, NULL_TREE); ;
1.1       root     3138:     break;}
1.1.1.7   root     3139: case 222:
1.1.1.8 ! root     3140: #line 1269 "objc-parse.y"
        !          3141: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     3142:     break;}
1.1.1.7   root     3143: case 224:
1.1.1.8 ! root     3144: #line 1275 "objc-parse.y"
        !          3145: { yyval.ttype = start_struct (RECORD_TYPE, yyvsp[-1].ttype);
        !          3146:                  /* Start scope of tag before parsing components.  */
        !          3147:                ;
1.1       root     3148:     break;}
1.1.1.7   root     3149: case 225:
1.1.1.8 ! root     3150: #line 1279 "objc-parse.y"
        !          3151: { yyval.ttype = finish_struct (yyvsp[-3].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     3152:     break;}
1.1.1.7   root     3153: case 226:
1.1.1.8 ! root     3154: #line 1281 "objc-parse.y"
        !          3155: { yyval.ttype = finish_struct (start_struct (RECORD_TYPE, NULL_TREE),
        !          3156:                                      yyvsp[-2].ttype, yyvsp[0].ttype);
        !          3157:                ;
1.1       root     3158:     break;}
1.1.1.7   root     3159: case 227:
1.1.1.8 ! root     3160: #line 1285 "objc-parse.y"
        !          3161: { yyval.ttype = xref_tag (RECORD_TYPE, yyvsp[0].ttype); ;
1.1       root     3162:     break;}
1.1.1.7   root     3163: case 228:
1.1.1.8 ! root     3164: #line 1287 "objc-parse.y"
        !          3165: { yyval.ttype = start_struct (UNION_TYPE, yyvsp[-1].ttype); ;
1.1       root     3166:     break;}
1.1.1.7   root     3167: case 229:
1.1.1.8 ! root     3168: #line 1289 "objc-parse.y"
        !          3169: { yyval.ttype = finish_struct (yyvsp[-3].ttype, yyvsp[-2].ttype, yyvsp[0].ttype); ;
1.1       root     3170:     break;}
1.1.1.7   root     3171: case 230:
1.1.1.8 ! root     3172: #line 1291 "objc-parse.y"
        !          3173: { yyval.ttype = finish_struct (start_struct (UNION_TYPE, NULL_TREE),
        !          3174:                                      yyvsp[-2].ttype, yyvsp[0].ttype);
        !          3175:                ;
        !          3176:     break;}
        !          3177: case 231:
        !          3178: #line 1295 "objc-parse.y"
        !          3179: { yyval.ttype = xref_tag (UNION_TYPE, yyvsp[0].ttype); ;
        !          3180:     break;}
        !          3181: case 232:
        !          3182: #line 1297 "objc-parse.y"
        !          3183: { yyvsp[0].itype = suspend_momentary ();
        !          3184:                  yyval.ttype = start_enum (yyvsp[-1].ttype); ;
        !          3185:     break;}
        !          3186: case 233:
        !          3187: #line 1300 "objc-parse.y"
        !          3188: { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), yyvsp[0].ttype);
        !          3189:                  resume_momentary (yyvsp[-5].itype); ;
1.1       root     3190:     break;}
1.1.1.7   root     3191: case 234:
1.1.1.8 ! root     3192: #line 1303 "objc-parse.y"
        !          3193: { yyvsp[0].itype = suspend_momentary ();
        !          3194:                  yyval.ttype = start_enum (NULL_TREE); ;
1.1       root     3195:     break;}
1.1.1.7   root     3196: case 235:
1.1.1.8 ! root     3197: #line 1306 "objc-parse.y"
        !          3198: { yyval.ttype = finish_enum (yyvsp[-4].ttype, nreverse (yyvsp[-3].ttype), yyvsp[0].ttype);
        !          3199:                  resume_momentary (yyvsp[-5].itype); ;
1.1       root     3200:     break;}
1.1.1.7   root     3201: case 236:
1.1.1.8 ! root     3202: #line 1309 "objc-parse.y"
        !          3203: { yyval.ttype = xref_tag (ENUMERAL_TYPE, yyvsp[0].ttype); ;
        !          3204:     break;}
        !          3205: case 240:
        !          3206: #line 1320 "objc-parse.y"
        !          3207: { if (pedantic) pedwarn ("comma at end of enumerator list"); ;
        !          3208:     break;}
        !          3209: case 241:
        !          3210: #line 1325 "objc-parse.y"
        !          3211: { yyval.ttype = yyvsp[0].ttype; ;
        !          3212:     break;}
        !          3213: case 242:
        !          3214: #line 1327 "objc-parse.y"
1.1       root     3215: { yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype);
1.1.1.4   root     3216:                  pedwarn ("no semicolon at end of struct or union"); ;
1.1       root     3217:     break;}
1.1.1.8 ! root     3218: case 243:
        !          3219: #line 1332 "objc-parse.y"
1.1       root     3220: { yyval.ttype = NULL_TREE; ;
                   3221:     break;}
1.1.1.8 ! root     3222: case 244:
        !          3223: #line 1334 "objc-parse.y"
1.1       root     3224: { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[-1].ttype); ;
                   3225:     break;}
1.1.1.8 ! root     3226: case 245:
        !          3227: #line 1336 "objc-parse.y"
1.1       root     3228: { if (pedantic)
1.1.1.4   root     3229:                    pedwarn ("extra semicolon in struct or union specified"); ;
1.1       root     3230:     break;}
1.1.1.8 ! root     3231: case 246:
        !          3232: #line 1340 "objc-parse.y"
1.1.1.5   root     3233: {
                   3234:                  tree interface = lookup_interface (yyvsp[-1].ttype);
                   3235: 
                   3236:                  if (interface)
                   3237:                    yyval.ttype = get_class_ivars (interface);
                   3238:                  else
                   3239:                    {
                   3240:                      error ("Cannot find interface declaration for `%s'",
                   3241:                             IDENTIFIER_POINTER (yyvsp[-1].ttype));
                   3242:                      yyval.ttype = NULL_TREE;
                   3243:                    }
                   3244:                ;
1.1       root     3245:     break;}
1.1.1.8 ! root     3246: case 247:
        !          3247: #line 1365 "objc-parse.y"
1.1       root     3248: { yyval.ttype = yyvsp[0].ttype;
                   3249:                  current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     3250:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1       root     3251:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   3252:                  resume_momentary (yyvsp[-1].itype); ;
                   3253:     break;}
1.1.1.8 ! root     3254: case 248:
        !          3255: #line 1371 "objc-parse.y"
1.1       root     3256: { if (pedantic)
                   3257:                    pedwarn ("ANSI C forbids member declarations with no members");
                   3258:                  shadow_tag(yyvsp[0].ttype);
                   3259:                  yyval.ttype = NULL_TREE; ;
                   3260:     break;}
1.1.1.8 ! root     3261: case 249:
        !          3262: #line 1376 "objc-parse.y"
1.1       root     3263: { yyval.ttype = yyvsp[0].ttype;
                   3264:                  current_declspecs = TREE_VALUE (declspec_stack);
1.1.1.8 ! root     3265:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
1.1       root     3266:                  declspec_stack = TREE_CHAIN (declspec_stack);
                   3267:                  resume_momentary (yyvsp[-1].itype); ;
                   3268:     break;}
1.1.1.8 ! root     3269: case 250:
        !          3270: #line 1382 "objc-parse.y"
1.1       root     3271: { if (pedantic)
                   3272:                    pedwarn ("ANSI C forbids member declarations with no members");
                   3273:                  shadow_tag(yyvsp[0].ttype);
                   3274:                  yyval.ttype = NULL_TREE; ;
                   3275:     break;}
1.1.1.8 ! root     3276: case 251:
        !          3277: #line 1387 "objc-parse.y"
1.1       root     3278: { yyval.ttype = NULL_TREE; ;
                   3279:     break;}
1.1.1.8 ! root     3280: case 253:
        !          3281: #line 1393 "objc-parse.y"
1.1       root     3282: { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   3283:     break;}
1.1.1.8 ! root     3284: case 254:
        !          3285: #line 1398 "objc-parse.y"
1.1       root     3286: { yyval.ttype = grokfield (yyvsp[-3].filename, yyvsp[-2].lineno, yyvsp[-1].ttype, current_declspecs, NULL_TREE);
1.1.1.8 ! root     3287:                  decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
1.1       root     3288:     break;}
1.1.1.8 ! root     3289: case 255:
        !          3290: #line 1402 "objc-parse.y"
1.1       root     3291: { yyval.ttype = grokfield (yyvsp[-5].filename, yyvsp[-4].lineno, yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype);
1.1.1.8 ! root     3292:                  decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
1.1       root     3293:     break;}
1.1.1.8 ! root     3294: case 256:
        !          3295: #line 1405 "objc-parse.y"
1.1.1.5   root     3296: { yyval.ttype = grokfield (yyvsp[-4].filename, yyvsp[-3].lineno, NULL_TREE, current_declspecs, yyvsp[-1].ttype);
1.1.1.8 ! root     3297:                  decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ;
1.1       root     3298:     break;}
1.1.1.8 ! root     3299: case 258:
        !          3300: #line 1417 "objc-parse.y"
        !          3301: { if (yyvsp[-2].ttype == error_mark_node)
        !          3302:                    yyval.ttype = yyvsp[-2].ttype;
        !          3303:                  else
        !          3304:                    yyval.ttype = chainon (yyvsp[0].ttype, yyvsp[-2].ttype); ;
1.1       root     3305:     break;}
1.1.1.8 ! root     3306: case 259:
        !          3307: #line 1422 "objc-parse.y"
1.1.1.7   root     3308: { yyval.ttype = error_mark_node; ;
                   3309:     break;}
1.1.1.8 ! root     3310: case 260:
        !          3311: #line 1428 "objc-parse.y"
1.1       root     3312: { yyval.ttype = build_enumerator (yyvsp[0].ttype, NULL_TREE); ;
                   3313:     break;}
1.1.1.8 ! root     3314: case 261:
        !          3315: #line 1430 "objc-parse.y"
1.1       root     3316: { yyval.ttype = build_enumerator (yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   3317:     break;}
1.1.1.8 ! root     3318: case 262:
        !          3319: #line 1435 "objc-parse.y"
1.1       root     3320: { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   3321:     break;}
1.1.1.8 ! root     3322: case 263:
        !          3323: #line 1437 "objc-parse.y"
1.1       root     3324: { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   3325:     break;}
1.1.1.8 ! root     3326: case 264:
        !          3327: #line 1442 "objc-parse.y"
1.1       root     3328: { yyval.ttype = NULL_TREE; ;
                   3329:     break;}
1.1.1.8 ! root     3330: case 266:
        !          3331: #line 1448 "objc-parse.y"
1.1       root     3332: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
                   3333:     break;}
1.1.1.8 ! root     3334: case 267:
        !          3335: #line 1450 "objc-parse.y"
1.1       root     3336: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
                   3337:     break;}
1.1.1.8 ! root     3338: case 268:
        !          3339: #line 1455 "objc-parse.y"
1.1       root     3340: { yyval.ttype = NULL_TREE; ;
                   3341:     break;}
1.1.1.8 ! root     3342: case 269:
        !          3343: #line 1457 "objc-parse.y"
1.1       root     3344: { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ;
                   3345:     break;}
1.1.1.8 ! root     3346: case 270:
        !          3347: #line 1462 "objc-parse.y"
1.1       root     3348: { yyval.ttype = yyvsp[-1].ttype; ;
                   3349:     break;}
1.1.1.8 ! root     3350: case 271:
        !          3351: #line 1465 "objc-parse.y"
1.1       root     3352: { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ;
                   3353:     break;}
1.1.1.8 ! root     3354: case 272:
        !          3355: #line 1467 "objc-parse.y"
1.1       root     3356: { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ;
                   3357:     break;}
1.1.1.8 ! root     3358: case 273:
        !          3359: #line 1469 "objc-parse.y"
1.1       root     3360: { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ;
                   3361:     break;}
1.1.1.8 ! root     3362: case 274:
        !          3363: #line 1471 "objc-parse.y"
1.1       root     3364: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-3].ttype, yyvsp[-1].ttype); ;
                   3365:     break;}
1.1.1.8 ! root     3366: case 275:
        !          3367: #line 1473 "objc-parse.y"
1.1       root     3368: { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-2].ttype, NULL_TREE); ;
                   3369:     break;}
1.1.1.8 ! root     3370: case 276:
        !          3371: #line 1475 "objc-parse.y"
1.1       root     3372: { yyval.ttype = build_nt (CALL_EXPR, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ;
                   3373:     break;}
1.1.1.8 ! root     3374: case 277:
        !          3375: #line 1477 "objc-parse.y"
1.1       root     3376: { yyval.ttype = build_nt (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ;
                   3377:     break;}
1.1.1.8 ! root     3378: case 278:
        !          3379: #line 1479 "objc-parse.y"
1.1       root     3380: { yyval.ttype = build_nt (ARRAY_REF, NULL_TREE, NULL_TREE); ;
                   3381:     break;}
1.1.1.7   root     3382: case 279:
1.1.1.8 ! root     3383: #line 1481 "objc-parse.y"
        !          3384: { yyval.ttype = yyvsp[0].ttype; ;
        !          3385:     break;}
        !          3386: case 280:
        !          3387: #line 1490 "objc-parse.y"
        !          3388: {
        !          3389:                  if (pedantic && yyvsp[0].ends_in_label)
        !          3390:                    pedwarn ("ANSI C forbids label at end of compound statement");
        !          3391:                ;
        !          3392:     break;}
        !          3393: case 282:
        !          3394: #line 1499 "objc-parse.y"
        !          3395: { yyval.ends_in_label = yyvsp[0].ends_in_label; ;
        !          3396:     break;}
        !          3397: case 283:
        !          3398: #line 1501 "objc-parse.y"
        !          3399: { yyval.ends_in_label = 0; ;
        !          3400:     break;}
        !          3401: case 287:
        !          3402: #line 1513 "objc-parse.y"
1.1       root     3403: { emit_line_note (input_filename, lineno);
                   3404:                  pushlevel (0);
                   3405:                  clear_last_expr ();
                   3406:                  push_momentary ();
                   3407:                  expand_start_bindings (0);
                   3408:                  if (objc_method_context)
1.1.1.4   root     3409:                    add_objc_decls ();
                   3410:                ;
1.1       root     3411:     break;}
1.1.1.8 ! root     3412: case 289:
        !          3413: #line 1528 "objc-parse.y"
1.1       root     3414: { if (pedantic)
                   3415:                    pedwarn ("ANSI C forbids label declarations"); ;
                   3416:     break;}
1.1.1.8 ! root     3417: case 292:
        !          3418: #line 1539 "objc-parse.y"
1.1       root     3419: { tree link;
                   3420:                  for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link))
                   3421:                    {
                   3422:                      tree label = shadow_label (TREE_VALUE (link));
                   3423:                      C_DECLARED_LABEL_FLAG (label) = 1;
                   3424:                      declare_nonlocal_label (label);
                   3425:                    }
                   3426:                ;
                   3427:     break;}
1.1.1.8 ! root     3428: case 293:
        !          3429: #line 1553 "objc-parse.y"
1.1       root     3430: {;
                   3431:     break;}
1.1.1.8 ! root     3432: case 295:
        !          3433: #line 1558 "objc-parse.y"
1.1       root     3434: { yyval.ttype = convert (void_type_node, integer_zero_node); ;
                   3435:     break;}
1.1.1.8 ! root     3436: case 296:
        !          3437: #line 1560 "objc-parse.y"
1.1       root     3438: { emit_line_note (input_filename, lineno);
                   3439:                  expand_end_bindings (getdecls (), 1, 0);
                   3440:                  yyval.ttype = poplevel (1, 1, 0);
1.1.1.7   root     3441:                  if (yychar == CONSTANT || yychar == STRING)
                   3442:                    pop_momentary_nofree ();
                   3443:                  else
                   3444:                    pop_momentary (); ;
1.1       root     3445:     break;}
1.1.1.8 ! root     3446: case 297:
        !          3447: #line 1568 "objc-parse.y"
1.1       root     3448: { emit_line_note (input_filename, lineno);
                   3449:                  expand_end_bindings (getdecls (), kept_level_p (), 0);
                   3450:                  yyval.ttype = poplevel (kept_level_p (), 0, 0);
1.1.1.7   root     3451:                  if (yychar == CONSTANT || yychar == STRING)
                   3452:                    pop_momentary_nofree ();
                   3453:                  else
                   3454:                    pop_momentary (); ;
1.1       root     3455:     break;}
1.1.1.8 ! root     3456: case 298:
        !          3457: #line 1576 "objc-parse.y"
1.1       root     3458: { emit_line_note (input_filename, lineno);
                   3459:                  expand_end_bindings (getdecls (), kept_level_p (), 0);
                   3460:                  yyval.ttype = poplevel (kept_level_p (), 0, 0);
1.1.1.7   root     3461:                  if (yychar == CONSTANT || yychar == STRING)
                   3462:                    pop_momentary_nofree ();
                   3463:                  else
                   3464:                    pop_momentary (); ;
1.1       root     3465:     break;}
1.1.1.8 ! root     3466: case 301:
        !          3467: #line 1596 "objc-parse.y"
1.1       root     3468: { emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno);
                   3469:                  expand_start_cond (truthvalue_conversion (yyvsp[-1].ttype), 0);
1.1.1.6   root     3470:                  yyval.itype = stmt_count;
1.1       root     3471:                  if_stmt_file = yyvsp[-5].filename;
                   3472:                  if_stmt_line = yyvsp[-4].lineno;
                   3473:                  position_after_white_space (); ;
                   3474:     break;}
1.1.1.8 ! root     3475: case 302:
        !          3476: #line 1609 "objc-parse.y"
1.1.1.4   root     3477: { stmt_count++;
                   3478:                  emit_line_note (yyvsp[-2].filename, yyvsp[-1].lineno);
                   3479:                  /* See comment in `while' alternative, above.  */
                   3480:                  emit_nop ();
                   3481:                  expand_start_loop_continue_elsewhere (1);
                   3482:                  position_after_white_space (); ;
                   3483:     break;}
1.1.1.8 ! root     3484: case 303:
        !          3485: #line 1616 "objc-parse.y"
1.1.1.4   root     3486: { expand_loop_continue_here (); ;
                   3487:     break;}
1.1.1.8 ! root     3488: case 304:
        !          3489: #line 1620 "objc-parse.y"
1.1       root     3490: { yyval.filename = input_filename; ;
                   3491:     break;}
1.1.1.8 ! root     3492: case 305:
        !          3493: #line 1624 "objc-parse.y"
1.1       root     3494: { yyval.lineno = lineno; ;
                   3495:     break;}
1.1.1.8 ! root     3496: case 306:
        !          3497: #line 1629 "objc-parse.y"
1.1       root     3498: { ;
                   3499:     break;}
1.1.1.8 ! root     3500: case 307:
        !          3501: #line 1634 "objc-parse.y"
1.1.1.4   root     3502: { ;
                   3503:     break;}
1.1.1.8 ! root     3504: case 308:
        !          3505: #line 1639 "objc-parse.y"
        !          3506: { yyval.ends_in_label = yyvsp[0].ends_in_label; ;
1.1.1.4   root     3507:     break;}
1.1.1.8 ! root     3508: case 309:
        !          3509: #line 1644 "objc-parse.y"
        !          3510: { yyval.ends_in_label = 0; ;
1.1.1.4   root     3511:     break;}
1.1.1.8 ! root     3512: case 310:
        !          3513: #line 1646 "objc-parse.y"
        !          3514: { yyval.ends_in_label = 1; ;
        !          3515:     break;}
        !          3516: case 311:
        !          3517: #line 1652 "objc-parse.y"
1.1       root     3518: { stmt_count++; ;
                   3519:     break;}
1.1.1.8 ! root     3520: case 313:
        !          3521: #line 1655 "objc-parse.y"
1.1       root     3522: { stmt_count++;
                   3523:                  emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno);
1.1.1.6   root     3524: /* It appears that this should not be done--that a non-lvalue array
                   3525:    shouldn't get an error if the value isn't used.
                   3526:    Section 3.2.2.1 says that an array lvalue gets converted to a pointer
                   3527:    if it appears as a top-level expression,
                   3528:    but says nothing about non-lvalue arrays.  */
                   3529: #if 0
                   3530:                  /* Call default_conversion to get an error
                   3531:                     on referring to a register array if pedantic.  */
                   3532:                  if (TREE_CODE (TREE_TYPE (yyvsp[-1].ttype)) == ARRAY_TYPE
                   3533:                      || TREE_CODE (TREE_TYPE (yyvsp[-1].ttype)) == FUNCTION_TYPE)
                   3534:                    yyvsp[-1].ttype = default_conversion (yyvsp[-1].ttype);
                   3535: #endif
1.1.1.5   root     3536:                  iterator_expand (yyvsp[-1].ttype);
1.1       root     3537:                  clear_momentary (); ;
                   3538:     break;}
1.1.1.8 ! root     3539: case 314:
        !          3540: #line 1672 "objc-parse.y"
1.1       root     3541: { expand_start_else ();
                   3542:                  yyvsp[-1].itype = stmt_count;
                   3543:                  position_after_white_space (); ;
                   3544:     break;}
1.1.1.8 ! root     3545: case 315:
        !          3546: #line 1676 "objc-parse.y"
1.1       root     3547: { expand_end_cond ();
                   3548:                  if (extra_warnings && stmt_count == yyvsp[-3].itype)
                   3549:                    warning ("empty body in an else-statement"); ;
                   3550:     break;}
1.1.1.8 ! root     3551: case 316:
        !          3552: #line 1680 "objc-parse.y"
1.1       root     3553: { expand_end_cond ();
1.1.1.6   root     3554:                  /* This warning is here instead of in simple_if, because we
                   3555:                     do not want a warning if an empty if is followed by an
1.1.1.7   root     3556:                     else statement.  Increment stmt_count so we don't
                   3557:                     give a second error if this is a nested `if'.  */
                   3558:                  if (extra_warnings && stmt_count++ == yyvsp[0].itype)
1.1       root     3559:                    warning_with_file_and_line (if_stmt_file, if_stmt_line,
                   3560:                                                "empty body in an if-statement"); ;
                   3561:     break;}
1.1.1.8 ! root     3562: case 317:
        !          3563: #line 1692 "objc-parse.y"
1.1.1.4   root     3564: { expand_end_cond (); ;
                   3565:     break;}
1.1.1.8 ! root     3566: case 318:
        !          3567: #line 1694 "objc-parse.y"
1.1.1.4   root     3568: { stmt_count++;
1.1       root     3569:                  emit_line_note (yyvsp[-2].filename, yyvsp[-1].lineno);
1.1.1.4   root     3570:                  /* The emit_nop used to come before emit_line_note,
                   3571:                     but that made the nop seem like part of the preceding line.
                   3572:                     And that was confusing when the preceding line was
                   3573:                     inside of an if statement and was not really executed.
                   3574:                     I think it ought to work to put the nop after the line number.
                   3575:                     We will see.  --rms, July 15, 1991.  */
                   3576:                  emit_nop (); ;
1.1       root     3577:     break;}
1.1.1.8 ! root     3578: case 319:
        !          3579: #line 1704 "objc-parse.y"
1.1.1.4   root     3580: { /* Don't start the loop till we have succeeded
                   3581:                     in parsing the end test.  This is to make sure
                   3582:                     that we end every loop we start.  */
                   3583:                  expand_start_loop (1);
                   3584:                  emit_line_note (input_filename, lineno);
                   3585:                  expand_exit_loop_if_false (NULL_PTR,
                   3586:                                             truthvalue_conversion (yyvsp[-1].ttype));
1.1       root     3587:                  position_after_white_space (); ;
                   3588:     break;}
1.1.1.8 ! root     3589: case 320:
        !          3590: #line 1713 "objc-parse.y"
1.1       root     3591: { expand_end_loop (); ;
                   3592:     break;}
1.1.1.8 ! root     3593: case 321:
        !          3594: #line 1716 "objc-parse.y"
1.1       root     3595: { emit_line_note (input_filename, lineno);
1.1.1.4   root     3596:                  expand_exit_loop_if_false (NULL_PTR,
                   3597:                                             truthvalue_conversion (yyvsp[-2].ttype));
1.1       root     3598:                  expand_end_loop ();
                   3599:                  clear_momentary (); ;
                   3600:     break;}
1.1.1.8 ! root     3601: case 322:
        !          3602: #line 1723 "objc-parse.y"
1.1.1.4   root     3603: { expand_end_loop ();
                   3604:                  clear_momentary (); ;
                   3605:     break;}
1.1.1.8 ! root     3606: case 323:
        !          3607: #line 1727 "objc-parse.y"
1.1.1.4   root     3608: { stmt_count++;
1.1       root     3609:                  emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno);
1.1.1.4   root     3610:                  /* See comment in `while' alternative, above.  */
                   3611:                  emit_nop ();
1.1       root     3612:                  if (yyvsp[-1].ttype) c_expand_expr_stmt (yyvsp[-1].ttype);
1.1.1.4   root     3613:                  /* Next step is to call expand_start_loop_continue_elsewhere,
                   3614:                     but wait till after we parse the entire for (...).
                   3615:                     Otherwise, invalid input might cause us to call that
                   3616:                     fn without calling expand_end_loop.  */
                   3617:                ;
1.1       root     3618:     break;}
1.1.1.8 ! root     3619: case 324:
        !          3620: #line 1739 "objc-parse.y"
1.1.1.4   root     3621: { yyvsp[0].lineno = lineno;
                   3622:                  yyval.filename = input_filename; ;
1.1       root     3623:     break;}
1.1.1.8 ! root     3624: case 325:
        !          3625: #line 1742 "objc-parse.y"
1.1.1.4   root     3626: { 
                   3627:                  /* Start the loop.  Doing this after parsing
                   3628:                     all the expressions ensures we will end the loop.  */
                   3629:                  expand_start_loop_continue_elsewhere (1);
                   3630:                  /* Emit the end-test, with a line number.  */
                   3631:                  emit_line_note (yyvsp[-2].filename, yyvsp[-3].lineno);
                   3632:                  if (yyvsp[-4].ttype)
                   3633:                    expand_exit_loop_if_false (NULL_PTR,
                   3634:                                               truthvalue_conversion (yyvsp[-4].ttype));
                   3635:                  /* Don't let the tree nodes for $9 be discarded by
                   3636:                     clear_momentary during the parsing of the next stmt.  */
                   3637:                  push_momentary ();
                   3638:                  yyvsp[-3].lineno = lineno;
1.1.1.5   root     3639:                  yyvsp[-2].filename = input_filename;
                   3640:                  position_after_white_space (); ;
1.1       root     3641:     break;}
1.1.1.8 ! root     3642: case 326:
        !          3643: #line 1758 "objc-parse.y"
1.1.1.4   root     3644: { /* Emit the increment expression, with a line number.  */
                   3645:                  emit_line_note (yyvsp[-4].filename, yyvsp[-5].lineno);
1.1       root     3646:                  expand_loop_continue_here ();
                   3647:                  if (yyvsp[-3].ttype)
                   3648:                    c_expand_expr_stmt (yyvsp[-3].ttype);
1.1.1.7   root     3649:                  if (yychar == CONSTANT || yychar == STRING)
                   3650:                    pop_momentary_nofree ();
                   3651:                  else
                   3652:                    pop_momentary ();
1.1       root     3653:                  expand_end_loop (); ;
                   3654:     break;}
1.1.1.8 ! root     3655: case 327:
        !          3656: #line 1769 "objc-parse.y"
1.1       root     3657: { stmt_count++;
                   3658:                  emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno);
                   3659:                  c_expand_start_case (yyvsp[-1].ttype);
                   3660:                  /* Don't let the tree nodes for $3 be discarded by
                   3661:                     clear_momentary during the parsing of the next stmt.  */
                   3662:                  push_momentary ();
                   3663:                  position_after_white_space (); ;
                   3664:     break;}
1.1.1.8 ! root     3665: case 328:
        !          3666: #line 1777 "objc-parse.y"
1.1       root     3667: { expand_end_case (yyvsp[-3].ttype);
1.1.1.7   root     3668:                  if (yychar == CONSTANT || yychar == STRING)
                   3669:                    pop_momentary_nofree ();
                   3670:                  else
                   3671:                    pop_momentary (); ;
1.1       root     3672:     break;}
1.1.1.8 ! root     3673: case 329:
        !          3674: #line 1783 "objc-parse.y"
1.1.1.4   root     3675: { stmt_count++;
                   3676:                  emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno);
                   3677:                  if ( ! expand_exit_something ())
                   3678:                    error ("break statement not within loop or switch"); ;
                   3679:     break;}
1.1.1.8 ! root     3680: case 330:
        !          3681: #line 1788 "objc-parse.y"
1.1.1.4   root     3682: { stmt_count++;
                   3683:                  emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno);
                   3684:                  if (! expand_continue_loop (NULL_PTR))
                   3685:                    error ("continue statement not within a loop"); ;
                   3686:     break;}
1.1.1.8 ! root     3687: case 331:
        !          3688: #line 1793 "objc-parse.y"
1.1.1.4   root     3689: { stmt_count++;
                   3690:                  emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno);
                   3691:                  c_expand_return (NULL_TREE); ;
                   3692:     break;}
1.1.1.8 ! root     3693: case 332:
        !          3694: #line 1797 "objc-parse.y"
1.1.1.4   root     3695: { stmt_count++;
                   3696:                  emit_line_note (yyvsp[-4].filename, yyvsp[-3].lineno);
                   3697:                  c_expand_return (yyvsp[-1].ttype); ;
                   3698:     break;}
1.1.1.8 ! root     3699: case 333:
        !          3700: #line 1801 "objc-parse.y"
1.1.1.4   root     3701: { stmt_count++;
                   3702:                  emit_line_note (yyvsp[-7].filename, yyvsp[-6].lineno);
                   3703:                  STRIP_NOPS (yyvsp[-2].ttype);
                   3704:                  if ((TREE_CODE (yyvsp[-2].ttype) == ADDR_EXPR
                   3705:                       && TREE_CODE (TREE_OPERAND (yyvsp[-2].ttype, 0)) == STRING_CST)
                   3706:                      || TREE_CODE (yyvsp[-2].ttype) == STRING_CST)
                   3707:                    expand_asm (yyvsp[-2].ttype);
                   3708:                  else
                   3709:                    error ("argument of `asm' is not a constant string"); ;
                   3710:     break;}
1.1.1.8 ! root     3711: case 334:
        !          3712: #line 1812 "objc-parse.y"
1.1.1.4   root     3713: { stmt_count++;
                   3714:                  emit_line_note (yyvsp[-9].filename, yyvsp[-8].lineno);
                   3715:                  c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE,
                   3716:                                         yyvsp[-6].ttype == ridpointers[(int)RID_VOLATILE],
                   3717:                                         input_filename, lineno); ;
                   3718:     break;}
1.1.1.8 ! root     3719: case 335:
        !          3720: #line 1819 "objc-parse.y"
1.1.1.4   root     3721: { stmt_count++;
                   3722:                  emit_line_note (yyvsp[-11].filename, yyvsp[-10].lineno);
                   3723:                  c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE,
                   3724:                                         yyvsp[-8].ttype == ridpointers[(int)RID_VOLATILE],
                   3725:                                         input_filename, lineno); ;
                   3726:     break;}
1.1.1.8 ! root     3727: case 336:
        !          3728: #line 1827 "objc-parse.y"
1.1.1.4   root     3729: { stmt_count++;
                   3730:                  emit_line_note (yyvsp[-13].filename, yyvsp[-12].lineno);
                   3731:                  c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype,
                   3732:                                         yyvsp[-10].ttype == ridpointers[(int)RID_VOLATILE],
                   3733:                                         input_filename, lineno); ;
                   3734:     break;}
1.1.1.8 ! root     3735: case 337:
        !          3736: #line 1833 "objc-parse.y"
1.1.1.4   root     3737: { tree decl;
                   3738:                  stmt_count++;
                   3739:                  emit_line_note (yyvsp[-4].filename, yyvsp[-3].lineno);
                   3740:                  decl = lookup_label (yyvsp[-1].ttype);
                   3741:                  if (decl != 0)
                   3742:                    {
                   3743:                      TREE_USED (decl) = 1;
                   3744:                      expand_goto (decl);
                   3745:                    }
                   3746:                ;
                   3747:     break;}
1.1.1.8 ! root     3748: case 338:
        !          3749: #line 1844 "objc-parse.y"
1.1.1.4   root     3750: { stmt_count++;
                   3751:                  emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno);
                   3752:                  expand_computed_goto (convert (ptr_type_node, yyvsp[-1].ttype)); ;
                   3753:     break;}
1.1.1.8 ! root     3754: case 341:
        !          3755: #line 1857 "objc-parse.y"
1.1.1.5   root     3756: {
                   3757:            /* The value returned by this action is  */
                   3758:            /*      1 if everything is OK */ 
                   3759:            /*      0 in case of error or already bound iterator */
                   3760: 
                   3761:            yyval.itype = 0;
                   3762:            if (TREE_CODE (yyvsp[-1].ttype) != VAR_DECL)
                   3763:              error ("invalid `for (ITERATOR)' syntax");
1.1.1.6   root     3764:            else if (! ITERATOR_P (yyvsp[-1].ttype))
1.1.1.5   root     3765:              error ("`%s' is not an iterator",
                   3766:                     IDENTIFIER_POINTER (DECL_NAME (yyvsp[-1].ttype)));
                   3767:            else if (ITERATOR_BOUND_P (yyvsp[-1].ttype))
                   3768:              error ("`for (%s)' inside expansion of same iterator",
                   3769:                     IDENTIFIER_POINTER (DECL_NAME (yyvsp[-1].ttype)));
                   3770:            else
                   3771:              {
                   3772:                yyval.itype = 1;
                   3773:                iterator_for_loop_start (yyvsp[-1].ttype);
                   3774:              }
                   3775:          ;
                   3776:     break;}
1.1.1.8 ! root     3777: case 342:
        !          3778: #line 1878 "objc-parse.y"
1.1.1.5   root     3779: {
                   3780:            if (yyvsp[-1].itype)
                   3781:              iterator_for_loop_end (yyvsp[-3].ttype);
                   3782:          ;
                   3783:     break;}
1.1.1.8 ! root     3784: case 343:
        !          3785: #line 1913 "objc-parse.y"
1.1       root     3786: { register tree value = check_case_value (yyvsp[-1].ttype);
                   3787:                  register tree label
                   3788:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
                   3789: 
                   3790:                  stmt_count++;
                   3791: 
                   3792:                  if (value != error_mark_node)
                   3793:                    {
                   3794:                      tree duplicate;
1.1.1.6   root     3795:                      int success = pushcase (value, convert_and_check,
                   3796:                                              label, &duplicate);
1.1       root     3797:                      if (success == 1)
                   3798:                        error ("case label not within a switch statement");
                   3799:                      else if (success == 2)
                   3800:                        {
                   3801:                          error ("duplicate case value");
                   3802:                          error_with_decl (duplicate, "this is the first entry for that value");
                   3803:                        }
                   3804:                      else if (success == 3)
                   3805:                        warning ("case value out of range");
                   3806:                      else if (success == 5)
                   3807:                        error ("case label within scope of cleanup or variable array");
                   3808:                    }
                   3809:                  position_after_white_space (); ;
                   3810:     break;}
1.1.1.8 ! root     3811: case 344:
        !          3812: #line 1938 "objc-parse.y"
1.1       root     3813: { register tree value1 = check_case_value (yyvsp[-3].ttype);
                   3814:                  register tree value2 = check_case_value (yyvsp[-1].ttype);
                   3815:                  register tree label
                   3816:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
                   3817: 
                   3818:                  stmt_count++;
                   3819: 
                   3820:                  if (value1 != error_mark_node && value2 != error_mark_node)
                   3821:                    {
                   3822:                      tree duplicate;
1.1.1.6   root     3823:                      int success = pushcase_range (value1, value2,
                   3824:                                                    convert_and_check, label,
1.1       root     3825:                                                    &duplicate);
                   3826:                      if (success == 1)
                   3827:                        error ("case label not within a switch statement");
                   3828:                      else if (success == 2)
                   3829:                        {
                   3830:                          error ("duplicate case value");
1.1.1.4   root     3831:                          error_with_decl (duplicate, "this is the first entry for that value");
1.1       root     3832:                        }
                   3833:                      else if (success == 3)
                   3834:                        warning ("case value out of range");
                   3835:                      else if (success == 4)
                   3836:                        warning ("empty case range");
                   3837:                      else if (success == 5)
                   3838:                        error ("case label within scope of cleanup or variable array");
                   3839:                    }
                   3840:                  position_after_white_space (); ;
                   3841:     break;}
1.1.1.8 ! root     3842: case 345:
        !          3843: #line 1967 "objc-parse.y"
1.1       root     3844: {
                   3845:                  tree duplicate;
                   3846:                  register tree label
                   3847:                    = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE);
1.1.1.6   root     3848:                  int success = pushcase (NULL_TREE, 0, label, &duplicate);
1.1       root     3849:                  stmt_count++;
                   3850:                  if (success == 1)
                   3851:                    error ("default label not within a switch statement");
                   3852:                  else if (success == 2)
                   3853:                    {
                   3854:                      error ("multiple default labels in one switch");
1.1.1.4   root     3855:                      error_with_decl (duplicate, "this is the first default label");
1.1       root     3856:                    }
                   3857:                  position_after_white_space (); ;
                   3858:     break;}
1.1.1.8 ! root     3859: case 346:
        !          3860: #line 1982 "objc-parse.y"
1.1       root     3861: { tree label = define_label (input_filename, lineno, yyvsp[-1].ttype);
                   3862:                  stmt_count++;
                   3863:                  emit_nop ();
                   3864:                  if (label)
                   3865:                    expand_label (label);
                   3866:                  position_after_white_space (); ;
                   3867:     break;}
1.1.1.8 ! root     3868: case 347:
        !          3869: #line 1994 "objc-parse.y"
1.1.1.6   root     3870: { emit_line_note (input_filename, lineno);
                   3871:                  yyval.ttype = NULL_TREE; ;
1.1       root     3872:     break;}
1.1.1.8 ! root     3873: case 348:
        !          3874: #line 1997 "objc-parse.y"
1.1.1.4   root     3875: { emit_line_note (input_filename, lineno); ;
1.1       root     3876:     break;}
1.1.1.8 ! root     3877: case 349:
        !          3878: #line 2002 "objc-parse.y"
1.1       root     3879: { yyval.ttype = NULL_TREE; ;
                   3880:     break;}
1.1.1.8 ! root     3881: case 351:
        !          3882: #line 2009 "objc-parse.y"
1.1       root     3883: { yyval.ttype = NULL_TREE; ;
                   3884:     break;}
1.1.1.8 ! root     3885: case 354:
        !          3886: #line 2016 "objc-parse.y"
1.1       root     3887: { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ;
                   3888:     break;}
1.1.1.8 ! root     3889: case 355:
        !          3890: #line 2021 "objc-parse.y"
1.1       root     3891: { yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ;
                   3892:     break;}
1.1.1.8 ! root     3893: case 356:
        !          3894: #line 2026 "objc-parse.y"
1.1       root     3895: { yyval.ttype = tree_cons (NULL_TREE, combine_strings (yyvsp[0].ttype), NULL_TREE); ;
                   3896:     break;}
1.1.1.8 ! root     3897: case 357:
        !          3898: #line 2028 "objc-parse.y"
1.1       root     3899: { yyval.ttype = tree_cons (NULL_TREE, combine_strings (yyvsp[0].ttype), yyvsp[-2].ttype); ;
                   3900:     break;}
1.1.1.8 ! root     3901: case 358:
        !          3902: #line 2034 "objc-parse.y"
1.1       root     3903: { pushlevel (0);
1.1.1.4   root     3904:                  clear_parm_order ();
1.1       root     3905:                  declare_parm_level (0); ;
                   3906:     break;}
1.1.1.8 ! root     3907: case 359:
        !          3908: #line 2038 "objc-parse.y"
1.1       root     3909: { yyval.ttype = yyvsp[0].ttype;
                   3910:                  parmlist_tags_warning ();
                   3911:                  poplevel (0, 0, 0); ;
                   3912:     break;}
1.1.1.8 ! root     3913: case 361:
        !          3914: #line 2046 "objc-parse.y"
1.1.1.4   root     3915: { tree parm;
                   3916:                  if (pedantic)
                   3917:                    pedwarn ("ANSI C forbids forward parameter declarations");
                   3918:                  /* Mark the forward decls as such.  */
                   3919:                  for (parm = getdecls (); parm; parm = TREE_CHAIN (parm))
                   3920:                    TREE_ASM_WRITTEN (parm) = 1;
                   3921:                  clear_parm_order (); ;
1.1       root     3922:     break;}
1.1.1.8 ! root     3923: case 362:
        !          3924: #line 2054 "objc-parse.y"
1.1.1.4   root     3925: { yyval.ttype = yyvsp[0].ttype; ;
1.1       root     3926:     break;}
1.1.1.8 ! root     3927: case 363:
        !          3928: #line 2056 "objc-parse.y"
1.1       root     3929: { yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, NULL_TREE); ;
                   3930:     break;}
1.1.1.8 ! root     3931: case 364:
        !          3932: #line 2062 "objc-parse.y"
1.1       root     3933: { yyval.ttype = get_parm_info (0); ;
                   3934:     break;}
1.1.1.8 ! root     3935: case 365:
        !          3936: #line 2064 "objc-parse.y"
1.1.1.4   root     3937: { yyval.ttype = get_parm_info (0);
1.1.1.7   root     3938:                  /* Gcc used to allow this as an extension.  However, it does
                   3939:                     not work for all targets, and thus has been disabled.
                   3940:                     Also, since func (...) and func () are indistinguishable,
                   3941:                     it caused problems with the code in expand_builtin which
                   3942:                     tries to verify that BUILT_IN_NEXT_ARG is being used
                   3943:                     correctly.  */
                   3944:                  error ("ANSI C requires a named argument before `...'");
1.1.1.4   root     3945:                ;
                   3946:     break;}
1.1.1.8 ! root     3947: case 366:
        !          3948: #line 2074 "objc-parse.y"
1.1       root     3949: { yyval.ttype = get_parm_info (1); ;
                   3950:     break;}
1.1.1.8 ! root     3951: case 367:
        !          3952: #line 2076 "objc-parse.y"
1.1       root     3953: { yyval.ttype = get_parm_info (0); ;
                   3954:     break;}
1.1.1.8 ! root     3955: case 368:
        !          3956: #line 2081 "objc-parse.y"
1.1       root     3957: { push_parm_decl (yyvsp[0].ttype); ;
                   3958:     break;}
1.1.1.8 ! root     3959: case 369:
        !          3960: #line 2083 "objc-parse.y"
1.1       root     3961: { push_parm_decl (yyvsp[0].ttype); ;
                   3962:     break;}
1.1.1.8 ! root     3963: case 370:
        !          3964: #line 2090 "objc-parse.y"
        !          3965: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          3966:                                                         yyvsp[-1].ttype),
        !          3967:                                        build_tree_list (prefix_attributes,
        !          3968:                                                         yyvsp[0].ttype));
        !          3969:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          3970:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          3971:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          3972:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     3973:     break;}
1.1.1.8 ! root     3974: case 371:
        !          3975: #line 2099 "objc-parse.y"
        !          3976: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          3977:                                                         yyvsp[-1].ttype),
        !          3978:                                        build_tree_list (prefix_attributes,
        !          3979:                                                         yyvsp[0].ttype)); 
        !          3980:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          3981:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          3982:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          3983:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     3984:     break;}
1.1.1.8 ! root     3985: case 372:
        !          3986: #line 2108 "objc-parse.y"
        !          3987: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          3988:                                                         yyvsp[-1].ttype),
        !          3989:                                        build_tree_list (prefix_attributes,
        !          3990:                                                         yyvsp[0].ttype));
        !          3991:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          3992:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          3993:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          3994:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     3995:     break;}
1.1.1.8 ! root     3996: case 373:
        !          3997: #line 2117 "objc-parse.y"
        !          3998: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          3999:                                                         yyvsp[-1].ttype),
        !          4000:                                        build_tree_list (prefix_attributes,
        !          4001:                                                         yyvsp[0].ttype));
        !          4002:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          4003:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          4004:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          4005:                  resume_momentary (yyvsp[-2].itype);  ;
1.1       root     4006:     break;}
1.1.1.8 ! root     4007: case 374:
        !          4008: #line 2127 "objc-parse.y"
        !          4009: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          4010:                                                         yyvsp[-1].ttype),
        !          4011:                                        build_tree_list (prefix_attributes,
        !          4012:                                                         yyvsp[0].ttype));
        !          4013:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          4014:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          4015:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          4016:                  resume_momentary (yyvsp[-2].itype);  ;
1.1       root     4017:     break;}
1.1.1.8 ! root     4018: case 375:
        !          4019: #line 2141 "objc-parse.y"
1.1.1.4   root     4020: { pushlevel (0);
                   4021:                  clear_parm_order ();
                   4022:                  declare_parm_level (1); ;
                   4023:     break;}
1.1.1.8 ! root     4024: case 376:
        !          4025: #line 2145 "objc-parse.y"
1.1.1.4   root     4026: { yyval.ttype = yyvsp[0].ttype;
                   4027:                  parmlist_tags_warning ();
                   4028:                  poplevel (0, 0, 0); ;
                   4029:     break;}
1.1.1.8 ! root     4030: case 378:
        !          4031: #line 2153 "objc-parse.y"
1.1.1.4   root     4032: { tree t;
                   4033:                  for (t = yyvsp[-1].ttype; t; t = TREE_CHAIN (t))
                   4034:                    if (TREE_VALUE (t) == NULL_TREE)
                   4035:                      error ("`...' in old-style identifier list");
                   4036:                  yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, yyvsp[-1].ttype); ;
                   4037:     break;}
1.1.1.8 ! root     4038: case 379:
        !          4039: #line 2163 "objc-parse.y"
1.1       root     4040: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   4041:     break;}
1.1.1.8 ! root     4042: case 380:
        !          4043: #line 2165 "objc-parse.y"
1.1       root     4044: { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4045:     break;}
1.1.1.8 ! root     4046: case 381:
        !          4047: #line 2171 "objc-parse.y"
1.1.1.4   root     4048: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   4049:     break;}
1.1.1.8 ! root     4050: case 382:
        !          4051: #line 2173 "objc-parse.y"
1.1.1.4   root     4052: { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4053:     break;}
1.1.1.8 ! root     4054: case 388:
        !          4055: #line 2185 "objc-parse.y"
1.1       root     4056: {
                   4057:                  if (objc_implementation_context)
                   4058:                     {
                   4059:                      finish_class (objc_implementation_context);
                   4060:                      objc_ivar_chain = NULL_TREE;
                   4061:                      objc_implementation_context = NULL_TREE;
                   4062:                    }
                   4063:                  else
                   4064:                    warning ("`@end' must appear in an implementation context");
                   4065:                ;
                   4066:     break;}
1.1.1.8 ! root     4067: case 389:
        !          4068: #line 2200 "objc-parse.y"
1.1.1.5   root     4069: { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ;
                   4070:     break;}
1.1.1.8 ! root     4071: case 390:
        !          4072: #line 2202 "objc-parse.y"
1.1.1.5   root     4073: { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ;
                   4074:     break;}
1.1.1.8 ! root     4075: case 391:
        !          4076: #line 2207 "objc-parse.y"
1.1.1.5   root     4077: {
                   4078:                  objc_declare_class (yyvsp[-1].ttype);
                   4079:                ;
                   4080:     break;}
1.1.1.8 ! root     4081: case 392:
        !          4082: #line 2213 "objc-parse.y"
1.1.1.5   root     4083: {
                   4084:                  objc_declare_alias (yyvsp[-2].ttype, yyvsp[-1].ttype);
                   4085:                ;
                   4086:     break;}
1.1.1.8 ! root     4087: case 393:
        !          4088: #line 2219 "objc-parse.y"
1.1       root     4089: {
                   4090:                  objc_interface_context = objc_ivar_context
1.1.1.5   root     4091:                    = start_class (CLASS_INTERFACE_TYPE, yyvsp[-2].ttype, NULL_TREE, yyvsp[-1].ttype);
1.1       root     4092:                   objc_public_flag = 0;
                   4093:                ;
                   4094:     break;}
1.1.1.8 ! root     4095: case 394:
        !          4096: #line 2225 "objc-parse.y"
1.1       root     4097: {
                   4098:                   continue_class (objc_interface_context);
                   4099:                ;
                   4100:     break;}
1.1.1.8 ! root     4101: case 395:
        !          4102: #line 2230 "objc-parse.y"
1.1       root     4103: {
                   4104:                  finish_class (objc_interface_context);
                   4105:                  objc_interface_context = NULL_TREE;
                   4106:                ;
                   4107:     break;}
1.1.1.8 ! root     4108: case 396:
        !          4109: #line 2236 "objc-parse.y"
1.1       root     4110: {
                   4111:                  objc_interface_context
1.1.1.5   root     4112:                    = start_class (CLASS_INTERFACE_TYPE, yyvsp[-1].ttype, NULL_TREE, yyvsp[0].ttype);
1.1       root     4113:                   continue_class (objc_interface_context);
                   4114:                ;
                   4115:     break;}
1.1.1.8 ! root     4116: case 397:
        !          4117: #line 2243 "objc-parse.y"
1.1       root     4118: {
                   4119:                  finish_class (objc_interface_context);
                   4120:                  objc_interface_context = NULL_TREE;
                   4121:                ;
                   4122:     break;}
1.1.1.8 ! root     4123: case 398:
        !          4124: #line 2249 "objc-parse.y"
1.1       root     4125: {
                   4126:                  objc_interface_context = objc_ivar_context
1.1.1.5   root     4127:                    = start_class (CLASS_INTERFACE_TYPE, yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[-1].ttype);
1.1       root     4128:                   objc_public_flag = 0;
                   4129:                ;
                   4130:     break;}
1.1.1.8 ! root     4131: case 399:
        !          4132: #line 2255 "objc-parse.y"
1.1       root     4133: {
                   4134:                   continue_class (objc_interface_context);
                   4135:                ;
                   4136:     break;}
1.1.1.8 ! root     4137: case 400:
        !          4138: #line 2260 "objc-parse.y"
1.1       root     4139: {
                   4140:                  finish_class (objc_interface_context);
                   4141:                  objc_interface_context = NULL_TREE;
                   4142:                ;
                   4143:     break;}
1.1.1.8 ! root     4144: case 401:
        !          4145: #line 2266 "objc-parse.y"
1.1       root     4146: {
                   4147:                  objc_interface_context
1.1.1.5   root     4148:                    = start_class (CLASS_INTERFACE_TYPE, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
1.1       root     4149:                   continue_class (objc_interface_context);
                   4150:                ;
                   4151:     break;}
1.1.1.8 ! root     4152: case 402:
        !          4153: #line 2273 "objc-parse.y"
1.1       root     4154: {
                   4155:                  finish_class (objc_interface_context);
                   4156:                  objc_interface_context = NULL_TREE;
                   4157:                ;
                   4158:     break;}
1.1.1.8 ! root     4159: case 403:
        !          4160: #line 2279 "objc-parse.y"
1.1       root     4161: {
                   4162:                  objc_implementation_context = objc_ivar_context
1.1.1.5   root     4163:                    = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[-1].ttype, NULL_TREE, NULL_TREE);
1.1       root     4164:                   objc_public_flag = 0;
                   4165:                ;
                   4166:     break;}
1.1.1.8 ! root     4167: case 404:
        !          4168: #line 2285 "objc-parse.y"
1.1       root     4169: {
                   4170:                   objc_ivar_chain
                   4171:                    = continue_class (objc_implementation_context);
                   4172:                ;
                   4173:     break;}
1.1.1.8 ! root     4174: case 405:
        !          4175: #line 2291 "objc-parse.y"
1.1       root     4176: {
                   4177:                  objc_implementation_context
1.1.1.5   root     4178:                    = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[0].ttype, NULL_TREE, NULL_TREE);
1.1       root     4179:                   objc_ivar_chain
                   4180:                    = continue_class (objc_implementation_context);
                   4181:                ;
                   4182:     break;}
1.1.1.8 ! root     4183: case 406:
        !          4184: #line 2299 "objc-parse.y"
1.1       root     4185: {
                   4186:                  objc_implementation_context = objc_ivar_context
1.1.1.5   root     4187:                    = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE);
1.1       root     4188:                   objc_public_flag = 0;
                   4189:                ;
                   4190:     break;}
1.1.1.8 ! root     4191: case 407:
        !          4192: #line 2305 "objc-parse.y"
1.1       root     4193: {
                   4194:                   objc_ivar_chain
                   4195:                    = continue_class (objc_implementation_context);
                   4196:                ;
                   4197:     break;}
1.1.1.8 ! root     4198: case 408:
        !          4199: #line 2311 "objc-parse.y"
1.1       root     4200: {
                   4201:                  objc_implementation_context
1.1.1.5   root     4202:                    = start_class (CLASS_IMPLEMENTATION_TYPE, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE);
1.1       root     4203:                   objc_ivar_chain
                   4204:                    = continue_class (objc_implementation_context);
                   4205:                ;
                   4206:     break;}
1.1.1.8 ! root     4207: case 409:
        !          4208: #line 2319 "objc-parse.y"
1.1       root     4209: {
                   4210:                  objc_interface_context
1.1.1.5   root     4211:                    = start_class (CATEGORY_INTERFACE_TYPE, yyvsp[-4].ttype, yyvsp[-2].ttype, yyvsp[0].ttype);
1.1       root     4212:                   continue_class (objc_interface_context);
                   4213:                ;
                   4214:     break;}
1.1.1.8 ! root     4215: case 410:
        !          4216: #line 2326 "objc-parse.y"
1.1       root     4217: {
                   4218:                  finish_class (objc_interface_context);
                   4219:                  objc_interface_context = NULL_TREE;
                   4220:                ;
                   4221:     break;}
1.1.1.8 ! root     4222: case 411:
        !          4223: #line 2332 "objc-parse.y"
1.1       root     4224: {
                   4225:                  objc_implementation_context
1.1.1.5   root     4226:                    = start_class (CATEGORY_IMPLEMENTATION_TYPE, yyvsp[-3].ttype, yyvsp[-1].ttype, NULL_TREE);
1.1       root     4227:                   objc_ivar_chain
                   4228:                    = continue_class (objc_implementation_context);
                   4229:                ;
                   4230:     break;}
1.1.1.8 ! root     4231: case 412:
        !          4232: #line 2342 "objc-parse.y"
1.1.1.5   root     4233: {
                   4234:                  remember_protocol_qualifiers ();
                   4235:                  objc_interface_context
                   4236:                    = start_protocol(PROTOCOL_INTERFACE_TYPE, yyvsp[-1].ttype, yyvsp[0].ttype);
                   4237:                ;
                   4238:     break;}
1.1.1.8 ! root     4239: case 413:
        !          4240: #line 2348 "objc-parse.y"
1.1.1.5   root     4241: {
                   4242:                  forget_protocol_qualifiers();
                   4243:                  finish_protocol(objc_interface_context);
                   4244:                  objc_interface_context = NULL_TREE;
                   4245:                ;
                   4246:     break;}
1.1.1.8 ! root     4247: case 414:
        !          4248: #line 2357 "objc-parse.y"
1.1.1.5   root     4249: {
                   4250:                  yyval.ttype = NULL_TREE;
                   4251:                ;
                   4252:     break;}
1.1.1.8 ! root     4253: case 415:
        !          4254: #line 2361 "objc-parse.y"
1.1.1.5   root     4255: {
                   4256:                  if (yyvsp[-2].code == LT_EXPR && yyvsp[0].code == GT_EXPR)
                   4257:                    yyval.ttype = yyvsp[-1].ttype;
                   4258:                  else
                   4259:                    YYERROR1;
                   4260:                ;
                   4261:     break;}
1.1.1.8 ! root     4262: case 418:
        !          4263: #line 2375 "objc-parse.y"
1.1.1.5   root     4264: { objc_public_flag = 2; ;
                   4265:     break;}
1.1.1.8 ! root     4266: case 419:
        !          4267: #line 2376 "objc-parse.y"
1.1.1.5   root     4268: { objc_public_flag = 0; ;
                   4269:     break;}
1.1.1.8 ! root     4270: case 420:
        !          4271: #line 2377 "objc-parse.y"
1.1       root     4272: { objc_public_flag = 1; ;
                   4273:     break;}
1.1.1.8 ! root     4274: case 421:
        !          4275: #line 2382 "objc-parse.y"
1.1       root     4276: {
                   4277:                   yyval.ttype = NULL_TREE;
                   4278:                 ;
                   4279:     break;}
1.1.1.8 ! root     4280: case 423:
        !          4281: #line 2387 "objc-parse.y"
1.1       root     4282: {
                   4283:                   if (pedantic)
1.1.1.5   root     4284:                    pedwarn ("extra semicolon in struct or union specified");
1.1       root     4285:                 ;
                   4286:     break;}
1.1.1.8 ! root     4287: case 424:
        !          4288: #line 2405 "objc-parse.y"
        !          4289: { yyval.ttype = yyvsp[0].ttype;
        !          4290:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          4291:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          4292:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          4293:                  resume_momentary (yyvsp[-1].itype); ;
1.1       root     4294:     break;}
1.1.1.8 ! root     4295: case 425:
        !          4296: #line 2411 "objc-parse.y"
        !          4297: { yyval.ttype = yyvsp[0].ttype;
        !          4298:                  current_declspecs = TREE_VALUE (declspec_stack);
        !          4299:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          4300:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          4301:                  resume_momentary (yyvsp[-1].itype); ;
1.1       root     4302:     break;}
1.1.1.8 ! root     4303: case 426:
        !          4304: #line 2417 "objc-parse.y"
1.1       root     4305: { yyval.ttype = NULL_TREE; ;
                   4306:     break;}
1.1.1.8 ! root     4307: case 427:
        !          4308: #line 2422 "objc-parse.y"
1.1       root     4309: { yyval.ttype = NULL_TREE; ;
                   4310:     break;}
1.1.1.8 ! root     4311: case 430:
        !          4312: #line 2429 "objc-parse.y"
1.1       root     4313: {
                   4314:                  yyval.ttype = add_instance_variable (objc_ivar_context,
                   4315:                                              objc_public_flag,
                   4316:                                              yyvsp[0].ttype, current_declspecs,
                   4317:                                              NULL_TREE);
                   4318:                 ;
                   4319:     break;}
1.1.1.8 ! root     4320: case 431:
        !          4321: #line 2436 "objc-parse.y"
1.1       root     4322: {
                   4323:                  yyval.ttype = add_instance_variable (objc_ivar_context,
                   4324:                                              objc_public_flag,
                   4325:                                              yyvsp[-2].ttype, current_declspecs, yyvsp[0].ttype);
                   4326:                 ;
                   4327:     break;}
1.1.1.8 ! root     4328: case 432:
        !          4329: #line 2442 "objc-parse.y"
1.1       root     4330: {
                   4331:                  yyval.ttype = add_instance_variable (objc_ivar_context,
                   4332:                                              objc_public_flag,
                   4333:                                              NULL_TREE,
                   4334:                                              current_declspecs, yyvsp[0].ttype);
                   4335:                 ;
                   4336:     break;}
1.1.1.8 ! root     4337: case 433:
        !          4338: #line 2452 "objc-parse.y"
1.1       root     4339: {
1.1.1.5   root     4340:                  remember_protocol_qualifiers ();
1.1       root     4341:                  if (objc_implementation_context)
                   4342:                    objc_inherit_code = CLASS_METHOD_DECL;
                   4343:                   else
                   4344:                    fatal ("method definition not in class context");
                   4345:                ;
                   4346:     break;}
1.1.1.8 ! root     4347: case 434:
        !          4348: #line 2460 "objc-parse.y"
1.1       root     4349: {
1.1.1.5   root     4350:                  forget_protocol_qualifiers ();
1.1       root     4351:                  add_class_method (objc_implementation_context, yyvsp[0].ttype);
                   4352:                  start_method_def (yyvsp[0].ttype);
                   4353:                  objc_method_context = yyvsp[0].ttype;
                   4354:                ;
                   4355:     break;}
1.1.1.8 ! root     4356: case 435:
        !          4357: #line 2467 "objc-parse.y"
1.1       root     4358: {
                   4359:                  continue_method_def ();
                   4360:                ;
                   4361:     break;}
1.1.1.8 ! root     4362: case 436:
        !          4363: #line 2471 "objc-parse.y"
1.1       root     4364: {
                   4365:                  finish_method_def ();
                   4366:                  objc_method_context = NULL_TREE;
                   4367:                ;
                   4368:     break;}
1.1.1.8 ! root     4369: case 437:
        !          4370: #line 2477 "objc-parse.y"
1.1       root     4371: {
1.1.1.5   root     4372:                  remember_protocol_qualifiers ();
1.1       root     4373:                  if (objc_implementation_context)
                   4374:                    objc_inherit_code = INSTANCE_METHOD_DECL;
                   4375:                   else
                   4376:                    fatal ("method definition not in class context");
                   4377:                ;
                   4378:     break;}
1.1.1.8 ! root     4379: case 438:
        !          4380: #line 2485 "objc-parse.y"
1.1       root     4381: {
1.1.1.5   root     4382:                  forget_protocol_qualifiers ();
1.1       root     4383:                  add_instance_method (objc_implementation_context, yyvsp[0].ttype);
                   4384:                  start_method_def (yyvsp[0].ttype);
                   4385:                  objc_method_context = yyvsp[0].ttype;
                   4386:                ;
                   4387:     break;}
1.1.1.8 ! root     4388: case 439:
        !          4389: #line 2492 "objc-parse.y"
1.1       root     4390: {
                   4391:                  continue_method_def ();
                   4392:                ;
                   4393:     break;}
1.1.1.8 ! root     4394: case 440:
        !          4395: #line 2496 "objc-parse.y"
1.1       root     4396: {
                   4397:                  finish_method_def ();
                   4398:                  objc_method_context = NULL_TREE;
                   4399:                ;
                   4400:     break;}
1.1.1.8 ! root     4401: case 442:
        !          4402: #line 2508 "objc-parse.y"
1.1       root     4403: {yyval.ttype = NULL_TREE; ;
                   4404:     break;}
1.1.1.8 ! root     4405: case 447:
        !          4406: #line 2515 "objc-parse.y"
1.1       root     4407: {yyval.ttype = NULL_TREE; ;
                   4408:     break;}
1.1.1.8 ! root     4409: case 451:
        !          4410: #line 2525 "objc-parse.y"
1.1       root     4411: {
                   4412:                  objc_inherit_code = CLASS_METHOD_DECL;
                   4413:                ;
                   4414:     break;}
1.1.1.8 ! root     4415: case 452:
        !          4416: #line 2529 "objc-parse.y"
1.1       root     4417: {
                   4418:                  add_class_method (objc_interface_context, yyvsp[0].ttype);
                   4419:                ;
                   4420:     break;}
1.1.1.8 ! root     4421: case 454:
        !          4422: #line 2535 "objc-parse.y"
1.1       root     4423: {
                   4424:                  objc_inherit_code = INSTANCE_METHOD_DECL;
                   4425:                ;
                   4426:     break;}
1.1.1.8 ! root     4427: case 455:
        !          4428: #line 2539 "objc-parse.y"
1.1       root     4429: {
                   4430:                  add_instance_method (objc_interface_context, yyvsp[0].ttype);
                   4431:                ;
                   4432:     break;}
1.1.1.8 ! root     4433: case 457:
        !          4434: #line 2547 "objc-parse.y"
1.1       root     4435: {
                   4436:                  yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE);
                   4437:                ;
                   4438:     break;}
1.1.1.8 ! root     4439: case 458:
        !          4440: #line 2552 "objc-parse.y"
1.1       root     4441: {
                   4442:                  yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[0].ttype, NULL_TREE);
                   4443:                ;
                   4444:     break;}
1.1.1.8 ! root     4445: case 459:
        !          4446: #line 2557 "objc-parse.y"
1.1       root     4447: {
                   4448:                  yyval.ttype = build_method_decl (objc_inherit_code, yyvsp[-3].ttype, yyvsp[-1].ttype, yyvsp[0].ttype);
                   4449:                ;
                   4450:     break;}
1.1.1.8 ! root     4451: case 460:
        !          4452: #line 2562 "objc-parse.y"
1.1       root     4453: {
                   4454:                  yyval.ttype = build_method_decl (objc_inherit_code, NULL_TREE, yyvsp[-1].ttype, yyvsp[0].ttype);
                   4455:                ;
                   4456:     break;}
1.1.1.8 ! root     4457: case 469:
        !          4458: #line 2592 "objc-parse.y"
        !          4459: { current_declspecs = TREE_VALUE (declspec_stack);
        !          4460:                  prefix_attributes = TREE_PURPOSE (declspec_stack);
        !          4461:                  declspec_stack = TREE_CHAIN (declspec_stack);
        !          4462:                  resume_momentary (yyvsp[-2].itype); ;
1.1       root     4463:     break;}
1.1.1.8 ! root     4464: case 470:
        !          4465: #line 2597 "objc-parse.y"
1.1       root     4466: { shadow_tag (yyvsp[-1].ttype); ;
                   4467:     break;}
1.1.1.8 ! root     4468: case 471:
        !          4469: #line 2599 "objc-parse.y"
1.1.1.4   root     4470: { pedwarn ("empty declaration"); ;
1.1       root     4471:     break;}
1.1.1.8 ! root     4472: case 472:
        !          4473: #line 2604 "objc-parse.y"
1.1       root     4474: { push_parm_decl (yyvsp[0].ttype); ;
                   4475:     break;}
1.1.1.8 ! root     4476: case 473:
        !          4477: #line 2606 "objc-parse.y"
1.1       root     4478: { push_parm_decl (yyvsp[0].ttype); ;
                   4479:     break;}
1.1.1.8 ! root     4480: case 474:
        !          4481: #line 2614 "objc-parse.y"
        !          4482: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          4483:                                                         yyvsp[-1].ttype),
        !          4484:                                        build_tree_list (prefix_attributes,
        !          4485:                                                         yyvsp[0].ttype)); ;
1.1       root     4486:     break;}
1.1.1.8 ! root     4487: case 475:
        !          4488: #line 2619 "objc-parse.y"
        !          4489: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          4490:                                                         yyvsp[-1].ttype),
        !          4491:                                        build_tree_list (prefix_attributes,
        !          4492:                                                         yyvsp[0].ttype)); ;
        !          4493:     break;}
        !          4494: case 476:
        !          4495: #line 2624 "objc-parse.y"
        !          4496: { yyval.ttype = build_tree_list (build_tree_list (current_declspecs,
        !          4497:                                                         yyvsp[-1].ttype),
        !          4498:                                        build_tree_list (prefix_attributes,
        !          4499:                                                         yyvsp[0].ttype)); ;
        !          4500:     break;}
        !          4501: case 477:
        !          4502: #line 2632 "objc-parse.y"
1.1       root     4503: {
                   4504:                  yyval.ttype = NULL_TREE;
                   4505:                ;
                   4506:     break;}
1.1.1.8 ! root     4507: case 478:
        !          4508: #line 2636 "objc-parse.y"
1.1       root     4509: {
                   4510:                  /* oh what a kludge! */
                   4511:                  yyval.ttype = (tree)1;
                   4512:                ;
                   4513:     break;}
1.1.1.8 ! root     4514: case 479:
        !          4515: #line 2641 "objc-parse.y"
1.1       root     4516: {
                   4517:                  pushlevel (0);
                   4518:                ;
                   4519:     break;}
1.1.1.8 ! root     4520: case 480:
        !          4521: #line 2645 "objc-parse.y"
1.1       root     4522: {
                   4523:                  /* returns a tree list node generated by get_parm_info */
                   4524:                  yyval.ttype = yyvsp[0].ttype;
                   4525:                  poplevel (0, 0, 0);
                   4526:                ;
                   4527:     break;}
1.1.1.8 ! root     4528: case 483:
        !          4529: #line 2660 "objc-parse.y"
1.1       root     4530: {
                   4531:                  yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype);
                   4532:                ;
                   4533:     break;}
1.1.1.8 ! root     4534: case 488:
        !          4535: #line 2673 "objc-parse.y"
1.1       root     4536: { yyval.ttype = get_identifier (token_buffer); ;
                   4537:     break;}
1.1.1.8 ! root     4538: case 489:
        !          4539: #line 2674 "objc-parse.y"
1.1       root     4540: { yyval.ttype = get_identifier (token_buffer); ;
                   4541:     break;}
1.1.1.8 ! root     4542: case 490:
        !          4543: #line 2675 "objc-parse.y"
1.1       root     4544: { yyval.ttype = get_identifier (token_buffer); ;
                   4545:     break;}
1.1.1.8 ! root     4546: case 491:
        !          4547: #line 2676 "objc-parse.y"
1.1       root     4548: { yyval.ttype = get_identifier (token_buffer); ;
                   4549:     break;}
1.1.1.8 ! root     4550: case 492:
        !          4551: #line 2677 "objc-parse.y"
1.1       root     4552: { yyval.ttype = get_identifier (token_buffer); ;
                   4553:     break;}
1.1.1.8 ! root     4554: case 493:
        !          4555: #line 2678 "objc-parse.y"
1.1       root     4556: { yyval.ttype = get_identifier (token_buffer); ;
                   4557:     break;}
1.1.1.8 ! root     4558: case 494:
        !          4559: #line 2679 "objc-parse.y"
1.1       root     4560: { yyval.ttype = get_identifier (token_buffer); ;
                   4561:     break;}
1.1.1.8 ! root     4562: case 495:
        !          4563: #line 2680 "objc-parse.y"
1.1       root     4564: { yyval.ttype = get_identifier (token_buffer); ;
                   4565:     break;}
1.1.1.8 ! root     4566: case 496:
        !          4567: #line 2681 "objc-parse.y"
1.1       root     4568: { yyval.ttype = get_identifier (token_buffer); ;
                   4569:     break;}
1.1.1.8 ! root     4570: case 497:
        !          4571: #line 2682 "objc-parse.y"
1.1       root     4572: { yyval.ttype = get_identifier (token_buffer); ;
                   4573:     break;}
1.1.1.8 ! root     4574: case 498:
        !          4575: #line 2683 "objc-parse.y"
1.1       root     4576: { yyval.ttype = get_identifier (token_buffer); ;
                   4577:     break;}
1.1.1.8 ! root     4578: case 499:
        !          4579: #line 2684 "objc-parse.y"
1.1       root     4580: { yyval.ttype = get_identifier (token_buffer); ;
                   4581:     break;}
1.1.1.8 ! root     4582: case 500:
        !          4583: #line 2685 "objc-parse.y"
1.1       root     4584: { yyval.ttype = get_identifier (token_buffer); ;
                   4585:     break;}
1.1.1.8 ! root     4586: case 501:
        !          4587: #line 2686 "objc-parse.y"
1.1       root     4588: { yyval.ttype = get_identifier (token_buffer); ;
                   4589:     break;}
1.1.1.8 ! root     4590: case 502:
        !          4591: #line 2687 "objc-parse.y"
1.1       root     4592: { yyval.ttype = get_identifier (token_buffer); ;
                   4593:     break;}
1.1.1.8 ! root     4594: case 503:
        !          4595: #line 2688 "objc-parse.y"
1.1       root     4596: { yyval.ttype = get_identifier (token_buffer); ;
                   4597:     break;}
1.1.1.8 ! root     4598: case 504:
        !          4599: #line 2689 "objc-parse.y"
1.1       root     4600: { yyval.ttype = get_identifier (token_buffer); ;
                   4601:     break;}
1.1.1.8 ! root     4602: case 505:
        !          4603: #line 2690 "objc-parse.y"
1.1       root     4604: { yyval.ttype = get_identifier (token_buffer); ;
                   4605:     break;}
1.1.1.8 ! root     4606: case 506:
        !          4607: #line 2691 "objc-parse.y"
1.1       root     4608: { yyval.ttype = get_identifier (token_buffer); ;
                   4609:     break;}
1.1.1.8 ! root     4610: case 509:
        !          4611: #line 2697 "objc-parse.y"
1.1       root     4612: {
                   4613:                  yyval.ttype = build_keyword_decl (yyvsp[-5].ttype, yyvsp[-2].ttype, yyvsp[0].ttype);
                   4614:                ;
                   4615:     break;}
1.1.1.8 ! root     4616: case 510:
        !          4617: #line 2702 "objc-parse.y"
1.1       root     4618: {
                   4619:                  yyval.ttype = build_keyword_decl (yyvsp[-2].ttype, NULL_TREE, yyvsp[0].ttype);
                   4620:                ;
                   4621:     break;}
1.1.1.8 ! root     4622: case 511:
        !          4623: #line 2707 "objc-parse.y"
1.1       root     4624: {
                   4625:                  yyval.ttype = build_keyword_decl (NULL_TREE, yyvsp[-2].ttype, yyvsp[0].ttype);
                   4626:                ;
                   4627:     break;}
1.1.1.8 ! root     4628: case 512:
        !          4629: #line 2712 "objc-parse.y"
1.1       root     4630: {
                   4631:                  yyval.ttype = build_keyword_decl (NULL_TREE, NULL_TREE, yyvsp[0].ttype);
                   4632:                ;
                   4633:     break;}
1.1.1.8 ! root     4634: case 516:
        !          4635: #line 2725 "objc-parse.y"
1.1       root     4636: {
                   4637:                  yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype);
                   4638:                ;
                   4639:     break;}
1.1.1.8 ! root     4640: case 517:
        !          4641: #line 2733 "objc-parse.y"
1.1       root     4642: {
                   4643:                  if (TREE_CHAIN (yyvsp[0].ttype) == NULL_TREE)
                   4644:                    /* just return the expr., remove a level of indirection */
                   4645:                    yyval.ttype = TREE_VALUE (yyvsp[0].ttype);
                   4646:                   else
                   4647:                    /* we have a comma expr., we will collapse later */
                   4648:                    yyval.ttype = yyvsp[0].ttype;
                   4649:                ;
                   4650:     break;}
1.1.1.8 ! root     4651: case 518:
        !          4652: #line 2745 "objc-parse.y"
1.1       root     4653: {
                   4654:                  yyval.ttype = build_tree_list (yyvsp[-2].ttype, yyvsp[0].ttype);
                   4655:                ;
                   4656:     break;}
1.1.1.8 ! root     4657: case 519:
        !          4658: #line 2749 "objc-parse.y"
1.1       root     4659: {
                   4660:                  yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype);
                   4661:                ;
                   4662:     break;}
1.1.1.8 ! root     4663: case 521:
        !          4664: #line 2757 "objc-parse.y"
1.1       root     4665: {
                   4666:                  yyval.ttype = get_class_reference (yyvsp[0].ttype);
                   4667:                ;
                   4668:     break;}
1.1.1.8 ! root     4669: case 522:
        !          4670: #line 2764 "objc-parse.y"
1.1       root     4671: { objc_receiver_context = 1; ;
                   4672:     break;}
1.1.1.8 ! root     4673: case 523:
        !          4674: #line 2766 "objc-parse.y"
1.1       root     4675: { objc_receiver_context = 0; ;
                   4676:     break;}
1.1.1.8 ! root     4677: case 524:
        !          4678: #line 2768 "objc-parse.y"
1.1       root     4679: {
                   4680:                  yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype);
                   4681:                ;
                   4682:     break;}
1.1.1.8 ! root     4683: case 528:
        !          4684: #line 2781 "objc-parse.y"
1.1       root     4685: {
                   4686:                  yyval.ttype = chainon (yyvsp[-1].ttype, yyvsp[0].ttype);
                   4687:                ;
                   4688:     break;}
1.1.1.8 ! root     4689: case 529:
        !          4690: #line 2788 "objc-parse.y"
1.1       root     4691: {
                   4692:                  yyval.ttype = build_tree_list (yyvsp[-1].ttype, NULL_TREE);
                   4693:                ;
                   4694:     break;}
1.1.1.8 ! root     4695: case 530:
        !          4696: #line 2792 "objc-parse.y"
1.1       root     4697: {
                   4698:                  yyval.ttype = build_tree_list (NULL_TREE, NULL_TREE);
                   4699:                ;
                   4700:     break;}
1.1.1.8 ! root     4701: case 531:
        !          4702: #line 2799 "objc-parse.y"
1.1       root     4703: {
                   4704:                  yyval.ttype = yyvsp[-1].ttype;
                   4705:                ;
                   4706:     break;}
1.1.1.8 ! root     4707: case 532:
        !          4708: #line 2806 "objc-parse.y"
1.1.1.5   root     4709: {
                   4710:                  yyval.ttype = yyvsp[-1].ttype;
                   4711:                ;
                   4712:     break;}
1.1.1.8 ! root     4713: case 533:
        !          4714: #line 2815 "objc-parse.y"
1.1       root     4715: {
                   4716:                  yyval.ttype = groktypename (yyvsp[-1].ttype);
                   4717:                ;
                   4718:     break;}
                   4719: }
                   4720:    /* the action file gets copied in in place of this dollarsign */
1.1.1.6   root     4721: #line 480 "/usr/local/lib/bison.simple"
1.1       root     4722: 
                   4723:   yyvsp -= yylen;
                   4724:   yyssp -= yylen;
                   4725: #ifdef YYLSP_NEEDED
                   4726:   yylsp -= yylen;
                   4727: #endif
                   4728: 
                   4729: #if YYDEBUG != 0
                   4730:   if (yydebug)
                   4731:     {
                   4732:       short *ssp1 = yyss - 1;
                   4733:       fprintf (stderr, "state stack now");
                   4734:       while (ssp1 != yyssp)
                   4735:        fprintf (stderr, " %d", *++ssp1);
                   4736:       fprintf (stderr, "\n");
                   4737:     }
                   4738: #endif
                   4739: 
                   4740:   *++yyvsp = yyval;
                   4741: 
                   4742: #ifdef YYLSP_NEEDED
                   4743:   yylsp++;
                   4744:   if (yylen == 0)
                   4745:     {
                   4746:       yylsp->first_line = yylloc.first_line;
                   4747:       yylsp->first_column = yylloc.first_column;
                   4748:       yylsp->last_line = (yylsp-1)->last_line;
                   4749:       yylsp->last_column = (yylsp-1)->last_column;
                   4750:       yylsp->text = 0;
                   4751:     }
                   4752:   else
                   4753:     {
                   4754:       yylsp->last_line = (yylsp+yylen-1)->last_line;
                   4755:       yylsp->last_column = (yylsp+yylen-1)->last_column;
                   4756:     }
                   4757: #endif
                   4758: 
                   4759:   /* Now "shift" the result of the reduction.
                   4760:      Determine what state that goes to,
                   4761:      based on the state we popped back to
                   4762:      and the rule number reduced by.  */
                   4763: 
                   4764:   yyn = yyr1[yyn];
                   4765: 
                   4766:   yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
                   4767:   if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
                   4768:     yystate = yytable[yystate];
                   4769:   else
                   4770:     yystate = yydefgoto[yyn - YYNTBASE];
                   4771: 
                   4772:   goto yynewstate;
                   4773: 
                   4774: yyerrlab:   /* here on detecting error */
                   4775: 
                   4776:   if (! yyerrstatus)
                   4777:     /* If not already recovering from an error, report this error.  */
                   4778:     {
                   4779:       ++yynerrs;
                   4780: 
                   4781: #ifdef YYERROR_VERBOSE
                   4782:       yyn = yypact[yystate];
                   4783: 
                   4784:       if (yyn > YYFLAG && yyn < YYLAST)
                   4785:        {
                   4786:          int size = 0;
                   4787:          char *msg;
                   4788:          int x, count;
                   4789: 
                   4790:          count = 0;
1.1.1.6   root     4791:          /* Start X at -yyn if nec to avoid negative indexes in yycheck.  */
                   4792:          for (x = (yyn < 0 ? -yyn : 0);
                   4793:               x < (sizeof(yytname) / sizeof(char *)); x++)
1.1       root     4794:            if (yycheck[x + yyn] == x)
                   4795:              size += strlen(yytname[x]) + 15, count++;
                   4796:          msg = (char *) malloc(size + 15);
                   4797:          if (msg != 0)
                   4798:            {
                   4799:              strcpy(msg, "parse error");
                   4800: 
                   4801:              if (count < 5)
                   4802:                {
                   4803:                  count = 0;
1.1.1.6   root     4804:                  for (x = (yyn < 0 ? -yyn : 0);
                   4805:                       x < (sizeof(yytname) / sizeof(char *)); x++)
1.1       root     4806:                    if (yycheck[x + yyn] == x)
                   4807:                      {
                   4808:                        strcat(msg, count == 0 ? ", expecting `" : " or `");
                   4809:                        strcat(msg, yytname[x]);
                   4810:                        strcat(msg, "'");
                   4811:                        count++;
                   4812:                      }
                   4813:                }
                   4814:              yyerror(msg);
                   4815:              free(msg);
                   4816:            }
                   4817:          else
                   4818:            yyerror ("parse error; also virtual memory exceeded");
                   4819:        }
                   4820:       else
                   4821: #endif /* YYERROR_VERBOSE */
                   4822:        yyerror("parse error");
                   4823:     }
                   4824: 
1.1.1.6   root     4825:   goto yyerrlab1;
1.1       root     4826: yyerrlab1:   /* here on error raised explicitly by an action */
                   4827: 
                   4828:   if (yyerrstatus == 3)
                   4829:     {
                   4830:       /* if just tried and failed to reuse lookahead token after an error, discard it.  */
                   4831: 
                   4832:       /* return failure if at end of input */
                   4833:       if (yychar == YYEOF)
                   4834:        YYABORT;
                   4835: 
                   4836: #if YYDEBUG != 0
                   4837:       if (yydebug)
                   4838:        fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
                   4839: #endif
                   4840: 
                   4841:       yychar = YYEMPTY;
                   4842:     }
                   4843: 
                   4844:   /* Else will try to reuse lookahead token
                   4845:      after shifting the error token.  */
                   4846: 
                   4847:   yyerrstatus = 3;             /* Each real token shifted decrements this */
                   4848: 
                   4849:   goto yyerrhandle;
                   4850: 
                   4851: yyerrdefault:  /* current state does not do anything special for the error token. */
                   4852: 
                   4853: #if 0
                   4854:   /* This is wrong; only states that explicitly want error tokens
                   4855:      should shift them.  */
                   4856:   yyn = yydefact[yystate];  /* If its default is to accept any token, ok.  Otherwise pop it.*/
                   4857:   if (yyn) goto yydefault;
                   4858: #endif
                   4859: 
                   4860: yyerrpop:   /* pop the current state because it cannot handle the error token */
                   4861: 
                   4862:   if (yyssp == yyss) YYABORT;
                   4863:   yyvsp--;
                   4864:   yystate = *--yyssp;
                   4865: #ifdef YYLSP_NEEDED
                   4866:   yylsp--;
                   4867: #endif
                   4868: 
                   4869: #if YYDEBUG != 0
                   4870:   if (yydebug)
                   4871:     {
                   4872:       short *ssp1 = yyss - 1;
                   4873:       fprintf (stderr, "Error: state stack now");
                   4874:       while (ssp1 != yyssp)
                   4875:        fprintf (stderr, " %d", *++ssp1);
                   4876:       fprintf (stderr, "\n");
                   4877:     }
                   4878: #endif
                   4879: 
                   4880: yyerrhandle:
                   4881: 
                   4882:   yyn = yypact[yystate];
                   4883:   if (yyn == YYFLAG)
                   4884:     goto yyerrdefault;
                   4885: 
                   4886:   yyn += YYTERROR;
                   4887:   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
                   4888:     goto yyerrdefault;
                   4889: 
                   4890:   yyn = yytable[yyn];
                   4891:   if (yyn < 0)
                   4892:     {
                   4893:       if (yyn == YYFLAG)
                   4894:        goto yyerrpop;
                   4895:       yyn = -yyn;
                   4896:       goto yyreduce;
                   4897:     }
                   4898:   else if (yyn == 0)
                   4899:     goto yyerrpop;
                   4900: 
                   4901:   if (yyn == YYFINAL)
                   4902:     YYACCEPT;
                   4903: 
                   4904: #if YYDEBUG != 0
                   4905:   if (yydebug)
                   4906:     fprintf(stderr, "Shifting error token, ");
                   4907: #endif
                   4908: 
                   4909:   *++yyvsp = yylval;
                   4910: #ifdef YYLSP_NEEDED
                   4911:   *++yylsp = yylloc;
                   4912: #endif
                   4913: 
                   4914:   yystate = yyn;
                   4915:   goto yynewstate;
                   4916: }
1.1.1.8 ! root     4917: #line 2820 "objc-parse.y"
1.1.1.4   root     4918: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.