1 /* A Bison parser, made by GNU Bison 3.0.4. */ 2 3 /* Bison interface for Yacc-like parsers in C 4 5 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc. 6 7 This program is free software: you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation, either version 3 of the License, or 10 (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19 20 /* As a special exception, you may create a larger work that contains 21 part or all of the Bison parser skeleton and distribute that work 22 under terms of your choice, so long as that work isn't itself a 23 parser generator using the skeleton or a modified version thereof 24 as a parser skeleton. Alternatively, if you modify or redistribute 25 the parser skeleton itself, you may (at your option) remove this 26 special exception, which will cause the skeleton and the resulting 27 Bison output files to be licensed under the GNU General Public 28 License without this special exception. 29 30 This special exception was added by the Free Software Foundation in 31 version 2.2 of Bison. */ 32 33 #ifndef YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED 34 # define YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED 35 /* Debug traces. */ 36 #ifndef YYDEBUG 37 # define YYDEBUG 1 38 #endif 39 #if YYDEBUG 40 extern int yydebug; 41 #endif 42 43 /* Token type. */ 44 #ifndef YYTOKENTYPE 45 # define YYTOKENTYPE 46 enum yytokentype 47 { 48 ATTRIBUTE = 258, 49 VARYING = 259, 50 FLOAT16_T = 260, 51 FLOAT = 261, 52 FLOAT32_T = 262, 53 DOUBLE = 263, 54 FLOAT64_T = 264, 55 CONST = 265, 56 BOOL = 266, 57 INT = 267, 58 UINT = 268, 59 INT64_T = 269, 60 UINT64_T = 270, 61 INT32_T = 271, 62 UINT32_T = 272, 63 INT16_T = 273, 64 UINT16_T = 274, 65 INT8_T = 275, 66 UINT8_T = 276, 67 BREAK = 277, 68 CONTINUE = 278, 69 DO = 279, 70 ELSE = 280, 71 FOR = 281, 72 IF = 282, 73 DISCARD = 283, 74 RETURN = 284, 75 SWITCH = 285, 76 CASE = 286, 77 DEFAULT = 287, 78 SUBROUTINE = 288, 79 BVEC2 = 289, 80 BVEC3 = 290, 81 BVEC4 = 291, 82 IVEC2 = 292, 83 IVEC3 = 293, 84 IVEC4 = 294, 85 UVEC2 = 295, 86 UVEC3 = 296, 87 UVEC4 = 297, 88 I64VEC2 = 298, 89 I64VEC3 = 299, 90 I64VEC4 = 300, 91 U64VEC2 = 301, 92 U64VEC3 = 302, 93 U64VEC4 = 303, 94 I32VEC2 = 304, 95 I32VEC3 = 305, 96 I32VEC4 = 306, 97 U32VEC2 = 307, 98 U32VEC3 = 308, 99 U32VEC4 = 309, 100 I16VEC2 = 310, 101 I16VEC3 = 311, 102 I16VEC4 = 312, 103 U16VEC2 = 313, 104 U16VEC3 = 314, 105 U16VEC4 = 315, 106 I8VEC2 = 316, 107 I8VEC3 = 317, 108 I8VEC4 = 318, 109 U8VEC2 = 319, 110 U8VEC3 = 320, 111 U8VEC4 = 321, 112 VEC2 = 322, 113 VEC3 = 323, 114 VEC4 = 324, 115 MAT2 = 325, 116 MAT3 = 326, 117 MAT4 = 327, 118 CENTROID = 328, 119 IN = 329, 120 OUT = 330, 121 INOUT = 331, 122 UNIFORM = 332, 123 PATCH = 333, 124 SAMPLE = 334, 125 BUFFER = 335, 126 SHARED = 336, 127 NONUNIFORM = 337, 128 PAYLOADNV = 338, 129 PAYLOADINNV = 339, 130 HITATTRNV = 340, 131 CALLDATANV = 341, 132 CALLDATAINNV = 342, 133 COHERENT = 343, 134 VOLATILE = 344, 135 RESTRICT = 345, 136 READONLY = 346, 137 WRITEONLY = 347, 138 DEVICECOHERENT = 348, 139 QUEUEFAMILYCOHERENT = 349, 140 WORKGROUPCOHERENT = 350, 141 SUBGROUPCOHERENT = 351, 142 NONPRIVATE = 352, 143 DVEC2 = 353, 144 DVEC3 = 354, 145 DVEC4 = 355, 146 DMAT2 = 356, 147 DMAT3 = 357, 148 DMAT4 = 358, 149 F16VEC2 = 359, 150 F16VEC3 = 360, 151 F16VEC4 = 361, 152 F16MAT2 = 362, 153 F16MAT3 = 363, 154 F16MAT4 = 364, 155 F32VEC2 = 365, 156 F32VEC3 = 366, 157 F32VEC4 = 367, 158 F32MAT2 = 368, 159 F32MAT3 = 369, 160 F32MAT4 = 370, 161 F64VEC2 = 371, 162 F64VEC3 = 372, 163 F64VEC4 = 373, 164 F64MAT2 = 374, 165 F64MAT3 = 375, 166 F64MAT4 = 376, 167 NOPERSPECTIVE = 377, 168 FLAT = 378, 169 SMOOTH = 379, 170 LAYOUT = 380, 171 EXPLICITINTERPAMD = 381, 172 PERVERTEXNV = 382, 173 PERPRIMITIVENV = 383, 174 PERVIEWNV = 384, 175 PERTASKNV = 385, 176 MAT2X2 = 386, 177 MAT2X3 = 387, 178 MAT2X4 = 388, 179 MAT3X2 = 389, 180 MAT3X3 = 390, 181 MAT3X4 = 391, 182 MAT4X2 = 392, 183 MAT4X3 = 393, 184 MAT4X4 = 394, 185 DMAT2X2 = 395, 186 DMAT2X3 = 396, 187 DMAT2X4 = 397, 188 DMAT3X2 = 398, 189 DMAT3X3 = 399, 190 DMAT3X4 = 400, 191 DMAT4X2 = 401, 192 DMAT4X3 = 402, 193 DMAT4X4 = 403, 194 F16MAT2X2 = 404, 195 F16MAT2X3 = 405, 196 F16MAT2X4 = 406, 197 F16MAT3X2 = 407, 198 F16MAT3X3 = 408, 199 F16MAT3X4 = 409, 200 F16MAT4X2 = 410, 201 F16MAT4X3 = 411, 202 F16MAT4X4 = 412, 203 F32MAT2X2 = 413, 204 F32MAT2X3 = 414, 205 F32MAT2X4 = 415, 206 F32MAT3X2 = 416, 207 F32MAT3X3 = 417, 208 F32MAT3X4 = 418, 209 F32MAT4X2 = 419, 210 F32MAT4X3 = 420, 211 F32MAT4X4 = 421, 212 F64MAT2X2 = 422, 213 F64MAT2X3 = 423, 214 F64MAT2X4 = 424, 215 F64MAT3X2 = 425, 216 F64MAT3X3 = 426, 217 F64MAT3X4 = 427, 218 F64MAT4X2 = 428, 219 F64MAT4X3 = 429, 220 F64MAT4X4 = 430, 221 ATOMIC_UINT = 431, 222 ACCSTRUCTNV = 432, 223 SAMPLER1D = 433, 224 SAMPLER2D = 434, 225 SAMPLER3D = 435, 226 SAMPLERCUBE = 436, 227 SAMPLER1DSHADOW = 437, 228 SAMPLER2DSHADOW = 438, 229 SAMPLERCUBESHADOW = 439, 230 SAMPLER1DARRAY = 440, 231 SAMPLER2DARRAY = 441, 232 SAMPLER1DARRAYSHADOW = 442, 233 SAMPLER2DARRAYSHADOW = 443, 234 ISAMPLER1D = 444, 235 ISAMPLER2D = 445, 236 ISAMPLER3D = 446, 237 ISAMPLERCUBE = 447, 238 ISAMPLER1DARRAY = 448, 239 ISAMPLER2DARRAY = 449, 240 USAMPLER1D = 450, 241 USAMPLER2D = 451, 242 USAMPLER3D = 452, 243 USAMPLERCUBE = 453, 244 USAMPLER1DARRAY = 454, 245 USAMPLER2DARRAY = 455, 246 SAMPLER2DRECT = 456, 247 SAMPLER2DRECTSHADOW = 457, 248 ISAMPLER2DRECT = 458, 249 USAMPLER2DRECT = 459, 250 SAMPLERBUFFER = 460, 251 ISAMPLERBUFFER = 461, 252 USAMPLERBUFFER = 462, 253 SAMPLERCUBEARRAY = 463, 254 SAMPLERCUBEARRAYSHADOW = 464, 255 ISAMPLERCUBEARRAY = 465, 256 USAMPLERCUBEARRAY = 466, 257 SAMPLER2DMS = 467, 258 ISAMPLER2DMS = 468, 259 USAMPLER2DMS = 469, 260 SAMPLER2DMSARRAY = 470, 261 ISAMPLER2DMSARRAY = 471, 262 USAMPLER2DMSARRAY = 472, 263 SAMPLEREXTERNALOES = 473, 264 F16SAMPLER1D = 474, 265 F16SAMPLER2D = 475, 266 F16SAMPLER3D = 476, 267 F16SAMPLER2DRECT = 477, 268 F16SAMPLERCUBE = 478, 269 F16SAMPLER1DARRAY = 479, 270 F16SAMPLER2DARRAY = 480, 271 F16SAMPLERCUBEARRAY = 481, 272 F16SAMPLERBUFFER = 482, 273 F16SAMPLER2DMS = 483, 274 F16SAMPLER2DMSARRAY = 484, 275 F16SAMPLER1DSHADOW = 485, 276 F16SAMPLER2DSHADOW = 486, 277 F16SAMPLER1DARRAYSHADOW = 487, 278 F16SAMPLER2DARRAYSHADOW = 488, 279 F16SAMPLER2DRECTSHADOW = 489, 280 F16SAMPLERCUBESHADOW = 490, 281 F16SAMPLERCUBEARRAYSHADOW = 491, 282 SAMPLER = 492, 283 SAMPLERSHADOW = 493, 284 TEXTURE1D = 494, 285 TEXTURE2D = 495, 286 TEXTURE3D = 496, 287 TEXTURECUBE = 497, 288 TEXTURE1DARRAY = 498, 289 TEXTURE2DARRAY = 499, 290 ITEXTURE1D = 500, 291 ITEXTURE2D = 501, 292 ITEXTURE3D = 502, 293 ITEXTURECUBE = 503, 294 ITEXTURE1DARRAY = 504, 295 ITEXTURE2DARRAY = 505, 296 UTEXTURE1D = 506, 297 UTEXTURE2D = 507, 298 UTEXTURE3D = 508, 299 UTEXTURECUBE = 509, 300 UTEXTURE1DARRAY = 510, 301 UTEXTURE2DARRAY = 511, 302 TEXTURE2DRECT = 512, 303 ITEXTURE2DRECT = 513, 304 UTEXTURE2DRECT = 514, 305 TEXTUREBUFFER = 515, 306 ITEXTUREBUFFER = 516, 307 UTEXTUREBUFFER = 517, 308 TEXTURECUBEARRAY = 518, 309 ITEXTURECUBEARRAY = 519, 310 UTEXTURECUBEARRAY = 520, 311 TEXTURE2DMS = 521, 312 ITEXTURE2DMS = 522, 313 UTEXTURE2DMS = 523, 314 TEXTURE2DMSARRAY = 524, 315 ITEXTURE2DMSARRAY = 525, 316 UTEXTURE2DMSARRAY = 526, 317 F16TEXTURE1D = 527, 318 F16TEXTURE2D = 528, 319 F16TEXTURE3D = 529, 320 F16TEXTURE2DRECT = 530, 321 F16TEXTURECUBE = 531, 322 F16TEXTURE1DARRAY = 532, 323 F16TEXTURE2DARRAY = 533, 324 F16TEXTURECUBEARRAY = 534, 325 F16TEXTUREBUFFER = 535, 326 F16TEXTURE2DMS = 536, 327 F16TEXTURE2DMSARRAY = 537, 328 SUBPASSINPUT = 538, 329 SUBPASSINPUTMS = 539, 330 ISUBPASSINPUT = 540, 331 ISUBPASSINPUTMS = 541, 332 USUBPASSINPUT = 542, 333 USUBPASSINPUTMS = 543, 334 F16SUBPASSINPUT = 544, 335 F16SUBPASSINPUTMS = 545, 336 IMAGE1D = 546, 337 IIMAGE1D = 547, 338 UIMAGE1D = 548, 339 IMAGE2D = 549, 340 IIMAGE2D = 550, 341 UIMAGE2D = 551, 342 IMAGE3D = 552, 343 IIMAGE3D = 553, 344 UIMAGE3D = 554, 345 IMAGE2DRECT = 555, 346 IIMAGE2DRECT = 556, 347 UIMAGE2DRECT = 557, 348 IMAGECUBE = 558, 349 IIMAGECUBE = 559, 350 UIMAGECUBE = 560, 351 IMAGEBUFFER = 561, 352 IIMAGEBUFFER = 562, 353 UIMAGEBUFFER = 563, 354 IMAGE1DARRAY = 564, 355 IIMAGE1DARRAY = 565, 356 UIMAGE1DARRAY = 566, 357 IMAGE2DARRAY = 567, 358 IIMAGE2DARRAY = 568, 359 UIMAGE2DARRAY = 569, 360 IMAGECUBEARRAY = 570, 361 IIMAGECUBEARRAY = 571, 362 UIMAGECUBEARRAY = 572, 363 IMAGE2DMS = 573, 364 IIMAGE2DMS = 574, 365 UIMAGE2DMS = 575, 366 IMAGE2DMSARRAY = 576, 367 IIMAGE2DMSARRAY = 577, 368 UIMAGE2DMSARRAY = 578, 369 F16IMAGE1D = 579, 370 F16IMAGE2D = 580, 371 F16IMAGE3D = 581, 372 F16IMAGE2DRECT = 582, 373 F16IMAGECUBE = 583, 374 F16IMAGE1DARRAY = 584, 375 F16IMAGE2DARRAY = 585, 376 F16IMAGECUBEARRAY = 586, 377 F16IMAGEBUFFER = 587, 378 F16IMAGE2DMS = 588, 379 F16IMAGE2DMSARRAY = 589, 380 STRUCT = 590, 381 VOID = 591, 382 WHILE = 592, 383 IDENTIFIER = 593, 384 TYPE_NAME = 594, 385 FLOATCONSTANT = 595, 386 DOUBLECONSTANT = 596, 387 INT16CONSTANT = 597, 388 UINT16CONSTANT = 598, 389 INT32CONSTANT = 599, 390 UINT32CONSTANT = 600, 391 INTCONSTANT = 601, 392 UINTCONSTANT = 602, 393 INT64CONSTANT = 603, 394 UINT64CONSTANT = 604, 395 BOOLCONSTANT = 605, 396 FLOAT16CONSTANT = 606, 397 LEFT_OP = 607, 398 RIGHT_OP = 608, 399 INC_OP = 609, 400 DEC_OP = 610, 401 LE_OP = 611, 402 GE_OP = 612, 403 EQ_OP = 613, 404 NE_OP = 614, 405 AND_OP = 615, 406 OR_OP = 616, 407 XOR_OP = 617, 408 MUL_ASSIGN = 618, 409 DIV_ASSIGN = 619, 410 ADD_ASSIGN = 620, 411 MOD_ASSIGN = 621, 412 LEFT_ASSIGN = 622, 413 RIGHT_ASSIGN = 623, 414 AND_ASSIGN = 624, 415 XOR_ASSIGN = 625, 416 OR_ASSIGN = 626, 417 SUB_ASSIGN = 627, 418 LEFT_PAREN = 628, 419 RIGHT_PAREN = 629, 420 LEFT_BRACKET = 630, 421 RIGHT_BRACKET = 631, 422 LEFT_BRACE = 632, 423 RIGHT_BRACE = 633, 424 DOT = 634, 425 COMMA = 635, 426 COLON = 636, 427 EQUAL = 637, 428 SEMICOLON = 638, 429 BANG = 639, 430 DASH = 640, 431 TILDE = 641, 432 PLUS = 642, 433 STAR = 643, 434 SLASH = 644, 435 PERCENT = 645, 436 LEFT_ANGLE = 646, 437 RIGHT_ANGLE = 647, 438 VERTICAL_BAR = 648, 439 CARET = 649, 440 AMPERSAND = 650, 441 QUESTION = 651, 442 INVARIANT = 652, 443 PRECISE = 653, 444 HIGH_PRECISION = 654, 445 MEDIUM_PRECISION = 655, 446 LOW_PRECISION = 656, 447 PRECISION = 657, 448 PACKED = 658, 449 RESOURCE = 659, 450 SUPERP = 660 451 }; 452 #endif 453 454 /* Value type. */ 455 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 456 457 union YYSTYPE 458 { 459 #line 70 "MachineIndependent/glslang.y" /* yacc.c:1909 */ 460 461 struct { 462 glslang::TSourceLoc loc; 463 union { 464 glslang::TString *string; 465 int i; 466 unsigned int u; 467 long long i64; 468 unsigned long long u64; 469 bool b; 470 double d; 471 }; 472 glslang::TSymbol* symbol; 473 } lex; 474 struct { 475 glslang::TSourceLoc loc; 476 glslang::TOperator op; 477 union { 478 TIntermNode* intermNode; 479 glslang::TIntermNodePair nodePair; 480 glslang::TIntermTyped* intermTypedNode; 481 glslang::TAttributes* attributes; 482 }; 483 union { 484 glslang::TPublicType type; 485 glslang::TFunction* function; 486 glslang::TParameter param; 487 glslang::TTypeLoc typeLine; 488 glslang::TTypeList* typeList; 489 glslang::TArraySizes* arraySizes; 490 glslang::TIdentifierList* identifierList; 491 }; 492 } interm; 493 494 #line 495 "MachineIndependent/glslang_tab.cpp.h" /* yacc.c:1909 */ 495 }; 496 497 typedef union YYSTYPE YYSTYPE; 498 # define YYSTYPE_IS_TRIVIAL 1 499 # define YYSTYPE_IS_DECLARED 1 500 #endif 501 502 503 504 int yyparse (glslang::TParseContext* pParseContext); 505 506 #endif /* !YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED */ 507