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