/*******************************************************************************
* Copyright (c) 2006, 2015 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*********************************************************************************/
// This file was generated by LPG
package org.eclipse.cdt.internal.core.dom.lrparser.c99;
public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C99NoCastExpressionParsersym {
public interface IsKeyword {
public final static byte isKeyword[] = {0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0
};
};
public final static byte isKeyword[] = IsKeyword.isKeyword;
public final boolean isKeyword(int index) { return isKeyword[index] != 0; }
public interface BaseCheck {
public final static short baseCheck[] = {0,
0,0,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,3,1,
1,4,4,3,3,2,2,4,1,0,
1,1,2,2,2,2,2,2,2,2,
2,4,1,1,3,3,3,1,3,3,
1,3,3,1,3,3,3,3,1,3,
3,1,3,1,3,1,3,1,3,1,
3,1,5,1,3,3,3,3,3,3,
3,3,3,3,3,1,1,2,1,0,
1,3,1,1,1,1,1,1,1,1,
3,4,3,2,4,1,2,1,1,1,
2,5,7,5,1,0,7,2,5,9,
8,3,2,2,2,3,2,4,2,2,
2,2,2,1,1,1,1,2,1,2,
2,2,1,2,2,1,2,2,1,2,
2,1,2,2,1,3,1,3,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,6,
8,0,0,1,1,3,3,3,0,1,
0,1,2,4,2,1,1,1,3,1,
1,2,3,7,8,0,1,0,1,3,
1,3,1,1,1,1,1,1,3,1,
1,1,1,1,3,1,2,2,1,5,
3,1,3,5,1,3,1,3,2,4,
3,5,4,6,6,3,5,1,3,4,
5,6,0,1,2,1,3,1,1,3,
2,1,1,1,1,2,1,2,3,1,
1,1,3,1,2,2,2,3,4,5,
1,1,7,3,0,0,1,1,3,3,
4,1,1,2,3,2,3,2,1,0,
1,2,1,1,1,1,1,2,1,3,
6,4,2,4,1,1,-32,0,0,0,
0,0,0,0,0,0,0,-2,0,0,
0,0,0,0,0,0,0,0,0,-4,
-156,-115,0,-15,0,0,0,0,-70,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-167,0,-33,0,-104,0,0,0,0,
-78,0,0,-116,0,-16,0,-17,0,0,
0,0,0,0,0,-138,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-174,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-178,0,-128,-76,0,0,-48,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-34,0,0,0,-18,0,-42,
0,0,0,0,0,0,0,0,0,0,
0,0,-6,0,0,0,0,0,0,0,
0,-189,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-3,0,0,0,0,0,0,0,
0,0,0,-19,0,0,0,0,0,0,
0,0,0,0,0,-117,0,0,-118,0,
-119,0,0,0,-43,0,0,0,0,0,
0,0,0,0,0,0,-108,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-5,0,0,
0,0,0,0,0,-127,0,0,0,0,
0,0,0,0,0,0,-79,0,0,0,
0,0,0,0,0,0,-131,0,-158,0,
-55,0,0,0,0,0,0,0,0,0,
0,-122,0,0,0,0,0,0,0,0,
0,-20,0,-21,0,0,0,0,-27,0,
0,0,0,0,0,0,0,0,0,-22,
0,0,0,0,0,0,0,0,0,0,
0,-23,0,-188,0,-24,0,0,0,0,
-72,0,-12,0,0,0,0,0,0,0,
0,0,0,0,0,-56,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-57,0,0,0,
0,0,0,0,0,0,0,-25,0,0,
0,0,0,0,0,0,0,-58,0,0,
0,0,0,0,0,0,0,0,-26,0,
0,0,0,0,0,0,0,0,-59,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-60,
0,0,0,0,0,0,0,0,0,0,
-84,0,0,0,0,0,0,0,0,0,
-61,0,0,0,0,0,0,0,0,0,
0,-87,0,0,0,0,0,0,0,0,
0,-62,0,0,0,0,0,0,0,0,
0,0,-88,0,0,0,0,0,0,0,
0,0,-63,0,0,0,0,0,0,0,
0,0,0,-89,0,0,0,0,0,0,
0,0,0,-64,0,0,0,0,0,0,
0,0,0,0,-90,0,0,0,0,0,
0,0,0,0,-65,0,0,0,0,0,
0,0,0,0,0,-91,0,0,0,0,
0,0,0,0,0,-66,0,0,0,0,
0,0,0,0,0,0,-92,0,0,0,
0,0,0,0,0,0,-120,0,0,0,
0,0,0,0,0,0,0,-93,0,0,
0,0,0,0,0,0,0,-141,0,0,
0,0,0,0,0,0,0,0,-94,0,
0,0,0,0,0,0,0,0,-142,0,
0,0,0,0,0,0,0,0,0,-95,
0,0,0,0,0,0,0,0,0,-177,
0,0,0,0,0,0,0,0,0,0,
-134,0,0,0,0,0,0,0,0,-186,
0,0,0,0,0,0,0,0,0,0,
-96,0,0,0,0,0,0,0,0,-13,
0,0,0,0,0,0,0,-7,0,0,
0,0,0,0,0,-192,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-198,0,0,0,0,
0,0,0,0,0,0,-135,0,0,0,
0,0,0,0,0,-155,-170,0,-176,0,
0,-97,0,-8,0,0,0,0,0,0,
0,-206,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-54,0,0,0,0,0,0,0,0,
0,0,-130,0,0,0,0,0,0,-98,
-180,-191,0,0,0,0,-73,-99,0,-37,
0,0,0,0,0,0,0,0,0,-100,
-145,0,0,-110,0,0,0,0,0,0,
0,0,0,0,0,0,0,-200,-193,-124,
0,-187,0,0,0,0,0,-101,0,-102,
0,-146,0,0,0,0,0,0,0,0,
0,0,0,0,0,-35,0,-105,0,0,
0,0,0,0,0,0,0,0,0,0,
-184,-107,-83,0,-29,0,0,-51,0,0,
0,0,0,0,0,0,0,0,-121,0,
0,0,0,0,0,0,-69,0,0,0,
0,0,0,0,-52,0,0,0,0,0,
0,0,0,0,0,-164,0,0,0,-137,
-154,0,-30,0,-123,0,0,0,-183,0,
0,-67,0,0,0,0,-132,0,-136,0,
-81,0,0,0,-140,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-38,0,0,
0,0,0,0,0,0,0,-49,0,0,
0,0,0,0,0,0,0,0,0,0,
-50,0,0,0,0,0,0,0,0,0,
0,-205,0,0,0,-153,0,-157,-85,0,
0,-151,0,-171,-172,-175,0,-199,0,0,
-44,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-9,0,0,0,0,0,0,0,-166,0,
-45,0,0,0,0,0,0,0,0,0,
0,-46,0,0,0,0,0,0,0,0,
0,-47,0,0,0,0,0,0,0,0,
0,-71,0,0,-74,-86,-109,0,-112,-139,
-165,-204,0,-111,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-207,0,
0,0,0,0,0,0,0,0,0,0,
0,-147,0,0,0,0,-144,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-173,0,
0,-10,0,0,0,0,0,0,0,-11,
0,0,0,0,0,0,0,-31,-39,0,
0,0,0,0,0,0,0,-113,0,-40,
0,0,0,0,0,0,0,0,0,-68,
-126,-143,-162,0,-41,0,0,0,0,0,
0,0,0,0,0,-14,-129,-159,0,0,
0,0,-28,-36,0,0,0,0,-179,0,
-160,-148,-190,0,0,0,-185,0,0,0,
0,0,0,0,0,0,-196,0,-75,0,
0,0,0,0,0,0,0,0,0,0,
0,-77,0,0,0,-197,-80,0,0,0,
0,0,-106,-169,0,0,0,0,0,0,
-82,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-125,0,0,-152,-181,0,0,
0,0,-182,0,0,0,0,0,0,-133,
0,0,-168,0,0,0,-203,-1,-114,-163,
0,0,0,0,0,-53,0,0,0,0,
0,0,-150,-149,0,-202,0,0,0,-103,
0,0,0,0,0,0,0,0,0,0,
-201,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-161,-194,-195,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@Override
public final int baseCheck(int index) { return baseCheck[index]; }
public final static short rhs[] = baseCheck;
@Override
public final int rhs(int index) { return rhs[index]; };
public interface BaseAction {
public final static char baseAction[] = {
87,11,102,24,24,23,23,39,39,69,
69,1,1,2,2,2,2,3,3,3,
4,5,5,5,5,5,5,5,5,59,
59,70,6,6,6,6,6,6,6,6,
6,6,6,7,8,8,8,8,9,9,
9,10,10,10,12,12,12,12,12,13,
13,13,14,14,15,15,16,16,17,17,
18,18,19,19,20,20,20,20,20,20,
20,20,20,20,20,20,103,45,40,88,
88,72,72,47,104,104,104,104,104,104,
104,105,105,105,106,106,111,111,112,112,
107,107,108,108,108,114,114,109,109,109,
109,109,110,110,110,110,110,113,113,25,
25,25,25,25,28,28,28,78,78,73,
73,73,73,74,74,74,75,75,75,76,
76,76,77,77,77,115,115,116,116,117,
29,31,31,31,31,31,53,54,54,54,
54,54,54,54,54,54,54,54,54,63,
60,60,89,90,65,65,61,61,61,66,
79,79,80,80,67,67,67,49,91,91,
81,82,82,82,62,62,92,83,83,84,
84,68,68,21,22,22,22,30,48,48,
32,32,32,32,35,35,37,33,33,34,
38,38,118,118,36,119,119,93,93,26,
26,26,26,26,26,26,26,26,85,50,
50,50,50,27,56,56,55,55,55,57,
57,51,51,94,94,71,71,58,58,58,
41,41,41,42,43,43,43,44,44,44,
44,64,64,46,46,52,96,95,95,95,
95,86,97,98,98,99,99,100,100,120,
120,121,121,122,122,122,122,124,124,123,
123,123,125,126,126,87,87,1,781,17,
21,18,344,739,44,388,386,524,293,468,
634,632,662,650,718,666,74,91,135,213,
431,236,108,991,687,137,134,136,160,275,
20,17,21,18,344,739,44,388,386,524,
1154,468,634,632,662,650,718,666,74,1427,
139,166,519,239,71,31,31,143,146,149,
152,199,446,1269,71,187,246,1229,69,340,
1425,1579,1592,1597,1611,1213,424,20,17,21,
18,344,739,44,388,386,524,341,468,634,
632,662,650,718,666,74,281,335,20,17,
21,18,344,739,44,388,386,524,341,468,
634,632,662,650,718,666,74,281,1356,443,
293,195,282,583,25,210,104,384,1198,482,
20,17,21,18,344,43,44,388,386,524,
287,468,970,282,71,31,255,213,6,1198,
482,20,17,21,18,344,43,44,388,386,
844,289,288,482,20,17,21,18,344,43,
40,1076,453,20,17,21,18,344,739,44,
388,386,524,290,468,634,632,662,650,718,
666,74,281,482,20,17,21,18,344,739,
44,388,386,524,10,468,634,632,662,650,
718,666,74,91,24,342,71,186,282,281,
1279,71,188,294,1198,482,20,17,21,18,
344,43,44,388,386,865,291,540,20,17,
21,18,344,739,44,388,386,524,1634,468,
634,632,662,650,718,666,74,1531,511,20,
17,21,18,344,41,340,305,20,17,21,
18,344,739,44,388,386,524,429,468,634,
632,662,650,718,666,74,1532,189,179,163,
240,482,20,17,21,18,344,43,44,388,
386,524,31,468,634,632,662,1180,135,213,
254,213,327,396,14,137,134,136,160,482,
20,17,21,18,344,739,44,388,386,524,
516,468,634,632,662,650,718,666,74,92,
139,166,156,536,124,1131,243,143,146,149,
152,295,446,482,20,17,21,18,344,34,
1425,1579,1592,1597,1611,1213,482,20,17,21,
18,344,739,44,388,386,524,275,468,634,
632,662,650,718,666,74,85,482,20,17,
21,18,344,739,44,388,386,524,172,468,
634,632,662,650,718,666,74,84,482,20,
17,21,18,344,739,44,388,386,524,530,
468,634,632,662,650,718,666,74,83,482,
20,17,21,18,344,739,44,388,386,524,
283,468,634,632,662,650,718,666,74,82,
482,20,17,21,18,344,739,44,388,386,
524,569,468,634,632,662,650,718,666,74,
81,482,20,17,21,18,344,739,44,388,
386,524,151,468,634,632,662,650,718,666,
74,80,482,20,17,21,18,344,739,44,
388,386,524,194,468,634,632,662,650,718,
666,74,79,482,20,17,21,18,344,739,
44,388,386,524,30,468,634,632,662,650,
718,666,74,78,482,20,17,21,18,344,
739,44,388,386,524,441,468,634,632,662,
650,718,666,74,77,482,20,17,21,18,
344,739,44,388,386,524,470,468,634,632,
662,650,718,666,74,76,482,20,17,21,
18,344,739,44,388,386,524,500,468,634,
632,662,650,718,666,74,75,482,20,17,
21,18,344,739,44,388,386,524,313,468,
634,632,662,650,718,666,74,73,482,20,
17,21,18,344,739,44,388,386,524,343,
468,634,632,662,650,718,666,74,1548,482,
20,17,21,18,344,739,44,388,386,524,
44,468,634,632,662,650,718,666,74,1561,
482,20,17,21,18,344,43,44,388,386,
524,119,468,634,632,662,650,718,666,93,
482,20,17,21,18,344,43,44,388,386,
524,110,468,634,632,662,650,718,666,93,
482,20,17,21,18,344,33,1563,482,20,
17,21,18,344,43,39,482,20,17,21,
18,344,43,44,388,386,524,212,468,634,
632,662,650,718,666,93,482,20,17,21,
18,344,43,44,388,386,524,31,468,634,
632,662,650,718,666,93,657,683,1637,71,
296,1352,157,1657,482,20,17,21,18,344,
43,38,482,20,17,21,18,344,43,44,
388,386,524,202,468,634,632,662,650,718,
666,93,482,20,17,21,18,344,43,44,
388,386,524,611,468,634,632,662,650,1178,
344,436,71,298,1562,1489,1567,50,619,203,
482,20,17,21,18,344,43,44,802,274,
562,699,255,213,163,218,1182,221,1462,223,
224,229,1533,276,267,1137,671,272,557,465,
97,263,71,1354,277,254,213,274,487,1691,
520,264,656,218,1182,221,1462,223,224,229,
255,213,267,1137,671,272,352,1285,641,1712,
218,1182,221,1462,223,224,229,513,228,1429,
445,683,549,189,179,292,1712,261,482,20,
17,21,18,344,43,44,388,386,524,490,
468,634,632,1130,135,213,89,97,1530,586,
210,138,134,136,160,482,20,17,21,18,
344,43,44,388,386,524,705,468,634,1138,
31,501,1354,292,1212,640,140,166,284,259,
1676,1261,292,144,147,150,153,626,446,662,
1691,458,274,1265,1349,377,19,1603,219,1182,
221,1462,223,224,229,1680,609,269,1137,671,
272,218,1182,221,1462,223,224,229,482,20,
17,21,18,344,43,44,823,1358,482,20,
17,21,18,344,43,44,388,386,524,209,
1011,482,20,17,21,18,344,43,44,388,
386,524,259,1082,1077,1355,31,541,394,292,
198,200,684,1691,582,688,661,1604,623,1559,
1596,482,20,17,21,18,344,43,44,388,
386,886,23,539,218,1182,221,1462,223,224,
229,482,20,17,21,18,344,43,37,490,
1358,482,20,17,21,18,344,43,44,388,
386,907,482,20,17,21,18,344,43,44,
388,928,482,20,17,21,18,344,43,44,
388,949,253,199,200,232,153,153,180,292,
97,31,241,1518,365,20,17,21,18,344,
43,36,1643,1757,1757,277,135,213,274,595,
22,241,273,142,134,136,160,1348,246,1757,
1757,1757,570,267,1137,671,272,365,20,17,
21,18,344,43,36,1757,1265,1757,141,166,
1429,219,1182,221,1462,223,224,229,227,490,
1757,247,482,20,17,21,18,344,43,36,
482,20,17,21,18,344,43,35,116,482,
20,17,21,18,344,43,47,1757,413,1237,
482,20,17,21,18,344,43,46,664,607,
374,153,153,413,274,482,20,17,21,18,
344,43,45,1123,607,1212,31,292,153,267,
1137,671,272,31,31,243,242,317,1123,163,
1212,153,97,153,317,513,266,490,1603,259,
279,197,244,1547,1757,1277,28,490,197,610,
254,213,1198,1256,259,245,87,295,1547,1212,
1277,1263,631,87,87,1508,494,652,1263,1426,
135,213,1508,711,501,1354,204,145,134,136,
160,673,1256,135,213,1169,181,1215,135,213,
148,134,136,160,1272,151,134,136,160,274,
1265,1757,135,213,163,1757,1757,48,545,154,
134,136,160,142,269,1137,671,272,607,607,
614,1757,1757,95,607,254,213,153,395,403,
403,607,197,1123,607,194,31,1757,197,513,
1650,1638,209,292,645,1123,490,513,197,1757,
634,297,278,231,1757,607,372,1211,1355,259,
445,97,372,1713,1757,1277,280,1757,87,1123,
1757,259,372,315,192,1673,87,1277,1757,1757,
192,1150,292,292,342,205,1389,1653,1212,938,
193,1757,1577,1653,1757,260,28,1757,1757,1757,
1757,1714,1198,1757,1757,225,230,234,1757,1757,
1757,1449,1757,1757,1757,328,1757,0,20,179,
0,1,1983,0,1,1994,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@Override
public final int baseAction(int index) { return baseAction[index]; }
public final static char lhs[] = baseAction;
@Override
public final int lhs(int index) { return lhs[index]; };
public interface TermCheck {
public final static byte termCheck[] = {0,
0,1,2,3,4,0,6,7,8,0,
10,11,12,0,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,0,
0,31,32,33,34,35,36,37,38,39,
40,41,42,0,44,45,46,0,1,0,
3,2,5,6,7,8,47,48,9,12,
55,56,57,58,17,18,19,20,0,22,
0,1,4,3,61,62,47,48,31,32,
33,34,35,36,37,38,39,40,41,42,
43,44,45,46,0,1,0,3,51,5,
6,7,8,0,61,62,12,0,1,0,
3,17,18,19,20,0,22,2,0,4,
13,53,54,0,9,31,32,33,34,35,
36,37,38,39,40,41,42,43,44,45,
46,0,1,0,3,51,5,6,7,8,
0,0,0,12,4,0,0,5,17,18,
19,20,0,22,55,56,57,58,6,7,
8,0,31,32,33,34,35,36,37,38,
39,40,41,42,43,44,45,46,0,1,
0,3,51,0,6,7,8,4,0,1,
12,3,50,53,54,17,18,19,20,0,
22,55,56,57,58,6,7,8,63,31,
32,33,34,35,36,37,38,39,40,41,
42,0,44,45,46,0,65,6,7,8,
0,1,0,12,9,0,53,54,17,18,
19,20,0,22,2,10,11,5,0,1,
2,9,31,32,33,34,35,36,37,38,
39,40,41,42,0,1,2,3,4,5,
0,1,30,3,10,11,12,52,14,15,
16,0,0,13,0,21,5,23,24,25,
26,27,28,9,0,1,2,3,4,5,
68,69,0,0,10,11,12,59,14,15,
16,30,10,11,50,21,0,23,24,25,
26,27,28,0,0,1,2,3,4,5,
14,0,0,0,10,11,5,13,14,15,
16,0,10,11,50,21,5,23,24,25,
26,27,28,0,0,1,2,3,4,5,
29,30,80,0,10,11,0,43,14,15,
16,30,6,7,8,21,13,23,24,25,
26,27,28,0,0,1,2,3,4,6,
7,8,0,0,10,11,63,5,14,15,
16,0,0,0,50,21,4,23,24,25,
26,27,28,0,1,2,3,4,0,1,
0,3,30,10,11,0,13,14,15,16,
0,6,7,8,21,51,23,24,25,26,
27,28,0,1,2,3,4,0,1,29,
3,49,10,11,0,13,14,15,16,0,
6,7,8,21,0,23,24,25,26,27,
28,0,1,2,3,4,0,47,48,0,
0,10,11,0,5,14,15,16,5,0,
0,1,21,3,23,24,25,26,27,28,
0,1,2,3,4,0,47,48,0,0,
10,11,29,5,14,15,16,0,1,0,
3,21,43,23,24,25,26,27,28,0,
1,2,3,4,0,1,47,48,0,10,
11,65,4,14,15,16,0,1,2,66,
21,0,23,24,25,26,27,28,0,0,
2,2,4,5,6,7,8,9,9,64,
12,0,0,64,66,17,18,19,20,60,
22,9,0,49,0,1,2,5,30,70,
71,72,73,74,75,76,77,78,79,0,
0,1,2,0,4,6,7,8,0,9,
59,12,0,0,0,0,17,18,19,20,
0,22,14,0,52,43,6,7,8,0,
0,60,12,4,0,0,13,17,18,19,
20,0,22,13,29,0,0,6,7,8,
0,0,49,12,9,0,0,0,17,18,
19,20,0,22,13,0,0,0,6,7,
8,59,0,0,12,29,0,0,2,17,
18,19,20,49,22,9,13,0,0,1,
2,15,16,5,0,1,2,9,4,0,
0,29,2,9,4,0,29,0,0,9,
60,0,13,0,0,0,0,0,30,0,
13,13,0,0,0,0,0,0,52,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,67,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@Override
public final int termCheck(int index) { return termCheck[index]; }
public interface TermAction {
public final static char termAction[] = {0,
1757,1768,1546,1769,1492,59,1971,1972,1973,54,
1381,1084,1920,62,1500,1020,673,1921,1919,1974,
1922,578,1918,1770,1771,1772,1773,1028,483,58,
1,1925,1930,1929,1927,1928,1926,1931,1932,1924,
1933,1934,1935,63,1281,597,381,1757,1,270,
1,1659,191,1,1,1,1402,1412,349,1,
1391,1361,545,470,1,1,1,1,48,1,
1757,1768,1535,1769,1331,1318,1402,1412,1,1,
1,1,1,1,1,1,1,1,1,1,
191,1,1,1,1757,1,253,1,1953,190,
1,1,1,182,1331,1318,1,1757,1768,61,
1769,1,1,1,1,265,1,1422,183,1,
1067,1520,1509,286,349,1,1,1,1,1,
1,1,1,1,1,1,1,190,1,1,
1,1757,1,1757,1,1953,191,1,1,1,
50,1757,1757,1,1535,66,60,1761,1,1,
1,1,1757,1,1391,1361,545,470,1971,1972,
1973,70,1,1,1,1,1,1,1,1,
1,1,1,1,191,1,1,1,1757,1768,
1757,1769,1953,49,1971,1972,1973,1535,185,2783,
1920,2783,1760,1520,1509,1921,1919,1974,1922,248,
1918,1391,1361,545,470,1971,1972,1973,1245,1925,
1930,1929,1927,1928,1926,1931,1932,1924,1933,1934,
1935,129,1281,597,381,1757,611,1971,1972,1973,
1757,1995,72,1920,980,51,1520,1509,1921,1919,
1974,1922,1,1918,1422,1308,1140,1763,1,1983,
1168,349,1925,1930,1929,1927,1928,1926,1931,1932,
1924,1933,1934,1935,1,1768,1546,1769,1434,1761,
1757,1768,1762,1769,1381,1084,557,1079,1500,1020,
673,1757,1757,1260,271,578,1763,1770,1771,1772,
1773,1028,483,349,1757,1768,1546,1769,1467,1761,
1112,1666,53,1757,1381,1084,959,1056,1500,1020,
673,1762,1308,1140,1760,578,64,1770,1771,1772,
1773,1028,483,1757,1,1768,1546,1769,1492,29,
449,1757,52,67,1381,1084,1763,2666,1500,1020,
673,1,1308,1140,1760,578,90,1770,1771,1772,
1773,1028,483,1757,1757,1768,1546,1769,1492,1761,
1432,1762,1747,1757,1381,1084,249,29,1500,1020,
673,90,1,1,1,578,2666,1770,1771,1772,
1773,1028,483,250,1757,1,1,1,1,1,
1,1,1,1757,1,1,1245,1763,1,1,
1,1757,1,1757,1760,1,253,1,1,1,
1,1,1,1,1768,1546,1769,1492,184,2791,
88,2791,1762,1381,1084,251,2666,1500,1020,673,
57,1971,1972,1973,578,2073,1770,1771,1772,1773,
1028,483,1757,1768,1546,1769,1492,206,2792,639,
2792,2015,1381,1084,252,2666,1500,1020,673,56,
1971,1972,1973,578,1757,1770,1771,1772,1773,1028,
483,1757,1768,1546,1769,1492,71,1402,1412,1757,
1757,1381,1084,1757,1765,1500,1020,673,1767,55,
208,1768,578,1769,1770,1771,1772,1773,1028,483,
1757,1768,1553,1769,1492,68,1402,1412,1,69,
1381,1084,1342,1767,1500,1020,673,207,1172,43,
1172,578,1764,1770,1771,1772,1773,1028,483,1,
1768,1546,1769,1492,1,1754,1402,1412,1757,1381,
1084,611,1170,1500,1020,673,1,1983,1168,1766,
578,1757,1770,1771,1772,1773,1028,483,20,222,
1748,1660,1748,1748,179,179,179,1748,349,1218,
179,211,292,1218,1766,179,179,179,179,896,
179,1036,285,2015,253,1983,1168,376,1748,875,
854,833,812,791,749,770,728,707,686,130,
262,1983,1151,1,1,1971,1972,1973,65,349,
917,1920,201,1757,1757,256,1921,1919,1974,1922,
131,1918,449,42,1132,376,1971,1972,1973,1757,
1757,1000,1920,1430,1,1757,2666,1921,1919,1974,
1922,132,1918,622,1674,220,30,1971,1972,1973,
1757,1757,2015,1920,349,1757,1757,1757,1921,1919,
1974,1922,133,1918,1346,1757,1757,1757,1971,1972,
1973,1092,30,1757,1920,417,32,207,1196,1921,
1919,1974,1922,2014,1918,1554,1431,1757,1,1751,
1151,1783,1784,1763,268,1983,1151,349,253,189,
268,1786,1422,349,253,1757,2601,189,189,349,
492,1757,185,1757,1757,1757,1757,1757,1762,1757,
184,206,1757,1757,1757,1757,1757,1757,464,1757,
1757,1757,1757,1757,1757,1757,1757,1757,1757,1757,
1757,1757,1757,374
};
};
public final static char termAction[] = TermAction.termAction;
@Override
public final int termAction(int index) { return termAction[index]; }
public interface Asb {
public final static char asb[] = {0,
375,1,54,41,54,54,54,54,54,54,
54,54,54,334,3,23,20,27,25,33,
31,35,34,37,36,9,54,334,170,170,
291,334,263,263,203,54,54,54,54,54,
54,54,54,54,54,54,54,54,54,54,
54,54,54,54,54,54,54,54,54,54,
54,54,54,54,54,54,170,98,295,48,
233,168,167,266,278,96,278,96,96,278,
96,278,348,124,170,45,20,20,25,25,
25,25,23,23,31,27,27,34,33,303,
36,35,393,200,98,291,295,104,45,371,
52,170,305,236,96,263,263,96,263,54,
200,80,295,286,371,45,51,48,170,289,
348,169,238,98,173,98,222,80,286,286,
54,54,45,52,233,298,297,295,238,170,
98,173,222,222,224,101,286,371,45,45,
170,305,236,289,173,200,71,173,222,224,
228,224,200,78,231,263,54,100,371,286,
238,173,73,224,200,54,263,3,82,45,
263,54,286,170,169,200,429,54,428,67,
295,200,45,264,73,54,67
};
};
public final static char asb[] = Asb.asb;
@Override
public final int asb(int index) { return asb[index]; }
public interface Asr {
public final static byte asr[] = {0,
80,0,9,2,52,67,15,16,60,70,
71,72,73,74,76,75,77,78,79,4,
53,54,10,11,48,47,55,56,57,58,
61,62,14,63,64,65,43,66,68,69,
59,30,80,29,50,5,0,6,7,8,
12,50,5,23,24,25,26,3,15,16,
14,10,11,27,28,21,4,2,1,0,
66,5,4,1,2,59,0,5,43,9,
52,15,16,14,4,10,11,27,28,21,
2,23,24,25,26,1,3,13,0,60,
9,52,0,6,7,8,2,23,24,25,
26,1,3,15,16,14,4,10,11,27,
28,21,0,7,12,22,8,20,19,18,
6,17,52,67,15,16,14,10,11,53,
54,47,48,55,56,57,58,61,62,63,
64,65,68,69,60,70,71,72,73,74,
75,76,77,78,79,4,2,9,29,30,
5,0,17,31,6,32,44,18,33,19,
34,35,20,7,36,37,12,45,22,46,
38,39,8,40,41,42,1,3,51,5,
43,0,5,30,21,23,24,25,26,1,
3,2,15,16,14,4,10,11,27,28,
0,1,3,5,43,29,0,5,29,43,
60,0,4,2,9,30,5,17,31,6,
32,44,18,33,19,34,35,20,7,36,
37,12,45,22,46,38,39,8,40,41,
42,49,3,1,0,39,31,36,34,35,
33,32,37,38,40,41,42,59,66,22,
18,12,17,20,19,6,7,8,29,1,
5,30,2,9,4,0,2,5,29,30,
66,9,59,0,4,17,31,6,32,44,
18,33,19,34,35,20,7,36,37,12,
45,22,46,38,39,8,40,41,42,1,
3,49,0,21,23,24,25,26,2,15,
16,14,4,10,11,27,28,1,3,44,
45,46,39,31,36,34,35,33,32,37,
38,40,41,42,22,18,12,17,20,19,
6,7,8,0,21,23,24,25,26,1,
3,2,15,16,14,4,10,11,27,28,
51,0,14,4,10,11,53,54,47,48,
55,56,57,58,61,62,63,64,65,68,
69,60,70,71,72,73,74,75,76,77,
78,79,50,30,43,80,13,59,66,5,
29,0
};
};
public final static byte asr[] = Asr.asr;
@Override
public final int asr(int index) { return asr[index]; }
public interface Nasb {
public final static byte nasb[] = {0,
117,41,23,41,23,23,23,23,23,23,
23,23,23,97,41,41,41,41,41,41,
41,41,41,41,41,41,23,97,121,121,
85,1,18,18,59,98,23,23,23,23,
23,23,23,23,23,23,23,23,23,23,
23,23,98,23,23,23,23,23,23,23,
23,23,23,23,23,23,121,94,72,11,
84,44,44,67,68,29,68,82,82,68,
81,68,62,41,121,13,41,41,41,41,
41,41,41,41,41,41,41,41,41,41,
41,41,94,55,41,101,41,31,13,57,
12,121,89,120,7,7,7,7,7,23,
70,55,41,79,57,13,12,27,121,51,
34,41,91,46,55,41,55,21,79,55,
23,23,13,12,50,44,44,72,91,121,
41,105,55,7,48,9,55,57,13,13,
121,89,120,75,55,70,15,113,7,48,
41,41,70,20,41,7,23,25,57,27,
109,105,53,48,70,23,7,42,22,13,
7,23,27,121,121,70,16,23,41,53,
72,70,13,41,53,23,77
};
};
public final static byte nasb[] = Nasb.nasb;
@Override
public final int nasb(int index) { return nasb[index]; }
public interface Nasr {
public final static char nasr[] = {0,
78,76,75,65,74,73,1,0,98,0,
11,5,24,0,11,69,0,70,0,86,
11,52,5,0,100,0,21,0,89,0,
5,11,0,78,77,76,75,65,74,73,
0,96,0,26,0,90,0,59,0,23,
43,42,35,33,11,0,56,0,11,88,
0,65,60,61,62,63,53,28,0,39,
0,27,50,0,43,42,35,33,27,0,
92,66,0,23,42,43,11,0,27,50,
11,25,0,52,46,0,49,11,45,0,
43,42,27,0,80,11,49,0,93,11,
25,0,11,49,67,0,11,87,0,11,
23,0
};
};
public final static char nasr[] = Nasr.nasr;
@Override
public final int nasr(int index) { return nasr[index]; }
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
85,2,86,9,87,48,64,76,1,10,
11,69,3,8,6,7,44,55,60,63,
68,72,81,82,83,84,12,13,42,90,
47,52,56,61,62,66,67,74,75,78,
79,80,91,54,70,73,16,17,30,89,
93,4,14,15,18,19,20,21,29,31,
22,23,24,25,26,92,5,27,28,32,
33,34,35,36,37,38,39,40,41,94,
45,46,49,50,51,53,57,58,59,65,
71,77,88
};
};
public final static char terminalIndex[] = TerminalIndex.terminalIndex;
@Override
public final int terminalIndex(int index) { return terminalIndex[index]; }
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
100,0,0,0,102,106,107,108,109,110,
0,111,112,113,114,115,116,117,0,118,
128,0,97,96,121,149,0,127,0,0,
0,145,147,0,148,0,0,0,98,0,
158,159,160,0,101,105,120,136,140,146,
155,0,130,0,150,153,154,157,0,131,
132,133,134,135,137,0,139,144,99,103,
104,119,122,123,124,125,126,129,0,138,
142,0,0,143,152,162,95,0,0,0,
141,0,151,156,161,0,163,164,0,165,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@Override
public final int nonterminalIndex(int index) { return nonterminalIndex[index]; }
public interface ScopePrefix {
public final static char scopePrefix[] = {
82,113,92,35,41,121,12,136,21,51,
69,28,47,103,152,162,166,145,1,1,
32,56,79,170,6,107,156,127,99,59,
59,59
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@Override
public final int scopePrefix(int index) { return scopePrefix[index]; }
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
90,90,90,4,4,90,18,142,26,4,
26,26,4,101,26,26,4,149,4,4,
26,4,26,26,9,110,159,130,101,66,
61,74
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@Override
public final int scopeSuffix(int index) { return scopeSuffix[index]; }
public interface ScopeLhs {
public final static char scopeLhs[] = {
62,60,62,26,26,60,46,108,44,26,
38,44,26,67,6,5,5,19,100,99,
42,26,35,3,86,67,5,109,67,38,
36,38
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@Override
public final int scopeLhs(int index) { return scopeLhs[index]; }
public interface ScopeLa {
public final static byte scopeLa[] = {
43,43,43,50,50,43,43,86,30,50,
30,30,50,66,30,30,50,59,50,50,
30,50,30,30,60,1,30,92,66,2,
2,2
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@Override
public final int scopeLa(int index) { return scopeLa[index]; }
public interface ScopeStateSet {
public final static byte scopeStateSet[] = {
23,23,23,27,27,23,17,-1,31,27,
9,31,27,5,38,38,38,67,1,3,
31,27,9,38,93,5,38,-1,5,9,
9,9
};
};
public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet;
@Override
public final int scopeStateSet(int index) { return scopeStateSet[index]; }
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
140,9,0,96,0,190,104,0,31,135,
0,152,188,104,13,145,0,98,0,0,
148,104,2,135,0,97,0,148,104,2,
0,151,2,0,113,12,178,104,9,0,
113,178,104,12,9,0,113,12,9,0,
113,178,104,9,0,113,9,0,128,0,
2,0,151,97,0,2,97,0,148,104,
2,128,0,2,0,150,97,0,141,2,
0,152,176,104,13,94,185,44,0,98,
0,152,176,104,13,185,44,0,142,0,
99,0,184,104,142,0,104,142,0,141,
99,0,172,104,13,183,94,182,158,0,
172,104,13,182,158,0,197,85,0,77,
2,101,97,99,0,197,116,138,2,89,
0,53,0,0,138,69,111,0,29,118,
0,164,2,21,0,164,2,0,97,105,
0,181,2,98,0,138,9,98,0,138,
2,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@Override
public final int scopeRhs(int index) { return scopeRhs[index]; }
public interface ScopeState {
public final static char scopeState[] = {0,
443,0,341,0,1643,1653,1637,0,1449,1342,
1168,1269,1256,1151,1123,0,492,417,396,1680,
1530,0,607,1213,317,0,1462,1182,1137,671,
1256,1151,1123,1603,1422,1508,0,1467,1434,611,
1112,1245,1218,1331,1318,449,1412,1402,1391,1361,
545,470,1535,1520,1509,1308,1140,1020,673,1500,
1492,1381,1084,1028,483,578,1092,1056,1036,492,
1000,980,959,938,586,917,557,349,896,875,
854,833,812,791,770,749,728,707,686,317,
639,513,417,396,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@Override
public final int scopeState(int index) { return scopeState[index]; }
public interface InSymb {
public final static char inSymb[] = {0,
0,180,104,165,21,28,27,11,10,4,
14,16,15,2,98,102,101,105,103,107,
106,109,108,111,110,99,29,2,164,138,
142,104,67,52,2,9,11,10,54,53,
4,58,57,56,55,47,48,14,62,61,
64,63,69,68,65,79,78,77,75,76,
74,73,72,71,70,60,164,116,104,9,
2,136,135,166,167,158,168,46,45,169,
44,170,171,94,181,138,101,101,103,103,
103,103,102,102,106,105,105,108,107,138,
110,109,116,13,145,143,120,12,113,104,
4,151,104,2,182,159,159,185,159,59,
104,13,120,4,104,113,178,149,148,118,
104,150,104,94,13,94,13,104,4,120,
178,12,113,4,2,126,128,104,29,148,
183,104,13,104,188,104,120,104,113,113,
141,104,2,143,13,172,142,173,104,176,
94,177,152,29,190,52,9,191,104,149,
104,104,104,176,152,60,29,132,60,140,
52,9,149,148,186,172,184,59,141,2,
104,152,140,29,29,59,143
};
};
public final static char inSymb[] = InSymb.inSymb;
@Override
public final int inSymb(int index) { return inSymb[index]; }
public interface Name {
public final static String name[] = {
"",
"[",
"(",
"{",
".",
"->",
"++",
"--",
"&",
"*",
"+",
"-",
"~",
"!",
"/",
"%",
">>",
"<<",
"<",
">",
"<=",
">=",
"==",
"!=",
"^",
"|",
"&&",
"||",
"?",
":",
"...",
"=",
"*=",
"/=",
"%=",
"+=",
"-=",
">>=",
"<<=",
"&=",
"^=",
"|=",
",",
"$empty",
"auto",
"break",
"case",
"char",
"const",
"continue",
"default",
"do",
"double",
"else",
"enum",
"extern",
"float",
"for",
"goto",
"if",
"inline",
"int",
"long",
"register",
"restrict",
"return",
"short",
"signed",
"sizeof",
"static",
"struct",
"switch",
"typedef",
"union",
"unsigned",
"void",
"volatile",
"while",
"_Bool",
"_Complex",
"_Imaginary",
"integer",
"floating",
"charconst",
"stringlit",
"identifier",
"Completion",
"EndOfCompletion",
"Invalid",
"RightBracket",
"RightParen",
"RightBrace",
"SemiColon",
"ERROR_TOKEN",
"EOF_TOKEN",
"no_cast_start",
"]",
")",
"}",
";",
"identifier_token",
"expression",
"postfix_expression",
"member_name",
"type_id",
"initializer_list",
"unary_expression",
"cast_expression",
"multiplicative_expression",
"additive_expression",
"shift_expression",
"relational_expression",
"equality_expression",
"and_expression",
"exclusive_or_expression",
"inclusive_or_expression",
"logical_and_expression",
"logical_or_expression",
"assignment_expression",
"expression_list_actual",
"constant_expression",
"declaration_specifiers",
"simple_declaration_specifiers",
"struct_or_union_declaration_sp" +
"ecifiers",
"elaborated_declaration_specifi" +
"ers",
"enum_declaration_specifiers",
"typdef_name_declaration_specif" +
"iers",
"no_type_declaration_specifier",
"type_qualifier",
"no_type_declaration_specifiers",
"simple_type_specifier",
"struct_or_union_specifier",
"elaborated_specifier",
"enum_specifier",
"type_name_specifier",
"initializer",
"declarator",
"struct_or_union",
"struct_declaration_list",
"struct_declaration",
"specifier_qualifier_list",
"struct_declarator_list",
"complete_struct_declarator",
"enumerator_list",
"enumerator",
"direct_declarator",
"pointer_seq",
"array_direct_declarator",
"basic_direct_declarator",
"array_modifier",
"parameter_type_list",
"identifier_list",
"array_modifier_type_qualifiers",
"type_qualifier_list",
"parameter_list",
"parameter_declaration",
"complete_parameter_declarator",
"abstract_declarator",
"direct_abstract_declarator",
"basic_direct_abstract_declarat" +
"or",
"array_direct_abstract_declarat" +
"or",
"initializer_seq",
"designated_initializer",
"designation",
"designator_list",
"designator"
};
};
public final static String name[] = Name.name;
public final String name(int index) { return name[index]; }
public final static int
ERROR_SYMBOL = 51,
SCOPE_UBOUND = 31,
SCOPE_SIZE = 32,
MAX_NAME_LENGTH = 38;
public final int getErrorSymbol() { return ERROR_SYMBOL; }
public final int getScopeUbound() { return SCOPE_UBOUND; }
public final int getScopeSize() { return SCOPE_SIZE; }
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
NUM_STATES = 207,
NT_OFFSET = 93,
LA_STATE_OFFSET = 2073,
MAX_LA = 2,
NUM_RULES = 316,
NUM_NONTERMINALS = 126,
NUM_SYMBOLS = 219,
SEGMENT_SIZE = 8192,
START_STATE = 1658,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
ACCEPT_ACTION = 1747,
ERROR_ACTION = 1757;
public final static boolean BACKTRACK = true;
public final int getNumStates() { return NUM_STATES; }
public final int getNtOffset() { return NT_OFFSET; }
public final int getLaStateOffset() { return LA_STATE_OFFSET; }
public final int getMaxLa() { return MAX_LA; }
public final int getNumRules() { return NUM_RULES; }
public final int getNumNonterminals() { return NUM_NONTERMINALS; }
public final int getNumSymbols() { return NUM_SYMBOLS; }
public final int getSegmentSize() { return SEGMENT_SIZE; }
public final int getStartState() { return START_STATE; }
public final int getStartSymbol() { return lhs[0]; }
public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; }
public final int getEoftSymbol() { return EOFT_SYMBOL; }
public final int getEoltSymbol() { return EOLT_SYMBOL; }
public final int getAcceptAction() { return ACCEPT_ACTION; }
public final int getErrorAction() { return ERROR_ACTION; }
public final boolean isValidForParser() { return isValidForParser; }
public final boolean getBacktrack() { return BACKTRACK; }
public final int originalState(int state) {
return -baseCheck[state];
}
public final int asi(int state) {
return asb[originalState(state)];
}
public final int nasi(int state) {
return nasb[originalState(state)];
}
public final int inSymbol(int state) {
return inSymb[originalState(state)];
}
public final int ntAction(int state, int sym) {
return baseAction[state + sym];
}
public final int tAction(int state, int sym) {
int i = baseAction[state],
k = i + sym;
return termAction[termCheck[k] == sym ? k : i];
}
public final int lookAhead(int la_state, int sym) {
int k = la_state + sym;
return termAction[termCheck[k] == sym ? k : la_state];
}
}