CMake Nightly Date Stamp
[kiteware-cmake.git] / Source / LexerParser / cmDependsJavaParser.cxx
blob6755c7086519d651ec2a7ebd4b85578c92951af7
1 /* A Bison parser, made by GNU Bison 3.8.2. */
3 /* Bison implementation for Yacc-like parsers in C
5 Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6 Inc.
8 This program is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <https://www.gnu.org/licenses/>. */
21 /* As a special exception, you may create a larger work that contains
22 part or all of the Bison parser skeleton and distribute that work
23 under terms of your choice, so long as that work isn't itself a
24 parser generator using the skeleton or a modified version thereof
25 as a parser skeleton. Alternatively, if you modify or redistribute
26 the parser skeleton itself, you may (at your option) remove this
27 special exception, which will cause the skeleton and the resulting
28 Bison output files to be licensed under the GNU General Public
29 License without this special exception.
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
34 /* C LALR(1) parser skeleton written by Richard Stallman, by
35 simplifying the original so-called "semantic" parser. */
37 /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
38 especially those whose name start with YY_ or yy_. They are
39 private implementation details that can be changed or removed. */
41 /* All symbols defined below should begin with yy or YY, to avoid
42 infringing on user name space. This should be done even for local
43 variables, as they might otherwise be expanded by user macros.
44 There are some unavoidable exceptions within include files to
45 define necessary library symbols; they are noted "INFRINGES ON
46 USER NAME SPACE" below. */
48 /* Identify Bison output, and Bison version. */
49 #define YYBISON 30802
51 /* Bison version string. */
52 #define YYBISON_VERSION "3.8.2"
54 /* Skeleton name. */
55 #define YYSKELETON_NAME "yacc.c"
57 /* Pure parsers. */
58 #define YYPURE 1
60 /* Push parsers. */
61 #define YYPUSH 0
63 /* Pull parsers. */
64 #define YYPULL 1
67 /* Substitute the variable and function names. */
68 #define yyparse cmDependsJava_yyparse
69 #define yylex cmDependsJava_yylex
70 #define yyerror cmDependsJava_yyerror
71 #define yydebug cmDependsJava_yydebug
72 #define yynerrs cmDependsJava_yynerrs
74 /* First part of user prologue. */
75 #line 1 "cmDependsJavaParser.y"
77 /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
78 file Copyright.txt or https://cmake.org/licensing for details. */
81 This file must be translated to C and modified to build everywhere.
83 Run bison like this:
85 bison --name-prefix=cmDependsJava_yy --defines=cmDependsJavaParserTokens.h -ocmDependsJavaParser.cxx cmDependsJavaParser.y
89 #include "cmConfigure.h" // IWYU pragma: keep
91 #include <stdlib.h>
92 #include <string.h>
93 #include <string>
95 #define yyGetParser (cmDependsJava_yyget_extra(yyscanner))
97 /*-------------------------------------------------------------------------*/
98 #include "cmDependsJavaParserHelper.h" /* Interface to parser object. */
99 #include "cmDependsJavaLexer.h" /* Interface to lexer object. */
101 /* Forward declare the lexer entry point. */
102 YY_DECL;
104 /* Helper function to forward error callback from parser. */
105 static void cmDependsJava_yyerror(yyscan_t yyscanner, const char* message);
107 #define YYMAXDEPTH 1000000
110 #define jpCheckEmpty(cnt) yyGetParser->CheckEmpty(__LINE__, cnt, yyvsp)
111 #define jpElementStart(cnt) yyGetParser->PrepareElement(&yyval)
112 #define jpStoreClass(str) yyGetParser->AddClassFound(str); yyGetParser->DeallocateParserType(&(str))
113 /* Disable some warnings in the generated code. */
114 #ifdef _MSC_VER
115 # pragma warning (disable: 4102) /* Unused goto label. */
116 # pragma warning (disable: 4065) /* Switch statement contains default but no case. */
117 #endif
118 #if defined(__GNUC__) && __GNUC__ >= 8
119 # pragma GCC diagnostic ignored "-Wconversion"
120 # pragma GCC diagnostic ignored "-Wfree-nonheap-object"
121 #endif
122 #if defined(__clang__) && defined(__has_warning)
123 # if __has_warning("-Wunused-but-set-variable")
124 # pragma clang diagnostic ignored "-Wunused-but-set-variable"
125 # endif
126 #endif
128 #line 129 "cmDependsJavaParser.cxx"
130 # ifndef YY_CAST
131 # ifdef __cplusplus
132 # define YY_CAST(Type, Val) static_cast<Type> (Val)
133 # define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
134 # else
135 # define YY_CAST(Type, Val) ((Type) (Val))
136 # define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
137 # endif
138 # endif
139 # ifndef YY_NULLPTR
140 # if defined __cplusplus
141 # if 201103L <= __cplusplus
142 # define YY_NULLPTR nullptr
143 # else
144 # define YY_NULLPTR 0
145 # endif
146 # else
147 # define YY_NULLPTR ((void*)0)
148 # endif
149 # endif
151 #include "cmDependsJavaParserTokens.h"
152 /* Symbol kind. */
153 enum yysymbol_kind_t
155 YYSYMBOL_YYEMPTY = -2,
156 YYSYMBOL_YYEOF = 0, /* "end of file" */
157 YYSYMBOL_YYerror = 1, /* error */
158 YYSYMBOL_YYUNDEF = 2, /* "invalid token" */
159 YYSYMBOL_jp_ABSTRACT = 3, /* jp_ABSTRACT */
160 YYSYMBOL_jp_ASSERT = 4, /* jp_ASSERT */
161 YYSYMBOL_jp_BOOLEAN_TYPE = 5, /* jp_BOOLEAN_TYPE */
162 YYSYMBOL_jp_BREAK = 6, /* jp_BREAK */
163 YYSYMBOL_jp_BYTE_TYPE = 7, /* jp_BYTE_TYPE */
164 YYSYMBOL_jp_CASE = 8, /* jp_CASE */
165 YYSYMBOL_jp_CATCH = 9, /* jp_CATCH */
166 YYSYMBOL_jp_CHAR_TYPE = 10, /* jp_CHAR_TYPE */
167 YYSYMBOL_jp_CLASS = 11, /* jp_CLASS */
168 YYSYMBOL_jp_CONTINUE = 12, /* jp_CONTINUE */
169 YYSYMBOL_jp_DEFAULT = 13, /* jp_DEFAULT */
170 YYSYMBOL_jp_DO = 14, /* jp_DO */
171 YYSYMBOL_jp_DOUBLE_TYPE = 15, /* jp_DOUBLE_TYPE */
172 YYSYMBOL_jp_ELSE = 16, /* jp_ELSE */
173 YYSYMBOL_jp_EXTENDS = 17, /* jp_EXTENDS */
174 YYSYMBOL_jp_FINAL = 18, /* jp_FINAL */
175 YYSYMBOL_jp_FINALLY = 19, /* jp_FINALLY */
176 YYSYMBOL_jp_FLOAT_TYPE = 20, /* jp_FLOAT_TYPE */
177 YYSYMBOL_jp_FOR = 21, /* jp_FOR */
178 YYSYMBOL_jp_IF = 22, /* jp_IF */
179 YYSYMBOL_jp_IMPLEMENTS = 23, /* jp_IMPLEMENTS */
180 YYSYMBOL_jp_IMPORT = 24, /* jp_IMPORT */
181 YYSYMBOL_jp_INSTANCEOF = 25, /* jp_INSTANCEOF */
182 YYSYMBOL_jp_INT_TYPE = 26, /* jp_INT_TYPE */
183 YYSYMBOL_jp_INTERFACE = 27, /* jp_INTERFACE */
184 YYSYMBOL_jp_LONG_TYPE = 28, /* jp_LONG_TYPE */
185 YYSYMBOL_jp_NATIVE = 29, /* jp_NATIVE */
186 YYSYMBOL_jp_NEW = 30, /* jp_NEW */
187 YYSYMBOL_jp_PACKAGE = 31, /* jp_PACKAGE */
188 YYSYMBOL_jp_PRIVATE = 32, /* jp_PRIVATE */
189 YYSYMBOL_jp_PROTECTED = 33, /* jp_PROTECTED */
190 YYSYMBOL_jp_PUBLIC = 34, /* jp_PUBLIC */
191 YYSYMBOL_jp_RETURN = 35, /* jp_RETURN */
192 YYSYMBOL_jp_SHORT_TYPE = 36, /* jp_SHORT_TYPE */
193 YYSYMBOL_jp_STATIC = 37, /* jp_STATIC */
194 YYSYMBOL_jp_STRICTFP = 38, /* jp_STRICTFP */
195 YYSYMBOL_jp_SUPER = 39, /* jp_SUPER */
196 YYSYMBOL_jp_SWITCH = 40, /* jp_SWITCH */
197 YYSYMBOL_jp_SYNCHRONIZED = 41, /* jp_SYNCHRONIZED */
198 YYSYMBOL_jp_THIS = 42, /* jp_THIS */
199 YYSYMBOL_jp_THROW = 43, /* jp_THROW */
200 YYSYMBOL_jp_THROWS = 44, /* jp_THROWS */
201 YYSYMBOL_jp_TRANSIENT = 45, /* jp_TRANSIENT */
202 YYSYMBOL_jp_TRY = 46, /* jp_TRY */
203 YYSYMBOL_jp_VOID = 47, /* jp_VOID */
204 YYSYMBOL_jp_VOLATILE = 48, /* jp_VOLATILE */
205 YYSYMBOL_jp_WHILE = 49, /* jp_WHILE */
206 YYSYMBOL_jp_BOOLEANLITERAL = 50, /* jp_BOOLEANLITERAL */
207 YYSYMBOL_jp_CHARACTERLITERAL = 51, /* jp_CHARACTERLITERAL */
208 YYSYMBOL_jp_DECIMALINTEGERLITERAL = 52, /* jp_DECIMALINTEGERLITERAL */
209 YYSYMBOL_jp_FLOATINGPOINTLITERAL = 53, /* jp_FLOATINGPOINTLITERAL */
210 YYSYMBOL_jp_HEXINTEGERLITERAL = 54, /* jp_HEXINTEGERLITERAL */
211 YYSYMBOL_jp_NULLLITERAL = 55, /* jp_NULLLITERAL */
212 YYSYMBOL_jp_STRINGLITERAL = 56, /* jp_STRINGLITERAL */
213 YYSYMBOL_jp_NAME = 57, /* jp_NAME */
214 YYSYMBOL_jp_AND = 58, /* jp_AND */
215 YYSYMBOL_jp_ANDAND = 59, /* jp_ANDAND */
216 YYSYMBOL_jp_ANDEQUALS = 60, /* jp_ANDEQUALS */
217 YYSYMBOL_jp_BRACKETEND = 61, /* jp_BRACKETEND */
218 YYSYMBOL_jp_BRACKETSTART = 62, /* jp_BRACKETSTART */
219 YYSYMBOL_jp_CARROT = 63, /* jp_CARROT */
220 YYSYMBOL_jp_CARROTEQUALS = 64, /* jp_CARROTEQUALS */
221 YYSYMBOL_jp_COLON = 65, /* jp_COLON */
222 YYSYMBOL_jp_COMMA = 66, /* jp_COMMA */
223 YYSYMBOL_jp_CURLYEND = 67, /* jp_CURLYEND */
224 YYSYMBOL_jp_CURLYSTART = 68, /* jp_CURLYSTART */
225 YYSYMBOL_jp_DIVIDE = 69, /* jp_DIVIDE */
226 YYSYMBOL_jp_DIVIDEEQUALS = 70, /* jp_DIVIDEEQUALS */
227 YYSYMBOL_jp_DOLLAR = 71, /* jp_DOLLAR */
228 YYSYMBOL_jp_DOT = 72, /* jp_DOT */
229 YYSYMBOL_jp_EQUALS = 73, /* jp_EQUALS */
230 YYSYMBOL_jp_EQUALSEQUALS = 74, /* jp_EQUALSEQUALS */
231 YYSYMBOL_jp_EXCLAMATION = 75, /* jp_EXCLAMATION */
232 YYSYMBOL_jp_EXCLAMATIONEQUALS = 76, /* jp_EXCLAMATIONEQUALS */
233 YYSYMBOL_jp_GREATER = 77, /* jp_GREATER */
234 YYSYMBOL_jp_GTEQUALS = 78, /* jp_GTEQUALS */
235 YYSYMBOL_jp_GTGT = 79, /* jp_GTGT */
236 YYSYMBOL_jp_GTGTEQUALS = 80, /* jp_GTGTEQUALS */
237 YYSYMBOL_jp_GTGTGT = 81, /* jp_GTGTGT */
238 YYSYMBOL_jp_GTGTGTEQUALS = 82, /* jp_GTGTGTEQUALS */
239 YYSYMBOL_jp_LESLESEQUALS = 83, /* jp_LESLESEQUALS */
240 YYSYMBOL_jp_LESSTHAN = 84, /* jp_LESSTHAN */
241 YYSYMBOL_jp_LTEQUALS = 85, /* jp_LTEQUALS */
242 YYSYMBOL_jp_LTLT = 86, /* jp_LTLT */
243 YYSYMBOL_jp_MINUS = 87, /* jp_MINUS */
244 YYSYMBOL_jp_MINUSEQUALS = 88, /* jp_MINUSEQUALS */
245 YYSYMBOL_jp_MINUSMINUS = 89, /* jp_MINUSMINUS */
246 YYSYMBOL_jp_PAREEND = 90, /* jp_PAREEND */
247 YYSYMBOL_jp_PARESTART = 91, /* jp_PARESTART */
248 YYSYMBOL_jp_PERCENT = 92, /* jp_PERCENT */
249 YYSYMBOL_jp_PERCENTEQUALS = 93, /* jp_PERCENTEQUALS */
250 YYSYMBOL_jp_PIPE = 94, /* jp_PIPE */
251 YYSYMBOL_jp_PIPEEQUALS = 95, /* jp_PIPEEQUALS */
252 YYSYMBOL_jp_PIPEPIPE = 96, /* jp_PIPEPIPE */
253 YYSYMBOL_jp_PLUS = 97, /* jp_PLUS */
254 YYSYMBOL_jp_PLUSEQUALS = 98, /* jp_PLUSEQUALS */
255 YYSYMBOL_jp_PLUSPLUS = 99, /* jp_PLUSPLUS */
256 YYSYMBOL_jp_QUESTION = 100, /* jp_QUESTION */
257 YYSYMBOL_jp_SEMICOL = 101, /* jp_SEMICOL */
258 YYSYMBOL_jp_TILDE = 102, /* jp_TILDE */
259 YYSYMBOL_jp_TIMES = 103, /* jp_TIMES */
260 YYSYMBOL_jp_TIMESEQUALS = 104, /* jp_TIMESEQUALS */
261 YYSYMBOL_jp_ERROR = 105, /* jp_ERROR */
262 YYSYMBOL_YYACCEPT = 106, /* $accept */
263 YYSYMBOL_Goal = 107, /* Goal */
264 YYSYMBOL_Literal = 108, /* Literal */
265 YYSYMBOL_IntegerLiteral = 109, /* IntegerLiteral */
266 YYSYMBOL_Type = 110, /* Type */
267 YYSYMBOL_PrimitiveType = 111, /* PrimitiveType */
268 YYSYMBOL_ReferenceType = 112, /* ReferenceType */
269 YYSYMBOL_ClassOrInterfaceType = 113, /* ClassOrInterfaceType */
270 YYSYMBOL_ClassType = 114, /* ClassType */
271 YYSYMBOL_InterfaceType = 115, /* InterfaceType */
272 YYSYMBOL_ArrayType = 116, /* ArrayType */
273 YYSYMBOL_Name = 117, /* Name */
274 YYSYMBOL_SimpleName = 118, /* SimpleName */
275 YYSYMBOL_Identifier = 119, /* Identifier */
276 YYSYMBOL_QualifiedName = 120, /* QualifiedName */
277 YYSYMBOL_SimpleType = 121, /* SimpleType */
278 YYSYMBOL_CompilationUnit = 122, /* CompilationUnit */
279 YYSYMBOL_PackageDeclarationopt = 123, /* PackageDeclarationopt */
280 YYSYMBOL_ImportDeclarations = 124, /* ImportDeclarations */
281 YYSYMBOL_TypeDeclarations = 125, /* TypeDeclarations */
282 YYSYMBOL_PackageDeclaration = 126, /* PackageDeclaration */
283 YYSYMBOL_ImportDeclaration = 127, /* ImportDeclaration */
284 YYSYMBOL_SingleTypeImportDeclaration = 128, /* SingleTypeImportDeclaration */
285 YYSYMBOL_TypeImportOnDemandDeclaration = 129, /* TypeImportOnDemandDeclaration */
286 YYSYMBOL_TypeDeclaration = 130, /* TypeDeclaration */
287 YYSYMBOL_Modifiers = 131, /* Modifiers */
288 YYSYMBOL_Modifier = 132, /* Modifier */
289 YYSYMBOL_ClassHeader = 133, /* ClassHeader */
290 YYSYMBOL_ClassDeclaration = 134, /* ClassDeclaration */
291 YYSYMBOL_Modifiersopt = 135, /* Modifiersopt */
292 YYSYMBOL_Super = 136, /* Super */
293 YYSYMBOL_Interfaces = 137, /* Interfaces */
294 YYSYMBOL_InterfaceTypeList = 138, /* InterfaceTypeList */
295 YYSYMBOL_ClassBody = 139, /* ClassBody */
296 YYSYMBOL_ClassBodyDeclarations = 140, /* ClassBodyDeclarations */
297 YYSYMBOL_ClassBodyDeclaration = 141, /* ClassBodyDeclaration */
298 YYSYMBOL_ClassMemberDeclaration = 142, /* ClassMemberDeclaration */
299 YYSYMBOL_FieldDeclaration = 143, /* FieldDeclaration */
300 YYSYMBOL_VariableDeclarators = 144, /* VariableDeclarators */
301 YYSYMBOL_VariableDeclarator = 145, /* VariableDeclarator */
302 YYSYMBOL_VariableDeclaratorId = 146, /* VariableDeclaratorId */
303 YYSYMBOL_VariableInitializer = 147, /* VariableInitializer */
304 YYSYMBOL_MethodDeclaration = 148, /* MethodDeclaration */
305 YYSYMBOL_MethodHeader = 149, /* MethodHeader */
306 YYSYMBOL_Throwsopt = 150, /* Throwsopt */
307 YYSYMBOL_MethodDeclarator = 151, /* MethodDeclarator */
308 YYSYMBOL_FormalParameterListopt = 152, /* FormalParameterListopt */
309 YYSYMBOL_FormalParameterList = 153, /* FormalParameterList */
310 YYSYMBOL_FormalParameter = 154, /* FormalParameter */
311 YYSYMBOL_Throws = 155, /* Throws */
312 YYSYMBOL_ClassTypeList = 156, /* ClassTypeList */
313 YYSYMBOL_MethodBody = 157, /* MethodBody */
314 YYSYMBOL_StaticInitializer = 158, /* StaticInitializer */
315 YYSYMBOL_ConstructorDeclaration = 159, /* ConstructorDeclaration */
316 YYSYMBOL_ConstructorDeclarator = 160, /* ConstructorDeclarator */
317 YYSYMBOL_ConstructorBody = 161, /* ConstructorBody */
318 YYSYMBOL_ExplicitConstructorInvocationopt = 162, /* ExplicitConstructorInvocationopt */
319 YYSYMBOL_ExplicitConstructorInvocation = 163, /* ExplicitConstructorInvocation */
320 YYSYMBOL_InterfaceHeader = 164, /* InterfaceHeader */
321 YYSYMBOL_InterfaceDeclaration = 165, /* InterfaceDeclaration */
322 YYSYMBOL_ExtendsInterfacesopt = 166, /* ExtendsInterfacesopt */
323 YYSYMBOL_ExtendsInterfaces = 167, /* ExtendsInterfaces */
324 YYSYMBOL_InterfaceBody = 168, /* InterfaceBody */
325 YYSYMBOL_InterfaceMemberDeclarations = 169, /* InterfaceMemberDeclarations */
326 YYSYMBOL_InterfaceMemberDeclaration = 170, /* InterfaceMemberDeclaration */
327 YYSYMBOL_ConstantDeclaration = 171, /* ConstantDeclaration */
328 YYSYMBOL_AbstractMethodDeclaration = 172, /* AbstractMethodDeclaration */
329 YYSYMBOL_Semicols = 173, /* Semicols */
330 YYSYMBOL_ArrayInitializer = 174, /* ArrayInitializer */
331 YYSYMBOL_VariableInitializersOptional = 175, /* VariableInitializersOptional */
332 YYSYMBOL_VariableInitializers = 176, /* VariableInitializers */
333 YYSYMBOL_Block = 177, /* Block */
334 YYSYMBOL_BlockStatementsopt = 178, /* BlockStatementsopt */
335 YYSYMBOL_BlockStatements = 179, /* BlockStatements */
336 YYSYMBOL_BlockStatement = 180, /* BlockStatement */
337 YYSYMBOL_LocalVariableDeclarationStatement = 181, /* LocalVariableDeclarationStatement */
338 YYSYMBOL_LocalVariableDeclaration = 182, /* LocalVariableDeclaration */
339 YYSYMBOL_Statement = 183, /* Statement */
340 YYSYMBOL_StatementNoShortIf = 184, /* StatementNoShortIf */
341 YYSYMBOL_StatementWithoutTrailingSubstatement = 185, /* StatementWithoutTrailingSubstatement */
342 YYSYMBOL_EmptyStatement = 186, /* EmptyStatement */
343 YYSYMBOL_LabeledStatement = 187, /* LabeledStatement */
344 YYSYMBOL_LabeledStatementNoShortIf = 188, /* LabeledStatementNoShortIf */
345 YYSYMBOL_ExpressionStatement = 189, /* ExpressionStatement */
346 YYSYMBOL_StatementExpression = 190, /* StatementExpression */
347 YYSYMBOL_IfThenStatement = 191, /* IfThenStatement */
348 YYSYMBOL_IfThenElseStatement = 192, /* IfThenElseStatement */
349 YYSYMBOL_IfThenElseStatementNoShortIf = 193, /* IfThenElseStatementNoShortIf */
350 YYSYMBOL_SwitchStatement = 194, /* SwitchStatement */
351 YYSYMBOL_SwitchBlock = 195, /* SwitchBlock */
352 YYSYMBOL_SwitchLabelsopt = 196, /* SwitchLabelsopt */
353 YYSYMBOL_SwitchBlockStatementGroups = 197, /* SwitchBlockStatementGroups */
354 YYSYMBOL_SwitchBlockStatementGroup = 198, /* SwitchBlockStatementGroup */
355 YYSYMBOL_SwitchLabels = 199, /* SwitchLabels */
356 YYSYMBOL_SwitchLabel = 200, /* SwitchLabel */
357 YYSYMBOL_WhileStatement = 201, /* WhileStatement */
358 YYSYMBOL_WhileStatementNoShortIf = 202, /* WhileStatementNoShortIf */
359 YYSYMBOL_DoStatement = 203, /* DoStatement */
360 YYSYMBOL_ForStatement = 204, /* ForStatement */
361 YYSYMBOL_ForUpdateopt = 205, /* ForUpdateopt */
362 YYSYMBOL_ForInitopt = 206, /* ForInitopt */
363 YYSYMBOL_ForStatementNoShortIf = 207, /* ForStatementNoShortIf */
364 YYSYMBOL_Expressionopt = 208, /* Expressionopt */
365 YYSYMBOL_ForInit = 209, /* ForInit */
366 YYSYMBOL_ForUpdate = 210, /* ForUpdate */
367 YYSYMBOL_StatementExpressionList = 211, /* StatementExpressionList */
368 YYSYMBOL_AssertStatement = 212, /* AssertStatement */
369 YYSYMBOL_BreakStatement = 213, /* BreakStatement */
370 YYSYMBOL_Identifieropt = 214, /* Identifieropt */
371 YYSYMBOL_ContinueStatement = 215, /* ContinueStatement */
372 YYSYMBOL_ReturnStatement = 216, /* ReturnStatement */
373 YYSYMBOL_ThrowStatement = 217, /* ThrowStatement */
374 YYSYMBOL_SynchronizedStatement = 218, /* SynchronizedStatement */
375 YYSYMBOL_TryStatement = 219, /* TryStatement */
376 YYSYMBOL_Catchesopt = 220, /* Catchesopt */
377 YYSYMBOL_Catches = 221, /* Catches */
378 YYSYMBOL_CatchClause = 222, /* CatchClause */
379 YYSYMBOL_Finally = 223, /* Finally */
380 YYSYMBOL_Primary = 224, /* Primary */
381 YYSYMBOL_PrimaryNoNewArray = 225, /* PrimaryNoNewArray */
382 YYSYMBOL_ClassInstanceCreationExpression = 226, /* ClassInstanceCreationExpression */
383 YYSYMBOL_ClassBodyOpt = 227, /* ClassBodyOpt */
384 YYSYMBOL_ArgumentListopt = 228, /* ArgumentListopt */
385 YYSYMBOL_ArgumentList = 229, /* ArgumentList */
386 YYSYMBOL_ArrayCreationExpression = 230, /* ArrayCreationExpression */
387 YYSYMBOL_Dimsopt = 231, /* Dimsopt */
388 YYSYMBOL_DimExprs = 232, /* DimExprs */
389 YYSYMBOL_DimExpr = 233, /* DimExpr */
390 YYSYMBOL_Dims = 234, /* Dims */
391 YYSYMBOL_FieldAccess = 235, /* FieldAccess */
392 YYSYMBOL_MethodInvocation = 236, /* MethodInvocation */
393 YYSYMBOL_ArrayAccess = 237, /* ArrayAccess */
394 YYSYMBOL_PostfixExpression = 238, /* PostfixExpression */
395 YYSYMBOL_PostIncrementExpression = 239, /* PostIncrementExpression */
396 YYSYMBOL_PostDecrementExpression = 240, /* PostDecrementExpression */
397 YYSYMBOL_UnaryExpression = 241, /* UnaryExpression */
398 YYSYMBOL_PreIncrementExpression = 242, /* PreIncrementExpression */
399 YYSYMBOL_PreDecrementExpression = 243, /* PreDecrementExpression */
400 YYSYMBOL_UnaryExpressionNotPlusMinus = 244, /* UnaryExpressionNotPlusMinus */
401 YYSYMBOL_CastExpression = 245, /* CastExpression */
402 YYSYMBOL_MultiplicativeExpression = 246, /* MultiplicativeExpression */
403 YYSYMBOL_AdditiveExpression = 247, /* AdditiveExpression */
404 YYSYMBOL_ShiftExpression = 248, /* ShiftExpression */
405 YYSYMBOL_RelationalExpression = 249, /* RelationalExpression */
406 YYSYMBOL_EqualityExpression = 250, /* EqualityExpression */
407 YYSYMBOL_AndExpression = 251, /* AndExpression */
408 YYSYMBOL_ExclusiveOrExpression = 252, /* ExclusiveOrExpression */
409 YYSYMBOL_InclusiveOrExpression = 253, /* InclusiveOrExpression */
410 YYSYMBOL_ConditionalAndExpression = 254, /* ConditionalAndExpression */
411 YYSYMBOL_ConditionalOrExpression = 255, /* ConditionalOrExpression */
412 YYSYMBOL_ConditionalExpression = 256, /* ConditionalExpression */
413 YYSYMBOL_AssignmentExpression = 257, /* AssignmentExpression */
414 YYSYMBOL_Assignment = 258, /* Assignment */
415 YYSYMBOL_LeftHandSide = 259, /* LeftHandSide */
416 YYSYMBOL_AssignmentOperator = 260, /* AssignmentOperator */
417 YYSYMBOL_Expression = 261, /* Expression */
418 YYSYMBOL_ConstantExpression = 262, /* ConstantExpression */
419 YYSYMBOL_New = 263 /* New */
421 typedef enum yysymbol_kind_t yysymbol_kind_t;
426 #ifdef short
427 # undef short
428 #endif
430 /* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
431 <limits.h> and (if available) <stdint.h> are included
432 so that the code can choose integer types of a good width. */
434 #ifndef __PTRDIFF_MAX__
435 # include <limits.h> /* INFRINGES ON USER NAME SPACE */
436 # if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
437 # include <stdint.h> /* INFRINGES ON USER NAME SPACE */
438 # define YY_STDINT_H
439 # endif
440 #endif
442 /* Narrow types that promote to a signed type and that can represent a
443 signed or unsigned integer of at least N bits. In tables they can
444 save space and decrease cache pressure. Promoting to a signed type
445 helps avoid bugs in integer arithmetic. */
447 #ifdef __INT_LEAST8_MAX__
448 typedef __INT_LEAST8_TYPE__ yytype_int8;
449 #elif defined YY_STDINT_H
450 typedef int_least8_t yytype_int8;
451 #else
452 typedef signed char yytype_int8;
453 #endif
455 #ifdef __INT_LEAST16_MAX__
456 typedef __INT_LEAST16_TYPE__ yytype_int16;
457 #elif defined YY_STDINT_H
458 typedef int_least16_t yytype_int16;
459 #else
460 typedef short yytype_int16;
461 #endif
463 /* Work around bug in HP-UX 11.23, which defines these macros
464 incorrectly for preprocessor constants. This workaround can likely
465 be removed in 2023, as HPE has promised support for HP-UX 11.23
466 (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
467 <https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf>. */
468 #ifdef __hpux
469 # undef UINT_LEAST8_MAX
470 # undef UINT_LEAST16_MAX
471 # define UINT_LEAST8_MAX 255
472 # define UINT_LEAST16_MAX 65535
473 #endif
475 #if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
476 typedef __UINT_LEAST8_TYPE__ yytype_uint8;
477 #elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
478 && UINT_LEAST8_MAX <= INT_MAX)
479 typedef uint_least8_t yytype_uint8;
480 #elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
481 typedef unsigned char yytype_uint8;
482 #else
483 typedef short yytype_uint8;
484 #endif
486 #if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
487 typedef __UINT_LEAST16_TYPE__ yytype_uint16;
488 #elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
489 && UINT_LEAST16_MAX <= INT_MAX)
490 typedef uint_least16_t yytype_uint16;
491 #elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
492 typedef unsigned short yytype_uint16;
493 #else
494 typedef int yytype_uint16;
495 #endif
497 #ifndef YYPTRDIFF_T
498 # if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
499 # define YYPTRDIFF_T __PTRDIFF_TYPE__
500 # define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
501 # elif defined PTRDIFF_MAX
502 # ifndef ptrdiff_t
503 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
504 # endif
505 # define YYPTRDIFF_T ptrdiff_t
506 # define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
507 # else
508 # define YYPTRDIFF_T long
509 # define YYPTRDIFF_MAXIMUM LONG_MAX
510 # endif
511 #endif
513 #ifndef YYSIZE_T
514 # ifdef __SIZE_TYPE__
515 # define YYSIZE_T __SIZE_TYPE__
516 # elif defined size_t
517 # define YYSIZE_T size_t
518 # elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
519 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
520 # define YYSIZE_T size_t
521 # else
522 # define YYSIZE_T unsigned
523 # endif
524 #endif
526 #define YYSIZE_MAXIMUM \
527 YY_CAST (YYPTRDIFF_T, \
528 (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
529 ? YYPTRDIFF_MAXIMUM \
530 : YY_CAST (YYSIZE_T, -1)))
532 #define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
535 /* Stored state numbers (used for stacks). */
536 typedef yytype_int16 yy_state_t;
538 /* State numbers in computations. */
539 typedef int yy_state_fast_t;
541 #ifndef YY_
542 # if defined YYENABLE_NLS && YYENABLE_NLS
543 # if ENABLE_NLS
544 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
545 # define YY_(Msgid) dgettext ("bison-runtime", Msgid)
546 # endif
547 # endif
548 # ifndef YY_
549 # define YY_(Msgid) Msgid
550 # endif
551 #endif
554 #ifndef YY_ATTRIBUTE_PURE
555 # if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
556 # define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
557 # else
558 # define YY_ATTRIBUTE_PURE
559 # endif
560 #endif
562 #ifndef YY_ATTRIBUTE_UNUSED
563 # if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
564 # define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
565 # else
566 # define YY_ATTRIBUTE_UNUSED
567 # endif
568 #endif
570 /* Suppress unused-variable warnings by "using" E. */
571 #if ! defined lint || defined __GNUC__
572 # define YY_USE(E) ((void) (E))
573 #else
574 # define YY_USE(E) /* empty */
575 #endif
577 /* Suppress an incorrect diagnostic about yylval being uninitialized. */
578 #if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
579 # if __GNUC__ * 100 + __GNUC_MINOR__ < 407
580 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
581 _Pragma ("GCC diagnostic push") \
582 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
583 # else
584 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
585 _Pragma ("GCC diagnostic push") \
586 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
587 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
588 # endif
589 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
590 _Pragma ("GCC diagnostic pop")
591 #else
592 # define YY_INITIAL_VALUE(Value) Value
593 #endif
594 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
595 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
596 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
597 #endif
598 #ifndef YY_INITIAL_VALUE
599 # define YY_INITIAL_VALUE(Value) /* Nothing. */
600 #endif
602 #if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
603 # define YY_IGNORE_USELESS_CAST_BEGIN \
604 _Pragma ("GCC diagnostic push") \
605 _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
606 # define YY_IGNORE_USELESS_CAST_END \
607 _Pragma ("GCC diagnostic pop")
608 #endif
609 #ifndef YY_IGNORE_USELESS_CAST_BEGIN
610 # define YY_IGNORE_USELESS_CAST_BEGIN
611 # define YY_IGNORE_USELESS_CAST_END
612 #endif
615 #define YY_ASSERT(E) ((void) (0 && (E)))
617 #if 1
619 /* The parser invokes alloca or malloc; define the necessary symbols. */
621 # ifdef YYSTACK_USE_ALLOCA
622 # if YYSTACK_USE_ALLOCA
623 # ifdef __GNUC__
624 # define YYSTACK_ALLOC __builtin_alloca
625 # elif defined __BUILTIN_VA_ARG_INCR
626 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
627 # elif defined _AIX
628 # define YYSTACK_ALLOC __alloca
629 # elif defined _MSC_VER
630 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
631 # define alloca _alloca
632 # else
633 # define YYSTACK_ALLOC alloca
634 # if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
635 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
636 /* Use EXIT_SUCCESS as a witness for stdlib.h. */
637 # ifndef EXIT_SUCCESS
638 # define EXIT_SUCCESS 0
639 # endif
640 # endif
641 # endif
642 # endif
643 # endif
645 # ifdef YYSTACK_ALLOC
646 /* Pacify GCC's 'empty if-body' warning. */
647 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
648 # ifndef YYSTACK_ALLOC_MAXIMUM
649 /* The OS might guarantee only one guard page at the bottom of the stack,
650 and a page size can be as small as 4096 bytes. So we cannot safely
651 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
652 to allow for a few compiler-allocated temporary stack slots. */
653 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
654 # endif
655 # else
656 # define YYSTACK_ALLOC YYMALLOC
657 # define YYSTACK_FREE YYFREE
658 # ifndef YYSTACK_ALLOC_MAXIMUM
659 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
660 # endif
661 # if (defined __cplusplus && ! defined EXIT_SUCCESS \
662 && ! ((defined YYMALLOC || defined malloc) \
663 && (defined YYFREE || defined free)))
664 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
665 # ifndef EXIT_SUCCESS
666 # define EXIT_SUCCESS 0
667 # endif
668 # endif
669 # ifndef YYMALLOC
670 # define YYMALLOC malloc
671 # if ! defined malloc && ! defined EXIT_SUCCESS
672 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
673 # endif
674 # endif
675 # ifndef YYFREE
676 # define YYFREE free
677 # if ! defined free && ! defined EXIT_SUCCESS
678 void free (void *); /* INFRINGES ON USER NAME SPACE */
679 # endif
680 # endif
681 # endif
682 #endif /* 1 */
684 #if (! defined yyoverflow \
685 && (! defined __cplusplus \
686 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
688 /* A type that is properly aligned for any stack member. */
689 union yyalloc
691 yy_state_t yyss_alloc;
692 YYSTYPE yyvs_alloc;
695 /* The size of the maximum gap between one aligned stack and the next. */
696 # define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
698 /* The size of an array large to enough to hold all stacks, each with
699 N elements. */
700 # define YYSTACK_BYTES(N) \
701 ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
702 + YYSTACK_GAP_MAXIMUM)
704 # define YYCOPY_NEEDED 1
706 /* Relocate STACK from its old location to the new one. The
707 local variables YYSIZE and YYSTACKSIZE give the old and new number of
708 elements in the stack, and YYPTR gives the new location of the
709 stack. Advance YYPTR to a properly aligned location for the next
710 stack. */
711 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
712 do \
714 YYPTRDIFF_T yynewbytes; \
715 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
716 Stack = &yyptr->Stack_alloc; \
717 yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
718 yyptr += yynewbytes / YYSIZEOF (*yyptr); \
720 while (0)
722 #endif
724 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
725 /* Copy COUNT objects from SRC to DST. The source and destination do
726 not overlap. */
727 # ifndef YYCOPY
728 # if defined __GNUC__ && 1 < __GNUC__
729 # define YYCOPY(Dst, Src, Count) \
730 __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
731 # else
732 # define YYCOPY(Dst, Src, Count) \
733 do \
735 YYPTRDIFF_T yyi; \
736 for (yyi = 0; yyi < (Count); yyi++) \
737 (Dst)[yyi] = (Src)[yyi]; \
739 while (0)
740 # endif
741 # endif
742 #endif /* !YYCOPY_NEEDED */
744 /* YYFINAL -- State number of the termination state. */
745 #define YYFINAL 23
746 /* YYLAST -- Last index in YYTABLE. */
747 #define YYLAST 2215
749 /* YYNTOKENS -- Number of terminals. */
750 #define YYNTOKENS 106
751 /* YYNNTS -- Number of nonterminals. */
752 #define YYNNTS 158
753 /* YYNRULES -- Number of rules. */
754 #define YYNRULES 351
755 /* YYNSTATES -- Number of states. */
756 #define YYNSTATES 575
758 /* YYMAXUTOK -- Last valid token kind. */
759 #define YYMAXUTOK 360
762 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
763 as returned by yylex, with out-of-bounds checking. */
764 #define YYTRANSLATE(YYX) \
765 (0 <= (YYX) && (YYX) <= YYMAXUTOK \
766 ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \
767 : YYSYMBOL_YYUNDEF)
769 /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
770 as returned by yylex. */
771 static const yytype_int8 yytranslate[] =
773 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
774 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
775 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
776 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
777 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
778 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
779 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
780 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
781 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
782 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
783 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
784 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
785 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
786 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
787 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
788 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
789 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
790 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
791 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
792 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
793 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
794 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
795 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
796 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
797 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
798 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
799 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
800 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
801 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
802 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
803 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
804 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
805 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
806 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
807 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
808 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
812 #if YYDEBUG
813 /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
814 static const yytype_int16 yyrline[] =
816 0, 184, 184, 193, 201, 209, 217, 225, 233, 242,
817 250, 259, 267, 276, 281, 286, 291, 296, 301, 306,
818 311, 317, 325, 334, 344, 353, 362, 370, 380, 386,
819 393, 400, 406, 413, 422, 432, 442, 451, 459, 468,
820 477, 483, 492, 498, 507, 513, 522, 534, 542, 551,
821 563, 576, 584, 592, 601, 609, 618, 618, 618, 619,
822 620, 620, 620, 620, 620, 620, 621, 624, 634, 643,
823 652, 661, 671, 677, 686, 695, 704, 712, 721, 730,
824 736, 745, 753, 761, 769, 778, 786, 795, 801, 809,
825 818, 826, 835, 844, 853, 861, 870, 878, 886, 895,
826 904, 914, 921, 931, 941, 948, 955, 958, 964, 974,
827 984, 994, 1000, 1010, 1020, 1030, 1039, 1049, 1060, 1070,
828 1077, 1087, 1096, 1106, 1115, 1125, 1131, 1141, 1150, 1160,
829 1170, 1177, 1186, 1195, 1204, 1213, 1221, 1230, 1239, 1249,
830 1259, 1268, 1278, 1288, 1295, 1304, 1314, 1323, 1333, 1342,
831 1349, 1359, 1368, 1378, 1387, 1396, 1406, 1416, 1425, 1435,
832 1444, 1453, 1462, 1471, 1480, 1490, 1499, 1508, 1517, 1526,
833 1536, 1545, 1554, 1563, 1572, 1581, 1590, 1599, 1608, 1617,
834 1626, 1635, 1645, 1655, 1666, 1676, 1686, 1695, 1704, 1713,
835 1722, 1731, 1740, 1750, 1760, 1770, 1780, 1787, 1794, 1801,
836 1811, 1818, 1828, 1838, 1847, 1857, 1866, 1876, 1883, 1890,
837 1897, 1905, 1912, 1922, 1929, 1939, 1949, 1956, 1966, 1975,
838 1985, 1995, 2004, 2014, 2023, 2033, 2044, 2051, 2058, 2069,
839 2079, 2089, 2099, 2108, 2118, 2125, 2135, 2144, 2154, 2161,
840 2171, 2180, 2190, 2199, 2205, 2214, 2223, 2232, 2241, 2251,
841 2261, 2268, 2278, 2285, 2295, 2304, 2314, 2323, 2332, 2341,
842 2351, 2358, 2368, 2377, 2387, 2397, 2403, 2410, 2420, 2430,
843 2440, 2451, 2461, 2472, 2482, 2493, 2503, 2513, 2522, 2531,
844 2540, 2549, 2559, 2569, 2579, 2588, 2597, 2606, 2615, 2625,
845 2635, 2645, 2654, 2663, 2672, 2682, 2691, 2700, 2707, 2716,
846 2725, 2734, 2744, 2753, 2762, 2772, 2781, 2790, 2799, 2809,
847 2818, 2827, 2836, 2845, 2854, 2864, 2873, 2882, 2892, 2901,
848 2911, 2920, 2930, 2939, 2949, 2958, 2968, 2977, 2987, 2996,
849 3006, 3015, 3025, 3035, 3045, 3054, 3064, 3073, 3082, 3091,
850 3100, 3109, 3118, 3127, 3136, 3145, 3154, 3163, 3173, 3183,
851 3193, 3202
853 #endif
855 /** Accessing symbol of state STATE. */
856 #define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
858 #if 1
859 /* The user-facing name of the symbol whose (internal) number is
860 YYSYMBOL. No bounds checking. */
861 static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
863 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
864 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
865 static const char *const yytname[] =
867 "\"end of file\"", "error", "\"invalid token\"", "jp_ABSTRACT",
868 "jp_ASSERT", "jp_BOOLEAN_TYPE", "jp_BREAK", "jp_BYTE_TYPE", "jp_CASE",
869 "jp_CATCH", "jp_CHAR_TYPE", "jp_CLASS", "jp_CONTINUE", "jp_DEFAULT",
870 "jp_DO", "jp_DOUBLE_TYPE", "jp_ELSE", "jp_EXTENDS", "jp_FINAL",
871 "jp_FINALLY", "jp_FLOAT_TYPE", "jp_FOR", "jp_IF", "jp_IMPLEMENTS",
872 "jp_IMPORT", "jp_INSTANCEOF", "jp_INT_TYPE", "jp_INTERFACE",
873 "jp_LONG_TYPE", "jp_NATIVE", "jp_NEW", "jp_PACKAGE", "jp_PRIVATE",
874 "jp_PROTECTED", "jp_PUBLIC", "jp_RETURN", "jp_SHORT_TYPE", "jp_STATIC",
875 "jp_STRICTFP", "jp_SUPER", "jp_SWITCH", "jp_SYNCHRONIZED", "jp_THIS",
876 "jp_THROW", "jp_THROWS", "jp_TRANSIENT", "jp_TRY", "jp_VOID",
877 "jp_VOLATILE", "jp_WHILE", "jp_BOOLEANLITERAL", "jp_CHARACTERLITERAL",
878 "jp_DECIMALINTEGERLITERAL", "jp_FLOATINGPOINTLITERAL",
879 "jp_HEXINTEGERLITERAL", "jp_NULLLITERAL", "jp_STRINGLITERAL", "jp_NAME",
880 "jp_AND", "jp_ANDAND", "jp_ANDEQUALS", "jp_BRACKETEND",
881 "jp_BRACKETSTART", "jp_CARROT", "jp_CARROTEQUALS", "jp_COLON",
882 "jp_COMMA", "jp_CURLYEND", "jp_CURLYSTART", "jp_DIVIDE",
883 "jp_DIVIDEEQUALS", "jp_DOLLAR", "jp_DOT", "jp_EQUALS", "jp_EQUALSEQUALS",
884 "jp_EXCLAMATION", "jp_EXCLAMATIONEQUALS", "jp_GREATER", "jp_GTEQUALS",
885 "jp_GTGT", "jp_GTGTEQUALS", "jp_GTGTGT", "jp_GTGTGTEQUALS",
886 "jp_LESLESEQUALS", "jp_LESSTHAN", "jp_LTEQUALS", "jp_LTLT", "jp_MINUS",
887 "jp_MINUSEQUALS", "jp_MINUSMINUS", "jp_PAREEND", "jp_PARESTART",
888 "jp_PERCENT", "jp_PERCENTEQUALS", "jp_PIPE", "jp_PIPEEQUALS",
889 "jp_PIPEPIPE", "jp_PLUS", "jp_PLUSEQUALS", "jp_PLUSPLUS", "jp_QUESTION",
890 "jp_SEMICOL", "jp_TILDE", "jp_TIMES", "jp_TIMESEQUALS", "jp_ERROR",
891 "$accept", "Goal", "Literal", "IntegerLiteral", "Type", "PrimitiveType",
892 "ReferenceType", "ClassOrInterfaceType", "ClassType", "InterfaceType",
893 "ArrayType", "Name", "SimpleName", "Identifier", "QualifiedName",
894 "SimpleType", "CompilationUnit", "PackageDeclarationopt",
895 "ImportDeclarations", "TypeDeclarations", "PackageDeclaration",
896 "ImportDeclaration", "SingleTypeImportDeclaration",
897 "TypeImportOnDemandDeclaration", "TypeDeclaration", "Modifiers",
898 "Modifier", "ClassHeader", "ClassDeclaration", "Modifiersopt", "Super",
899 "Interfaces", "InterfaceTypeList", "ClassBody", "ClassBodyDeclarations",
900 "ClassBodyDeclaration", "ClassMemberDeclaration", "FieldDeclaration",
901 "VariableDeclarators", "VariableDeclarator", "VariableDeclaratorId",
902 "VariableInitializer", "MethodDeclaration", "MethodHeader", "Throwsopt",
903 "MethodDeclarator", "FormalParameterListopt", "FormalParameterList",
904 "FormalParameter", "Throws", "ClassTypeList", "MethodBody",
905 "StaticInitializer", "ConstructorDeclaration", "ConstructorDeclarator",
906 "ConstructorBody", "ExplicitConstructorInvocationopt",
907 "ExplicitConstructorInvocation", "InterfaceHeader",
908 "InterfaceDeclaration", "ExtendsInterfacesopt", "ExtendsInterfaces",
909 "InterfaceBody", "InterfaceMemberDeclarations",
910 "InterfaceMemberDeclaration", "ConstantDeclaration",
911 "AbstractMethodDeclaration", "Semicols", "ArrayInitializer",
912 "VariableInitializersOptional", "VariableInitializers", "Block",
913 "BlockStatementsopt", "BlockStatements", "BlockStatement",
914 "LocalVariableDeclarationStatement", "LocalVariableDeclaration",
915 "Statement", "StatementNoShortIf",
916 "StatementWithoutTrailingSubstatement", "EmptyStatement",
917 "LabeledStatement", "LabeledStatementNoShortIf", "ExpressionStatement",
918 "StatementExpression", "IfThenStatement", "IfThenElseStatement",
919 "IfThenElseStatementNoShortIf", "SwitchStatement", "SwitchBlock",
920 "SwitchLabelsopt", "SwitchBlockStatementGroups",
921 "SwitchBlockStatementGroup", "SwitchLabels", "SwitchLabel",
922 "WhileStatement", "WhileStatementNoShortIf", "DoStatement",
923 "ForStatement", "ForUpdateopt", "ForInitopt", "ForStatementNoShortIf",
924 "Expressionopt", "ForInit", "ForUpdate", "StatementExpressionList",
925 "AssertStatement", "BreakStatement", "Identifieropt",
926 "ContinueStatement", "ReturnStatement", "ThrowStatement",
927 "SynchronizedStatement", "TryStatement", "Catchesopt", "Catches",
928 "CatchClause", "Finally", "Primary", "PrimaryNoNewArray",
929 "ClassInstanceCreationExpression", "ClassBodyOpt", "ArgumentListopt",
930 "ArgumentList", "ArrayCreationExpression", "Dimsopt", "DimExprs",
931 "DimExpr", "Dims", "FieldAccess", "MethodInvocation", "ArrayAccess",
932 "PostfixExpression", "PostIncrementExpression",
933 "PostDecrementExpression", "UnaryExpression", "PreIncrementExpression",
934 "PreDecrementExpression", "UnaryExpressionNotPlusMinus",
935 "CastExpression", "MultiplicativeExpression", "AdditiveExpression",
936 "ShiftExpression", "RelationalExpression", "EqualityExpression",
937 "AndExpression", "ExclusiveOrExpression", "InclusiveOrExpression",
938 "ConditionalAndExpression", "ConditionalOrExpression",
939 "ConditionalExpression", "AssignmentExpression", "Assignment",
940 "LeftHandSide", "AssignmentOperator", "Expression", "ConstantExpression",
941 "New", YY_NULLPTR
944 static const char *
945 yysymbol_name (yysymbol_kind_t yysymbol)
947 return yytname[yysymbol];
949 #endif
951 #define YYPACT_NINF (-503)
953 #define yypact_value_is_default(Yyn) \
954 ((Yyn) == YYPACT_NINF)
956 #define YYTABLE_NINF (-336)
958 #define yytable_value_is_error(Yyn) \
961 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
962 STATE-NUM. */
963 static const yytype_int16 yypact[] =
965 159, 1039, 236, -503, -503, -503, -503, -503, -503, -503,
966 -503, -503, -503, -503, -503, -503, 186, -503, 56, -503,
967 -503, -503, 178, -503, 35, -503, 21, -503, 248, 1039,
968 273, -503, -503, -503, -503, -503, -503, -503, 78, -503,
969 -503, -503, -503, -503, -503, -503, -503, -503, -503, -503,
970 -503, -503, 2088, -503, 32, -503, 16, 245, -503, 28,
971 -503, -503, 1039, 1039, -503, 80, 206, -503, 129, 129,
972 1039, 221, 228, 194, -503, -503, 225, -503, -503, 234,
973 164, 206, -503, -503, -503, -503, -503, -503, -503, 1039,
974 -503, 1039, 233, -503, -503, 739, -503, -503, -503, -503,
975 -49, -503, -503, -503, 1116, -503, -503, 1276, -503, 129,
976 129, 40, -503, -503, -503, 122, 212, 265, -503, 215,
977 -503, -503, 219, 739, -503, 222, 224, -503, -503, -503,
978 1820, 129, 129, 1627, 237, 238, -503, 1820, 241, 239,
979 242, 283, 1820, 233, 266, -503, -503, -503, -503, -503,
980 -503, -503, 1820, 1820, 1820, -503, -503, -503, 129, 284,
981 476, 293, 2067, -503, 349, -503, 296, 1366, -503, -503,
982 264, -503, -503, -503, -503, -503, 268, -503, -503, -503,
983 -503, -503, -503, -503, -503, -503, -503, -503, -503, -503,
984 294, 305, 72, -503, 2070, 88, 2084, 121, 130, 148,
985 -503, -503, -503, 2111, 1039, 281, 133, 281, -25, -503,
986 126, 133, 314, 315, 315, 921, 1039, 308, -503, -503,
987 -503, -503, 277, -503, 1820, 1820, 1820, 1820, 1820, 317,
988 284, 545, -503, -503, 121, -503, -503, -503, -503, -503,
989 -503, -503, 73, 124, 163, 59, 196, 323, 319, 290,
990 324, 18, -503, -503, -503, -30, -503, 285, 286, 242,
991 342, 1941, 1820, 291, -503, 129, 1820, 1820, 129, 292,
992 385, 1820, 96, -503, -503, -503, 310, -503, -503, 329,
993 387, 1085, 3, 1820, 1627, 129, -503, -503, -503, -503,
994 175, 1820, -503, -503, -503, -503, -503, -503, -503, -503,
995 -503, -503, -503, -503, -503, -503, 1820, 339, 339, 311,
996 921, 343, -503, 129, -503, 344, 1766, -503, -503, 346,
997 1039, 313, 347, -503, -503, 353, -503, 307, -503, -503,
998 -503, 6, 545, 326, -503, -503, 1820, 1820, 1820, 1820,
999 1820, 1820, 1820, 1820, 1039, 1820, 1820, 1820, 1820, 1820,
1000 1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, -503, -503,
1001 -503, 330, 2067, -503, -503, 327, -503, 354, 334, -503,
1002 345, 335, 340, 348, -503, 351, 416, 232, -503, 356,
1003 -503, -503, 376, -503, 357, 377, -503, -503, 329, -503,
1004 358, 390, -503, 1085, 339, -503, 154, 339, 154, 1820,
1005 362, -503, -503, -503, 1766, -503, -503, -503, -503, 129,
1006 -503, 2088, 1039, 1456, -503, 363, 70, 93, 1874, -503,
1007 -503, -503, 73, 73, 124, 124, 124, -503, 163, 163,
1008 163, 163, 59, 59, 196, 323, 319, 290, 324, 383,
1009 360, 1820, 1820, 1995, 1699, 1820, 386, 233, 1820, 2088,
1010 233, -503, -503, 1627, -503, -503, 1820, 1820, -503, 394,
1011 -503, -503, 315, -503, -503, -503, 369, -503, -503, 396,
1012 404, 410, -503, -503, 26, 113, -503, 407, 1820, 1874,
1013 -503, 1820, -503, 391, 374, -503, 393, 395, 397, 411,
1014 -503, 466, 471, -503, -503, -503, -503, 399, -503, -503,
1015 -503, 400, 401, -503, -503, -503, 402, -503, 206, -503,
1016 1766, 1820, 1820, -503, -503, -503, -503, 403, 1995, 1941,
1017 1820, 1820, 1699, 1627, -503, 34, -503, 233, -503, -503,
1018 -503, -503, 405, 412, -503, 413, -503, 354, 406, 418,
1019 421, -503, -503, 1820, 429, 430, -503, 1186, -503, -503,
1020 419, 422, 1627, 1820, 1699, 1699, -503, 447, -503, -503,
1021 1555, -503, -503, -503, -503, 423, 497, -503, -503, 1995,
1022 1699, 432, -503, 1699, -503
1025 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
1026 Performed when YYTABLE does not specify something else to do. Zero
1027 means the default is an error. */
1028 static const yytype_int16 yydefact[] =
1030 40, 0, 0, 2, 42, 41, 20, 13, 17, 19,
1031 18, 15, 16, 14, 38, 31, 0, 37, 0, 28,
1032 30, 29, 0, 1, 44, 32, 0, 46, 0, 0,
1033 72, 43, 47, 48, 34, 35, 33, 36, 0, 60,
1034 61, 62, 58, 57, 56, 59, 66, 63, 64, 65,
1035 53, 45, 73, 54, 0, 51, 0, 125, 52, 0,
1036 49, 55, 0, 0, 79, 0, 0, 68, 0, 0,
1037 0, 0, 126, 0, 24, 74, 23, 25, 76, 75,
1038 72, 0, 70, 69, 67, 123, 127, 130, 124, 0,
1039 50, 0, 59, 78, 84, 0, 80, 81, 85, 86,
1040 0, 82, 83, 71, 72, 128, 77, 72, 114, 38,
1041 0, 11, 12, 21, 22, 23, 28, 101, 96, 97,
1042 113, 129, 134, 0, 138, 0, 136, 131, 132, 133,
1043 0, 226, 226, 0, 0, 0, 350, 216, 0, 0,
1044 63, 243, 0, 0, 0, 5, 6, 9, 4, 10,
1045 8, 7, 0, 0, 0, 182, 242, 3, 0, 22,
1046 333, 30, 73, 155, 0, 170, 0, 72, 151, 153,
1047 0, 154, 159, 171, 160, 172, 0, 161, 162, 173,
1048 163, 174, 164, 181, 175, 176, 177, 179, 178, 180,
1049 277, 240, 245, 241, 246, 247, 248, 0, 189, 190,
1050 187, 188, 186, 0, 0, 0, 101, 92, 0, 88,
1051 90, 101, 0, 26, 27, 72, 0, 0, 102, 98,
1052 135, 140, 139, 137, 0, 0, 0, 0, 0, 37,
1053 0, 278, 245, 247, 291, 280, 281, 298, 284, 285,
1054 288, 294, 302, 305, 309, 315, 318, 320, 322, 324,
1055 326, 328, 330, 348, 331, 0, 227, 0, 0, 0,
1056 0, 213, 0, 0, 217, 0, 0, 0, 0, 0,
1057 234, 0, 278, 246, 248, 290, 0, 289, 92, 158,
1058 0, 0, 0, 252, 0, 0, 148, 152, 156, 185,
1059 0, 0, 283, 282, 345, 346, 338, 336, 343, 344,
1060 342, 341, 339, 347, 340, 337, 0, 37, 24, 0,
1061 72, 0, 100, 0, 87, 0, 0, 99, 265, 0,
1062 0, 0, 106, 107, 111, 110, 119, 115, 141, 293,
1063 287, 37, 278, 0, 286, 292, 0, 0, 0, 0,
1064 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1065 0, 0, 0, 0, 0, 0, 0, 0, 223, 225,
1066 228, 0, 0, 219, 221, 0, 214, 218, 0, 229,
1067 268, 0, 0, 269, 230, 0, 0, 232, 236, 0,
1068 244, 279, 0, 351, 0, 253, 254, 183, 157, 270,
1069 267, 0, 332, 0, 260, 262, 0, 260, 0, 252,
1070 0, 104, 89, 93, 143, 91, 95, 94, 266, 0,
1071 117, 72, 0, 72, 116, 0, 26, 27, 244, 300,
1072 301, 299, 304, 303, 307, 308, 306, 314, 311, 313,
1073 310, 312, 316, 317, 319, 321, 323, 325, 327, 0,
1074 0, 0, 216, 0, 0, 252, 0, 0, 252, 72,
1075 0, 233, 237, 0, 275, 271, 0, 252, 276, 0,
1076 256, 263, 261, 258, 257, 259, 0, 103, 146, 0,
1077 144, 109, 108, 112, 0, 243, 120, 0, 0, 0,
1078 296, 0, 224, 0, 0, 222, 0, 0, 0, 30,
1079 193, 0, 159, 166, 167, 168, 169, 0, 200, 196,
1080 231, 0, 0, 239, 207, 255, 0, 264, 250, 142,
1081 145, 252, 252, 118, 295, 297, 329, 0, 211, 213,
1082 0, 0, 0, 0, 273, 198, 274, 0, 272, 251,
1083 249, 147, 0, 0, 209, 0, 212, 220, 0, 0,
1084 0, 184, 194, 0, 0, 0, 201, 72, 203, 238,
1085 0, 0, 0, 216, 0, 0, 349, 0, 206, 197,
1086 202, 204, 122, 121, 210, 0, 0, 208, 205, 211,
1087 0, 0, 195, 0, 215
1090 /* YYPGOTO[NTERM-NUM]. */
1091 static const yytype_int16 yypgoto[] =
1093 -503, -503, -503, -503, -85, 2, 181, -41, -198, -45,
1094 -87, -1, 431, 14, -503, -503, -503, -503, -503, -503,
1095 -503, -503, -503, -503, 448, -81, -47, -503, 7, -23,
1096 -503, 462, -503, -64, -503, -503, -503, 425, -146, 217,
1097 123, -391, -503, 427, -101, 424, 230, -503, -360, -503,
1098 -503, -503, -503, -503, -503, -503, -503, -503, -503, 439,
1099 -503, -503, -503, -503, -503, -503, -503, -503, -110, -503,
1100 -503, -77, 138, -12, -163, -503, -250, -13, -421, -414,
1101 -503, -503, -503, -503, -252, -503, -503, -503, -503, -503,
1102 -503, -503, -503, -503, 5, -503, -503, -503, -503, -16,
1103 36, -503, -418, -503, -503, -502, -503, -503, 440, -503,
1104 -503, -503, -503, -503, -503, -503, 179, -503, -503, -503,
1105 -54, -503, -341, -503, -503, -149, 255, -136, 102, 652,
1106 101, 688, 145, 157, 201, -98, 289, 338, -384, -503,
1107 -59, -58, -92, -57, 213, 226, 218, 223, 227, -503,
1108 95, 274, 350, -503, -503, 660, -503, -503
1111 /* YYDEFGOTO[NTERM-NUM]. */
1112 static const yytype_int16 yydefgoto[] =
1114 0, 2, 156, 157, 158, 229, 112, 113, 75, 78,
1115 230, 231, 19, 20, 21, 22, 3, 4, 24, 30,
1116 5, 31, 32, 33, 51, 52, 53, 54, 163, 164,
1117 65, 66, 79, 67, 80, 96, 97, 98, 208, 209,
1118 210, 405, 99, 100, 217, 206, 321, 322, 323, 218,
1119 325, 119, 101, 102, 117, 327, 413, 476, 57, 58,
1120 71, 72, 88, 104, 127, 128, 129, 222, 406, 469,
1121 470, 165, 166, 167, 168, 169, 170, 171, 491, 172,
1122 173, 174, 493, 175, 176, 177, 178, 494, 179, 499,
1123 545, 525, 546, 547, 548, 180, 495, 181, 182, 535,
1124 365, 496, 263, 366, 536, 367, 183, 184, 257, 185,
1125 186, 187, 188, 189, 376, 377, 378, 451, 190, 191,
1126 232, 530, 384, 385, 193, 415, 394, 395, 214, 194,
1127 233, 196, 234, 235, 236, 237, 238, 239, 240, 241,
1128 242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
1129 252, 253, 254, 203, 306, 386, 557, 204
1132 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
1133 positive, shift that token. If negative, reduce the rule whose
1134 number is the opposite. If YYTABLE_NINF, syntax error. */
1135 static const yytype_int16 yytable[] =
1137 18, 82, 83, 17, 287, 61, 309, 56, 114, 364,
1138 110, 363, 279, 468, 34, 108, 537, 103, 324, 107,
1139 159, 74, 77, 120, 484, 86, 162, 68, 38, 77,
1140 492, 17, 34, 383, 480, 357, 114, 55, 110, 34,
1141 36, 313, 543, 69, 105, 35, 106, 544, 77, 62,
1142 77, 472, 118, 192, 275, 63, 277, 95, 466, 29,
1143 15, 76, 76, 35, 17, 17, 270, 537, 212, 76,
1144 35, 358, 17, 36, 16, 114, 314, 285, 15, 192,
1145 159, 123, 84, 85, 344, 15, 162, 55, 76, 502,
1146 76, 17, 16, 17, 115, 515, -260, 111, 265, 16,
1147 64, 541, 212, 63, 497, 312, 160, 501, 492, 111,
1148 317, 122, -37, 192, 355, 61, 506, 511, 356, 531,
1149 260, 161, 115, 205, 207, 111, 329, 330, 26, 334,
1150 335, 73, 319, 566, 567, 565, 345, 346, -192, 388,
1151 492, 492, 336, 347, 348, 256, 256, 161, 64, 572,
1152 59, 272, 574, 272, -191, 319, 492, 27, 281, 492,
1153 -261, 115, -192, 308, 111, 337, 160, 39, 282, 111,
1154 532, 533, 278, -192, 159, 74, 338, 216, -191, 60,
1155 362, 161, 40, 479, 212, 268, 15, 283, 315, -191,
1156 1, 485, 320, 41, 26, 311, 42, 43, 44, 316,
1157 16, 92, 46, 76, 512, 47, 307, 192, 195, 48,
1158 292, 339, 49, 213, 473, 76, 319, 389, 17, -280,
1159 293, 340, 404, 272, 272, 332, 272, 272, 331, -280,
1160 192, 93, 15, 114, 195, 409, 23, -281, 419, 420,
1161 421, 375, 341, 25, 342, 460, 16, -281, 464, 343,
1162 28, -235, 197, 428, 429, 430, 431, 114, 461, 37,
1163 160, 461, 70, 111, 198, 50, 364, 364, 195, 363,
1164 349, 387, 350, -39, 64, 114, 39, 285, 197, 370,
1165 422, 423, 373, 424, 425, 426, 463, 320, 465, 87,
1166 198, 40, 432, 433, 89, 90, 36, 26, 161, 278,
1167 91, 107, 41, 215, 390, 42, 43, 44, 199, 216,
1168 45, 46, 197, 265, 47, 61, 219, 364, 48, 115,
1169 220, 49, 111, 221, 198, 223, 159, 278, 261, 262,
1170 266, 213, 162, 267, 199, 272, 272, 272, 272, 272,
1171 272, 272, 272, 115, 272, 272, 272, 272, 272, 272,
1172 272, 272, 272, 272, 272, 268, 280, 271, 284, 192,
1173 68, 115, 195, 286, 111, 288, 290, 291, 199, 289,
1174 500, 74, 310, 503, 50, 318, 326, 319, 328, 212,
1175 514, 351, 352, 354, 353, 195, 359, 360, 320, 192,
1176 192, 361, 369, 374, 375, 313, 200, 287, 381, 192,
1177 380, 393, 399, 410, 401, 403, 197, 408, 414, 396,
1178 398, 76, 160, 411, 17, 111, 418, 272, 198, 412,
1179 443, 441, 200, 278, 444, 446, 320, 161, 442, 197,
1180 447, 490, 159, 416, 417, 450, 445, 454, 362, 448,
1181 504, 198, 449, 456, 529, 201, 453, 455, 481, 457,
1182 549, 458, 467, 478, 498, 507, 200, 202, 489, 508,
1183 159, 482, 199, 509, 192, 192, 162, 161, 192, 192,
1184 510, 201, 315, 159, 513, 518, 522, 272, 272, 162,
1185 272, 517, 523, 202, 519, 199, 520, -165, 521, 524,
1186 526, 527, 528, 192, 558, 550, 462, 559, 192, 462,
1187 192, 192, 551, 552, 534, 201, 192, 553, 554, 387,
1188 542, 555, 568, 570, 195, 192, 192, 202, 160, 192,
1189 562, 111, 573, 563, 569, 427, 116, 81, 94, 124,
1190 402, 125, 471, -23, 211, 560, 489, 161, 281, 564,
1191 400, 490, 504, 126, 195, 195, 160, -23, 282, 111,
1192 200, 477, 561, 571, 195, 538, 452, 542, 197, 160,
1193 564, 161, 111, 397, 434, -278, 161, 283, 489, 489,
1194 198, 436, 258, 200, 161, -278, 516, 437, 435, 0,
1195 392, 0, 438, 0, 489, 0, 0, 489, 197, 197,
1196 0, 0, 0, 0, 0, 0, 0, 0, 197, 201,
1197 198, 198, 0, 0, 0, -333, 0, 281, 0, -333,
1198 198, 202, 0, 0, 199, -333, 0, 282, -333, 195,
1199 195, 0, 201, 195, 195, -333, 0, -333, -333, 0,
1200 0, 0, 0, -333, 202, 0, 283, 0, -333, 0,
1201 -333, 0, 0, -333, 199, 199, 0, 0, 195, -333,
1202 0, 0, 0, 195, 199, 195, 195, 0, 0, 0,
1203 0, 195, 0, 197, 197, 0, 0, 197, 197, 0,
1204 195, 195, 0, 0, 195, 198, 198, 0, 0, 198,
1205 198, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1206 0, 0, 197, 0, 0, 0, 0, 197, 0, 197,
1207 197, 0, 200, 0, 198, 197, 0, 0, 0, 198,
1208 0, 198, 198, 0, 197, 197, 0, 198, 197, 199,
1209 199, 0, 0, 199, 199, 0, 198, 198, 0, 0,
1210 198, 0, 200, 200, 0, 0, 0, 0, 0, 0,
1211 0, 0, 200, 0, 6, 0, 7, 0, 199, 8,
1212 68, 201, 0, 199, 9, 199, 199, 0, 0, 10,
1213 0, 199, 0, 202, 0, 11, 69, 12, 0, 0,
1214 199, 199, 0, 0, 199, 13, 0, 0, 0, 0,
1215 0, 201, 201, 0, 0, 0, 109, 0, 0, 0,
1216 255, 201, 0, 202, 202, 0, 15, 264, 0, 0,
1217 0, 0, 269, 202, 273, 0, 273, 200, 200, 0,
1218 16, 200, 200, 276, 0, 0, 0, 0, 0, 0,
1219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1220 0, 0, 0, 0, 0, 0, 200, 0, 0, 0,
1221 274, 200, 274, 200, 200, 0, 0, 0, 0, 200,
1222 0, 0, 0, 0, 0, 0, 201, 201, 200, 200,
1223 201, 201, 200, 0, 0, 0, 0, 0, 202, 202,
1224 0, 0, 202, 202, 0, 0, 273, 273, 0, 273,
1225 273, 0, 0, 0, 0, 201, 333, 0, 0, 0,
1226 201, 0, 201, 201, 0, 0, 0, 202, 201, 0,
1227 0, 0, 202, 0, 202, 202, 0, 201, 201, 0,
1228 202, 201, 274, 274, 0, 274, 274, 0, 0, 202,
1229 202, 0, 368, 202, 39, 0, 371, 372, 0, 0,
1230 0, 379, 0, 0, 0, 0, 0, 0, 0, 40,
1231 0, 382, 0, 0, 0, 0, 0, 0, 0, 0,
1232 41, 391, 0, 42, 43, 44, 0, 0, 45, 46,
1233 0, 0, 47, 0, 0, 0, 48, 0, 0, 49,
1234 0, 0, 0, 0, 0, 0, 407, 0, 0, 0,
1235 0, 0, 0, 0, 0, 0, 0, 0, 273, 273,
1236 273, 273, 273, 273, 273, 273, 0, 273, 273, 273,
1237 273, 273, 273, 273, 273, 273, 273, 273, 0, 0,
1238 0, -105, 0, 0, 0, 0, 439, 440, 0, 0,
1239 0, 0, 0, 0, 274, 274, 274, 274, 274, 274,
1240 274, 274, 0, 274, 274, 274, 274, 274, 274, 274,
1241 274, 274, 274, 274, 6, 0, 7, 0, 0, 8,
1242 0, 0, 0, 459, 9, 0, 0, 0, 0, 10,
1243 0, 0, 0, 0, 407, 11, 0, 12, 0, 0,
1244 273, 0, 0, 0, 0, 13, 0, 0, 0, 0,
1245 0, 0, 0, 0, 0, 0, 14, 0, 0, 0,
1246 6, 0, 7, 0, 0, 8, 15, 0, 0, 0,
1247 9, 483, 264, 0, 0, 10, 274, 0, 0, 0,
1248 16, 11, 0, 12, 0, 136, 505, 0, 0, 39,
1249 0, 13, 0, 0, 138, 0, 0, 141, 0, 0,
1250 273, 273, 14, 273, 40, 145, 146, 147, 148, 149,
1251 150, 151, 15, 0, 0, 41, 318, 0, 42, 43,
1252 44, 0, 0, 45, 46, 0, 16, 47, 0, 0,
1253 224, 48, 0, 0, 49, 0, 274, 274, 0, 274,
1254 407, 0, 225, 0, 152, 0, 226, 0, 0, 0,
1255 539, 540, 227, 121, 154, 0, 0, 228, 0, 39,
1256 130, 6, 131, 7, 543, 0, 8, 0, 132, 544,
1257 133, 9, 0, 556, 40, 0, 10, 134, 135, 0,
1258 0, 0, 11, 264, 12, 41, 136, 0, 42, 43,
1259 44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
1260 0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
1261 149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
1262 0, 0, 0, -199, 107, 0, 0, 16, 0, 0,
1263 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1264 0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
1265 130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
1266 133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
1267 0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
1268 44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
1269 0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
1270 149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
1271 0, 0, 0, -149, 107, 0, 0, 16, 0, 0,
1272 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1273 0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
1274 130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
1275 133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
1276 0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
1277 44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
1278 0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
1279 149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
1280 0, 0, 0, -150, 107, 0, 0, 16, 0, 0,
1281 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1282 0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
1283 130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
1284 133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
1285 0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
1286 44, 137, 13, 45, 46, 474, 139, 140, 475, 142,
1287 0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
1288 149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
1289 0, 0, 0, -149, 107, 0, 0, 16, 0, 0,
1290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1291 0, 0, 0, 0, 0, 152, 0, 153, 0, 0,
1292 0, 0, 0, 0, 0, 154, 0, 155, 39, 130,
1293 6, 131, 7, 0, 0, 8, -72, 132, 0, 133,
1294 9, 0, 0, 40, 0, 10, 134, 135, 0, 0,
1295 0, 11, 0, 12, 41, 136, 0, 42, 43, 44,
1296 137, 13, 45, 46, 138, 139, 140, 141, 142, 0,
1297 48, 143, 14, 49, 144, 145, 146, 147, 148, 149,
1298 150, 151, 15, 0, 0, 0, 0, 0, 0, 0,
1299 0, 0, 0, 107, 0, 0, 16, 0, 0, 0,
1300 0, 130, 6, 131, 7, 0, 0, 8, 0, 132,
1301 0, 133, 9, 0, 152, 0, 153, 10, 134, 135,
1302 0, 0, 0, 11, 154, 12, 155, 136, 0, 0,
1303 0, 0, 137, 13, 0, 0, 138, 139, 259, 141,
1304 142, 0, 0, 143, 14, 0, 144, 145, 146, 147,
1305 148, 149, 150, 151, 15, 0, 0, 0, 0, 0,
1306 0, 0, 0, 0, 0, 107, 0, 0, 16, 0,
1307 0, 0, 0, 130, 6, 131, 7, 0, 0, 8,
1308 0, 132, 0, 133, 9, 0, 152, 0, 153, 10,
1309 486, 487, 0, 0, 0, 11, 154, 12, 155, 136,
1310 0, 0, 0, 0, 137, 13, 0, 0, 138, 139,
1311 259, 141, 142, 0, 0, 143, 14, 0, 488, 145,
1312 146, 147, 148, 149, 150, 151, 15, 0, 0, 0,
1313 0, 0, 0, 0, 0, 0, 0, 107, 0, 0,
1314 16, 6, 0, 7, 0, 0, 8, 0, 0, 0,
1315 0, 9, 0, 0, 0, 0, 10, 0, 152, 0,
1316 153, 0, 11, 0, 12, 0, 136, 0, 154, 0,
1317 155, 0, 13, 0, 0, 138, 0, 0, 141, 0,
1318 0, 0, 0, 14, 0, 0, 145, 146, 147, 148,
1319 149, 150, 151, 15, 0, 6, 0, 7, 0, 0,
1320 8, 0, 0, 0, 404, 9, 0, 16, 0, 0,
1321 10, 224, 0, 0, 0, 0, 11, 0, 12, 0,
1322 136, 0, 0, 225, 0, 152, 13, 226, 0, 138,
1323 0, 0, 141, 227, 0, 154, 0, 14, 228, 0,
1324 145, 146, 147, 148, 149, 150, 151, 15, 0, 6,
1325 0, 7, 0, 0, 8, 0, 0, 0, 0, 9,
1326 0, 16, 0, 0, 10, 224, 0, 0, 0, 0,
1327 11, 0, 12, 0, 136, 0, 0, 225, 0, 152,
1328 13, 226, 0, 138, 0, 0, 141, 227, 0, 154,
1329 0, 14, 228, 0, 145, 146, 147, 148, 149, 150,
1330 151, 15, 0, 0, 0, 0, 0, 0, 0, 0,
1331 0, 0, 0, 0, 39, 16, 6, 0, 7, 224,
1332 0, 8, 0, 0, 0, 0, 9, 0, 0, 40,
1333 0, 10, 0, 0, 0, 226, 0, 11, 0, 12,
1334 41, 136, 0, 42, 43, 44, 228, 13, 45, 46,
1335 138, 0, 47, 141, 0, 0, 48, 0, 14, 49,
1336 0, 145, 146, 147, 148, 149, 150, 151, 15, 0,
1337 6, 0, 7, 0, 0, 8, 0, 0, 0, 0,
1338 9, 0, 16, 0, 0, 10, 0, 0, 0, 0,
1339 0, 11, 0, 12, 0, 136, 0, 0, 0, 0,
1340 152, 13, 153, 0, 138, 0, 0, 141, 0, 0,
1341 154, 0, 14, 0, 0, 145, 146, 147, 148, 149,
1342 150, 151, 15, 0, 0, 0, 0, 0, 0, 0,
1343 0, 0, 0, 0, 0, 0, 16, 0, 0, 0,
1344 39, 0, 6, 0, 7, 0, 0, 8, 0, 0,
1345 0, 0, 9, 0, 152, 40, 153, 10, 0, 0,
1346 0, 39, 0, 11, 154, 12, 41, 0, 0, 42,
1347 43, 44, 0, 13, 45, 46, 40, 0, 47, 0,
1348 0, 0, 48, 0, 14, 49, 0, 41, 0, 0,
1349 42, 43, 44, 0, 15, 45, 46, 0, 0, 47,
1350 -334, 0, 0, 48, -334, 0, 49, 0, 16, 0,
1351 -334, 0, 0, -334, -335, 0, 0, 0, -335, 0,
1352 -334, 0, -334, -334, -335, 0, 0, -335, -334, 0,
1353 0, 0, 0, -334, -335, -334, -335, -335, -334, 0,
1354 0, 294, -335, 0, -334, 295, 0, -335, 0, -335,
1355 0, 296, -335, 0, 297, 0, 0, 0, -335, 0,
1356 0, 298, 0, 299, 300, 0, 0, 0, 0, 301,
1357 0, 0, 0, 0, 302, 0, 303, 0, 0, 304,
1358 0, 0, 0, 0, 0, 305
1361 static const yytype_int16 yycheck[] =
1363 1, 65, 66, 1, 167, 52, 204, 30, 95, 261,
1364 95, 261, 158, 404, 11, 92, 518, 81, 216, 68,
1365 107, 62, 63, 100, 442, 70, 107, 11, 29, 70,
1366 444, 29, 11, 30, 418, 65, 123, 30, 123, 11,
1367 26, 66, 8, 27, 89, 42, 91, 13, 89, 17,
1368 91, 411, 101, 107, 152, 23, 154, 80, 399, 24,
1369 57, 62, 63, 42, 62, 63, 143, 569, 62, 70,
1370 42, 101, 70, 59, 71, 162, 101, 162, 57, 133,
1371 167, 104, 68, 69, 25, 57, 167, 80, 89, 449,
1372 91, 89, 71, 91, 95, 479, 90, 95, 72, 71,
1373 68, 522, 62, 23, 445, 206, 107, 448, 522, 107,
1374 211, 104, 72, 167, 96, 162, 457, 91, 100, 510,
1375 133, 107, 123, 109, 110, 123, 224, 225, 72, 227,
1376 228, 103, 62, 554, 555, 553, 77, 78, 66, 285,
1377 554, 555, 69, 84, 85, 131, 132, 133, 68, 570,
1378 72, 152, 573, 154, 66, 62, 570, 101, 62, 573,
1379 90, 162, 90, 204, 162, 92, 167, 3, 72, 167,
1380 511, 512, 158, 101, 261, 216, 103, 44, 90, 101,
1381 261, 167, 18, 90, 62, 72, 57, 91, 62, 101,
1382 31, 443, 215, 29, 72, 62, 32, 33, 34, 73,
1383 71, 37, 38, 204, 91, 41, 204, 261, 107, 45,
1384 89, 87, 48, 111, 412, 216, 62, 42, 216, 89,
1385 99, 97, 68, 224, 225, 226, 227, 228, 226, 99,
1386 284, 67, 57, 320, 133, 320, 0, 89, 336, 337,
1387 338, 9, 79, 57, 81, 394, 71, 99, 397, 86,
1388 72, 19, 107, 345, 346, 347, 348, 344, 394, 11,
1389 261, 397, 17, 261, 107, 101, 518, 519, 167, 519,
1390 74, 284, 76, 0, 68, 362, 3, 362, 133, 265,
1391 339, 340, 268, 341, 342, 343, 396, 310, 398, 68,
1392 133, 18, 349, 350, 66, 101, 282, 72, 284, 285,
1393 66, 68, 29, 91, 290, 32, 33, 34, 107, 44,
1394 37, 38, 167, 72, 41, 362, 101, 569, 45, 320,
1395 101, 48, 320, 101, 167, 101, 413, 313, 91, 91,
1396 91, 229, 413, 91, 133, 336, 337, 338, 339, 340,
1397 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
1398 351, 352, 353, 354, 355, 72, 72, 91, 65, 413,
1399 11, 362, 261, 67, 362, 101, 72, 62, 167, 101,
1400 447, 412, 91, 450, 101, 61, 68, 62, 101, 62,
1401 478, 58, 63, 59, 94, 284, 101, 101, 411, 443,
1402 444, 49, 101, 101, 9, 66, 107, 560, 11, 453,
1403 90, 62, 91, 90, 61, 61, 261, 61, 101, 307,
1404 308, 412, 413, 66, 412, 413, 90, 418, 261, 66,
1405 66, 91, 133, 409, 90, 90, 449, 413, 101, 284,
1406 90, 444, 519, 331, 332, 19, 91, 61, 519, 91,
1407 453, 284, 91, 66, 508, 107, 90, 90, 65, 91,
1408 527, 61, 90, 90, 68, 61, 167, 107, 444, 90,
1409 547, 101, 261, 67, 518, 519, 547, 453, 522, 523,
1410 66, 133, 62, 560, 67, 101, 65, 478, 479, 560,
1411 481, 90, 16, 133, 91, 284, 91, 16, 91, 90,
1412 90, 90, 90, 547, 65, 90, 394, 67, 552, 397,
1413 554, 555, 90, 90, 101, 167, 560, 101, 90, 522,
1414 523, 90, 65, 16, 413, 569, 570, 167, 519, 573,
1415 101, 519, 90, 101, 101, 344, 95, 65, 80, 104,
1416 313, 104, 409, 57, 110, 547, 522, 523, 62, 552,
1417 310, 554, 555, 104, 443, 444, 547, 71, 72, 547,
1418 261, 413, 547, 569, 453, 519, 377, 570, 413, 560,
1419 573, 547, 560, 308, 351, 89, 552, 91, 554, 555,
1420 413, 353, 132, 284, 560, 99, 481, 354, 352, -1,
1421 306, -1, 355, -1, 570, -1, -1, 573, 443, 444,
1422 -1, -1, -1, -1, -1, -1, -1, -1, 453, 261,
1423 443, 444, -1, -1, -1, 60, -1, 62, -1, 64,
1424 453, 261, -1, -1, 413, 70, -1, 72, 73, 518,
1425 519, -1, 284, 522, 523, 80, -1, 82, 83, -1,
1426 -1, -1, -1, 88, 284, -1, 91, -1, 93, -1,
1427 95, -1, -1, 98, 443, 444, -1, -1, 547, 104,
1428 -1, -1, -1, 552, 453, 554, 555, -1, -1, -1,
1429 -1, 560, -1, 518, 519, -1, -1, 522, 523, -1,
1430 569, 570, -1, -1, 573, 518, 519, -1, -1, 522,
1431 523, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1432 -1, -1, 547, -1, -1, -1, -1, 552, -1, 554,
1433 555, -1, 413, -1, 547, 560, -1, -1, -1, 552,
1434 -1, 554, 555, -1, 569, 570, -1, 560, 573, 518,
1435 519, -1, -1, 522, 523, -1, 569, 570, -1, -1,
1436 573, -1, 443, 444, -1, -1, -1, -1, -1, -1,
1437 -1, -1, 453, -1, 5, -1, 7, -1, 547, 10,
1438 11, 413, -1, 552, 15, 554, 555, -1, -1, 20,
1439 -1, 560, -1, 413, -1, 26, 27, 28, -1, -1,
1440 569, 570, -1, -1, 573, 36, -1, -1, -1, -1,
1441 -1, 443, 444, -1, -1, -1, 47, -1, -1, -1,
1442 130, 453, -1, 443, 444, -1, 57, 137, -1, -1,
1443 -1, -1, 142, 453, 152, -1, 154, 518, 519, -1,
1444 71, 522, 523, 153, -1, -1, -1, -1, -1, -1,
1445 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1446 -1, -1, -1, -1, -1, -1, 547, -1, -1, -1,
1447 152, 552, 154, 554, 555, -1, -1, -1, -1, 560,
1448 -1, -1, -1, -1, -1, -1, 518, 519, 569, 570,
1449 522, 523, 573, -1, -1, -1, -1, -1, 518, 519,
1450 -1, -1, 522, 523, -1, -1, 224, 225, -1, 227,
1451 228, -1, -1, -1, -1, 547, 226, -1, -1, -1,
1452 552, -1, 554, 555, -1, -1, -1, 547, 560, -1,
1453 -1, -1, 552, -1, 554, 555, -1, 569, 570, -1,
1454 560, 573, 224, 225, -1, 227, 228, -1, -1, 569,
1455 570, -1, 262, 573, 3, -1, 266, 267, -1, -1,
1456 -1, 271, -1, -1, -1, -1, -1, -1, -1, 18,
1457 -1, 281, -1, -1, -1, -1, -1, -1, -1, -1,
1458 29, 291, -1, 32, 33, 34, -1, -1, 37, 38,
1459 -1, -1, 41, -1, -1, -1, 45, -1, -1, 48,
1460 -1, -1, -1, -1, -1, -1, 316, -1, -1, -1,
1461 -1, -1, -1, -1, -1, -1, -1, -1, 336, 337,
1462 338, 339, 340, 341, 342, 343, -1, 345, 346, 347,
1463 348, 349, 350, 351, 352, 353, 354, 355, -1, -1,
1464 -1, 90, -1, -1, -1, -1, 356, 357, -1, -1,
1465 -1, -1, -1, -1, 336, 337, 338, 339, 340, 341,
1466 342, 343, -1, 345, 346, 347, 348, 349, 350, 351,
1467 352, 353, 354, 355, 5, -1, 7, -1, -1, 10,
1468 -1, -1, -1, 393, 15, -1, -1, -1, -1, 20,
1469 -1, -1, -1, -1, 404, 26, -1, 28, -1, -1,
1470 418, -1, -1, -1, -1, 36, -1, -1, -1, -1,
1471 -1, -1, -1, -1, -1, -1, 47, -1, -1, -1,
1472 5, -1, 7, -1, -1, 10, 57, -1, -1, -1,
1473 15, 441, 442, -1, -1, 20, 418, -1, -1, -1,
1474 71, 26, -1, 28, -1, 30, 456, -1, -1, 3,
1475 -1, 36, -1, -1, 39, -1, -1, 42, -1, -1,
1476 478, 479, 47, 481, 18, 50, 51, 52, 53, 54,
1477 55, 56, 57, -1, -1, 29, 61, -1, 32, 33,
1478 34, -1, -1, 37, 38, -1, 71, 41, -1, -1,
1479 75, 45, -1, -1, 48, -1, 478, 479, -1, 481,
1480 510, -1, 87, -1, 89, -1, 91, -1, -1, -1,
1481 520, 521, 97, 67, 99, -1, -1, 102, -1, 3,
1482 4, 5, 6, 7, 8, -1, 10, -1, 12, 13,
1483 14, 15, -1, 543, 18, -1, 20, 21, 22, -1,
1484 -1, -1, 26, 553, 28, 29, 30, -1, 32, 33,
1485 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1486 -1, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1487 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
1488 -1, -1, -1, 67, 68, -1, -1, 71, -1, -1,
1489 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1490 -1, -1, -1, -1, -1, 89, -1, 91, -1, 3,
1491 4, 5, 6, 7, -1, 99, 10, 101, 12, -1,
1492 14, 15, -1, -1, 18, -1, 20, 21, 22, -1,
1493 -1, -1, 26, -1, 28, 29, 30, -1, 32, 33,
1494 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1495 -1, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1496 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
1497 -1, -1, -1, 67, 68, -1, -1, 71, -1, -1,
1498 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1499 -1, -1, -1, -1, -1, 89, -1, 91, -1, 3,
1500 4, 5, 6, 7, -1, 99, 10, 101, 12, -1,
1501 14, 15, -1, -1, 18, -1, 20, 21, 22, -1,
1502 -1, -1, 26, -1, 28, 29, 30, -1, 32, 33,
1503 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1504 -1, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1505 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
1506 -1, -1, -1, 67, 68, -1, -1, 71, -1, -1,
1507 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1508 -1, -1, -1, -1, -1, 89, -1, 91, -1, 3,
1509 4, 5, 6, 7, -1, 99, 10, 101, 12, -1,
1510 14, 15, -1, -1, 18, -1, 20, 21, 22, -1,
1511 -1, -1, 26, -1, 28, 29, 30, -1, 32, 33,
1512 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1513 -1, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1514 54, 55, 56, 57, -1, -1, -1, -1, -1, -1,
1515 -1, -1, -1, 67, 68, -1, -1, 71, -1, -1,
1516 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1517 -1, -1, -1, -1, -1, 89, -1, 91, -1, -1,
1518 -1, -1, -1, -1, -1, 99, -1, 101, 3, 4,
1519 5, 6, 7, -1, -1, 10, 11, 12, -1, 14,
1520 15, -1, -1, 18, -1, 20, 21, 22, -1, -1,
1521 -1, 26, -1, 28, 29, 30, -1, 32, 33, 34,
1522 35, 36, 37, 38, 39, 40, 41, 42, 43, -1,
1523 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
1524 55, 56, 57, -1, -1, -1, -1, -1, -1, -1,
1525 -1, -1, -1, 68, -1, -1, 71, -1, -1, -1,
1526 -1, 4, 5, 6, 7, -1, -1, 10, -1, 12,
1527 -1, 14, 15, -1, 89, -1, 91, 20, 21, 22,
1528 -1, -1, -1, 26, 99, 28, 101, 30, -1, -1,
1529 -1, -1, 35, 36, -1, -1, 39, 40, 41, 42,
1530 43, -1, -1, 46, 47, -1, 49, 50, 51, 52,
1531 53, 54, 55, 56, 57, -1, -1, -1, -1, -1,
1532 -1, -1, -1, -1, -1, 68, -1, -1, 71, -1,
1533 -1, -1, -1, 4, 5, 6, 7, -1, -1, 10,
1534 -1, 12, -1, 14, 15, -1, 89, -1, 91, 20,
1535 21, 22, -1, -1, -1, 26, 99, 28, 101, 30,
1536 -1, -1, -1, -1, 35, 36, -1, -1, 39, 40,
1537 41, 42, 43, -1, -1, 46, 47, -1, 49, 50,
1538 51, 52, 53, 54, 55, 56, 57, -1, -1, -1,
1539 -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
1540 71, 5, -1, 7, -1, -1, 10, -1, -1, -1,
1541 -1, 15, -1, -1, -1, -1, 20, -1, 89, -1,
1542 91, -1, 26, -1, 28, -1, 30, -1, 99, -1,
1543 101, -1, 36, -1, -1, 39, -1, -1, 42, -1,
1544 -1, -1, -1, 47, -1, -1, 50, 51, 52, 53,
1545 54, 55, 56, 57, -1, 5, -1, 7, -1, -1,
1546 10, -1, -1, -1, 68, 15, -1, 71, -1, -1,
1547 20, 75, -1, -1, -1, -1, 26, -1, 28, -1,
1548 30, -1, -1, 87, -1, 89, 36, 91, -1, 39,
1549 -1, -1, 42, 97, -1, 99, -1, 47, 102, -1,
1550 50, 51, 52, 53, 54, 55, 56, 57, -1, 5,
1551 -1, 7, -1, -1, 10, -1, -1, -1, -1, 15,
1552 -1, 71, -1, -1, 20, 75, -1, -1, -1, -1,
1553 26, -1, 28, -1, 30, -1, -1, 87, -1, 89,
1554 36, 91, -1, 39, -1, -1, 42, 97, -1, 99,
1555 -1, 47, 102, -1, 50, 51, 52, 53, 54, 55,
1556 56, 57, -1, -1, -1, -1, -1, -1, -1, -1,
1557 -1, -1, -1, -1, 3, 71, 5, -1, 7, 75,
1558 -1, 10, -1, -1, -1, -1, 15, -1, -1, 18,
1559 -1, 20, -1, -1, -1, 91, -1, 26, -1, 28,
1560 29, 30, -1, 32, 33, 34, 102, 36, 37, 38,
1561 39, -1, 41, 42, -1, -1, 45, -1, 47, 48,
1562 -1, 50, 51, 52, 53, 54, 55, 56, 57, -1,
1563 5, -1, 7, -1, -1, 10, -1, -1, -1, -1,
1564 15, -1, 71, -1, -1, 20, -1, -1, -1, -1,
1565 -1, 26, -1, 28, -1, 30, -1, -1, -1, -1,
1566 89, 36, 91, -1, 39, -1, -1, 42, -1, -1,
1567 99, -1, 47, -1, -1, 50, 51, 52, 53, 54,
1568 55, 56, 57, -1, -1, -1, -1, -1, -1, -1,
1569 -1, -1, -1, -1, -1, -1, 71, -1, -1, -1,
1570 3, -1, 5, -1, 7, -1, -1, 10, -1, -1,
1571 -1, -1, 15, -1, 89, 18, 91, 20, -1, -1,
1572 -1, 3, -1, 26, 99, 28, 29, -1, -1, 32,
1573 33, 34, -1, 36, 37, 38, 18, -1, 41, -1,
1574 -1, -1, 45, -1, 47, 48, -1, 29, -1, -1,
1575 32, 33, 34, -1, 57, 37, 38, -1, -1, 41,
1576 60, -1, -1, 45, 64, -1, 48, -1, 71, -1,
1577 70, -1, -1, 73, 60, -1, -1, -1, 64, -1,
1578 80, -1, 82, 83, 70, -1, -1, 73, 88, -1,
1579 -1, -1, -1, 93, 80, 95, 82, 83, 98, -1,
1580 -1, 60, 88, -1, 104, 64, -1, 93, -1, 95,
1581 -1, 70, 98, -1, 73, -1, -1, -1, 104, -1,
1582 -1, 80, -1, 82, 83, -1, -1, -1, -1, 88,
1583 -1, -1, -1, -1, 93, -1, 95, -1, -1, 98,
1584 -1, -1, -1, -1, -1, 104
1587 /* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
1588 state STATE-NUM. */
1589 static const yytype_int16 yystos[] =
1591 0, 31, 107, 122, 123, 126, 5, 7, 10, 15,
1592 20, 26, 28, 36, 47, 57, 71, 111, 117, 118,
1593 119, 120, 121, 0, 124, 57, 72, 101, 72, 24,
1594 125, 127, 128, 129, 11, 42, 119, 11, 117, 3,
1595 18, 29, 32, 33, 34, 37, 38, 41, 45, 48,
1596 101, 130, 131, 132, 133, 134, 135, 164, 165, 72,
1597 101, 132, 17, 23, 68, 136, 137, 139, 11, 27,
1598 17, 166, 167, 103, 113, 114, 117, 113, 115, 138,
1599 140, 137, 139, 139, 119, 119, 115, 68, 168, 66,
1600 101, 66, 37, 67, 130, 135, 141, 142, 143, 148,
1601 149, 158, 159, 139, 169, 115, 115, 68, 177, 47,
1602 110, 111, 112, 113, 116, 117, 118, 160, 101, 157,
1603 177, 67, 134, 135, 143, 149, 165, 170, 171, 172,
1604 4, 6, 12, 14, 21, 22, 30, 35, 39, 40,
1605 41, 42, 43, 46, 49, 50, 51, 52, 53, 54,
1606 55, 56, 89, 91, 99, 101, 108, 109, 110, 116,
1607 117, 119, 131, 134, 135, 177, 178, 179, 180, 181,
1608 182, 183, 185, 186, 187, 189, 190, 191, 192, 194,
1609 201, 203, 204, 212, 213, 215, 216, 217, 218, 219,
1610 224, 225, 226, 230, 235, 236, 237, 238, 239, 240,
1611 242, 243, 258, 259, 263, 119, 151, 119, 144, 145,
1612 146, 151, 62, 234, 234, 91, 44, 150, 155, 101,
1613 101, 101, 173, 101, 75, 87, 91, 97, 102, 111,
1614 116, 117, 226, 236, 238, 239, 240, 241, 242, 243,
1615 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
1616 254, 255, 256, 257, 258, 261, 119, 214, 214, 41,
1617 183, 91, 91, 208, 261, 72, 91, 91, 72, 261,
1618 177, 91, 117, 235, 237, 241, 261, 241, 119, 144,
1619 72, 62, 72, 91, 65, 110, 67, 180, 101, 101,
1620 72, 62, 89, 99, 60, 64, 70, 73, 80, 82,
1621 83, 88, 93, 95, 98, 104, 260, 111, 113, 114,
1622 91, 62, 150, 66, 101, 62, 73, 150, 61, 62,
1623 135, 152, 153, 154, 114, 156, 68, 161, 101, 241,
1624 241, 111, 117, 261, 241, 241, 69, 92, 103, 87,
1625 97, 79, 81, 86, 25, 77, 78, 84, 85, 74,
1626 76, 58, 63, 94, 59, 96, 100, 65, 101, 101,
1627 101, 49, 131, 182, 190, 206, 209, 211, 261, 101,
1628 119, 261, 261, 119, 101, 9, 220, 221, 222, 261,
1629 90, 11, 261, 30, 228, 229, 261, 183, 144, 42,
1630 119, 261, 257, 62, 232, 233, 234, 232, 234, 91,
1631 152, 61, 145, 61, 68, 147, 174, 261, 61, 110,
1632 90, 66, 66, 162, 101, 231, 234, 234, 90, 241,
1633 241, 241, 246, 246, 247, 247, 247, 112, 248, 248,
1634 248, 248, 249, 249, 250, 251, 252, 253, 254, 261,
1635 261, 91, 101, 66, 90, 91, 90, 90, 91, 91,
1636 19, 223, 222, 90, 61, 90, 66, 91, 61, 261,
1637 231, 233, 234, 174, 231, 174, 228, 90, 147, 175,
1638 176, 146, 154, 114, 39, 42, 163, 178, 90, 90,
1639 244, 65, 101, 261, 208, 190, 21, 22, 49, 119,
1640 183, 184, 185, 188, 193, 202, 207, 228, 68, 195,
1641 177, 228, 154, 177, 183, 261, 228, 61, 90, 67,
1642 66, 91, 91, 67, 241, 244, 256, 90, 101, 91,
1643 91, 91, 65, 16, 90, 197, 90, 90, 90, 139,
1644 227, 147, 228, 228, 101, 205, 210, 211, 206, 261,
1645 261, 184, 183, 8, 13, 196, 198, 199, 200, 177,
1646 90, 90, 90, 101, 90, 90, 261, 262, 65, 67,
1647 179, 200, 101, 101, 183, 208, 184, 184, 65, 101,
1648 16, 205, 184, 90, 184
1651 /* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
1652 static const yytype_int16 yyr1[] =
1654 0, 106, 107, 108, 108, 108, 108, 108, 108, 109,
1655 109, 110, 110, 111, 111, 111, 111, 111, 111, 111,
1656 111, 112, 112, 113, 114, 115, 116, 116, 117, 117,
1657 118, 119, 119, 120, 120, 120, 120, 121, 121, 122,
1658 123, 123, 124, 124, 125, 125, 126, 127, 127, 128,
1659 129, 130, 130, 130, 131, 131, 132, 132, 132, 132,
1660 132, 132, 132, 132, 132, 132, 132, 133, 134, 134,
1661 134, 134, 135, 135, 136, 137, 138, 138, 139, 140,
1662 140, 141, 141, 141, 141, 142, 142, 143, 144, 144,
1663 145, 145, 146, 146, 147, 147, 148, 148, 148, 149,
1664 149, 150, 150, 151, 151, 152, 152, 153, 153, 154,
1665 155, 156, 156, 157, 158, 159, 159, 160, 161, 162,
1666 162, 163, 163, 164, 165, 166, 166, 167, 167, 168,
1667 169, 169, 170, 170, 170, 170, 170, 170, 171, 172,
1668 173, 173, 174, 175, 175, 175, 176, 176, 177, 178,
1669 178, 179, 179, 180, 180, 180, 181, 182, 182, 183,
1670 183, 183, 183, 183, 183, 184, 184, 184, 184, 184,
1671 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
1672 185, 185, 186, 187, 188, 189, 190, 190, 190, 190,
1673 190, 190, 190, 191, 192, 193, 194, 195, 196, 196,
1674 197, 197, 198, 199, 199, 200, 200, 201, 202, 203,
1675 204, 205, 205, 206, 206, 207, 208, 208, 209, 209,
1676 210, 211, 211, 212, 212, 213, 214, 214, 215, 216,
1677 217, 218, 219, 219, 220, 220, 221, 221, 222, 223,
1678 224, 224, 225, 225, 225, 225, 225, 225, 225, 226,
1679 227, 227, 228, 228, 229, 229, 230, 230, 230, 230,
1680 231, 231, 232, 232, 233, 234, 234, 235, 235, 235,
1681 235, 236, 236, 236, 236, 237, 237, 238, 238, 238,
1682 238, 238, 239, 240, 241, 241, 241, 241, 241, 242,
1683 243, 244, 244, 244, 244, 245, 245, 245, 246, 246,
1684 246, 246, 247, 247, 247, 248, 248, 248, 248, 249,
1685 249, 249, 249, 249, 249, 250, 250, 250, 251, 251,
1686 252, 252, 253, 253, 254, 254, 255, 255, 256, 256,
1687 257, 257, 258, 259, 259, 259, 260, 260, 260, 260,
1688 260, 260, 260, 260, 260, 260, 260, 260, 261, 262,
1689 263, 263
1692 /* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
1693 static const yytype_int8 yyr2[] =
1695 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1696 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1697 1, 1, 1, 1, 1, 1, 2, 2, 1, 1,
1698 1, 1, 2, 3, 3, 3, 3, 1, 1, 3,
1699 0, 1, 0, 2, 0, 2, 3, 1, 1, 3,
1700 5, 1, 1, 1, 1, 2, 1, 1, 1, 1,
1701 1, 1, 1, 1, 1, 1, 1, 3, 2, 3,
1702 3, 4, 0, 1, 2, 2, 1, 3, 3, 0,
1703 2, 1, 1, 1, 1, 1, 1, 4, 1, 3,
1704 1, 3, 1, 3, 1, 1, 2, 2, 3, 4,
1705 4, 0, 1, 4, 3, 0, 1, 1, 3, 3,
1706 2, 1, 3, 1, 2, 4, 5, 4, 4, 0,
1707 2, 5, 5, 3, 3, 0, 1, 2, 3, 3,
1708 0, 2, 1, 1, 1, 2, 1, 2, 1, 2,
1709 1, 2, 3, 0, 1, 2, 1, 3, 3, 0,
1710 1, 1, 2, 1, 1, 1, 2, 3, 2, 1,
1711 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1712 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1713 1, 1, 1, 3, 3, 2, 1, 1, 1, 1,
1714 1, 1, 1, 5, 7, 7, 5, 4, 0, 1,
1715 0, 2, 2, 1, 2, 3, 2, 5, 5, 7,
1716 9, 0, 1, 0, 1, 9, 0, 1, 1, 1,
1717 1, 1, 3, 3, 5, 3, 0, 1, 3, 3,
1718 3, 5, 3, 4, 0, 1, 1, 2, 5, 2,
1719 1, 1, 1, 1, 3, 1, 1, 1, 1, 6,
1720 0, 1, 0, 1, 1, 3, 4, 4, 4, 4,
1721 0, 1, 1, 2, 3, 2, 3, 3, 3, 3,
1722 3, 4, 6, 6, 6, 4, 4, 1, 1, 3,
1723 1, 1, 2, 2, 1, 1, 2, 2, 1, 2,
1724 2, 1, 2, 2, 1, 5, 4, 5, 1, 3,
1725 3, 3, 1, 3, 3, 1, 3, 3, 3, 1,
1726 3, 3, 3, 3, 3, 1, 3, 3, 1, 3,
1727 1, 3, 1, 3, 1, 3, 1, 3, 1, 5,
1728 1, 1, 3, 1, 1, 1, 1, 1, 1, 1,
1729 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1730 1, 3
1734 enum { YYENOMEM = -2 };
1736 #define yyerrok (yyerrstatus = 0)
1737 #define yyclearin (yychar = YYEMPTY)
1739 #define YYACCEPT goto yyacceptlab
1740 #define YYABORT goto yyabortlab
1741 #define YYERROR goto yyerrorlab
1742 #define YYNOMEM goto yyexhaustedlab
1745 #define YYRECOVERING() (!!yyerrstatus)
1747 #define YYBACKUP(Token, Value) \
1748 do \
1749 if (yychar == YYEMPTY) \
1751 yychar = (Token); \
1752 yylval = (Value); \
1753 YYPOPSTACK (yylen); \
1754 yystate = *yyssp; \
1755 goto yybackup; \
1757 else \
1759 yyerror (yyscanner, YY_("syntax error: cannot back up")); \
1760 YYERROR; \
1762 while (0)
1764 /* Backward compatibility with an undocumented macro.
1765 Use YYerror or YYUNDEF. */
1766 #define YYERRCODE YYUNDEF
1769 /* Enable debugging if requested. */
1770 #if YYDEBUG
1772 # ifndef YYFPRINTF
1773 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1774 # define YYFPRINTF fprintf
1775 # endif
1777 # define YYDPRINTF(Args) \
1778 do { \
1779 if (yydebug) \
1780 YYFPRINTF Args; \
1781 } while (0)
1786 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
1787 do { \
1788 if (yydebug) \
1790 YYFPRINTF (stderr, "%s ", Title); \
1791 yy_symbol_print (stderr, \
1792 Kind, Value, yyscanner); \
1793 YYFPRINTF (stderr, "\n"); \
1795 } while (0)
1798 /*-----------------------------------.
1799 | Print this symbol's value on YYO. |
1800 `-----------------------------------*/
1802 static void
1803 yy_symbol_value_print (FILE *yyo,
1804 yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, yyscan_t yyscanner)
1806 FILE *yyoutput = yyo;
1807 YY_USE (yyoutput);
1808 YY_USE (yyscanner);
1809 if (!yyvaluep)
1810 return;
1811 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1812 YY_USE (yykind);
1813 YY_IGNORE_MAYBE_UNINITIALIZED_END
1817 /*---------------------------.
1818 | Print this symbol on YYO. |
1819 `---------------------------*/
1821 static void
1822 yy_symbol_print (FILE *yyo,
1823 yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, yyscan_t yyscanner)
1825 YYFPRINTF (yyo, "%s %s (",
1826 yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
1828 yy_symbol_value_print (yyo, yykind, yyvaluep, yyscanner);
1829 YYFPRINTF (yyo, ")");
1832 /*------------------------------------------------------------------.
1833 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
1834 | TOP (included). |
1835 `------------------------------------------------------------------*/
1837 static void
1838 yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
1840 YYFPRINTF (stderr, "Stack now");
1841 for (; yybottom <= yytop; yybottom++)
1843 int yybot = *yybottom;
1844 YYFPRINTF (stderr, " %d", yybot);
1846 YYFPRINTF (stderr, "\n");
1849 # define YY_STACK_PRINT(Bottom, Top) \
1850 do { \
1851 if (yydebug) \
1852 yy_stack_print ((Bottom), (Top)); \
1853 } while (0)
1856 /*------------------------------------------------.
1857 | Report that the YYRULE is going to be reduced. |
1858 `------------------------------------------------*/
1860 static void
1861 yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,
1862 int yyrule, yyscan_t yyscanner)
1864 int yylno = yyrline[yyrule];
1865 int yynrhs = yyr2[yyrule];
1866 int yyi;
1867 YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
1868 yyrule - 1, yylno);
1869 /* The symbols being reduced. */
1870 for (yyi = 0; yyi < yynrhs; yyi++)
1872 YYFPRINTF (stderr, " $%d = ", yyi + 1);
1873 yy_symbol_print (stderr,
1874 YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]),
1875 &yyvsp[(yyi + 1) - (yynrhs)], yyscanner);
1876 YYFPRINTF (stderr, "\n");
1880 # define YY_REDUCE_PRINT(Rule) \
1881 do { \
1882 if (yydebug) \
1883 yy_reduce_print (yyssp, yyvsp, Rule, yyscanner); \
1884 } while (0)
1886 /* Nonzero means print parse trace. It is left uninitialized so that
1887 multiple parsers can coexist. */
1888 int yydebug;
1889 #else /* !YYDEBUG */
1890 # define YYDPRINTF(Args) ((void) 0)
1891 # define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
1892 # define YY_STACK_PRINT(Bottom, Top)
1893 # define YY_REDUCE_PRINT(Rule)
1894 #endif /* !YYDEBUG */
1897 /* YYINITDEPTH -- initial size of the parser's stacks. */
1898 #ifndef YYINITDEPTH
1899 # define YYINITDEPTH 200
1900 #endif
1902 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1903 if the built-in stack extension method is used).
1905 Do not make this value too large; the results are undefined if
1906 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1907 evaluated with infinite-precision integer arithmetic. */
1909 #ifndef YYMAXDEPTH
1910 # define YYMAXDEPTH 10000
1911 #endif
1914 /* Context of a parse error. */
1915 typedef struct
1917 yy_state_t *yyssp;
1918 yysymbol_kind_t yytoken;
1919 } yypcontext_t;
1921 /* Put in YYARG at most YYARGN of the expected tokens given the
1922 current YYCTX, and return the number of tokens stored in YYARG. If
1923 YYARG is null, return the number of expected tokens (guaranteed to
1924 be less than YYNTOKENS). Return YYENOMEM on memory exhaustion.
1925 Return 0 if there are more than YYARGN expected tokens, yet fill
1926 YYARG up to YYARGN. */
1927 static int
1928 yypcontext_expected_tokens (const yypcontext_t *yyctx,
1929 yysymbol_kind_t yyarg[], int yyargn)
1931 /* Actual size of YYARG. */
1932 int yycount = 0;
1933 int yyn = yypact[+*yyctx->yyssp];
1934 if (!yypact_value_is_default (yyn))
1936 /* Start YYX at -YYN if negative to avoid negative indexes in
1937 YYCHECK. In other words, skip the first -YYN actions for
1938 this state because they are default actions. */
1939 int yyxbegin = yyn < 0 ? -yyn : 0;
1940 /* Stay within bounds of both yycheck and yytname. */
1941 int yychecklim = YYLAST - yyn + 1;
1942 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
1943 int yyx;
1944 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
1945 if (yycheck[yyx + yyn] == yyx && yyx != YYSYMBOL_YYerror
1946 && !yytable_value_is_error (yytable[yyx + yyn]))
1948 if (!yyarg)
1949 ++yycount;
1950 else if (yycount == yyargn)
1951 return 0;
1952 else
1953 yyarg[yycount++] = YY_CAST (yysymbol_kind_t, yyx);
1956 if (yyarg && yycount == 0 && 0 < yyargn)
1957 yyarg[0] = YYSYMBOL_YYEMPTY;
1958 return yycount;
1964 #ifndef yystrlen
1965 # if defined __GLIBC__ && defined _STRING_H
1966 # define yystrlen(S) (YY_CAST (YYPTRDIFF_T, strlen (S)))
1967 # else
1968 /* Return the length of YYSTR. */
1969 static YYPTRDIFF_T
1970 yystrlen (const char *yystr)
1972 YYPTRDIFF_T yylen;
1973 for (yylen = 0; yystr[yylen]; yylen++)
1974 continue;
1975 return yylen;
1977 # endif
1978 #endif
1980 #ifndef yystpcpy
1981 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
1982 # define yystpcpy stpcpy
1983 # else
1984 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1985 YYDEST. */
1986 static char *
1987 yystpcpy (char *yydest, const char *yysrc)
1989 char *yyd = yydest;
1990 const char *yys = yysrc;
1992 while ((*yyd++ = *yys++) != '\0')
1993 continue;
1995 return yyd - 1;
1997 # endif
1998 #endif
2000 #ifndef yytnamerr
2001 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2002 quotes and backslashes, so that it's suitable for yyerror. The
2003 heuristic is that double-quoting is unnecessary unless the string
2004 contains an apostrophe, a comma, or backslash (other than
2005 backslash-backslash). YYSTR is taken from yytname. If YYRES is
2006 null, do not copy; instead, return the length of what the result
2007 would have been. */
2008 static YYPTRDIFF_T
2009 yytnamerr (char *yyres, const char *yystr)
2011 if (*yystr == '"')
2013 YYPTRDIFF_T yyn = 0;
2014 char const *yyp = yystr;
2015 for (;;)
2016 switch (*++yyp)
2018 case '\'':
2019 case ',':
2020 goto do_not_strip_quotes;
2022 case '\\':
2023 if (*++yyp != '\\')
2024 goto do_not_strip_quotes;
2025 else
2026 goto append;
2028 append:
2029 default:
2030 if (yyres)
2031 yyres[yyn] = *yyp;
2032 yyn++;
2033 break;
2035 case '"':
2036 if (yyres)
2037 yyres[yyn] = '\0';
2038 return yyn;
2040 do_not_strip_quotes: ;
2043 if (yyres)
2044 return yystpcpy (yyres, yystr) - yyres;
2045 else
2046 return yystrlen (yystr);
2048 #endif
2051 static int
2052 yy_syntax_error_arguments (const yypcontext_t *yyctx,
2053 yysymbol_kind_t yyarg[], int yyargn)
2055 /* Actual size of YYARG. */
2056 int yycount = 0;
2057 /* There are many possibilities here to consider:
2058 - If this state is a consistent state with a default action, then
2059 the only way this function was invoked is if the default action
2060 is an error action. In that case, don't check for expected
2061 tokens because there are none.
2062 - The only way there can be no lookahead present (in yychar) is if
2063 this state is a consistent state with a default action. Thus,
2064 detecting the absence of a lookahead is sufficient to determine
2065 that there is no unexpected or expected token to report. In that
2066 case, just report a simple "syntax error".
2067 - Don't assume there isn't a lookahead just because this state is a
2068 consistent state with a default action. There might have been a
2069 previous inconsistent state, consistent state with a non-default
2070 action, or user semantic action that manipulated yychar.
2071 - Of course, the expected token list depends on states to have
2072 correct lookahead information, and it depends on the parser not
2073 to perform extra reductions after fetching a lookahead from the
2074 scanner and before detecting a syntax error. Thus, state merging
2075 (from LALR or IELR) and default reductions corrupt the expected
2076 token list. However, the list is correct for canonical LR with
2077 one exception: it will still contain any token that will not be
2078 accepted due to an error action in a later state.
2080 if (yyctx->yytoken != YYSYMBOL_YYEMPTY)
2082 int yyn;
2083 if (yyarg)
2084 yyarg[yycount] = yyctx->yytoken;
2085 ++yycount;
2086 yyn = yypcontext_expected_tokens (yyctx,
2087 yyarg ? yyarg + 1 : yyarg, yyargn - 1);
2088 if (yyn == YYENOMEM)
2089 return YYENOMEM;
2090 else
2091 yycount += yyn;
2093 return yycount;
2096 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
2097 about the unexpected token YYTOKEN for the state stack whose top is
2098 YYSSP.
2100 Return 0 if *YYMSG was successfully written. Return -1 if *YYMSG is
2101 not large enough to hold the message. In that case, also set
2102 *YYMSG_ALLOC to the required number of bytes. Return YYENOMEM if the
2103 required number of bytes is too large to store. */
2104 static int
2105 yysyntax_error (YYPTRDIFF_T *yymsg_alloc, char **yymsg,
2106 const yypcontext_t *yyctx)
2108 enum { YYARGS_MAX = 5 };
2109 /* Internationalized format string. */
2110 const char *yyformat = YY_NULLPTR;
2111 /* Arguments of yyformat: reported tokens (one for the "unexpected",
2112 one per "expected"). */
2113 yysymbol_kind_t yyarg[YYARGS_MAX];
2114 /* Cumulated lengths of YYARG. */
2115 YYPTRDIFF_T yysize = 0;
2117 /* Actual size of YYARG. */
2118 int yycount = yy_syntax_error_arguments (yyctx, yyarg, YYARGS_MAX);
2119 if (yycount == YYENOMEM)
2120 return YYENOMEM;
2122 switch (yycount)
2124 #define YYCASE_(N, S) \
2125 case N: \
2126 yyformat = S; \
2127 break
2128 default: /* Avoid compiler warnings. */
2129 YYCASE_(0, YY_("syntax error"));
2130 YYCASE_(1, YY_("syntax error, unexpected %s"));
2131 YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
2132 YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
2133 YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
2134 YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
2135 #undef YYCASE_
2138 /* Compute error message size. Don't count the "%s"s, but reserve
2139 room for the terminator. */
2140 yysize = yystrlen (yyformat) - 2 * yycount + 1;
2142 int yyi;
2143 for (yyi = 0; yyi < yycount; ++yyi)
2145 YYPTRDIFF_T yysize1
2146 = yysize + yytnamerr (YY_NULLPTR, yytname[yyarg[yyi]]);
2147 if (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)
2148 yysize = yysize1;
2149 else
2150 return YYENOMEM;
2154 if (*yymsg_alloc < yysize)
2156 *yymsg_alloc = 2 * yysize;
2157 if (! (yysize <= *yymsg_alloc
2158 && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
2159 *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
2160 return -1;
2163 /* Avoid sprintf, as that infringes on the user's name space.
2164 Don't have undefined behavior even if the translation
2165 produced a string with the wrong number of "%s"s. */
2167 char *yyp = *yymsg;
2168 int yyi = 0;
2169 while ((*yyp = *yyformat) != '\0')
2170 if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
2172 yyp += yytnamerr (yyp, yytname[yyarg[yyi++]]);
2173 yyformat += 2;
2175 else
2177 ++yyp;
2178 ++yyformat;
2181 return 0;
2185 /*-----------------------------------------------.
2186 | Release the memory associated to this symbol. |
2187 `-----------------------------------------------*/
2189 static void
2190 yydestruct (const char *yymsg,
2191 yysymbol_kind_t yykind, YYSTYPE *yyvaluep, yyscan_t yyscanner)
2193 YY_USE (yyvaluep);
2194 YY_USE (yyscanner);
2195 if (!yymsg)
2196 yymsg = "Deleting";
2197 YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
2199 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2200 YY_USE (yykind);
2201 YY_IGNORE_MAYBE_UNINITIALIZED_END
2209 /*----------.
2210 | yyparse. |
2211 `----------*/
2214 yyparse (yyscan_t yyscanner)
2216 /* Lookahead token kind. */
2217 int yychar;
2220 /* The semantic value of the lookahead symbol. */
2221 /* Default value used for initialization, for pacifying older GCCs
2222 or non-GCC compilers. */
2223 YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
2224 YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
2226 /* Number of syntax errors so far. */
2227 int yynerrs = 0;
2229 yy_state_fast_t yystate = 0;
2230 /* Number of tokens to shift before error messages enabled. */
2231 int yyerrstatus = 0;
2233 /* Refer to the stacks through separate pointers, to allow yyoverflow
2234 to reallocate them elsewhere. */
2236 /* Their size. */
2237 YYPTRDIFF_T yystacksize = YYINITDEPTH;
2239 /* The state stack: array, bottom, top. */
2240 yy_state_t yyssa[YYINITDEPTH];
2241 yy_state_t *yyss = yyssa;
2242 yy_state_t *yyssp = yyss;
2244 /* The semantic value stack: array, bottom, top. */
2245 YYSTYPE yyvsa[YYINITDEPTH];
2246 YYSTYPE *yyvs = yyvsa;
2247 YYSTYPE *yyvsp = yyvs;
2249 int yyn;
2250 /* The return value of yyparse. */
2251 int yyresult;
2252 /* Lookahead symbol kind. */
2253 yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY;
2254 /* The variables used to return semantic value and location from the
2255 action routines. */
2256 YYSTYPE yyval;
2258 /* Buffer for error messages, and its allocated size. */
2259 char yymsgbuf[128];
2260 char *yymsg = yymsgbuf;
2261 YYPTRDIFF_T yymsg_alloc = sizeof yymsgbuf;
2263 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2265 /* The number of symbols on the RHS of the reduced rule.
2266 Keep to zero when no symbol should be popped. */
2267 int yylen = 0;
2269 YYDPRINTF ((stderr, "Starting parse\n"));
2271 yychar = YYEMPTY; /* Cause a token to be read. */
2273 goto yysetstate;
2276 /*------------------------------------------------------------.
2277 | yynewstate -- push a new state, which is found in yystate. |
2278 `------------------------------------------------------------*/
2279 yynewstate:
2280 /* In all cases, when you get here, the value and location stacks
2281 have just been pushed. So pushing a state here evens the stacks. */
2282 yyssp++;
2285 /*--------------------------------------------------------------------.
2286 | yysetstate -- set current state (the top of the stack) to yystate. |
2287 `--------------------------------------------------------------------*/
2288 yysetstate:
2289 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2290 YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
2291 YY_IGNORE_USELESS_CAST_BEGIN
2292 *yyssp = YY_CAST (yy_state_t, yystate);
2293 YY_IGNORE_USELESS_CAST_END
2294 YY_STACK_PRINT (yyss, yyssp);
2296 if (yyss + yystacksize - 1 <= yyssp)
2297 #if !defined yyoverflow && !defined YYSTACK_RELOCATE
2298 YYNOMEM;
2299 #else
2301 /* Get the current used size of the three stacks, in elements. */
2302 YYPTRDIFF_T yysize = yyssp - yyss + 1;
2304 # if defined yyoverflow
2306 /* Give user a chance to reallocate the stack. Use copies of
2307 these so that the &'s don't force the real ones into
2308 memory. */
2309 yy_state_t *yyss1 = yyss;
2310 YYSTYPE *yyvs1 = yyvs;
2312 /* Each stack pointer address is followed by the size of the
2313 data in use in that stack, in bytes. This used to be a
2314 conditional around just the two extra args, but that might
2315 be undefined if yyoverflow is a macro. */
2316 yyoverflow (YY_("memory exhausted"),
2317 &yyss1, yysize * YYSIZEOF (*yyssp),
2318 &yyvs1, yysize * YYSIZEOF (*yyvsp),
2319 &yystacksize);
2320 yyss = yyss1;
2321 yyvs = yyvs1;
2323 # else /* defined YYSTACK_RELOCATE */
2324 /* Extend the stack our own way. */
2325 if (YYMAXDEPTH <= yystacksize)
2326 YYNOMEM;
2327 yystacksize *= 2;
2328 if (YYMAXDEPTH < yystacksize)
2329 yystacksize = YYMAXDEPTH;
2332 yy_state_t *yyss1 = yyss;
2333 union yyalloc *yyptr =
2334 YY_CAST (union yyalloc *,
2335 YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
2336 if (! yyptr)
2337 YYNOMEM;
2338 YYSTACK_RELOCATE (yyss_alloc, yyss);
2339 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
2340 # undef YYSTACK_RELOCATE
2341 if (yyss1 != yyssa)
2342 YYSTACK_FREE (yyss1);
2344 # endif
2346 yyssp = yyss + yysize - 1;
2347 yyvsp = yyvs + yysize - 1;
2349 YY_IGNORE_USELESS_CAST_BEGIN
2350 YYDPRINTF ((stderr, "Stack size increased to %ld\n",
2351 YY_CAST (long, yystacksize)));
2352 YY_IGNORE_USELESS_CAST_END
2354 if (yyss + yystacksize - 1 <= yyssp)
2355 YYABORT;
2357 #endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
2360 if (yystate == YYFINAL)
2361 YYACCEPT;
2363 goto yybackup;
2366 /*-----------.
2367 | yybackup. |
2368 `-----------*/
2369 yybackup:
2370 /* Do appropriate processing given the current state. Read a
2371 lookahead token if we need one and don't already have one. */
2373 /* First try to decide what to do without reference to lookahead token. */
2374 yyn = yypact[yystate];
2375 if (yypact_value_is_default (yyn))
2376 goto yydefault;
2378 /* Not known => get a lookahead token if don't already have one. */
2380 /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */
2381 if (yychar == YYEMPTY)
2383 YYDPRINTF ((stderr, "Reading a token\n"));
2384 yychar = yylex (&yylval, yyscanner);
2387 if (yychar <= YYEOF)
2389 yychar = YYEOF;
2390 yytoken = YYSYMBOL_YYEOF;
2391 YYDPRINTF ((stderr, "Now at end of input.\n"));
2393 else if (yychar == YYerror)
2395 /* The scanner already issued an error message, process directly
2396 to error recovery. But do not keep the error token as
2397 lookahead, it is too special and may lead us to an endless
2398 loop in error recovery. */
2399 yychar = YYUNDEF;
2400 yytoken = YYSYMBOL_YYerror;
2401 goto yyerrlab1;
2403 else
2405 yytoken = YYTRANSLATE (yychar);
2406 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2409 /* If the proper action on seeing token YYTOKEN is to reduce or to
2410 detect an error, take that action. */
2411 yyn += yytoken;
2412 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2413 goto yydefault;
2414 yyn = yytable[yyn];
2415 if (yyn <= 0)
2417 if (yytable_value_is_error (yyn))
2418 goto yyerrlab;
2419 yyn = -yyn;
2420 goto yyreduce;
2423 /* Count tokens shifted since error; after three, turn off error
2424 status. */
2425 if (yyerrstatus)
2426 yyerrstatus--;
2428 /* Shift the lookahead token. */
2429 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
2430 yystate = yyn;
2431 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2432 *++yyvsp = yylval;
2433 YY_IGNORE_MAYBE_UNINITIALIZED_END
2435 /* Discard the shifted token. */
2436 yychar = YYEMPTY;
2437 goto yynewstate;
2440 /*-----------------------------------------------------------.
2441 | yydefault -- do the default action for the current state. |
2442 `-----------------------------------------------------------*/
2443 yydefault:
2444 yyn = yydefact[yystate];
2445 if (yyn == 0)
2446 goto yyerrlab;
2447 goto yyreduce;
2450 /*-----------------------------.
2451 | yyreduce -- do a reduction. |
2452 `-----------------------------*/
2453 yyreduce:
2454 /* yyn is the number of a rule to reduce with. */
2455 yylen = yyr2[yyn];
2457 /* If YYLEN is nonzero, implement the default value of the action:
2458 '$$ = $1'.
2460 Otherwise, the following line sets YYVAL to garbage.
2461 This behavior is undocumented and Bison
2462 users should not rely upon it. Assigning to YYVAL
2463 unconditionally makes the parser a bit smaller, and it avoids a
2464 GCC warning that YYVAL may be used uninitialized. */
2465 yyval = yyvsp[1-yylen];
2468 YY_REDUCE_PRINT (yyn);
2469 switch (yyn)
2471 case 2: /* Goal: CompilationUnit */
2472 #line 185 "cmDependsJavaParser.y"
2474 jpElementStart(1);
2475 jpCheckEmpty(1);
2476 (yyval.str) = 0;
2477 yyGetParser->SetCurrentCombine("");
2479 #line 2480 "cmDependsJavaParser.cxx"
2480 break;
2482 case 3: /* Literal: IntegerLiteral */
2483 #line 194 "cmDependsJavaParser.y"
2485 jpElementStart(1);
2486 jpCheckEmpty(1);
2487 (yyval.str) = 0;
2488 yyGetParser->SetCurrentCombine("");
2490 #line 2491 "cmDependsJavaParser.cxx"
2491 break;
2493 case 4: /* Literal: jp_FLOATINGPOINTLITERAL */
2494 #line 202 "cmDependsJavaParser.y"
2496 jpElementStart(1);
2497 jpCheckEmpty(1);
2498 (yyval.str) = 0;
2499 yyGetParser->SetCurrentCombine("");
2501 #line 2502 "cmDependsJavaParser.cxx"
2502 break;
2504 case 5: /* Literal: jp_BOOLEANLITERAL */
2505 #line 210 "cmDependsJavaParser.y"
2507 jpElementStart(1);
2508 jpCheckEmpty(1);
2509 (yyval.str) = 0;
2510 yyGetParser->SetCurrentCombine("");
2512 #line 2513 "cmDependsJavaParser.cxx"
2513 break;
2515 case 6: /* Literal: jp_CHARACTERLITERAL */
2516 #line 218 "cmDependsJavaParser.y"
2518 jpElementStart(1);
2519 jpCheckEmpty(1);
2520 (yyval.str) = 0;
2521 yyGetParser->SetCurrentCombine("");
2523 #line 2524 "cmDependsJavaParser.cxx"
2524 break;
2526 case 7: /* Literal: jp_STRINGLITERAL */
2527 #line 226 "cmDependsJavaParser.y"
2529 jpElementStart(1);
2530 jpCheckEmpty(1);
2531 (yyval.str) = 0;
2532 yyGetParser->SetCurrentCombine("");
2534 #line 2535 "cmDependsJavaParser.cxx"
2535 break;
2537 case 8: /* Literal: jp_NULLLITERAL */
2538 #line 234 "cmDependsJavaParser.y"
2540 jpElementStart(1);
2541 jpCheckEmpty(1);
2542 (yyval.str) = 0;
2543 yyGetParser->SetCurrentCombine("");
2545 #line 2546 "cmDependsJavaParser.cxx"
2546 break;
2548 case 9: /* IntegerLiteral: jp_DECIMALINTEGERLITERAL */
2549 #line 243 "cmDependsJavaParser.y"
2551 jpElementStart(1);
2552 jpCheckEmpty(1);
2553 (yyval.str) = 0;
2554 yyGetParser->SetCurrentCombine("");
2556 #line 2557 "cmDependsJavaParser.cxx"
2557 break;
2559 case 10: /* IntegerLiteral: jp_HEXINTEGERLITERAL */
2560 #line 251 "cmDependsJavaParser.y"
2562 jpElementStart(1);
2563 jpCheckEmpty(1);
2564 (yyval.str) = 0;
2565 yyGetParser->SetCurrentCombine("");
2567 #line 2568 "cmDependsJavaParser.cxx"
2568 break;
2570 case 11: /* Type: PrimitiveType */
2571 #line 260 "cmDependsJavaParser.y"
2573 jpElementStart(1);
2574 jpCheckEmpty(1);
2575 (yyval.str) = 0;
2576 yyGetParser->SetCurrentCombine("");
2578 #line 2579 "cmDependsJavaParser.cxx"
2579 break;
2581 case 12: /* Type: ReferenceType */
2582 #line 268 "cmDependsJavaParser.y"
2584 jpElementStart(1);
2585 jpCheckEmpty(1);
2586 (yyval.str) = 0;
2587 yyGetParser->SetCurrentCombine("");
2589 #line 2590 "cmDependsJavaParser.cxx"
2590 break;
2592 case 13: /* PrimitiveType: jp_BYTE_TYPE */
2593 #line 277 "cmDependsJavaParser.y"
2595 jpElementStart(0);
2597 #line 2598 "cmDependsJavaParser.cxx"
2598 break;
2600 case 14: /* PrimitiveType: jp_SHORT_TYPE */
2601 #line 282 "cmDependsJavaParser.y"
2603 jpElementStart(0);
2605 #line 2606 "cmDependsJavaParser.cxx"
2606 break;
2608 case 15: /* PrimitiveType: jp_INT_TYPE */
2609 #line 287 "cmDependsJavaParser.y"
2611 jpElementStart(0);
2613 #line 2614 "cmDependsJavaParser.cxx"
2614 break;
2616 case 16: /* PrimitiveType: jp_LONG_TYPE */
2617 #line 292 "cmDependsJavaParser.y"
2619 jpElementStart(0);
2621 #line 2622 "cmDependsJavaParser.cxx"
2622 break;
2624 case 17: /* PrimitiveType: jp_CHAR_TYPE */
2625 #line 297 "cmDependsJavaParser.y"
2627 jpElementStart(0);
2629 #line 2630 "cmDependsJavaParser.cxx"
2630 break;
2632 case 18: /* PrimitiveType: jp_FLOAT_TYPE */
2633 #line 302 "cmDependsJavaParser.y"
2635 jpElementStart(0);
2637 #line 2638 "cmDependsJavaParser.cxx"
2638 break;
2640 case 19: /* PrimitiveType: jp_DOUBLE_TYPE */
2641 #line 307 "cmDependsJavaParser.y"
2643 jpElementStart(0);
2645 #line 2646 "cmDependsJavaParser.cxx"
2646 break;
2648 case 20: /* PrimitiveType: jp_BOOLEAN_TYPE */
2649 #line 312 "cmDependsJavaParser.y"
2651 jpElementStart(0);
2653 #line 2654 "cmDependsJavaParser.cxx"
2654 break;
2656 case 21: /* ReferenceType: ClassOrInterfaceType */
2657 #line 318 "cmDependsJavaParser.y"
2659 jpElementStart(1);
2660 jpCheckEmpty(1);
2661 (yyval.str) = 0;
2662 yyGetParser->SetCurrentCombine("");
2664 #line 2665 "cmDependsJavaParser.cxx"
2665 break;
2667 case 22: /* ReferenceType: ArrayType */
2668 #line 326 "cmDependsJavaParser.y"
2670 jpElementStart(1);
2671 jpCheckEmpty(1);
2672 (yyval.str) = 0;
2673 yyGetParser->SetCurrentCombine("");
2675 #line 2676 "cmDependsJavaParser.cxx"
2676 break;
2678 case 23: /* ClassOrInterfaceType: Name */
2679 #line 335 "cmDependsJavaParser.y"
2681 jpElementStart(1);
2682 jpStoreClass((yyvsp[0].str));
2683 jpCheckEmpty(1);
2684 (yyval.str) = 0;
2685 yyGetParser->SetCurrentCombine("");
2687 #line 2688 "cmDependsJavaParser.cxx"
2688 break;
2690 case 24: /* ClassType: ClassOrInterfaceType */
2691 #line 345 "cmDependsJavaParser.y"
2693 jpElementStart(1);
2694 jpCheckEmpty(1);
2695 (yyval.str) = 0;
2696 yyGetParser->SetCurrentCombine("");
2698 #line 2699 "cmDependsJavaParser.cxx"
2699 break;
2701 case 25: /* InterfaceType: ClassOrInterfaceType */
2702 #line 354 "cmDependsJavaParser.y"
2704 jpElementStart(1);
2705 jpCheckEmpty(1);
2706 (yyval.str) = 0;
2707 yyGetParser->SetCurrentCombine("");
2709 #line 2710 "cmDependsJavaParser.cxx"
2710 break;
2712 case 26: /* ArrayType: PrimitiveType Dims */
2713 #line 363 "cmDependsJavaParser.y"
2715 jpElementStart(2);
2716 jpCheckEmpty(2);
2717 (yyval.str) = 0;
2718 yyGetParser->SetCurrentCombine("");
2720 #line 2721 "cmDependsJavaParser.cxx"
2721 break;
2723 case 27: /* ArrayType: Name Dims */
2724 #line 371 "cmDependsJavaParser.y"
2726 jpElementStart(2);
2727 jpStoreClass((yyvsp[-1].str));
2728 jpCheckEmpty(2);
2729 (yyval.str) = 0;
2730 yyGetParser->SetCurrentCombine("");
2732 #line 2733 "cmDependsJavaParser.cxx"
2733 break;
2735 case 28: /* Name: SimpleName */
2736 #line 381 "cmDependsJavaParser.y"
2738 jpElementStart(1);
2739 (yyval.str) = (yyvsp[0].str);
2741 #line 2742 "cmDependsJavaParser.cxx"
2742 break;
2744 case 29: /* Name: QualifiedName */
2745 #line 387 "cmDependsJavaParser.y"
2747 jpElementStart(1);
2748 (yyval.str) = (yyvsp[0].str);
2750 #line 2751 "cmDependsJavaParser.cxx"
2751 break;
2753 case 30: /* SimpleName: Identifier */
2754 #line 394 "cmDependsJavaParser.y"
2756 jpElementStart(1);
2757 (yyval.str) = (yyvsp[0].str);
2759 #line 2760 "cmDependsJavaParser.cxx"
2760 break;
2762 case 31: /* Identifier: jp_NAME */
2763 #line 401 "cmDependsJavaParser.y"
2765 jpElementStart(1);
2766 (yyval.str) = (yyvsp[0].str);
2768 #line 2769 "cmDependsJavaParser.cxx"
2769 break;
2771 case 32: /* Identifier: jp_DOLLAR jp_NAME */
2772 #line 407 "cmDependsJavaParser.y"
2774 jpElementStart(2);
2775 (yyval.str) = (yyvsp[0].str);
2777 #line 2778 "cmDependsJavaParser.cxx"
2778 break;
2780 case 33: /* QualifiedName: Name jp_DOT Identifier */
2781 #line 414 "cmDependsJavaParser.y"
2783 jpElementStart(3);
2784 yyGetParser->AddClassFound((yyvsp[-2].str));
2785 yyGetParser->UpdateCombine((yyvsp[-2].str), (yyvsp[0].str));
2786 yyGetParser->DeallocateParserType(&((yyvsp[-2].str)));
2787 (yyval.str) = const_cast<char*>(yyGetParser->GetCurrentCombine());
2789 #line 2790 "cmDependsJavaParser.cxx"
2790 break;
2792 case 34: /* QualifiedName: Name jp_DOT jp_CLASS */
2793 #line 423 "cmDependsJavaParser.y"
2795 jpElementStart(3);
2796 jpStoreClass((yyvsp[-2].str));
2797 jpCheckEmpty(3);
2798 yyGetParser->SetCurrentCombine("");
2799 (yyval.str) = 0;
2800 yyGetParser->SetCurrentCombine("");
2802 #line 2803 "cmDependsJavaParser.cxx"
2803 break;
2805 case 35: /* QualifiedName: Name jp_DOT jp_THIS */
2806 #line 433 "cmDependsJavaParser.y"
2808 jpElementStart(3);
2809 jpStoreClass((yyvsp[-2].str));
2810 yyGetParser->SetCurrentCombine("");
2811 jpCheckEmpty(3);
2812 (yyval.str) = 0;
2813 yyGetParser->SetCurrentCombine("");
2815 #line 2816 "cmDependsJavaParser.cxx"
2816 break;
2818 case 36: /* QualifiedName: SimpleType jp_DOT jp_CLASS */
2819 #line 443 "cmDependsJavaParser.y"
2821 jpElementStart(3);
2822 jpCheckEmpty(3);
2823 (yyval.str) = 0;
2824 yyGetParser->SetCurrentCombine("");
2826 #line 2827 "cmDependsJavaParser.cxx"
2827 break;
2829 case 37: /* SimpleType: PrimitiveType */
2830 #line 452 "cmDependsJavaParser.y"
2832 jpElementStart(1);
2833 jpCheckEmpty(1);
2834 (yyval.str) = 0;
2835 yyGetParser->SetCurrentCombine("");
2837 #line 2838 "cmDependsJavaParser.cxx"
2838 break;
2840 case 38: /* SimpleType: jp_VOID */
2841 #line 460 "cmDependsJavaParser.y"
2843 jpElementStart(1);
2844 jpCheckEmpty(1);
2845 (yyval.str) = 0;
2846 yyGetParser->SetCurrentCombine("");
2848 #line 2849 "cmDependsJavaParser.cxx"
2849 break;
2851 case 39: /* CompilationUnit: PackageDeclarationopt ImportDeclarations TypeDeclarations */
2852 #line 469 "cmDependsJavaParser.y"
2854 jpElementStart(3);
2855 jpCheckEmpty(3);
2856 (yyval.str) = 0;
2857 yyGetParser->SetCurrentCombine("");
2859 #line 2860 "cmDependsJavaParser.cxx"
2860 break;
2862 case 40: /* PackageDeclarationopt: %empty */
2863 #line 477 "cmDependsJavaParser.y"
2865 jpElementStart(0);
2866 (yyval.str) = 0;
2867 yyGetParser->SetCurrentCombine("");
2869 #line 2870 "cmDependsJavaParser.cxx"
2870 break;
2872 case 41: /* PackageDeclarationopt: PackageDeclaration */
2873 #line 484 "cmDependsJavaParser.y"
2875 jpElementStart(1);
2876 jpCheckEmpty(1);
2877 (yyval.str) = 0;
2878 yyGetParser->SetCurrentCombine("");
2880 #line 2881 "cmDependsJavaParser.cxx"
2881 break;
2883 case 42: /* ImportDeclarations: %empty */
2884 #line 492 "cmDependsJavaParser.y"
2886 jpElementStart(0);
2887 (yyval.str) = 0;
2888 yyGetParser->SetCurrentCombine("");
2890 #line 2891 "cmDependsJavaParser.cxx"
2891 break;
2893 case 43: /* ImportDeclarations: ImportDeclarations ImportDeclaration */
2894 #line 499 "cmDependsJavaParser.y"
2896 jpElementStart(2);
2897 jpCheckEmpty(2);
2898 (yyval.str) = 0;
2899 yyGetParser->SetCurrentCombine("");
2901 #line 2902 "cmDependsJavaParser.cxx"
2902 break;
2904 case 44: /* TypeDeclarations: %empty */
2905 #line 507 "cmDependsJavaParser.y"
2907 jpElementStart(0);
2908 (yyval.str) = 0;
2909 yyGetParser->SetCurrentCombine("");
2911 #line 2912 "cmDependsJavaParser.cxx"
2912 break;
2914 case 45: /* TypeDeclarations: TypeDeclarations TypeDeclaration */
2915 #line 514 "cmDependsJavaParser.y"
2917 jpElementStart(2);
2918 jpCheckEmpty(2);
2919 (yyval.str) = 0;
2920 yyGetParser->SetCurrentCombine("");
2922 #line 2923 "cmDependsJavaParser.cxx"
2923 break;
2925 case 46: /* PackageDeclaration: jp_PACKAGE Name jp_SEMICOL */
2926 #line 523 "cmDependsJavaParser.y"
2928 jpElementStart(3);
2929 yyGetParser->SetCurrentPackage((yyvsp[-1].str));
2930 yyGetParser->DeallocateParserType(&((yyvsp[-1].str)));
2931 yyGetParser->SetCurrentCombine("");
2932 jpCheckEmpty(3);
2933 (yyval.str) = 0;
2934 yyGetParser->SetCurrentCombine("");
2936 #line 2937 "cmDependsJavaParser.cxx"
2937 break;
2939 case 47: /* ImportDeclaration: SingleTypeImportDeclaration */
2940 #line 535 "cmDependsJavaParser.y"
2942 jpElementStart(1);
2943 jpCheckEmpty(1);
2944 (yyval.str) = 0;
2945 yyGetParser->SetCurrentCombine("");
2947 #line 2948 "cmDependsJavaParser.cxx"
2948 break;
2950 case 48: /* ImportDeclaration: TypeImportOnDemandDeclaration */
2951 #line 543 "cmDependsJavaParser.y"
2953 jpElementStart(1);
2954 jpCheckEmpty(1);
2955 (yyval.str) = 0;
2956 yyGetParser->SetCurrentCombine("");
2958 #line 2959 "cmDependsJavaParser.cxx"
2959 break;
2961 case 49: /* SingleTypeImportDeclaration: jp_IMPORT Name jp_SEMICOL */
2962 #line 552 "cmDependsJavaParser.y"
2964 jpElementStart(3);
2965 yyGetParser->AddPackagesImport((yyvsp[-1].str));
2966 yyGetParser->DeallocateParserType(&((yyvsp[-1].str)));
2967 yyGetParser->SetCurrentCombine("");
2968 jpCheckEmpty(3);
2969 (yyval.str) = 0;
2970 yyGetParser->SetCurrentCombine("");
2972 #line 2973 "cmDependsJavaParser.cxx"
2973 break;
2975 case 50: /* TypeImportOnDemandDeclaration: jp_IMPORT Name jp_DOT jp_TIMES jp_SEMICOL */
2976 #line 564 "cmDependsJavaParser.y"
2978 jpElementStart(5);
2979 std::string str = (yyvsp[-3].str);
2980 str += ".*";
2981 yyGetParser->AddPackagesImport(str.c_str());
2982 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
2983 yyGetParser->SetCurrentCombine("");
2984 (yyval.str) = 0;
2985 yyGetParser->SetCurrentCombine("");
2987 #line 2988 "cmDependsJavaParser.cxx"
2988 break;
2990 case 51: /* TypeDeclaration: ClassDeclaration */
2991 #line 577 "cmDependsJavaParser.y"
2993 jpElementStart(1);
2994 jpCheckEmpty(1);
2995 (yyval.str) = 0;
2996 yyGetParser->SetCurrentCombine("");
2998 #line 2999 "cmDependsJavaParser.cxx"
2999 break;
3001 case 52: /* TypeDeclaration: InterfaceDeclaration */
3002 #line 585 "cmDependsJavaParser.y"
3004 jpElementStart(1);
3005 jpCheckEmpty(1);
3006 (yyval.str) = 0;
3007 yyGetParser->SetCurrentCombine("");
3009 #line 3010 "cmDependsJavaParser.cxx"
3010 break;
3012 case 53: /* TypeDeclaration: jp_SEMICOL */
3013 #line 593 "cmDependsJavaParser.y"
3015 jpElementStart(1);
3016 jpCheckEmpty(1);
3017 (yyval.str) = 0;
3018 yyGetParser->SetCurrentCombine("");
3020 #line 3021 "cmDependsJavaParser.cxx"
3021 break;
3023 case 54: /* Modifiers: Modifier */
3024 #line 602 "cmDependsJavaParser.y"
3026 jpElementStart(1);
3027 jpCheckEmpty(1);
3028 (yyval.str) = 0;
3029 yyGetParser->SetCurrentCombine("");
3031 #line 3032 "cmDependsJavaParser.cxx"
3032 break;
3034 case 55: /* Modifiers: Modifiers Modifier */
3035 #line 610 "cmDependsJavaParser.y"
3037 jpElementStart(2);
3038 jpCheckEmpty(2);
3039 (yyval.str) = 0;
3040 yyGetParser->SetCurrentCombine("");
3042 #line 3043 "cmDependsJavaParser.cxx"
3043 break;
3045 case 67: /* ClassHeader: Modifiersopt jp_CLASS Identifier */
3046 #line 625 "cmDependsJavaParser.y"
3048 yyGetParser->StartClass((yyvsp[0].str));
3049 jpElementStart(3);
3050 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
3051 jpCheckEmpty(3);
3053 #line 3054 "cmDependsJavaParser.cxx"
3054 break;
3056 case 68: /* ClassDeclaration: ClassHeader ClassBody */
3057 #line 635 "cmDependsJavaParser.y"
3059 jpElementStart(2);
3060 jpCheckEmpty(2);
3061 (yyval.str) = 0;
3062 yyGetParser->SetCurrentCombine("");
3063 yyGetParser->EndClass();
3065 #line 3066 "cmDependsJavaParser.cxx"
3066 break;
3068 case 69: /* ClassDeclaration: ClassHeader Interfaces ClassBody */
3069 #line 644 "cmDependsJavaParser.y"
3071 jpElementStart(3);
3072 jpCheckEmpty(2);
3073 (yyval.str) = 0;
3074 yyGetParser->SetCurrentCombine("");
3075 yyGetParser->EndClass();
3077 #line 3078 "cmDependsJavaParser.cxx"
3078 break;
3080 case 70: /* ClassDeclaration: ClassHeader Super ClassBody */
3081 #line 653 "cmDependsJavaParser.y"
3083 jpElementStart(3);
3084 jpCheckEmpty(3);
3085 (yyval.str) = 0;
3086 yyGetParser->SetCurrentCombine("");
3087 yyGetParser->EndClass();
3089 #line 3090 "cmDependsJavaParser.cxx"
3090 break;
3092 case 71: /* ClassDeclaration: ClassHeader Super Interfaces ClassBody */
3093 #line 662 "cmDependsJavaParser.y"
3095 jpElementStart(4);
3096 jpCheckEmpty(4);
3097 (yyval.str) = 0;
3098 yyGetParser->SetCurrentCombine("");
3099 yyGetParser->EndClass();
3101 #line 3102 "cmDependsJavaParser.cxx"
3102 break;
3104 case 72: /* Modifiersopt: %empty */
3105 #line 671 "cmDependsJavaParser.y"
3107 jpElementStart(0);
3108 (yyval.str) = 0;
3109 yyGetParser->SetCurrentCombine("");
3111 #line 3112 "cmDependsJavaParser.cxx"
3112 break;
3114 case 73: /* Modifiersopt: Modifiers */
3115 #line 678 "cmDependsJavaParser.y"
3117 jpElementStart(1);
3118 jpCheckEmpty(1);
3119 (yyval.str) = 0;
3120 yyGetParser->SetCurrentCombine("");
3122 #line 3123 "cmDependsJavaParser.cxx"
3123 break;
3125 case 74: /* Super: jp_EXTENDS ClassType */
3126 #line 687 "cmDependsJavaParser.y"
3128 jpElementStart(2);
3129 jpCheckEmpty(2);
3130 (yyval.str) = 0;
3131 yyGetParser->SetCurrentCombine("");
3133 #line 3134 "cmDependsJavaParser.cxx"
3134 break;
3136 case 75: /* Interfaces: jp_IMPLEMENTS InterfaceTypeList */
3137 #line 696 "cmDependsJavaParser.y"
3139 jpElementStart(2);
3140 jpCheckEmpty(2);
3141 (yyval.str) = 0;
3142 yyGetParser->SetCurrentCombine("");
3144 #line 3145 "cmDependsJavaParser.cxx"
3145 break;
3147 case 76: /* InterfaceTypeList: InterfaceType */
3148 #line 705 "cmDependsJavaParser.y"
3150 jpElementStart(1);
3151 jpCheckEmpty(1);
3152 (yyval.str) = 0;
3153 yyGetParser->SetCurrentCombine("");
3155 #line 3156 "cmDependsJavaParser.cxx"
3156 break;
3158 case 77: /* InterfaceTypeList: InterfaceTypeList jp_COMMA InterfaceType */
3159 #line 713 "cmDependsJavaParser.y"
3161 jpElementStart(3);
3162 jpCheckEmpty(3);
3163 (yyval.str) = 0;
3164 yyGetParser->SetCurrentCombine("");
3166 #line 3167 "cmDependsJavaParser.cxx"
3167 break;
3169 case 78: /* ClassBody: jp_CURLYSTART ClassBodyDeclarations jp_CURLYEND */
3170 #line 722 "cmDependsJavaParser.y"
3172 jpElementStart(3);
3173 jpCheckEmpty(3);
3174 (yyval.str) = 0;
3175 yyGetParser->SetCurrentCombine("");
3177 #line 3178 "cmDependsJavaParser.cxx"
3178 break;
3180 case 79: /* ClassBodyDeclarations: %empty */
3181 #line 730 "cmDependsJavaParser.y"
3183 jpElementStart(1);
3184 (yyval.str) = 0;
3185 yyGetParser->SetCurrentCombine("");
3187 #line 3188 "cmDependsJavaParser.cxx"
3188 break;
3190 case 80: /* ClassBodyDeclarations: ClassBodyDeclarations ClassBodyDeclaration */
3191 #line 737 "cmDependsJavaParser.y"
3193 jpElementStart(2);
3194 jpCheckEmpty(2);
3195 (yyval.str) = 0;
3196 yyGetParser->SetCurrentCombine("");
3198 #line 3199 "cmDependsJavaParser.cxx"
3199 break;
3201 case 81: /* ClassBodyDeclaration: ClassMemberDeclaration */
3202 #line 746 "cmDependsJavaParser.y"
3204 jpElementStart(1);
3205 jpCheckEmpty(1);
3206 (yyval.str) = 0;
3207 yyGetParser->SetCurrentCombine("");
3209 #line 3210 "cmDependsJavaParser.cxx"
3210 break;
3212 case 82: /* ClassBodyDeclaration: StaticInitializer */
3213 #line 754 "cmDependsJavaParser.y"
3215 jpElementStart(1);
3216 jpCheckEmpty(1);
3217 (yyval.str) = 0;
3218 yyGetParser->SetCurrentCombine("");
3220 #line 3221 "cmDependsJavaParser.cxx"
3221 break;
3223 case 83: /* ClassBodyDeclaration: ConstructorDeclaration */
3224 #line 762 "cmDependsJavaParser.y"
3226 jpElementStart(1);
3227 jpCheckEmpty(1);
3228 (yyval.str) = 0;
3229 yyGetParser->SetCurrentCombine("");
3231 #line 3232 "cmDependsJavaParser.cxx"
3232 break;
3234 case 84: /* ClassBodyDeclaration: TypeDeclaration */
3235 #line 770 "cmDependsJavaParser.y"
3237 jpElementStart(1);
3238 jpCheckEmpty(1);
3239 (yyval.str) = 0;
3240 yyGetParser->SetCurrentCombine("");
3242 #line 3243 "cmDependsJavaParser.cxx"
3243 break;
3245 case 85: /* ClassMemberDeclaration: FieldDeclaration */
3246 #line 779 "cmDependsJavaParser.y"
3248 jpElementStart(1);
3249 jpCheckEmpty(1);
3250 (yyval.str) = 0;
3251 yyGetParser->SetCurrentCombine("");
3253 #line 3254 "cmDependsJavaParser.cxx"
3254 break;
3256 case 86: /* ClassMemberDeclaration: MethodDeclaration */
3257 #line 787 "cmDependsJavaParser.y"
3259 jpElementStart(1);
3260 jpCheckEmpty(1);
3261 (yyval.str) = 0;
3262 yyGetParser->SetCurrentCombine("");
3264 #line 3265 "cmDependsJavaParser.cxx"
3265 break;
3267 case 87: /* FieldDeclaration: Modifiersopt Type VariableDeclarators jp_SEMICOL */
3268 #line 796 "cmDependsJavaParser.y"
3270 jpElementStart(4);
3272 #line 3273 "cmDependsJavaParser.cxx"
3273 break;
3275 case 88: /* VariableDeclarators: VariableDeclarator */
3276 #line 802 "cmDependsJavaParser.y"
3278 jpElementStart(1);
3279 jpCheckEmpty(1);
3280 (yyval.str) = 0;
3281 yyGetParser->SetCurrentCombine("");
3283 #line 3284 "cmDependsJavaParser.cxx"
3284 break;
3286 case 89: /* VariableDeclarators: VariableDeclarators jp_COMMA VariableDeclarator */
3287 #line 810 "cmDependsJavaParser.y"
3289 jpElementStart(3);
3290 jpCheckEmpty(3);
3291 (yyval.str) = 0;
3292 yyGetParser->SetCurrentCombine("");
3294 #line 3295 "cmDependsJavaParser.cxx"
3295 break;
3297 case 90: /* VariableDeclarator: VariableDeclaratorId */
3298 #line 819 "cmDependsJavaParser.y"
3300 jpElementStart(1);
3301 jpCheckEmpty(1);
3302 (yyval.str) = 0;
3303 yyGetParser->SetCurrentCombine("");
3305 #line 3306 "cmDependsJavaParser.cxx"
3306 break;
3308 case 91: /* VariableDeclarator: VariableDeclaratorId jp_EQUALS VariableInitializer */
3309 #line 827 "cmDependsJavaParser.y"
3311 jpElementStart(3);
3312 jpCheckEmpty(3);
3313 (yyval.str) = 0;
3314 yyGetParser->SetCurrentCombine("");
3316 #line 3317 "cmDependsJavaParser.cxx"
3317 break;
3319 case 92: /* VariableDeclaratorId: Identifier */
3320 #line 836 "cmDependsJavaParser.y"
3322 jpElementStart(1);
3323 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
3324 jpCheckEmpty(1);
3325 (yyval.str) = 0;
3326 yyGetParser->SetCurrentCombine("");
3328 #line 3329 "cmDependsJavaParser.cxx"
3329 break;
3331 case 93: /* VariableDeclaratorId: VariableDeclaratorId jp_BRACKETSTART jp_BRACKETEND */
3332 #line 845 "cmDependsJavaParser.y"
3334 jpElementStart(1);
3335 jpCheckEmpty(1);
3336 (yyval.str) = 0;
3337 yyGetParser->SetCurrentCombine("");
3339 #line 3340 "cmDependsJavaParser.cxx"
3340 break;
3342 case 94: /* VariableInitializer: Expression */
3343 #line 854 "cmDependsJavaParser.y"
3345 jpElementStart(1);
3346 jpCheckEmpty(1);
3347 (yyval.str) = 0;
3348 yyGetParser->SetCurrentCombine("");
3350 #line 3351 "cmDependsJavaParser.cxx"
3351 break;
3353 case 95: /* VariableInitializer: ArrayInitializer */
3354 #line 862 "cmDependsJavaParser.y"
3356 jpElementStart(1);
3357 jpCheckEmpty(1);
3358 (yyval.str) = 0;
3359 yyGetParser->SetCurrentCombine("");
3361 #line 3362 "cmDependsJavaParser.cxx"
3362 break;
3364 case 96: /* MethodDeclaration: MethodHeader jp_SEMICOL */
3365 #line 871 "cmDependsJavaParser.y"
3367 jpElementStart(2);
3368 jpCheckEmpty(2);
3369 (yyval.str) = 0;
3370 yyGetParser->SetCurrentCombine("");
3372 #line 3373 "cmDependsJavaParser.cxx"
3373 break;
3375 case 97: /* MethodDeclaration: MethodHeader MethodBody */
3376 #line 879 "cmDependsJavaParser.y"
3378 jpElementStart(2);
3379 jpCheckEmpty(2);
3380 (yyval.str) = 0;
3381 yyGetParser->SetCurrentCombine("");
3383 #line 3384 "cmDependsJavaParser.cxx"
3384 break;
3386 case 98: /* MethodDeclaration: MethodHeader MethodBody jp_SEMICOL */
3387 #line 887 "cmDependsJavaParser.y"
3389 jpElementStart(3);
3390 jpCheckEmpty(3);
3391 (yyval.str) = 0;
3392 yyGetParser->SetCurrentCombine("");
3394 #line 3395 "cmDependsJavaParser.cxx"
3395 break;
3397 case 99: /* MethodHeader: Modifiersopt Type MethodDeclarator Throwsopt */
3398 #line 896 "cmDependsJavaParser.y"
3400 jpElementStart(4);
3401 jpCheckEmpty(4);
3402 (yyval.str) = 0;
3403 yyGetParser->SetCurrentCombine("");
3406 #line 3407 "cmDependsJavaParser.cxx"
3407 break;
3409 case 100: /* MethodHeader: Modifiersopt jp_VOID MethodDeclarator Throwsopt */
3410 #line 905 "cmDependsJavaParser.y"
3412 jpElementStart(4);
3413 jpCheckEmpty(4);
3414 (yyval.str) = 0;
3415 yyGetParser->SetCurrentCombine("");
3418 #line 3419 "cmDependsJavaParser.cxx"
3419 break;
3421 case 101: /* Throwsopt: %empty */
3422 #line 914 "cmDependsJavaParser.y"
3424 jpElementStart(0);
3425 (yyval.str) = 0;
3426 yyGetParser->SetCurrentCombine("");
3429 #line 3430 "cmDependsJavaParser.cxx"
3430 break;
3432 case 102: /* Throwsopt: Throws */
3433 #line 922 "cmDependsJavaParser.y"
3435 jpElementStart(1);
3436 jpCheckEmpty(1);
3437 (yyval.str) = 0;
3438 yyGetParser->SetCurrentCombine("");
3441 #line 3442 "cmDependsJavaParser.cxx"
3442 break;
3444 case 103: /* MethodDeclarator: Identifier jp_PARESTART FormalParameterListopt jp_PAREEND */
3445 #line 932 "cmDependsJavaParser.y"
3447 jpElementStart(4);
3448 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
3449 jpCheckEmpty(4);
3450 (yyval.str) = 0;
3451 yyGetParser->SetCurrentCombine("");
3454 #line 3455 "cmDependsJavaParser.cxx"
3455 break;
3457 case 104: /* MethodDeclarator: MethodDeclarator jp_BRACKETSTART jp_BRACKETEND */
3458 #line 942 "cmDependsJavaParser.y"
3460 jpElementStart(3);
3463 #line 3464 "cmDependsJavaParser.cxx"
3464 break;
3466 case 105: /* FormalParameterListopt: %empty */
3467 #line 948 "cmDependsJavaParser.y"
3469 jpElementStart(0);
3470 (yyval.str) = 0;
3471 yyGetParser->SetCurrentCombine("");
3474 #line 3475 "cmDependsJavaParser.cxx"
3475 break;
3477 case 107: /* FormalParameterList: FormalParameter */
3478 #line 959 "cmDependsJavaParser.y"
3480 jpElementStart(1);
3483 #line 3484 "cmDependsJavaParser.cxx"
3484 break;
3486 case 108: /* FormalParameterList: FormalParameterList jp_COMMA FormalParameter */
3487 #line 965 "cmDependsJavaParser.y"
3489 jpElementStart(3);
3490 jpCheckEmpty(3);
3491 (yyval.str) = 0;
3492 yyGetParser->SetCurrentCombine("");
3495 #line 3496 "cmDependsJavaParser.cxx"
3496 break;
3498 case 109: /* FormalParameter: Modifiersopt Type VariableDeclaratorId */
3499 #line 975 "cmDependsJavaParser.y"
3501 jpElementStart(3);
3502 jpCheckEmpty(3);
3503 (yyval.str) = 0;
3504 yyGetParser->SetCurrentCombine("");
3507 #line 3508 "cmDependsJavaParser.cxx"
3508 break;
3510 case 110: /* Throws: jp_THROWS ClassTypeList */
3511 #line 985 "cmDependsJavaParser.y"
3513 jpElementStart(2);
3514 jpCheckEmpty(2);
3515 (yyval.str) = 0;
3516 yyGetParser->SetCurrentCombine("");
3519 #line 3520 "cmDependsJavaParser.cxx"
3520 break;
3522 case 111: /* ClassTypeList: ClassType */
3523 #line 995 "cmDependsJavaParser.y"
3525 jpElementStart(1);
3528 #line 3529 "cmDependsJavaParser.cxx"
3529 break;
3531 case 112: /* ClassTypeList: ClassTypeList jp_COMMA ClassType */
3532 #line 1001 "cmDependsJavaParser.y"
3534 jpElementStart(3);
3535 jpCheckEmpty(3);
3536 (yyval.str) = 0;
3537 yyGetParser->SetCurrentCombine("");
3540 #line 3541 "cmDependsJavaParser.cxx"
3541 break;
3543 case 113: /* MethodBody: Block */
3544 #line 1011 "cmDependsJavaParser.y"
3546 jpElementStart(1);
3547 jpCheckEmpty(1);
3548 (yyval.str) = 0;
3549 yyGetParser->SetCurrentCombine("");
3552 #line 3553 "cmDependsJavaParser.cxx"
3553 break;
3555 case 114: /* StaticInitializer: jp_STATIC Block */
3556 #line 1021 "cmDependsJavaParser.y"
3558 jpElementStart(2);
3559 jpCheckEmpty(2);
3560 (yyval.str) = 0;
3561 yyGetParser->SetCurrentCombine("");
3564 #line 3565 "cmDependsJavaParser.cxx"
3565 break;
3567 case 115: /* ConstructorDeclaration: Modifiersopt ConstructorDeclarator Throwsopt ConstructorBody */
3568 #line 1031 "cmDependsJavaParser.y"
3570 jpElementStart(4);
3571 jpCheckEmpty(4);
3572 (yyval.str) = 0;
3573 yyGetParser->SetCurrentCombine("");
3576 #line 3577 "cmDependsJavaParser.cxx"
3577 break;
3579 case 116: /* ConstructorDeclaration: Modifiersopt ConstructorDeclarator Throwsopt ConstructorBody jp_SEMICOL */
3580 #line 1040 "cmDependsJavaParser.y"
3582 jpElementStart(5);
3583 jpCheckEmpty(5);
3584 (yyval.str) = 0;
3585 yyGetParser->SetCurrentCombine("");
3588 #line 3589 "cmDependsJavaParser.cxx"
3589 break;
3591 case 117: /* ConstructorDeclarator: SimpleName jp_PARESTART FormalParameterListopt jp_PAREEND */
3592 #line 1050 "cmDependsJavaParser.y"
3594 jpElementStart(4);
3595 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
3596 jpCheckEmpty(4);
3597 (yyval.str) = 0;
3598 yyGetParser->SetCurrentCombine("");
3601 #line 3602 "cmDependsJavaParser.cxx"
3602 break;
3604 case 118: /* ConstructorBody: jp_CURLYSTART ExplicitConstructorInvocationopt BlockStatementsopt jp_CURLYEND */
3605 #line 1061 "cmDependsJavaParser.y"
3607 jpElementStart(4);
3608 jpCheckEmpty(4);
3609 (yyval.str) = 0;
3610 yyGetParser->SetCurrentCombine("");
3613 #line 3614 "cmDependsJavaParser.cxx"
3614 break;
3616 case 119: /* ExplicitConstructorInvocationopt: %empty */
3617 #line 1070 "cmDependsJavaParser.y"
3619 jpElementStart(0);
3620 (yyval.str) = 0;
3621 yyGetParser->SetCurrentCombine("");
3624 #line 3625 "cmDependsJavaParser.cxx"
3625 break;
3627 case 120: /* ExplicitConstructorInvocationopt: ExplicitConstructorInvocationopt ExplicitConstructorInvocation */
3628 #line 1078 "cmDependsJavaParser.y"
3630 jpElementStart(2);
3631 jpCheckEmpty(2);
3632 (yyval.str) = 0;
3633 yyGetParser->SetCurrentCombine("");
3636 #line 3637 "cmDependsJavaParser.cxx"
3637 break;
3639 case 121: /* ExplicitConstructorInvocation: jp_THIS jp_PARESTART ArgumentListopt jp_PAREEND jp_SEMICOL */
3640 #line 1088 "cmDependsJavaParser.y"
3642 jpElementStart(5);
3643 jpCheckEmpty(5);
3644 (yyval.str) = 0;
3645 yyGetParser->SetCurrentCombine("");
3648 #line 3649 "cmDependsJavaParser.cxx"
3649 break;
3651 case 122: /* ExplicitConstructorInvocation: jp_SUPER jp_PARESTART ArgumentListopt jp_PAREEND jp_SEMICOL */
3652 #line 1097 "cmDependsJavaParser.y"
3654 jpElementStart(5);
3655 jpCheckEmpty(5);
3656 (yyval.str) = 0;
3657 yyGetParser->SetCurrentCombine("");
3660 #line 3661 "cmDependsJavaParser.cxx"
3661 break;
3663 case 123: /* InterfaceHeader: Modifiersopt jp_INTERFACE Identifier */
3664 #line 1107 "cmDependsJavaParser.y"
3666 yyGetParser->StartClass((yyvsp[0].str));
3667 jpElementStart(3);
3668 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
3669 jpCheckEmpty(3);
3671 #line 3672 "cmDependsJavaParser.cxx"
3672 break;
3674 case 124: /* InterfaceDeclaration: InterfaceHeader ExtendsInterfacesopt InterfaceBody */
3675 #line 1116 "cmDependsJavaParser.y"
3677 jpElementStart(2);
3678 jpCheckEmpty(2);
3679 (yyval.str) = 0;
3680 yyGetParser->SetCurrentCombine("");
3681 yyGetParser->EndClass();
3683 #line 3684 "cmDependsJavaParser.cxx"
3684 break;
3686 case 125: /* ExtendsInterfacesopt: %empty */
3687 #line 1125 "cmDependsJavaParser.y"
3689 jpElementStart(0);
3690 (yyval.str) = 0;
3691 yyGetParser->SetCurrentCombine("");
3693 #line 3694 "cmDependsJavaParser.cxx"
3694 break;
3696 case 126: /* ExtendsInterfacesopt: ExtendsInterfaces */
3697 #line 1132 "cmDependsJavaParser.y"
3699 jpElementStart(1);
3700 jpCheckEmpty(1);
3701 (yyval.str) = 0;
3702 yyGetParser->SetCurrentCombine("");
3705 #line 3706 "cmDependsJavaParser.cxx"
3706 break;
3708 case 127: /* ExtendsInterfaces: jp_EXTENDS InterfaceType */
3709 #line 1142 "cmDependsJavaParser.y"
3711 jpElementStart(2);
3712 jpCheckEmpty(2);
3713 (yyval.str) = 0;
3714 yyGetParser->SetCurrentCombine("");
3717 #line 3718 "cmDependsJavaParser.cxx"
3718 break;
3720 case 128: /* ExtendsInterfaces: ExtendsInterfaces jp_COMMA InterfaceType */
3721 #line 1151 "cmDependsJavaParser.y"
3723 jpElementStart(3);
3724 jpCheckEmpty(3);
3725 (yyval.str) = 0;
3726 yyGetParser->SetCurrentCombine("");
3729 #line 3730 "cmDependsJavaParser.cxx"
3730 break;
3732 case 129: /* InterfaceBody: jp_CURLYSTART InterfaceMemberDeclarations jp_CURLYEND */
3733 #line 1161 "cmDependsJavaParser.y"
3735 jpElementStart(3);
3736 jpCheckEmpty(3);
3737 (yyval.str) = 0;
3738 yyGetParser->SetCurrentCombine("");
3741 #line 3742 "cmDependsJavaParser.cxx"
3742 break;
3744 case 130: /* InterfaceMemberDeclarations: %empty */
3745 #line 1170 "cmDependsJavaParser.y"
3747 jpElementStart(0);
3748 (yyval.str) = 0;
3749 yyGetParser->SetCurrentCombine("");
3752 #line 3753 "cmDependsJavaParser.cxx"
3753 break;
3755 case 131: /* InterfaceMemberDeclarations: InterfaceMemberDeclarations InterfaceMemberDeclaration */
3756 #line 1178 "cmDependsJavaParser.y"
3758 jpElementStart(2);
3759 (yyval.str) = 0;
3760 yyGetParser->SetCurrentCombine("");
3763 #line 3764 "cmDependsJavaParser.cxx"
3764 break;
3766 case 132: /* InterfaceMemberDeclaration: ConstantDeclaration */
3767 #line 1187 "cmDependsJavaParser.y"
3769 jpElementStart(1);
3770 jpCheckEmpty(1);
3771 (yyval.str) = 0;
3772 yyGetParser->SetCurrentCombine("");
3775 #line 3776 "cmDependsJavaParser.cxx"
3776 break;
3778 case 133: /* InterfaceMemberDeclaration: AbstractMethodDeclaration */
3779 #line 1196 "cmDependsJavaParser.y"
3781 jpElementStart(1);
3782 jpCheckEmpty(1);
3783 (yyval.str) = 0;
3784 yyGetParser->SetCurrentCombine("");
3787 #line 3788 "cmDependsJavaParser.cxx"
3788 break;
3790 case 134: /* InterfaceMemberDeclaration: ClassDeclaration */
3791 #line 1205 "cmDependsJavaParser.y"
3793 jpElementStart(1);
3794 jpCheckEmpty(1);
3795 (yyval.str) = 0;
3796 yyGetParser->SetCurrentCombine("");
3799 #line 3800 "cmDependsJavaParser.cxx"
3800 break;
3802 case 135: /* InterfaceMemberDeclaration: ClassDeclaration jp_SEMICOL */
3803 #line 1214 "cmDependsJavaParser.y"
3805 jpElementStart(2);
3806 (yyval.str) = 0;
3807 yyGetParser->SetCurrentCombine("");
3810 #line 3811 "cmDependsJavaParser.cxx"
3811 break;
3813 case 136: /* InterfaceMemberDeclaration: InterfaceDeclaration */
3814 #line 1222 "cmDependsJavaParser.y"
3816 jpElementStart(1);
3817 jpCheckEmpty(1);
3818 (yyval.str) = 0;
3819 yyGetParser->SetCurrentCombine("");
3822 #line 3823 "cmDependsJavaParser.cxx"
3823 break;
3825 case 137: /* InterfaceMemberDeclaration: InterfaceDeclaration jp_SEMICOL */
3826 #line 1231 "cmDependsJavaParser.y"
3828 jpElementStart(2);
3829 (yyval.str) = 0;
3830 yyGetParser->SetCurrentCombine("");
3833 #line 3834 "cmDependsJavaParser.cxx"
3834 break;
3836 case 138: /* ConstantDeclaration: FieldDeclaration */
3837 #line 1240 "cmDependsJavaParser.y"
3839 jpElementStart(1);
3840 jpCheckEmpty(1);
3841 (yyval.str) = 0;
3842 yyGetParser->SetCurrentCombine("");
3845 #line 3846 "cmDependsJavaParser.cxx"
3846 break;
3848 case 139: /* AbstractMethodDeclaration: MethodHeader Semicols */
3849 #line 1250 "cmDependsJavaParser.y"
3851 jpElementStart(2);
3852 jpCheckEmpty(2);
3853 (yyval.str) = 0;
3854 yyGetParser->SetCurrentCombine("");
3857 #line 3858 "cmDependsJavaParser.cxx"
3858 break;
3860 case 140: /* Semicols: jp_SEMICOL */
3861 #line 1260 "cmDependsJavaParser.y"
3863 jpElementStart(1);
3864 jpCheckEmpty(1);
3865 (yyval.str) = 0;
3866 yyGetParser->SetCurrentCombine("");
3869 #line 3870 "cmDependsJavaParser.cxx"
3870 break;
3872 case 141: /* Semicols: Semicols jp_SEMICOL */
3873 #line 1269 "cmDependsJavaParser.y"
3875 jpElementStart(2);
3876 jpCheckEmpty(2);
3877 (yyval.str) = 0;
3878 yyGetParser->SetCurrentCombine("");
3881 #line 3882 "cmDependsJavaParser.cxx"
3882 break;
3884 case 142: /* ArrayInitializer: jp_CURLYSTART VariableInitializersOptional jp_CURLYEND */
3885 #line 1279 "cmDependsJavaParser.y"
3887 jpElementStart(3);
3888 jpCheckEmpty(3);
3889 (yyval.str) = 0;
3890 yyGetParser->SetCurrentCombine("");
3893 #line 3894 "cmDependsJavaParser.cxx"
3894 break;
3896 case 143: /* VariableInitializersOptional: %empty */
3897 #line 1288 "cmDependsJavaParser.y"
3899 jpElementStart(1);
3900 (yyval.str) = 0;
3901 yyGetParser->SetCurrentCombine("");
3904 #line 3905 "cmDependsJavaParser.cxx"
3905 break;
3907 case 144: /* VariableInitializersOptional: VariableInitializers */
3908 #line 1296 "cmDependsJavaParser.y"
3910 jpElementStart(1);
3911 jpCheckEmpty(1);
3912 (yyval.str) = 0;
3913 yyGetParser->SetCurrentCombine("");
3916 #line 3917 "cmDependsJavaParser.cxx"
3917 break;
3919 case 145: /* VariableInitializersOptional: VariableInitializers jp_COMMA */
3920 #line 1305 "cmDependsJavaParser.y"
3922 jpElementStart(2);
3923 jpCheckEmpty(2);
3924 (yyval.str) = 0;
3925 yyGetParser->SetCurrentCombine("");
3928 #line 3929 "cmDependsJavaParser.cxx"
3929 break;
3931 case 146: /* VariableInitializers: VariableInitializer */
3932 #line 1315 "cmDependsJavaParser.y"
3934 jpElementStart(1);
3935 jpCheckEmpty(1);
3936 (yyval.str) = 0;
3937 yyGetParser->SetCurrentCombine("");
3940 #line 3941 "cmDependsJavaParser.cxx"
3941 break;
3943 case 147: /* VariableInitializers: VariableInitializers jp_COMMA VariableInitializer */
3944 #line 1324 "cmDependsJavaParser.y"
3946 jpElementStart(3);
3947 jpCheckEmpty(3);
3948 (yyval.str) = 0;
3949 yyGetParser->SetCurrentCombine("");
3952 #line 3953 "cmDependsJavaParser.cxx"
3953 break;
3955 case 148: /* Block: jp_CURLYSTART BlockStatementsopt jp_CURLYEND */
3956 #line 1334 "cmDependsJavaParser.y"
3958 jpElementStart(4);
3959 (yyval.str) = 0;
3960 yyGetParser->SetCurrentCombine("");
3963 #line 3964 "cmDependsJavaParser.cxx"
3964 break;
3966 case 149: /* BlockStatementsopt: %empty */
3967 #line 1342 "cmDependsJavaParser.y"
3969 jpElementStart(1);
3970 (yyval.str) = 0;
3971 yyGetParser->SetCurrentCombine("");
3974 #line 3975 "cmDependsJavaParser.cxx"
3975 break;
3977 case 150: /* BlockStatementsopt: BlockStatements */
3978 #line 1350 "cmDependsJavaParser.y"
3980 jpElementStart(1);
3981 jpCheckEmpty(1);
3982 (yyval.str) = 0;
3983 yyGetParser->SetCurrentCombine("");
3986 #line 3987 "cmDependsJavaParser.cxx"
3987 break;
3989 case 151: /* BlockStatements: BlockStatement */
3990 #line 1360 "cmDependsJavaParser.y"
3992 jpElementStart(1);
3993 jpCheckEmpty(1);
3994 (yyval.str) = 0;
3995 yyGetParser->SetCurrentCombine("");
3998 #line 3999 "cmDependsJavaParser.cxx"
3999 break;
4001 case 152: /* BlockStatements: BlockStatements BlockStatement */
4002 #line 1369 "cmDependsJavaParser.y"
4004 jpElementStart(1);
4005 jpCheckEmpty(2);
4006 (yyval.str) = 0;
4007 yyGetParser->SetCurrentCombine("");
4010 #line 4011 "cmDependsJavaParser.cxx"
4011 break;
4013 case 153: /* BlockStatement: LocalVariableDeclarationStatement */
4014 #line 1379 "cmDependsJavaParser.y"
4016 jpElementStart(1);
4017 jpCheckEmpty(1);
4018 (yyval.str) = 0;
4019 yyGetParser->SetCurrentCombine("");
4022 #line 4023 "cmDependsJavaParser.cxx"
4023 break;
4025 case 154: /* BlockStatement: Statement */
4026 #line 1388 "cmDependsJavaParser.y"
4028 jpElementStart(1);
4029 jpCheckEmpty(1);
4030 (yyval.str) = 0;
4031 yyGetParser->SetCurrentCombine("");
4034 #line 4035 "cmDependsJavaParser.cxx"
4035 break;
4037 case 155: /* BlockStatement: ClassDeclaration */
4038 #line 1397 "cmDependsJavaParser.y"
4040 jpElementStart(1);
4041 jpCheckEmpty(1);
4042 (yyval.str) = 0;
4043 yyGetParser->SetCurrentCombine("");
4046 #line 4047 "cmDependsJavaParser.cxx"
4047 break;
4049 case 156: /* LocalVariableDeclarationStatement: LocalVariableDeclaration jp_SEMICOL */
4050 #line 1407 "cmDependsJavaParser.y"
4052 jpElementStart(1);
4053 jpCheckEmpty(2);
4054 (yyval.str) = 0;
4055 yyGetParser->SetCurrentCombine("");
4058 #line 4059 "cmDependsJavaParser.cxx"
4059 break;
4061 case 157: /* LocalVariableDeclaration: Modifiers Type VariableDeclarators */
4062 #line 1417 "cmDependsJavaParser.y"
4064 jpElementStart(1);
4065 jpCheckEmpty(3);
4066 (yyval.str) = 0;
4067 yyGetParser->SetCurrentCombine("");
4070 #line 4071 "cmDependsJavaParser.cxx"
4071 break;
4073 case 158: /* LocalVariableDeclaration: Type VariableDeclarators */
4074 #line 1426 "cmDependsJavaParser.y"
4076 jpElementStart(1);
4077 jpCheckEmpty(2);
4078 (yyval.str) = 0;
4079 yyGetParser->SetCurrentCombine("");
4082 #line 4083 "cmDependsJavaParser.cxx"
4083 break;
4085 case 159: /* Statement: StatementWithoutTrailingSubstatement */
4086 #line 1436 "cmDependsJavaParser.y"
4088 jpElementStart(1);
4089 jpCheckEmpty(1);
4090 (yyval.str) = 0;
4091 yyGetParser->SetCurrentCombine("");
4094 #line 4095 "cmDependsJavaParser.cxx"
4095 break;
4097 case 160: /* Statement: LabeledStatement */
4098 #line 1445 "cmDependsJavaParser.y"
4100 jpElementStart(1);
4101 jpCheckEmpty(1);
4102 (yyval.str) = 0;
4103 yyGetParser->SetCurrentCombine("");
4106 #line 4107 "cmDependsJavaParser.cxx"
4107 break;
4109 case 161: /* Statement: IfThenStatement */
4110 #line 1454 "cmDependsJavaParser.y"
4112 jpElementStart(1);
4113 jpCheckEmpty(1);
4114 (yyval.str) = 0;
4115 yyGetParser->SetCurrentCombine("");
4118 #line 4119 "cmDependsJavaParser.cxx"
4119 break;
4121 case 162: /* Statement: IfThenElseStatement */
4122 #line 1463 "cmDependsJavaParser.y"
4124 jpElementStart(1);
4125 jpCheckEmpty(1);
4126 (yyval.str) = 0;
4127 yyGetParser->SetCurrentCombine("");
4130 #line 4131 "cmDependsJavaParser.cxx"
4131 break;
4133 case 163: /* Statement: WhileStatement */
4134 #line 1472 "cmDependsJavaParser.y"
4136 jpElementStart(1);
4137 jpCheckEmpty(1);
4138 (yyval.str) = 0;
4139 yyGetParser->SetCurrentCombine("");
4142 #line 4143 "cmDependsJavaParser.cxx"
4143 break;
4145 case 164: /* Statement: ForStatement */
4146 #line 1481 "cmDependsJavaParser.y"
4148 jpElementStart(1);
4149 jpCheckEmpty(1);
4150 (yyval.str) = 0;
4151 yyGetParser->SetCurrentCombine("");
4154 #line 4155 "cmDependsJavaParser.cxx"
4155 break;
4157 case 165: /* StatementNoShortIf: StatementWithoutTrailingSubstatement */
4158 #line 1491 "cmDependsJavaParser.y"
4160 jpElementStart(1);
4161 jpCheckEmpty(1);
4162 (yyval.str) = 0;
4163 yyGetParser->SetCurrentCombine("");
4166 #line 4167 "cmDependsJavaParser.cxx"
4167 break;
4169 case 166: /* StatementNoShortIf: LabeledStatementNoShortIf */
4170 #line 1500 "cmDependsJavaParser.y"
4172 jpElementStart(1);
4173 jpCheckEmpty(1);
4174 (yyval.str) = 0;
4175 yyGetParser->SetCurrentCombine("");
4178 #line 4179 "cmDependsJavaParser.cxx"
4179 break;
4181 case 167: /* StatementNoShortIf: IfThenElseStatementNoShortIf */
4182 #line 1509 "cmDependsJavaParser.y"
4184 jpElementStart(1);
4185 jpCheckEmpty(1);
4186 (yyval.str) = 0;
4187 yyGetParser->SetCurrentCombine("");
4190 #line 4191 "cmDependsJavaParser.cxx"
4191 break;
4193 case 168: /* StatementNoShortIf: WhileStatementNoShortIf */
4194 #line 1518 "cmDependsJavaParser.y"
4196 jpElementStart(1);
4197 jpCheckEmpty(1);
4198 (yyval.str) = 0;
4199 yyGetParser->SetCurrentCombine("");
4202 #line 4203 "cmDependsJavaParser.cxx"
4203 break;
4205 case 169: /* StatementNoShortIf: ForStatementNoShortIf */
4206 #line 1527 "cmDependsJavaParser.y"
4208 jpElementStart(1);
4209 jpCheckEmpty(1);
4210 (yyval.str) = 0;
4211 yyGetParser->SetCurrentCombine("");
4214 #line 4215 "cmDependsJavaParser.cxx"
4215 break;
4217 case 170: /* StatementWithoutTrailingSubstatement: Block */
4218 #line 1537 "cmDependsJavaParser.y"
4220 jpElementStart(1);
4221 jpCheckEmpty(1);
4222 (yyval.str) = 0;
4223 yyGetParser->SetCurrentCombine("");
4226 #line 4227 "cmDependsJavaParser.cxx"
4227 break;
4229 case 171: /* StatementWithoutTrailingSubstatement: EmptyStatement */
4230 #line 1546 "cmDependsJavaParser.y"
4232 jpElementStart(1);
4233 jpCheckEmpty(1);
4234 (yyval.str) = 0;
4235 yyGetParser->SetCurrentCombine("");
4238 #line 4239 "cmDependsJavaParser.cxx"
4239 break;
4241 case 172: /* StatementWithoutTrailingSubstatement: ExpressionStatement */
4242 #line 1555 "cmDependsJavaParser.y"
4244 jpElementStart(1);
4245 jpCheckEmpty(1);
4246 (yyval.str) = 0;
4247 yyGetParser->SetCurrentCombine("");
4250 #line 4251 "cmDependsJavaParser.cxx"
4251 break;
4253 case 173: /* StatementWithoutTrailingSubstatement: SwitchStatement */
4254 #line 1564 "cmDependsJavaParser.y"
4256 jpElementStart(1);
4257 jpCheckEmpty(1);
4258 (yyval.str) = 0;
4259 yyGetParser->SetCurrentCombine("");
4262 #line 4263 "cmDependsJavaParser.cxx"
4263 break;
4265 case 174: /* StatementWithoutTrailingSubstatement: DoStatement */
4266 #line 1573 "cmDependsJavaParser.y"
4268 jpElementStart(1);
4269 jpCheckEmpty(1);
4270 (yyval.str) = 0;
4271 yyGetParser->SetCurrentCombine("");
4274 #line 4275 "cmDependsJavaParser.cxx"
4275 break;
4277 case 175: /* StatementWithoutTrailingSubstatement: BreakStatement */
4278 #line 1582 "cmDependsJavaParser.y"
4280 jpElementStart(1);
4281 jpCheckEmpty(1);
4282 (yyval.str) = 0;
4283 yyGetParser->SetCurrentCombine("");
4286 #line 4287 "cmDependsJavaParser.cxx"
4287 break;
4289 case 176: /* StatementWithoutTrailingSubstatement: ContinueStatement */
4290 #line 1591 "cmDependsJavaParser.y"
4292 jpElementStart(1);
4293 jpCheckEmpty(1);
4294 (yyval.str) = 0;
4295 yyGetParser->SetCurrentCombine("");
4298 #line 4299 "cmDependsJavaParser.cxx"
4299 break;
4301 case 177: /* StatementWithoutTrailingSubstatement: ReturnStatement */
4302 #line 1600 "cmDependsJavaParser.y"
4304 jpElementStart(1);
4305 jpCheckEmpty(1);
4306 (yyval.str) = 0;
4307 yyGetParser->SetCurrentCombine("");
4310 #line 4311 "cmDependsJavaParser.cxx"
4311 break;
4313 case 178: /* StatementWithoutTrailingSubstatement: SynchronizedStatement */
4314 #line 1609 "cmDependsJavaParser.y"
4316 jpElementStart(1);
4317 jpCheckEmpty(1);
4318 (yyval.str) = 0;
4319 yyGetParser->SetCurrentCombine("");
4322 #line 4323 "cmDependsJavaParser.cxx"
4323 break;
4325 case 179: /* StatementWithoutTrailingSubstatement: ThrowStatement */
4326 #line 1618 "cmDependsJavaParser.y"
4328 jpElementStart(1);
4329 jpCheckEmpty(1);
4330 (yyval.str) = 0;
4331 yyGetParser->SetCurrentCombine("");
4334 #line 4335 "cmDependsJavaParser.cxx"
4335 break;
4337 case 180: /* StatementWithoutTrailingSubstatement: TryStatement */
4338 #line 1627 "cmDependsJavaParser.y"
4340 jpElementStart(1);
4341 jpCheckEmpty(1);
4342 (yyval.str) = 0;
4343 yyGetParser->SetCurrentCombine("");
4346 #line 4347 "cmDependsJavaParser.cxx"
4347 break;
4349 case 181: /* StatementWithoutTrailingSubstatement: AssertStatement */
4350 #line 1636 "cmDependsJavaParser.y"
4352 jpElementStart(1);
4353 jpCheckEmpty(1);
4354 (yyval.str) = 0;
4355 yyGetParser->SetCurrentCombine("");
4358 #line 4359 "cmDependsJavaParser.cxx"
4359 break;
4361 case 182: /* EmptyStatement: jp_SEMICOL */
4362 #line 1646 "cmDependsJavaParser.y"
4364 jpElementStart(1);
4365 jpCheckEmpty(1);
4366 (yyval.str) = 0;
4367 yyGetParser->SetCurrentCombine("");
4370 #line 4371 "cmDependsJavaParser.cxx"
4371 break;
4373 case 183: /* LabeledStatement: Identifier jp_COLON Statement */
4374 #line 1656 "cmDependsJavaParser.y"
4376 jpElementStart(3);
4377 yyGetParser->DeallocateParserType(&((yyvsp[-2].str)));
4378 jpCheckEmpty(3);
4379 (yyval.str) = 0;
4380 yyGetParser->SetCurrentCombine("");
4383 #line 4384 "cmDependsJavaParser.cxx"
4384 break;
4386 case 184: /* LabeledStatementNoShortIf: Identifier jp_COLON StatementNoShortIf */
4387 #line 1667 "cmDependsJavaParser.y"
4389 jpElementStart(3);
4390 jpCheckEmpty(3);
4391 (yyval.str) = 0;
4392 yyGetParser->SetCurrentCombine("");
4395 #line 4396 "cmDependsJavaParser.cxx"
4396 break;
4398 case 185: /* ExpressionStatement: StatementExpression jp_SEMICOL */
4399 #line 1677 "cmDependsJavaParser.y"
4401 jpElementStart(2);
4402 jpCheckEmpty(2);
4403 (yyval.str) = 0;
4404 yyGetParser->SetCurrentCombine("");
4407 #line 4408 "cmDependsJavaParser.cxx"
4408 break;
4410 case 186: /* StatementExpression: Assignment */
4411 #line 1687 "cmDependsJavaParser.y"
4413 jpElementStart(1);
4414 jpCheckEmpty(1);
4415 (yyval.str) = 0;
4416 yyGetParser->SetCurrentCombine("");
4419 #line 4420 "cmDependsJavaParser.cxx"
4420 break;
4422 case 187: /* StatementExpression: PreIncrementExpression */
4423 #line 1696 "cmDependsJavaParser.y"
4425 jpElementStart(1);
4426 jpCheckEmpty(1);
4427 (yyval.str) = 0;
4428 yyGetParser->SetCurrentCombine("");
4431 #line 4432 "cmDependsJavaParser.cxx"
4432 break;
4434 case 188: /* StatementExpression: PreDecrementExpression */
4435 #line 1705 "cmDependsJavaParser.y"
4437 jpElementStart(1);
4438 jpCheckEmpty(1);
4439 (yyval.str) = 0;
4440 yyGetParser->SetCurrentCombine("");
4443 #line 4444 "cmDependsJavaParser.cxx"
4444 break;
4446 case 189: /* StatementExpression: PostIncrementExpression */
4447 #line 1714 "cmDependsJavaParser.y"
4449 jpElementStart(1);
4450 jpCheckEmpty(1);
4451 (yyval.str) = 0;
4452 yyGetParser->SetCurrentCombine("");
4455 #line 4456 "cmDependsJavaParser.cxx"
4456 break;
4458 case 190: /* StatementExpression: PostDecrementExpression */
4459 #line 1723 "cmDependsJavaParser.y"
4461 jpElementStart(1);
4462 jpCheckEmpty(1);
4463 (yyval.str) = 0;
4464 yyGetParser->SetCurrentCombine("");
4467 #line 4468 "cmDependsJavaParser.cxx"
4468 break;
4470 case 191: /* StatementExpression: MethodInvocation */
4471 #line 1732 "cmDependsJavaParser.y"
4473 jpElementStart(1);
4474 jpCheckEmpty(1);
4475 (yyval.str) = 0;
4476 yyGetParser->SetCurrentCombine("");
4479 #line 4480 "cmDependsJavaParser.cxx"
4480 break;
4482 case 192: /* StatementExpression: ClassInstanceCreationExpression */
4483 #line 1741 "cmDependsJavaParser.y"
4485 jpElementStart(1);
4486 jpCheckEmpty(1);
4487 (yyval.str) = 0;
4488 yyGetParser->SetCurrentCombine("");
4491 #line 4492 "cmDependsJavaParser.cxx"
4492 break;
4494 case 193: /* IfThenStatement: jp_IF jp_PARESTART Expression jp_PAREEND Statement */
4495 #line 1751 "cmDependsJavaParser.y"
4497 jpElementStart(5);
4498 jpCheckEmpty(5);
4499 (yyval.str) = 0;
4500 yyGetParser->SetCurrentCombine("");
4503 #line 4504 "cmDependsJavaParser.cxx"
4504 break;
4506 case 194: /* IfThenElseStatement: jp_IF jp_PARESTART Expression jp_PAREEND StatementNoShortIf jp_ELSE Statement */
4507 #line 1761 "cmDependsJavaParser.y"
4509 jpElementStart(7);
4510 jpCheckEmpty(7);
4511 (yyval.str) = 0;
4512 yyGetParser->SetCurrentCombine("");
4515 #line 4516 "cmDependsJavaParser.cxx"
4516 break;
4518 case 195: /* IfThenElseStatementNoShortIf: jp_IF jp_PARESTART Expression jp_PAREEND StatementNoShortIf jp_ELSE StatementNoShortIf */
4519 #line 1771 "cmDependsJavaParser.y"
4521 jpElementStart(7);
4522 jpCheckEmpty(7);
4523 (yyval.str) = 0;
4524 yyGetParser->SetCurrentCombine("");
4527 #line 4528 "cmDependsJavaParser.cxx"
4528 break;
4530 case 196: /* SwitchStatement: jp_SWITCH jp_PARESTART Expression jp_PAREEND SwitchBlock */
4531 #line 1781 "cmDependsJavaParser.y"
4533 jpElementStart(5);
4536 #line 4537 "cmDependsJavaParser.cxx"
4537 break;
4539 case 197: /* SwitchBlock: jp_CURLYSTART SwitchBlockStatementGroups SwitchLabelsopt jp_CURLYEND */
4540 #line 1788 "cmDependsJavaParser.y"
4542 jpElementStart(4);
4545 #line 4546 "cmDependsJavaParser.cxx"
4546 break;
4548 case 198: /* SwitchLabelsopt: %empty */
4549 #line 1794 "cmDependsJavaParser.y"
4551 jpElementStart(0);
4552 (yyval.str) = 0;
4553 yyGetParser->SetCurrentCombine("");
4556 #line 4557 "cmDependsJavaParser.cxx"
4557 break;
4559 case 199: /* SwitchLabelsopt: SwitchLabels */
4560 #line 1802 "cmDependsJavaParser.y"
4562 jpElementStart(1);
4563 jpCheckEmpty(1);
4564 (yyval.str) = 0;
4565 yyGetParser->SetCurrentCombine("");
4568 #line 4569 "cmDependsJavaParser.cxx"
4569 break;
4571 case 200: /* SwitchBlockStatementGroups: %empty */
4572 #line 1811 "cmDependsJavaParser.y"
4574 jpElementStart(0);
4575 (yyval.str) = 0;
4576 yyGetParser->SetCurrentCombine("");
4579 #line 4580 "cmDependsJavaParser.cxx"
4580 break;
4582 case 201: /* SwitchBlockStatementGroups: SwitchBlockStatementGroups SwitchBlockStatementGroup */
4583 #line 1819 "cmDependsJavaParser.y"
4585 jpElementStart(2);
4586 jpCheckEmpty(2);
4587 (yyval.str) = 0;
4588 yyGetParser->SetCurrentCombine("");
4591 #line 4592 "cmDependsJavaParser.cxx"
4592 break;
4594 case 202: /* SwitchBlockStatementGroup: SwitchLabels BlockStatements */
4595 #line 1829 "cmDependsJavaParser.y"
4597 jpElementStart(2);
4598 jpCheckEmpty(2);
4599 (yyval.str) = 0;
4600 yyGetParser->SetCurrentCombine("");
4603 #line 4604 "cmDependsJavaParser.cxx"
4604 break;
4606 case 203: /* SwitchLabels: SwitchLabel */
4607 #line 1839 "cmDependsJavaParser.y"
4609 jpElementStart(1);
4610 jpCheckEmpty(1);
4611 (yyval.str) = 0;
4612 yyGetParser->SetCurrentCombine("");
4615 #line 4616 "cmDependsJavaParser.cxx"
4616 break;
4618 case 204: /* SwitchLabels: SwitchLabels SwitchLabel */
4619 #line 1848 "cmDependsJavaParser.y"
4621 jpElementStart(2);
4622 jpCheckEmpty(2);
4623 (yyval.str) = 0;
4624 yyGetParser->SetCurrentCombine("");
4627 #line 4628 "cmDependsJavaParser.cxx"
4628 break;
4630 case 205: /* SwitchLabel: jp_CASE ConstantExpression jp_COLON */
4631 #line 1858 "cmDependsJavaParser.y"
4633 jpElementStart(3);
4634 jpCheckEmpty(3);
4635 (yyval.str) = 0;
4636 yyGetParser->SetCurrentCombine("");
4639 #line 4640 "cmDependsJavaParser.cxx"
4640 break;
4642 case 206: /* SwitchLabel: jp_DEFAULT jp_COLON */
4643 #line 1867 "cmDependsJavaParser.y"
4645 jpElementStart(2);
4646 jpCheckEmpty(2);
4647 (yyval.str) = 0;
4648 yyGetParser->SetCurrentCombine("");
4651 #line 4652 "cmDependsJavaParser.cxx"
4652 break;
4654 case 207: /* WhileStatement: jp_WHILE jp_PARESTART Expression jp_PAREEND Statement */
4655 #line 1877 "cmDependsJavaParser.y"
4657 jpElementStart(5);
4660 #line 4661 "cmDependsJavaParser.cxx"
4661 break;
4663 case 208: /* WhileStatementNoShortIf: jp_WHILE jp_PARESTART Expression jp_PAREEND StatementNoShortIf */
4664 #line 1884 "cmDependsJavaParser.y"
4666 jpElementStart(5);
4669 #line 4670 "cmDependsJavaParser.cxx"
4670 break;
4672 case 209: /* DoStatement: jp_DO Statement jp_WHILE jp_PARESTART Expression jp_PAREEND jp_SEMICOL */
4673 #line 1891 "cmDependsJavaParser.y"
4675 jpElementStart(7);
4678 #line 4679 "cmDependsJavaParser.cxx"
4679 break;
4681 case 210: /* ForStatement: jp_FOR jp_PARESTART ForInitopt jp_SEMICOL Expressionopt jp_SEMICOL ForUpdateopt jp_PAREEND Statement */
4682 #line 1899 "cmDependsJavaParser.y"
4684 jpElementStart(9);
4687 #line 4688 "cmDependsJavaParser.cxx"
4688 break;
4690 case 211: /* ForUpdateopt: %empty */
4691 #line 1905 "cmDependsJavaParser.y"
4693 jpElementStart(1);
4694 (yyval.str) = 0;
4695 yyGetParser->SetCurrentCombine("");
4698 #line 4699 "cmDependsJavaParser.cxx"
4699 break;
4701 case 212: /* ForUpdateopt: ForUpdate */
4702 #line 1913 "cmDependsJavaParser.y"
4704 jpElementStart(1);
4705 jpCheckEmpty(1);
4706 (yyval.str) = 0;
4707 yyGetParser->SetCurrentCombine("");
4710 #line 4711 "cmDependsJavaParser.cxx"
4711 break;
4713 case 213: /* ForInitopt: %empty */
4714 #line 1922 "cmDependsJavaParser.y"
4716 jpElementStart(0);
4717 (yyval.str) = 0;
4718 yyGetParser->SetCurrentCombine("");
4721 #line 4722 "cmDependsJavaParser.cxx"
4722 break;
4724 case 214: /* ForInitopt: ForInit */
4725 #line 1930 "cmDependsJavaParser.y"
4727 jpElementStart(1);
4728 jpCheckEmpty(1);
4729 (yyval.str) = 0;
4730 yyGetParser->SetCurrentCombine("");
4733 #line 4734 "cmDependsJavaParser.cxx"
4734 break;
4736 case 215: /* ForStatementNoShortIf: jp_FOR jp_PARESTART ForInitopt jp_SEMICOL Expressionopt jp_SEMICOL ForUpdateopt jp_PAREEND StatementNoShortIf */
4737 #line 1941 "cmDependsJavaParser.y"
4739 jpElementStart(9);
4740 (yyval.str) = 0;
4741 yyGetParser->SetCurrentCombine("");
4744 #line 4745 "cmDependsJavaParser.cxx"
4745 break;
4747 case 216: /* Expressionopt: %empty */
4748 #line 1949 "cmDependsJavaParser.y"
4750 jpElementStart(0);
4751 (yyval.str) = 0;
4752 yyGetParser->SetCurrentCombine("");
4755 #line 4756 "cmDependsJavaParser.cxx"
4756 break;
4758 case 217: /* Expressionopt: Expression */
4759 #line 1957 "cmDependsJavaParser.y"
4761 jpElementStart(1);
4762 jpCheckEmpty(1);
4763 (yyval.str) = 0;
4764 yyGetParser->SetCurrentCombine("");
4767 #line 4768 "cmDependsJavaParser.cxx"
4768 break;
4770 case 218: /* ForInit: StatementExpressionList */
4771 #line 1967 "cmDependsJavaParser.y"
4773 jpElementStart(1);
4774 jpCheckEmpty(1);
4775 (yyval.str) = 0;
4776 yyGetParser->SetCurrentCombine("");
4779 #line 4780 "cmDependsJavaParser.cxx"
4780 break;
4782 case 219: /* ForInit: LocalVariableDeclaration */
4783 #line 1976 "cmDependsJavaParser.y"
4785 jpElementStart(1);
4786 jpCheckEmpty(1);
4787 (yyval.str) = 0;
4788 yyGetParser->SetCurrentCombine("");
4791 #line 4792 "cmDependsJavaParser.cxx"
4792 break;
4794 case 220: /* ForUpdate: StatementExpressionList */
4795 #line 1986 "cmDependsJavaParser.y"
4797 jpElementStart(1);
4798 jpCheckEmpty(1);
4799 (yyval.str) = 0;
4800 yyGetParser->SetCurrentCombine("");
4803 #line 4804 "cmDependsJavaParser.cxx"
4804 break;
4806 case 221: /* StatementExpressionList: StatementExpression */
4807 #line 1996 "cmDependsJavaParser.y"
4809 jpElementStart(1);
4810 jpCheckEmpty(1);
4811 (yyval.str) = 0;
4812 yyGetParser->SetCurrentCombine("");
4815 #line 4816 "cmDependsJavaParser.cxx"
4816 break;
4818 case 222: /* StatementExpressionList: StatementExpressionList jp_COMMA StatementExpression */
4819 #line 2005 "cmDependsJavaParser.y"
4821 jpElementStart(3);
4822 jpCheckEmpty(3);
4823 (yyval.str) = 0;
4824 yyGetParser->SetCurrentCombine("");
4827 #line 4828 "cmDependsJavaParser.cxx"
4828 break;
4830 case 223: /* AssertStatement: jp_ASSERT Expression jp_SEMICOL */
4831 #line 2015 "cmDependsJavaParser.y"
4833 jpElementStart(3);
4834 jpCheckEmpty(3);
4835 (yyval.str) = 0;
4836 yyGetParser->SetCurrentCombine("");
4839 #line 4840 "cmDependsJavaParser.cxx"
4840 break;
4842 case 224: /* AssertStatement: jp_ASSERT Expression jp_COLON Expression jp_SEMICOL */
4843 #line 2024 "cmDependsJavaParser.y"
4845 jpElementStart(5);
4846 jpCheckEmpty(5);
4847 (yyval.str) = 0;
4848 yyGetParser->SetCurrentCombine("");
4851 #line 4852 "cmDependsJavaParser.cxx"
4852 break;
4854 case 225: /* BreakStatement: jp_BREAK Identifieropt jp_SEMICOL */
4855 #line 2034 "cmDependsJavaParser.y"
4857 jpElementStart(3);
4858 yyGetParser->DeallocateParserType(&((yyvsp[-1].str)));
4859 jpCheckEmpty(3);
4860 (yyval.str) = 0;
4861 yyGetParser->SetCurrentCombine("");
4864 #line 4865 "cmDependsJavaParser.cxx"
4865 break;
4867 case 226: /* Identifieropt: %empty */
4868 #line 2044 "cmDependsJavaParser.y"
4870 jpElementStart(0);
4871 (yyval.str) = 0;
4872 yyGetParser->SetCurrentCombine("");
4875 #line 4876 "cmDependsJavaParser.cxx"
4876 break;
4878 case 227: /* Identifieropt: Identifier */
4879 #line 2052 "cmDependsJavaParser.y"
4881 jpElementStart(1);
4884 #line 4885 "cmDependsJavaParser.cxx"
4885 break;
4887 case 228: /* ContinueStatement: jp_CONTINUE Identifieropt jp_SEMICOL */
4888 #line 2059 "cmDependsJavaParser.y"
4890 jpElementStart(3);
4891 yyGetParser->DeallocateParserType(&((yyvsp[-1].str)));
4892 jpCheckEmpty(3);
4893 (yyval.str) = 0;
4894 yyGetParser->SetCurrentCombine("");
4897 #line 4898 "cmDependsJavaParser.cxx"
4898 break;
4900 case 229: /* ReturnStatement: jp_RETURN Expressionopt jp_SEMICOL */
4901 #line 2070 "cmDependsJavaParser.y"
4903 jpElementStart(3);
4904 jpCheckEmpty(3);
4905 (yyval.str) = 0;
4906 yyGetParser->SetCurrentCombine("");
4909 #line 4910 "cmDependsJavaParser.cxx"
4910 break;
4912 case 230: /* ThrowStatement: jp_THROW Expression jp_SEMICOL */
4913 #line 2080 "cmDependsJavaParser.y"
4915 jpElementStart(3);
4916 jpCheckEmpty(3);
4917 (yyval.str) = 0;
4918 yyGetParser->SetCurrentCombine("");
4921 #line 4922 "cmDependsJavaParser.cxx"
4922 break;
4924 case 231: /* SynchronizedStatement: jp_SYNCHRONIZED jp_PARESTART Expression jp_PAREEND Block */
4925 #line 2090 "cmDependsJavaParser.y"
4927 jpElementStart(5);
4928 jpCheckEmpty(5);
4929 (yyval.str) = 0;
4930 yyGetParser->SetCurrentCombine("");
4933 #line 4934 "cmDependsJavaParser.cxx"
4934 break;
4936 case 232: /* TryStatement: jp_TRY Block Catches */
4937 #line 2100 "cmDependsJavaParser.y"
4939 jpElementStart(3);
4940 jpCheckEmpty(3);
4941 (yyval.str) = 0;
4942 yyGetParser->SetCurrentCombine("");
4945 #line 4946 "cmDependsJavaParser.cxx"
4946 break;
4948 case 233: /* TryStatement: jp_TRY Block Catchesopt Finally */
4949 #line 2109 "cmDependsJavaParser.y"
4951 jpElementStart(4);
4952 jpCheckEmpty(4);
4953 (yyval.str) = 0;
4954 yyGetParser->SetCurrentCombine("");
4957 #line 4958 "cmDependsJavaParser.cxx"
4958 break;
4960 case 234: /* Catchesopt: %empty */
4961 #line 2118 "cmDependsJavaParser.y"
4963 jpElementStart(1);
4964 (yyval.str) = 0;
4965 yyGetParser->SetCurrentCombine("");
4968 #line 4969 "cmDependsJavaParser.cxx"
4969 break;
4971 case 235: /* Catchesopt: Catches */
4972 #line 2126 "cmDependsJavaParser.y"
4974 jpElementStart(1);
4975 jpCheckEmpty(1);
4976 (yyval.str) = 0;
4977 yyGetParser->SetCurrentCombine("");
4980 #line 4981 "cmDependsJavaParser.cxx"
4981 break;
4983 case 236: /* Catches: CatchClause */
4984 #line 2136 "cmDependsJavaParser.y"
4986 jpElementStart(1);
4987 jpCheckEmpty(1);
4988 (yyval.str) = 0;
4989 yyGetParser->SetCurrentCombine("");
4992 #line 4993 "cmDependsJavaParser.cxx"
4993 break;
4995 case 237: /* Catches: Catches CatchClause */
4996 #line 2145 "cmDependsJavaParser.y"
4998 jpElementStart(2);
4999 jpCheckEmpty(2);
5000 (yyval.str) = 0;
5001 yyGetParser->SetCurrentCombine("");
5004 #line 5005 "cmDependsJavaParser.cxx"
5005 break;
5007 case 238: /* CatchClause: jp_CATCH jp_PARESTART FormalParameter jp_PAREEND Block */
5008 #line 2155 "cmDependsJavaParser.y"
5010 jpElementStart(5);
5013 #line 5014 "cmDependsJavaParser.cxx"
5014 break;
5016 case 239: /* Finally: jp_FINALLY Block */
5017 #line 2162 "cmDependsJavaParser.y"
5019 jpElementStart(2);
5020 jpCheckEmpty(2);
5021 (yyval.str) = 0;
5022 yyGetParser->SetCurrentCombine("");
5025 #line 5026 "cmDependsJavaParser.cxx"
5026 break;
5028 case 240: /* Primary: PrimaryNoNewArray */
5029 #line 2172 "cmDependsJavaParser.y"
5031 jpElementStart(1);
5032 jpCheckEmpty(1);
5033 (yyval.str) = 0;
5034 yyGetParser->SetCurrentCombine("");
5037 #line 5038 "cmDependsJavaParser.cxx"
5038 break;
5040 case 241: /* Primary: ArrayCreationExpression */
5041 #line 2181 "cmDependsJavaParser.y"
5043 jpElementStart(1);
5044 jpCheckEmpty(1);
5045 (yyval.str) = 0;
5046 yyGetParser->SetCurrentCombine("");
5049 #line 5050 "cmDependsJavaParser.cxx"
5050 break;
5052 case 242: /* PrimaryNoNewArray: Literal */
5053 #line 2191 "cmDependsJavaParser.y"
5055 jpElementStart(1);
5056 jpCheckEmpty(1);
5057 (yyval.str) = 0;
5058 yyGetParser->SetCurrentCombine("");
5061 #line 5062 "cmDependsJavaParser.cxx"
5062 break;
5064 case 243: /* PrimaryNoNewArray: jp_THIS */
5065 #line 2200 "cmDependsJavaParser.y"
5067 jpElementStart(1);
5070 #line 5071 "cmDependsJavaParser.cxx"
5071 break;
5073 case 244: /* PrimaryNoNewArray: jp_PARESTART Expression jp_PAREEND */
5074 #line 2206 "cmDependsJavaParser.y"
5076 jpElementStart(3);
5077 jpCheckEmpty(3);
5078 (yyval.str) = 0;
5079 yyGetParser->SetCurrentCombine("");
5082 #line 5083 "cmDependsJavaParser.cxx"
5083 break;
5085 case 245: /* PrimaryNoNewArray: ClassInstanceCreationExpression */
5086 #line 2215 "cmDependsJavaParser.y"
5088 jpElementStart(1);
5089 jpCheckEmpty(1);
5090 (yyval.str) = 0;
5091 yyGetParser->SetCurrentCombine("");
5094 #line 5095 "cmDependsJavaParser.cxx"
5095 break;
5097 case 246: /* PrimaryNoNewArray: FieldAccess */
5098 #line 2224 "cmDependsJavaParser.y"
5100 jpElementStart(1);
5101 jpCheckEmpty(1);
5102 (yyval.str) = 0;
5103 yyGetParser->SetCurrentCombine("");
5106 #line 5107 "cmDependsJavaParser.cxx"
5107 break;
5109 case 247: /* PrimaryNoNewArray: MethodInvocation */
5110 #line 2233 "cmDependsJavaParser.y"
5112 jpElementStart(1);
5113 jpCheckEmpty(1);
5114 (yyval.str) = 0;
5115 yyGetParser->SetCurrentCombine("");
5118 #line 5119 "cmDependsJavaParser.cxx"
5119 break;
5121 case 248: /* PrimaryNoNewArray: ArrayAccess */
5122 #line 2242 "cmDependsJavaParser.y"
5124 jpElementStart(1);
5125 jpCheckEmpty(1);
5126 (yyval.str) = 0;
5127 yyGetParser->SetCurrentCombine("");
5130 #line 5131 "cmDependsJavaParser.cxx"
5131 break;
5133 case 249: /* ClassInstanceCreationExpression: New ClassType jp_PARESTART ArgumentListopt jp_PAREEND ClassBodyOpt */
5134 #line 2252 "cmDependsJavaParser.y"
5136 jpElementStart(6);
5137 jpCheckEmpty(6);
5138 (yyval.str) = 0;
5139 yyGetParser->SetCurrentCombine("");
5142 #line 5143 "cmDependsJavaParser.cxx"
5143 break;
5145 case 250: /* ClassBodyOpt: %empty */
5146 #line 2261 "cmDependsJavaParser.y"
5148 jpElementStart(0);
5149 (yyval.str) = 0;
5150 yyGetParser->SetCurrentCombine("");
5153 #line 5154 "cmDependsJavaParser.cxx"
5154 break;
5156 case 251: /* ClassBodyOpt: ClassBody */
5157 #line 2269 "cmDependsJavaParser.y"
5159 jpElementStart(1);
5160 jpCheckEmpty(1);
5161 (yyval.str) = 0;
5162 yyGetParser->SetCurrentCombine("");
5165 #line 5166 "cmDependsJavaParser.cxx"
5166 break;
5168 case 252: /* ArgumentListopt: %empty */
5169 #line 2278 "cmDependsJavaParser.y"
5171 jpElementStart(0);
5172 (yyval.str) = 0;
5173 yyGetParser->SetCurrentCombine("");
5176 #line 5177 "cmDependsJavaParser.cxx"
5177 break;
5179 case 253: /* ArgumentListopt: ArgumentList */
5180 #line 2286 "cmDependsJavaParser.y"
5182 jpElementStart(1);
5183 jpCheckEmpty(1);
5184 (yyval.str) = 0;
5185 yyGetParser->SetCurrentCombine("");
5188 #line 5189 "cmDependsJavaParser.cxx"
5189 break;
5191 case 254: /* ArgumentList: Expression */
5192 #line 2296 "cmDependsJavaParser.y"
5194 jpElementStart(1);
5195 jpCheckEmpty(1);
5196 (yyval.str) = 0;
5197 yyGetParser->SetCurrentCombine("");
5200 #line 5201 "cmDependsJavaParser.cxx"
5201 break;
5203 case 255: /* ArgumentList: ArgumentList jp_COMMA Expression */
5204 #line 2305 "cmDependsJavaParser.y"
5206 jpElementStart(3);
5207 jpCheckEmpty(3);
5208 (yyval.str) = 0;
5209 yyGetParser->SetCurrentCombine("");
5212 #line 5213 "cmDependsJavaParser.cxx"
5213 break;
5215 case 256: /* ArrayCreationExpression: New PrimitiveType DimExprs Dimsopt */
5216 #line 2315 "cmDependsJavaParser.y"
5218 jpElementStart(4);
5219 jpCheckEmpty(4);
5220 (yyval.str) = 0;
5221 yyGetParser->SetCurrentCombine("");
5224 #line 5225 "cmDependsJavaParser.cxx"
5225 break;
5227 case 257: /* ArrayCreationExpression: New ClassOrInterfaceType DimExprs Dimsopt */
5228 #line 2324 "cmDependsJavaParser.y"
5230 jpElementStart(4);
5231 jpCheckEmpty(4);
5232 (yyval.str) = 0;
5233 yyGetParser->SetCurrentCombine("");
5236 #line 5237 "cmDependsJavaParser.cxx"
5237 break;
5239 case 258: /* ArrayCreationExpression: New PrimitiveType Dims ArrayInitializer */
5240 #line 2333 "cmDependsJavaParser.y"
5242 jpElementStart(4);
5243 jpCheckEmpty(4);
5244 (yyval.str) = 0;
5245 yyGetParser->SetCurrentCombine("");
5248 #line 5249 "cmDependsJavaParser.cxx"
5249 break;
5251 case 259: /* ArrayCreationExpression: New ClassOrInterfaceType Dims ArrayInitializer */
5252 #line 2342 "cmDependsJavaParser.y"
5254 jpElementStart(4);
5255 jpCheckEmpty(4);
5256 (yyval.str) = 0;
5257 yyGetParser->SetCurrentCombine("");
5260 #line 5261 "cmDependsJavaParser.cxx"
5261 break;
5263 case 260: /* Dimsopt: %empty */
5264 #line 2351 "cmDependsJavaParser.y"
5266 jpElementStart(0);
5267 (yyval.str) = 0;
5268 yyGetParser->SetCurrentCombine("");
5271 #line 5272 "cmDependsJavaParser.cxx"
5272 break;
5274 case 261: /* Dimsopt: Dims */
5275 #line 2359 "cmDependsJavaParser.y"
5277 jpElementStart(1);
5278 jpCheckEmpty(1);
5279 (yyval.str) = 0;
5280 yyGetParser->SetCurrentCombine("");
5283 #line 5284 "cmDependsJavaParser.cxx"
5284 break;
5286 case 262: /* DimExprs: DimExpr */
5287 #line 2369 "cmDependsJavaParser.y"
5289 jpElementStart(1);
5290 jpCheckEmpty(1);
5291 (yyval.str) = 0;
5292 yyGetParser->SetCurrentCombine("");
5295 #line 5296 "cmDependsJavaParser.cxx"
5296 break;
5298 case 263: /* DimExprs: DimExprs DimExpr */
5299 #line 2378 "cmDependsJavaParser.y"
5301 jpElementStart(2);
5302 jpCheckEmpty(2);
5303 (yyval.str) = 0;
5304 yyGetParser->SetCurrentCombine("");
5307 #line 5308 "cmDependsJavaParser.cxx"
5308 break;
5310 case 264: /* DimExpr: jp_BRACKETSTART Expression jp_BRACKETEND */
5311 #line 2388 "cmDependsJavaParser.y"
5313 jpElementStart(3);
5314 jpCheckEmpty(3);
5315 (yyval.str) = 0;
5316 yyGetParser->SetCurrentCombine("");
5319 #line 5320 "cmDependsJavaParser.cxx"
5320 break;
5322 case 265: /* Dims: jp_BRACKETSTART jp_BRACKETEND */
5323 #line 2398 "cmDependsJavaParser.y"
5325 jpElementStart(2);
5328 #line 5329 "cmDependsJavaParser.cxx"
5329 break;
5331 case 266: /* Dims: Dims jp_BRACKETSTART jp_BRACKETEND */
5332 #line 2404 "cmDependsJavaParser.y"
5334 jpElementStart(3);
5337 #line 5338 "cmDependsJavaParser.cxx"
5338 break;
5340 case 267: /* FieldAccess: Primary jp_DOT Identifier */
5341 #line 2411 "cmDependsJavaParser.y"
5343 jpElementStart(3);
5344 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
5345 jpCheckEmpty(3);
5346 (yyval.str) = 0;
5347 yyGetParser->SetCurrentCombine("");
5350 #line 5351 "cmDependsJavaParser.cxx"
5351 break;
5353 case 268: /* FieldAccess: jp_SUPER jp_DOT Identifier */
5354 #line 2421 "cmDependsJavaParser.y"
5356 jpElementStart(3);
5357 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
5358 jpCheckEmpty(3);
5359 (yyval.str) = 0;
5360 yyGetParser->SetCurrentCombine("");
5363 #line 5364 "cmDependsJavaParser.cxx"
5364 break;
5366 case 269: /* FieldAccess: jp_THIS jp_DOT Identifier */
5367 #line 2431 "cmDependsJavaParser.y"
5369 jpElementStart(3);
5370 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
5371 jpCheckEmpty(3);
5372 (yyval.str) = 0;
5373 yyGetParser->SetCurrentCombine("");
5376 #line 5377 "cmDependsJavaParser.cxx"
5377 break;
5379 case 270: /* FieldAccess: Primary jp_DOT jp_THIS */
5380 #line 2441 "cmDependsJavaParser.y"
5382 jpElementStart(3);
5383 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
5384 jpCheckEmpty(3);
5385 (yyval.str) = 0;
5386 yyGetParser->SetCurrentCombine("");
5389 #line 5390 "cmDependsJavaParser.cxx"
5390 break;
5392 case 271: /* MethodInvocation: Name jp_PARESTART ArgumentListopt jp_PAREEND */
5393 #line 2452 "cmDependsJavaParser.y"
5395 jpElementStart(4);
5396 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
5397 jpCheckEmpty(4);
5398 (yyval.str) = 0;
5399 yyGetParser->SetCurrentCombine("");
5402 #line 5403 "cmDependsJavaParser.cxx"
5403 break;
5405 case 272: /* MethodInvocation: Primary jp_DOT Identifier jp_PARESTART ArgumentListopt jp_PAREEND */
5406 #line 2462 "cmDependsJavaParser.y"
5408 jpElementStart(6);
5409 yyGetParser->DeallocateParserType(&((yyvsp[-5].str)));
5410 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
5411 jpCheckEmpty(6);
5412 (yyval.str) = 0;
5413 yyGetParser->SetCurrentCombine("");
5416 #line 5417 "cmDependsJavaParser.cxx"
5417 break;
5419 case 273: /* MethodInvocation: jp_SUPER jp_DOT Identifier jp_PARESTART ArgumentListopt jp_PAREEND */
5420 #line 2473 "cmDependsJavaParser.y"
5422 jpElementStart(6);
5423 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
5424 jpCheckEmpty(6);
5425 (yyval.str) = 0;
5426 yyGetParser->SetCurrentCombine("");
5429 #line 5430 "cmDependsJavaParser.cxx"
5430 break;
5432 case 274: /* MethodInvocation: jp_THIS jp_DOT Identifier jp_PARESTART ArgumentListopt jp_PAREEND */
5433 #line 2483 "cmDependsJavaParser.y"
5435 jpElementStart(6);
5436 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
5437 jpCheckEmpty(6);
5438 (yyval.str) = 0;
5439 yyGetParser->SetCurrentCombine("");
5442 #line 5443 "cmDependsJavaParser.cxx"
5443 break;
5445 case 275: /* ArrayAccess: Name jp_BRACKETSTART Expression jp_BRACKETEND */
5446 #line 2494 "cmDependsJavaParser.y"
5448 jpElementStart(4);
5449 yyGetParser->DeallocateParserType(&((yyvsp[-3].str)));
5450 jpCheckEmpty(4);
5451 (yyval.str) = 0;
5452 yyGetParser->SetCurrentCombine("");
5455 #line 5456 "cmDependsJavaParser.cxx"
5456 break;
5458 case 276: /* ArrayAccess: PrimaryNoNewArray jp_BRACKETSTART Expression jp_BRACKETEND */
5459 #line 2504 "cmDependsJavaParser.y"
5461 jpElementStart(4);
5462 jpCheckEmpty(4);
5463 (yyval.str) = 0;
5464 yyGetParser->SetCurrentCombine("");
5467 #line 5468 "cmDependsJavaParser.cxx"
5468 break;
5470 case 277: /* PostfixExpression: Primary */
5471 #line 2514 "cmDependsJavaParser.y"
5473 jpElementStart(1);
5474 jpCheckEmpty(1);
5475 (yyval.str) = 0;
5476 yyGetParser->SetCurrentCombine("");
5479 #line 5480 "cmDependsJavaParser.cxx"
5480 break;
5482 case 278: /* PostfixExpression: Name */
5483 #line 2523 "cmDependsJavaParser.y"
5485 jpElementStart(1);
5486 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
5487 (yyval.str) = 0;
5488 yyGetParser->SetCurrentCombine("");
5491 #line 5492 "cmDependsJavaParser.cxx"
5492 break;
5494 case 279: /* PostfixExpression: ArrayType jp_DOT jp_CLASS */
5495 #line 2532 "cmDependsJavaParser.y"
5497 jpElementStart(3);
5498 jpCheckEmpty(3);
5499 (yyval.str) = 0;
5500 yyGetParser->SetCurrentCombine("");
5503 #line 5504 "cmDependsJavaParser.cxx"
5504 break;
5506 case 280: /* PostfixExpression: PostIncrementExpression */
5507 #line 2541 "cmDependsJavaParser.y"
5509 jpElementStart(1);
5510 jpCheckEmpty(1);
5511 (yyval.str) = 0;
5512 yyGetParser->SetCurrentCombine("");
5515 #line 5516 "cmDependsJavaParser.cxx"
5516 break;
5518 case 281: /* PostfixExpression: PostDecrementExpression */
5519 #line 2550 "cmDependsJavaParser.y"
5521 jpElementStart(1);
5522 jpCheckEmpty(1);
5523 (yyval.str) = 0;
5524 yyGetParser->SetCurrentCombine("");
5527 #line 5528 "cmDependsJavaParser.cxx"
5528 break;
5530 case 282: /* PostIncrementExpression: PostfixExpression jp_PLUSPLUS */
5531 #line 2560 "cmDependsJavaParser.y"
5533 jpElementStart(2);
5534 jpCheckEmpty(2);
5535 (yyval.str) = 0;
5536 yyGetParser->SetCurrentCombine("");
5539 #line 5540 "cmDependsJavaParser.cxx"
5540 break;
5542 case 283: /* PostDecrementExpression: PostfixExpression jp_MINUSMINUS */
5543 #line 2570 "cmDependsJavaParser.y"
5545 jpElementStart(2);
5546 jpCheckEmpty(2);
5547 (yyval.str) = 0;
5548 yyGetParser->SetCurrentCombine("");
5551 #line 5552 "cmDependsJavaParser.cxx"
5552 break;
5554 case 284: /* UnaryExpression: PreIncrementExpression */
5555 #line 2580 "cmDependsJavaParser.y"
5557 jpElementStart(1);
5558 jpCheckEmpty(1);
5559 (yyval.str) = 0;
5560 yyGetParser->SetCurrentCombine("");
5563 #line 5564 "cmDependsJavaParser.cxx"
5564 break;
5566 case 285: /* UnaryExpression: PreDecrementExpression */
5567 #line 2589 "cmDependsJavaParser.y"
5569 jpElementStart(1);
5570 jpCheckEmpty(1);
5571 (yyval.str) = 0;
5572 yyGetParser->SetCurrentCombine("");
5575 #line 5576 "cmDependsJavaParser.cxx"
5576 break;
5578 case 286: /* UnaryExpression: jp_PLUS UnaryExpression */
5579 #line 2598 "cmDependsJavaParser.y"
5581 jpElementStart(2);
5582 jpCheckEmpty(2);
5583 (yyval.str) = 0;
5584 yyGetParser->SetCurrentCombine("");
5587 #line 5588 "cmDependsJavaParser.cxx"
5588 break;
5590 case 287: /* UnaryExpression: jp_MINUS UnaryExpression */
5591 #line 2607 "cmDependsJavaParser.y"
5593 jpElementStart(2);
5594 jpCheckEmpty(2);
5595 (yyval.str) = 0;
5596 yyGetParser->SetCurrentCombine("");
5599 #line 5600 "cmDependsJavaParser.cxx"
5600 break;
5602 case 288: /* UnaryExpression: UnaryExpressionNotPlusMinus */
5603 #line 2616 "cmDependsJavaParser.y"
5605 jpElementStart(1);
5606 jpCheckEmpty(1);
5607 (yyval.str) = 0;
5608 yyGetParser->SetCurrentCombine("");
5611 #line 5612 "cmDependsJavaParser.cxx"
5612 break;
5614 case 289: /* PreIncrementExpression: jp_PLUSPLUS UnaryExpression */
5615 #line 2626 "cmDependsJavaParser.y"
5617 jpElementStart(2);
5618 jpCheckEmpty(2);
5619 (yyval.str) = 0;
5620 yyGetParser->SetCurrentCombine("");
5623 #line 5624 "cmDependsJavaParser.cxx"
5624 break;
5626 case 290: /* PreDecrementExpression: jp_MINUSMINUS UnaryExpression */
5627 #line 2636 "cmDependsJavaParser.y"
5629 jpElementStart(2);
5630 jpCheckEmpty(2);
5631 (yyval.str) = 0;
5632 yyGetParser->SetCurrentCombine("");
5635 #line 5636 "cmDependsJavaParser.cxx"
5636 break;
5638 case 291: /* UnaryExpressionNotPlusMinus: PostfixExpression */
5639 #line 2646 "cmDependsJavaParser.y"
5641 jpElementStart(1);
5642 jpCheckEmpty(1);
5643 (yyval.str) = 0;
5644 yyGetParser->SetCurrentCombine("");
5647 #line 5648 "cmDependsJavaParser.cxx"
5648 break;
5650 case 292: /* UnaryExpressionNotPlusMinus: jp_TILDE UnaryExpression */
5651 #line 2655 "cmDependsJavaParser.y"
5653 jpElementStart(2);
5654 jpCheckEmpty(2);
5655 (yyval.str) = 0;
5656 yyGetParser->SetCurrentCombine("");
5659 #line 5660 "cmDependsJavaParser.cxx"
5660 break;
5662 case 293: /* UnaryExpressionNotPlusMinus: jp_EXCLAMATION UnaryExpression */
5663 #line 2664 "cmDependsJavaParser.y"
5665 jpElementStart(2);
5666 jpCheckEmpty(2);
5667 (yyval.str) = 0;
5668 yyGetParser->SetCurrentCombine("");
5671 #line 5672 "cmDependsJavaParser.cxx"
5672 break;
5674 case 294: /* UnaryExpressionNotPlusMinus: CastExpression */
5675 #line 2673 "cmDependsJavaParser.y"
5677 jpElementStart(1);
5678 jpCheckEmpty(1);
5679 (yyval.str) = 0;
5680 yyGetParser->SetCurrentCombine("");
5683 #line 5684 "cmDependsJavaParser.cxx"
5684 break;
5686 case 295: /* CastExpression: jp_PARESTART PrimitiveType Dimsopt jp_PAREEND UnaryExpression */
5687 #line 2683 "cmDependsJavaParser.y"
5689 jpElementStart(5);
5690 jpCheckEmpty(5);
5691 (yyval.str) = 0;
5692 yyGetParser->SetCurrentCombine("");
5695 #line 5696 "cmDependsJavaParser.cxx"
5696 break;
5698 case 296: /* CastExpression: jp_PARESTART Expression jp_PAREEND UnaryExpressionNotPlusMinus */
5699 #line 2692 "cmDependsJavaParser.y"
5701 jpElementStart(4);
5702 jpCheckEmpty(4);
5703 (yyval.str) = 0;
5704 yyGetParser->SetCurrentCombine("");
5707 #line 5708 "cmDependsJavaParser.cxx"
5708 break;
5710 case 297: /* CastExpression: jp_PARESTART Name Dims jp_PAREEND UnaryExpressionNotPlusMinus */
5711 #line 2701 "cmDependsJavaParser.y"
5713 jpElementStart(5);
5716 #line 5717 "cmDependsJavaParser.cxx"
5717 break;
5719 case 298: /* MultiplicativeExpression: UnaryExpression */
5720 #line 2708 "cmDependsJavaParser.y"
5722 jpElementStart(1);
5723 jpCheckEmpty(1);
5724 (yyval.str) = 0;
5725 yyGetParser->SetCurrentCombine("");
5728 #line 5729 "cmDependsJavaParser.cxx"
5729 break;
5731 case 299: /* MultiplicativeExpression: MultiplicativeExpression jp_TIMES UnaryExpression */
5732 #line 2717 "cmDependsJavaParser.y"
5734 jpElementStart(3);
5735 jpCheckEmpty(3);
5736 (yyval.str) = 0;
5737 yyGetParser->SetCurrentCombine("");
5740 #line 5741 "cmDependsJavaParser.cxx"
5741 break;
5743 case 300: /* MultiplicativeExpression: MultiplicativeExpression jp_DIVIDE UnaryExpression */
5744 #line 2726 "cmDependsJavaParser.y"
5746 jpElementStart(3);
5747 jpCheckEmpty(3);
5748 (yyval.str) = 0;
5749 yyGetParser->SetCurrentCombine("");
5752 #line 5753 "cmDependsJavaParser.cxx"
5753 break;
5755 case 301: /* MultiplicativeExpression: MultiplicativeExpression jp_PERCENT UnaryExpression */
5756 #line 2735 "cmDependsJavaParser.y"
5758 jpElementStart(3);
5759 jpCheckEmpty(3);
5760 (yyval.str) = 0;
5761 yyGetParser->SetCurrentCombine("");
5764 #line 5765 "cmDependsJavaParser.cxx"
5765 break;
5767 case 302: /* AdditiveExpression: MultiplicativeExpression */
5768 #line 2745 "cmDependsJavaParser.y"
5770 jpElementStart(1);
5771 jpCheckEmpty(1);
5772 (yyval.str) = 0;
5773 yyGetParser->SetCurrentCombine("");
5776 #line 5777 "cmDependsJavaParser.cxx"
5777 break;
5779 case 303: /* AdditiveExpression: AdditiveExpression jp_PLUS MultiplicativeExpression */
5780 #line 2754 "cmDependsJavaParser.y"
5782 jpElementStart(3);
5783 jpCheckEmpty(3);
5784 (yyval.str) = 0;
5785 yyGetParser->SetCurrentCombine("");
5788 #line 5789 "cmDependsJavaParser.cxx"
5789 break;
5791 case 304: /* AdditiveExpression: AdditiveExpression jp_MINUS MultiplicativeExpression */
5792 #line 2763 "cmDependsJavaParser.y"
5794 jpElementStart(3);
5795 jpCheckEmpty(3);
5796 (yyval.str) = 0;
5797 yyGetParser->SetCurrentCombine("");
5800 #line 5801 "cmDependsJavaParser.cxx"
5801 break;
5803 case 305: /* ShiftExpression: AdditiveExpression */
5804 #line 2773 "cmDependsJavaParser.y"
5806 jpElementStart(1);
5807 jpCheckEmpty(1);
5808 (yyval.str) = 0;
5809 yyGetParser->SetCurrentCombine("");
5812 #line 5813 "cmDependsJavaParser.cxx"
5813 break;
5815 case 306: /* ShiftExpression: ShiftExpression jp_LTLT AdditiveExpression */
5816 #line 2782 "cmDependsJavaParser.y"
5818 jpElementStart(3);
5819 jpCheckEmpty(3);
5820 (yyval.str) = 0;
5821 yyGetParser->SetCurrentCombine("");
5824 #line 5825 "cmDependsJavaParser.cxx"
5825 break;
5827 case 307: /* ShiftExpression: ShiftExpression jp_GTGT AdditiveExpression */
5828 #line 2791 "cmDependsJavaParser.y"
5830 jpElementStart(3);
5831 jpCheckEmpty(3);
5832 (yyval.str) = 0;
5833 yyGetParser->SetCurrentCombine("");
5836 #line 5837 "cmDependsJavaParser.cxx"
5837 break;
5839 case 308: /* ShiftExpression: ShiftExpression jp_GTGTGT AdditiveExpression */
5840 #line 2800 "cmDependsJavaParser.y"
5842 jpElementStart(3);
5843 jpCheckEmpty(3);
5844 (yyval.str) = 0;
5845 yyGetParser->SetCurrentCombine("");
5848 #line 5849 "cmDependsJavaParser.cxx"
5849 break;
5851 case 309: /* RelationalExpression: ShiftExpression */
5852 #line 2810 "cmDependsJavaParser.y"
5854 jpElementStart(1);
5855 jpCheckEmpty(1);
5856 (yyval.str) = 0;
5857 yyGetParser->SetCurrentCombine("");
5860 #line 5861 "cmDependsJavaParser.cxx"
5861 break;
5863 case 310: /* RelationalExpression: RelationalExpression jp_LESSTHAN ShiftExpression */
5864 #line 2819 "cmDependsJavaParser.y"
5866 jpElementStart(3);
5867 jpCheckEmpty(3);
5868 (yyval.str) = 0;
5869 yyGetParser->SetCurrentCombine("");
5872 #line 5873 "cmDependsJavaParser.cxx"
5873 break;
5875 case 311: /* RelationalExpression: RelationalExpression jp_GREATER ShiftExpression */
5876 #line 2828 "cmDependsJavaParser.y"
5878 jpElementStart(3);
5879 jpCheckEmpty(3);
5880 (yyval.str) = 0;
5881 yyGetParser->SetCurrentCombine("");
5884 #line 5885 "cmDependsJavaParser.cxx"
5885 break;
5887 case 312: /* RelationalExpression: RelationalExpression jp_LTEQUALS ShiftExpression */
5888 #line 2837 "cmDependsJavaParser.y"
5890 jpElementStart(3);
5891 jpCheckEmpty(3);
5892 (yyval.str) = 0;
5893 yyGetParser->SetCurrentCombine("");
5896 #line 5897 "cmDependsJavaParser.cxx"
5897 break;
5899 case 313: /* RelationalExpression: RelationalExpression jp_GTEQUALS ShiftExpression */
5900 #line 2846 "cmDependsJavaParser.y"
5902 jpElementStart(3);
5903 jpCheckEmpty(3);
5904 (yyval.str) = 0;
5905 yyGetParser->SetCurrentCombine("");
5908 #line 5909 "cmDependsJavaParser.cxx"
5909 break;
5911 case 314: /* RelationalExpression: RelationalExpression jp_INSTANCEOF ReferenceType */
5912 #line 2855 "cmDependsJavaParser.y"
5914 jpElementStart(3);
5915 jpCheckEmpty(3);
5916 (yyval.str) = 0;
5917 yyGetParser->SetCurrentCombine("");
5920 #line 5921 "cmDependsJavaParser.cxx"
5921 break;
5923 case 315: /* EqualityExpression: RelationalExpression */
5924 #line 2865 "cmDependsJavaParser.y"
5926 jpElementStart(1);
5927 jpCheckEmpty(1);
5928 (yyval.str) = 0;
5929 yyGetParser->SetCurrentCombine("");
5932 #line 5933 "cmDependsJavaParser.cxx"
5933 break;
5935 case 316: /* EqualityExpression: EqualityExpression jp_EQUALSEQUALS RelationalExpression */
5936 #line 2874 "cmDependsJavaParser.y"
5938 jpElementStart(3);
5939 jpCheckEmpty(3);
5940 (yyval.str) = 0;
5941 yyGetParser->SetCurrentCombine("");
5944 #line 5945 "cmDependsJavaParser.cxx"
5945 break;
5947 case 317: /* EqualityExpression: EqualityExpression jp_EXCLAMATIONEQUALS RelationalExpression */
5948 #line 2883 "cmDependsJavaParser.y"
5950 jpElementStart(3);
5951 jpCheckEmpty(3);
5952 (yyval.str) = 0;
5953 yyGetParser->SetCurrentCombine("");
5956 #line 5957 "cmDependsJavaParser.cxx"
5957 break;
5959 case 318: /* AndExpression: EqualityExpression */
5960 #line 2893 "cmDependsJavaParser.y"
5962 jpElementStart(1);
5963 jpCheckEmpty(1);
5964 (yyval.str) = 0;
5965 yyGetParser->SetCurrentCombine("");
5968 #line 5969 "cmDependsJavaParser.cxx"
5969 break;
5971 case 319: /* AndExpression: AndExpression jp_AND EqualityExpression */
5972 #line 2902 "cmDependsJavaParser.y"
5974 jpElementStart(3);
5975 jpCheckEmpty(3);
5976 (yyval.str) = 0;
5977 yyGetParser->SetCurrentCombine("");
5980 #line 5981 "cmDependsJavaParser.cxx"
5981 break;
5983 case 320: /* ExclusiveOrExpression: AndExpression */
5984 #line 2912 "cmDependsJavaParser.y"
5986 jpElementStart(1);
5987 jpCheckEmpty(1);
5988 (yyval.str) = 0;
5989 yyGetParser->SetCurrentCombine("");
5992 #line 5993 "cmDependsJavaParser.cxx"
5993 break;
5995 case 321: /* ExclusiveOrExpression: ExclusiveOrExpression jp_CARROT AndExpression */
5996 #line 2921 "cmDependsJavaParser.y"
5998 jpElementStart(3);
5999 jpCheckEmpty(3);
6000 (yyval.str) = 0;
6001 yyGetParser->SetCurrentCombine("");
6004 #line 6005 "cmDependsJavaParser.cxx"
6005 break;
6007 case 322: /* InclusiveOrExpression: ExclusiveOrExpression */
6008 #line 2931 "cmDependsJavaParser.y"
6010 jpElementStart(1);
6011 jpCheckEmpty(1);
6012 (yyval.str) = 0;
6013 yyGetParser->SetCurrentCombine("");
6016 #line 6017 "cmDependsJavaParser.cxx"
6017 break;
6019 case 323: /* InclusiveOrExpression: InclusiveOrExpression jp_PIPE ExclusiveOrExpression */
6020 #line 2940 "cmDependsJavaParser.y"
6022 jpElementStart(3);
6023 jpCheckEmpty(3);
6024 (yyval.str) = 0;
6025 yyGetParser->SetCurrentCombine("");
6028 #line 6029 "cmDependsJavaParser.cxx"
6029 break;
6031 case 324: /* ConditionalAndExpression: InclusiveOrExpression */
6032 #line 2950 "cmDependsJavaParser.y"
6034 jpElementStart(1);
6035 jpCheckEmpty(1);
6036 (yyval.str) = 0;
6037 yyGetParser->SetCurrentCombine("");
6040 #line 6041 "cmDependsJavaParser.cxx"
6041 break;
6043 case 325: /* ConditionalAndExpression: ConditionalAndExpression jp_ANDAND InclusiveOrExpression */
6044 #line 2959 "cmDependsJavaParser.y"
6046 jpElementStart(3);
6047 jpCheckEmpty(3);
6048 (yyval.str) = 0;
6049 yyGetParser->SetCurrentCombine("");
6052 #line 6053 "cmDependsJavaParser.cxx"
6053 break;
6055 case 326: /* ConditionalOrExpression: ConditionalAndExpression */
6056 #line 2969 "cmDependsJavaParser.y"
6058 jpElementStart(1);
6059 jpCheckEmpty(1);
6060 (yyval.str) = 0;
6061 yyGetParser->SetCurrentCombine("");
6064 #line 6065 "cmDependsJavaParser.cxx"
6065 break;
6067 case 327: /* ConditionalOrExpression: ConditionalOrExpression jp_PIPEPIPE ConditionalAndExpression */
6068 #line 2978 "cmDependsJavaParser.y"
6070 jpElementStart(3);
6071 jpCheckEmpty(3);
6072 (yyval.str) = 0;
6073 yyGetParser->SetCurrentCombine("");
6076 #line 6077 "cmDependsJavaParser.cxx"
6077 break;
6079 case 328: /* ConditionalExpression: ConditionalOrExpression */
6080 #line 2988 "cmDependsJavaParser.y"
6082 jpElementStart(1);
6083 jpCheckEmpty(1);
6084 (yyval.str) = 0;
6085 yyGetParser->SetCurrentCombine("");
6088 #line 6089 "cmDependsJavaParser.cxx"
6089 break;
6091 case 329: /* ConditionalExpression: ConditionalOrExpression jp_QUESTION Expression jp_COLON ConditionalExpression */
6092 #line 2997 "cmDependsJavaParser.y"
6094 jpElementStart(5);
6095 jpCheckEmpty(5);
6096 (yyval.str) = 0;
6097 yyGetParser->SetCurrentCombine("");
6100 #line 6101 "cmDependsJavaParser.cxx"
6101 break;
6103 case 330: /* AssignmentExpression: ConditionalExpression */
6104 #line 3007 "cmDependsJavaParser.y"
6106 jpElementStart(1);
6107 jpCheckEmpty(1);
6108 (yyval.str) = 0;
6109 yyGetParser->SetCurrentCombine("");
6112 #line 6113 "cmDependsJavaParser.cxx"
6113 break;
6115 case 331: /* AssignmentExpression: Assignment */
6116 #line 3016 "cmDependsJavaParser.y"
6118 jpElementStart(1);
6119 jpCheckEmpty(1);
6120 (yyval.str) = 0;
6121 yyGetParser->SetCurrentCombine("");
6124 #line 6125 "cmDependsJavaParser.cxx"
6125 break;
6127 case 332: /* Assignment: LeftHandSide AssignmentOperator AssignmentExpression */
6128 #line 3026 "cmDependsJavaParser.y"
6130 jpElementStart(3);
6131 jpCheckEmpty(3);
6132 (yyval.str) = 0;
6133 yyGetParser->SetCurrentCombine("");
6136 #line 6137 "cmDependsJavaParser.cxx"
6137 break;
6139 case 333: /* LeftHandSide: Name */
6140 #line 3036 "cmDependsJavaParser.y"
6142 jpElementStart(1);
6143 yyGetParser->DeallocateParserType(&((yyvsp[0].str)));
6144 jpCheckEmpty(1);
6145 (yyval.str) = 0;
6146 yyGetParser->SetCurrentCombine("");
6149 #line 6150 "cmDependsJavaParser.cxx"
6150 break;
6152 case 334: /* LeftHandSide: FieldAccess */
6153 #line 3046 "cmDependsJavaParser.y"
6155 jpElementStart(1);
6156 jpCheckEmpty(1);
6157 (yyval.str) = 0;
6158 yyGetParser->SetCurrentCombine("");
6161 #line 6162 "cmDependsJavaParser.cxx"
6162 break;
6164 case 335: /* LeftHandSide: ArrayAccess */
6165 #line 3055 "cmDependsJavaParser.y"
6167 jpElementStart(1);
6168 jpCheckEmpty(1);
6169 (yyval.str) = 0;
6170 yyGetParser->SetCurrentCombine("");
6173 #line 6174 "cmDependsJavaParser.cxx"
6174 break;
6176 case 336: /* AssignmentOperator: jp_EQUALS */
6177 #line 3065 "cmDependsJavaParser.y"
6179 jpElementStart(1);
6180 jpCheckEmpty(1);
6181 (yyval.str) = 0;
6182 yyGetParser->SetCurrentCombine("");
6185 #line 6186 "cmDependsJavaParser.cxx"
6186 break;
6188 case 337: /* AssignmentOperator: jp_TIMESEQUALS */
6189 #line 3074 "cmDependsJavaParser.y"
6191 jpElementStart(1);
6192 jpCheckEmpty(1);
6193 (yyval.str) = 0;
6194 yyGetParser->SetCurrentCombine("");
6197 #line 6198 "cmDependsJavaParser.cxx"
6198 break;
6200 case 338: /* AssignmentOperator: jp_DIVIDEEQUALS */
6201 #line 3083 "cmDependsJavaParser.y"
6203 jpElementStart(1);
6204 jpCheckEmpty(1);
6205 (yyval.str) = 0;
6206 yyGetParser->SetCurrentCombine("");
6209 #line 6210 "cmDependsJavaParser.cxx"
6210 break;
6212 case 339: /* AssignmentOperator: jp_PERCENTEQUALS */
6213 #line 3092 "cmDependsJavaParser.y"
6215 jpElementStart(1);
6216 jpCheckEmpty(1);
6217 (yyval.str) = 0;
6218 yyGetParser->SetCurrentCombine("");
6221 #line 6222 "cmDependsJavaParser.cxx"
6222 break;
6224 case 340: /* AssignmentOperator: jp_PLUSEQUALS */
6225 #line 3101 "cmDependsJavaParser.y"
6227 jpElementStart(1);
6228 jpCheckEmpty(1);
6229 (yyval.str) = 0;
6230 yyGetParser->SetCurrentCombine("");
6233 #line 6234 "cmDependsJavaParser.cxx"
6234 break;
6236 case 341: /* AssignmentOperator: jp_MINUSEQUALS */
6237 #line 3110 "cmDependsJavaParser.y"
6239 jpElementStart(1);
6240 jpCheckEmpty(1);
6241 (yyval.str) = 0;
6242 yyGetParser->SetCurrentCombine("");
6245 #line 6246 "cmDependsJavaParser.cxx"
6246 break;
6248 case 342: /* AssignmentOperator: jp_LESLESEQUALS */
6249 #line 3119 "cmDependsJavaParser.y"
6251 jpElementStart(1);
6252 jpCheckEmpty(1);
6253 (yyval.str) = 0;
6254 yyGetParser->SetCurrentCombine("");
6257 #line 6258 "cmDependsJavaParser.cxx"
6258 break;
6260 case 343: /* AssignmentOperator: jp_GTGTEQUALS */
6261 #line 3128 "cmDependsJavaParser.y"
6263 jpElementStart(1);
6264 jpCheckEmpty(1);
6265 (yyval.str) = 0;
6266 yyGetParser->SetCurrentCombine("");
6269 #line 6270 "cmDependsJavaParser.cxx"
6270 break;
6272 case 344: /* AssignmentOperator: jp_GTGTGTEQUALS */
6273 #line 3137 "cmDependsJavaParser.y"
6275 jpElementStart(1);
6276 jpCheckEmpty(1);
6277 (yyval.str) = 0;
6278 yyGetParser->SetCurrentCombine("");
6281 #line 6282 "cmDependsJavaParser.cxx"
6282 break;
6284 case 345: /* AssignmentOperator: jp_ANDEQUALS */
6285 #line 3146 "cmDependsJavaParser.y"
6287 jpElementStart(1);
6288 jpCheckEmpty(1);
6289 (yyval.str) = 0;
6290 yyGetParser->SetCurrentCombine("");
6293 #line 6294 "cmDependsJavaParser.cxx"
6294 break;
6296 case 346: /* AssignmentOperator: jp_CARROTEQUALS */
6297 #line 3155 "cmDependsJavaParser.y"
6299 jpElementStart(1);
6300 jpCheckEmpty(1);
6301 (yyval.str) = 0;
6302 yyGetParser->SetCurrentCombine("");
6305 #line 6306 "cmDependsJavaParser.cxx"
6306 break;
6308 case 347: /* AssignmentOperator: jp_PIPEEQUALS */
6309 #line 3164 "cmDependsJavaParser.y"
6311 jpElementStart(1);
6312 jpCheckEmpty(1);
6313 (yyval.str) = 0;
6314 yyGetParser->SetCurrentCombine("");
6317 #line 6318 "cmDependsJavaParser.cxx"
6318 break;
6320 case 348: /* Expression: AssignmentExpression */
6321 #line 3174 "cmDependsJavaParser.y"
6323 jpElementStart(1);
6324 jpCheckEmpty(1);
6325 (yyval.str) = 0;
6326 yyGetParser->SetCurrentCombine("");
6329 #line 6330 "cmDependsJavaParser.cxx"
6330 break;
6332 case 349: /* ConstantExpression: Expression */
6333 #line 3184 "cmDependsJavaParser.y"
6335 jpElementStart(1);
6336 jpCheckEmpty(1);
6337 (yyval.str) = 0;
6338 yyGetParser->SetCurrentCombine("");
6341 #line 6342 "cmDependsJavaParser.cxx"
6342 break;
6344 case 350: /* New: jp_NEW */
6345 #line 3194 "cmDependsJavaParser.y"
6347 jpElementStart(1);
6348 jpCheckEmpty(1);
6349 (yyval.str) = 0;
6350 yyGetParser->SetCurrentCombine("");
6353 #line 6354 "cmDependsJavaParser.cxx"
6354 break;
6356 case 351: /* New: Name jp_DOT jp_NEW */
6357 #line 3203 "cmDependsJavaParser.y"
6359 jpElementStart(3);
6360 jpStoreClass((yyvsp[-2].str));
6361 jpCheckEmpty(3);
6362 (yyval.str) = 0;
6363 yyGetParser->SetCurrentCombine("");
6366 #line 6367 "cmDependsJavaParser.cxx"
6367 break;
6370 #line 6371 "cmDependsJavaParser.cxx"
6372 default: break;
6374 /* User semantic actions sometimes alter yychar, and that requires
6375 that yytoken be updated with the new translation. We take the
6376 approach of translating immediately before every use of yytoken.
6377 One alternative is translating here after every semantic action,
6378 but that translation would be missed if the semantic action invokes
6379 YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
6380 if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
6381 incorrect destructor might then be invoked immediately. In the
6382 case of YYERROR or YYBACKUP, subsequent parser actions might lead
6383 to an incorrect destructor call or verbose syntax error message
6384 before the lookahead is translated. */
6385 YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc);
6387 YYPOPSTACK (yylen);
6388 yylen = 0;
6390 *++yyvsp = yyval;
6392 /* Now 'shift' the result of the reduction. Determine what state
6393 that goes to, based on the state we popped back to and the rule
6394 number reduced by. */
6396 const int yylhs = yyr1[yyn] - YYNTOKENS;
6397 const int yyi = yypgoto[yylhs] + *yyssp;
6398 yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
6399 ? yytable[yyi]
6400 : yydefgoto[yylhs]);
6403 goto yynewstate;
6406 /*--------------------------------------.
6407 | yyerrlab -- here on detecting error. |
6408 `--------------------------------------*/
6409 yyerrlab:
6410 /* Make sure we have latest lookahead translation. See comments at
6411 user semantic actions for why this is necessary. */
6412 yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar);
6413 /* If not already recovering from an error, report this error. */
6414 if (!yyerrstatus)
6416 ++yynerrs;
6418 yypcontext_t yyctx
6419 = {yyssp, yytoken};
6420 char const *yymsgp = YY_("syntax error");
6421 int yysyntax_error_status;
6422 yysyntax_error_status = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx);
6423 if (yysyntax_error_status == 0)
6424 yymsgp = yymsg;
6425 else if (yysyntax_error_status == -1)
6427 if (yymsg != yymsgbuf)
6428 YYSTACK_FREE (yymsg);
6429 yymsg = YY_CAST (char *,
6430 YYSTACK_ALLOC (YY_CAST (YYSIZE_T, yymsg_alloc)));
6431 if (yymsg)
6433 yysyntax_error_status
6434 = yysyntax_error (&yymsg_alloc, &yymsg, &yyctx);
6435 yymsgp = yymsg;
6437 else
6439 yymsg = yymsgbuf;
6440 yymsg_alloc = sizeof yymsgbuf;
6441 yysyntax_error_status = YYENOMEM;
6444 yyerror (yyscanner, yymsgp);
6445 if (yysyntax_error_status == YYENOMEM)
6446 YYNOMEM;
6450 if (yyerrstatus == 3)
6452 /* If just tried and failed to reuse lookahead token after an
6453 error, discard it. */
6455 if (yychar <= YYEOF)
6457 /* Return failure if at end of input. */
6458 if (yychar == YYEOF)
6459 YYABORT;
6461 else
6463 yydestruct ("Error: discarding",
6464 yytoken, &yylval, yyscanner);
6465 yychar = YYEMPTY;
6469 /* Else will try to reuse lookahead token after shifting the error
6470 token. */
6471 goto yyerrlab1;
6474 /*---------------------------------------------------.
6475 | yyerrorlab -- error raised explicitly by YYERROR. |
6476 `---------------------------------------------------*/
6477 yyerrorlab:
6478 /* Pacify compilers when the user code never invokes YYERROR and the
6479 label yyerrorlab therefore never appears in user code. */
6480 if (0)
6481 YYERROR;
6482 ++yynerrs;
6484 /* Do not reclaim the symbols of the rule whose action triggered
6485 this YYERROR. */
6486 YYPOPSTACK (yylen);
6487 yylen = 0;
6488 YY_STACK_PRINT (yyss, yyssp);
6489 yystate = *yyssp;
6490 goto yyerrlab1;
6493 /*-------------------------------------------------------------.
6494 | yyerrlab1 -- common code for both syntax error and YYERROR. |
6495 `-------------------------------------------------------------*/
6496 yyerrlab1:
6497 yyerrstatus = 3; /* Each real token shifted decrements this. */
6499 /* Pop stack until we find a state that shifts the error token. */
6500 for (;;)
6502 yyn = yypact[yystate];
6503 if (!yypact_value_is_default (yyn))
6505 yyn += YYSYMBOL_YYerror;
6506 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror)
6508 yyn = yytable[yyn];
6509 if (0 < yyn)
6510 break;
6514 /* Pop the current state because it cannot handle the error token. */
6515 if (yyssp == yyss)
6516 YYABORT;
6519 yydestruct ("Error: popping",
6520 YY_ACCESSING_SYMBOL (yystate), yyvsp, yyscanner);
6521 YYPOPSTACK (1);
6522 yystate = *yyssp;
6523 YY_STACK_PRINT (yyss, yyssp);
6526 YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
6527 *++yyvsp = yylval;
6528 YY_IGNORE_MAYBE_UNINITIALIZED_END
6531 /* Shift the error token. */
6532 YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp);
6534 yystate = yyn;
6535 goto yynewstate;
6538 /*-------------------------------------.
6539 | yyacceptlab -- YYACCEPT comes here. |
6540 `-------------------------------------*/
6541 yyacceptlab:
6542 yyresult = 0;
6543 goto yyreturnlab;
6546 /*-----------------------------------.
6547 | yyabortlab -- YYABORT comes here. |
6548 `-----------------------------------*/
6549 yyabortlab:
6550 yyresult = 1;
6551 goto yyreturnlab;
6554 /*-----------------------------------------------------------.
6555 | yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. |
6556 `-----------------------------------------------------------*/
6557 yyexhaustedlab:
6558 yyerror (yyscanner, YY_("memory exhausted"));
6559 yyresult = 2;
6560 goto yyreturnlab;
6563 /*----------------------------------------------------------.
6564 | yyreturnlab -- parsing is finished, clean up and return. |
6565 `----------------------------------------------------------*/
6566 yyreturnlab:
6567 if (yychar != YYEMPTY)
6569 /* Make sure we have latest lookahead translation. See comments at
6570 user semantic actions for why this is necessary. */
6571 yytoken = YYTRANSLATE (yychar);
6572 yydestruct ("Cleanup: discarding lookahead",
6573 yytoken, &yylval, yyscanner);
6575 /* Do not reclaim the symbols of the rule whose action triggered
6576 this YYABORT or YYACCEPT. */
6577 YYPOPSTACK (yylen);
6578 YY_STACK_PRINT (yyss, yyssp);
6579 while (yyssp != yyss)
6581 yydestruct ("Cleanup: popping",
6582 YY_ACCESSING_SYMBOL (+*yyssp), yyvsp, yyscanner);
6583 YYPOPSTACK (1);
6585 #ifndef yyoverflow
6586 if (yyss != yyssa)
6587 YYSTACK_FREE (yyss);
6588 #endif
6589 if (yymsg != yymsgbuf)
6590 YYSTACK_FREE (yymsg);
6591 return yyresult;
6594 #line 3212 "cmDependsJavaParser.y"
6596 /* End of grammar */
6598 /*--------------------------------------------------------------------------*/
6599 void cmDependsJava_yyerror(yyscan_t yyscanner, const char* message)
6601 yyGetParser->Error(message);