GLSL: Fix #822: Improve information given for syntax errors.

Also, fixed one test file that didn't have its syntax error as the last line.
This commit is contained in:
John Kessenich 2017-04-20 12:21:53 -06:00
parent 0c6f9360f5
commit ba5cc2fafa
15 changed files with 2788 additions and 3072 deletions

View File

@ -184,10 +184,8 @@ void qlod()
lod = textureQueryLod(sampRect, pf2); // ERROR lod = textureQueryLod(sampRect, pf2); // ERROR
} }
struct SKeyMem { int precise; } KeyMem; // ERROR, keyword can't be a member
uniform uint uu; uniform uint uu;
out int iout; out uint iout;
void bitwiseConv() void bitwiseConv()
{ {
@ -195,3 +193,5 @@ void bitwiseConv()
iout += uu ^ i; iout += uu ^ i;
iout += i | uu; iout += i | uu;
} }
struct SKeyMem { int precise; } KeyMem; // ERROR, keyword can't be a member

View File

@ -84,7 +84,7 @@ ERROR: 0:194: '.' : cannot apply to an array: method
ERROR: 0:194: 'a' : can't use function syntax on variable ERROR: 0:194: 'a' : can't use function syntax on variable
ERROR: 0:214: 'non-constant global initializer (needs GL_EXT_shader_non_constant_global_initializers)' : not supported for this version or the enabled extensions ERROR: 0:214: 'non-constant global initializer (needs GL_EXT_shader_non_constant_global_initializers)' : not supported for this version or the enabled extensions
ERROR: 0:3000: '#error' : line of this error should be 3000 ERROR: 0:3000: '#error' : line of this error should be 3000
ERROR: 0:3002: '' : syntax error ERROR: 0:3002: '' : syntax error, unexpected IDENTIFIER, expecting LEFT_BRACE or COMMA or SEMICOLON
ERROR: 77 compilation errors. No code generated. ERROR: 77 compilation errors. No code generated.

View File

@ -52,7 +52,7 @@ ERROR: 0:209: 'assign' : cannot convert from ' const float' to ' temp 4-compone
ERROR: 0:212: 'sampler2DRect' : Reserved word. ERROR: 0:212: 'sampler2DRect' : Reserved word.
ERROR: 0:244: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' global void' and a right operand of type ' const int' (or there is no acceptable conversion) ERROR: 0:244: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' global void' and a right operand of type ' const int' (or there is no acceptable conversion)
ERROR: 0:245: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' const int' and a right operand of type ' global void' (or there is no acceptable conversion) ERROR: 0:245: ':' : wrong operand types: no operation ':' exists that takes a left-hand operand of type ' const int' and a right operand of type ' global void' (or there is no acceptable conversion)
ERROR: 0:248: '' : syntax error ERROR: 0:248: '' : syntax error, unexpected IDENTIFIER, expecting COMMA or SEMICOLON
ERROR: 54 compilation errors. No code generated. ERROR: 54 compilation errors. No code generated.

View File

@ -43,7 +43,7 @@ ERROR: 0:156: 'invariant' : can only apply to an output
ERROR: 0:157: 'invariant' : can only apply to an output ERROR: 0:157: 'invariant' : can only apply to an output
ERROR: 0:158: 'invariant' : can only apply to an output ERROR: 0:158: 'invariant' : can only apply to an output
ERROR: 0:160: 'imageBuffer' : Reserved word. ERROR: 0:160: 'imageBuffer' : Reserved word.
ERROR: 0:160: '' : syntax error ERROR: 0:160: '' : syntax error, unexpected IMAGEBUFFER, expecting COMMA or SEMICOLON
ERROR: 45 compilation errors. No code generated. ERROR: 45 compilation errors. No code generated.

View File

@ -34,7 +34,7 @@ ERROR: 0:183: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:183: 'assign' : cannot convert from ' const float' to ' temp 2-component vector of float' ERROR: 0:183: 'assign' : cannot convert from ' const float' to ' temp 2-component vector of float'
ERROR: 0:184: 'textureQueryLod' : no matching overloaded function found ERROR: 0:184: 'textureQueryLod' : no matching overloaded function found
ERROR: 0:184: 'assign' : cannot convert from ' const float' to ' temp 2-component vector of float' ERROR: 0:184: 'assign' : cannot convert from ' const float' to ' temp 2-component vector of float'
ERROR: 0:187: '' : syntax error ERROR: 0:197: '' : syntax error, unexpected PRECISE, expecting IDENTIFIER
ERROR: 35 compilation errors. No code generated. ERROR: 35 compilation errors. No code generated.
@ -469,6 +469,27 @@ ERROR: node is still EOpNull!
0:181 'pf3' ( temp 3-component vector of float) 0:181 'pf3' ( temp 3-component vector of float)
0:183 'lod' ( temp 2-component vector of float) 0:183 'lod' ( temp 2-component vector of float)
0:184 'lod' ( temp 2-component vector of float) 0:184 'lod' ( temp 2-component vector of float)
0:190 Function Definition: bitwiseConv( ( global void)
0:190 Function Parameters:
0:192 Sequence
0:192 move second child to first child ( temp uint)
0:192 'iout' ( out uint)
0:192 bitwise and ( temp uint)
0:192 'uu' ( uniform uint)
0:192 Convert int to uint ( temp uint)
0:192 'i' ( flat in int)
0:193 add second child into first child ( temp uint)
0:193 'iout' ( out uint)
0:193 exclusive-or ( temp uint)
0:193 'uu' ( uniform uint)
0:193 Convert int to uint ( temp uint)
0:193 'i' ( flat in int)
0:194 add second child into first child ( temp uint)
0:194 'iout' ( out uint)
0:194 inclusive-or ( temp uint)
0:194 Convert int to uint ( temp uint)
0:194 'i' ( flat in int)
0:194 'uu' ( uniform uint)
0:? Linker Objects 0:? Linker Objects
0:? 'c2D' ( smooth in 2-component vector of float) 0:? 'c2D' ( smooth in 2-component vector of float)
0:? 'i' ( flat in int) 0:? 'i' ( flat in int)
@ -512,6 +533,8 @@ ERROR: node is still EOpNull!
0:? 'sampCubeAs' ( uniform samplerCubeArrayShadow) 0:? 'sampCubeAs' ( uniform samplerCubeArrayShadow)
0:? 'sampBuf' ( uniform samplerBuffer) 0:? 'sampBuf' ( uniform samplerBuffer)
0:? 'sampRect' ( uniform sampler2DRect) 0:? 'sampRect' ( uniform sampler2DRect)
0:? 'uu' ( uniform uint)
0:? 'iout' ( out uint)
Linked fragment stage: Linked fragment stage:
@ -685,4 +708,6 @@ ERROR: node is still EOpNull!
0:? 'sampCubeAs' ( uniform samplerCubeArrayShadow) 0:? 'sampCubeAs' ( uniform samplerCubeArrayShadow)
0:? 'sampBuf' ( uniform samplerBuffer) 0:? 'sampBuf' ( uniform samplerBuffer)
0:? 'sampRect' ( uniform sampler2DRect) 0:? 'sampRect' ( uniform sampler2DRect)
0:? 'uu' ( uniform uint)
0:? 'iout' ( out uint)

View File

@ -6,7 +6,7 @@ ERROR: 0:4: 'preprocessor evaluation' : bad expression
ERROR: 0:4: '#if' : unexpected tokens following directive ERROR: 0:4: '#if' : unexpected tokens following directive
ERROR: 0:6: '€' : unexpected token ERROR: 0:6: '€' : unexpected token
ERROR: 0:7: 'string' : End of line in string ERROR: 0:7: 'string' : End of line in string
ERROR: 0:7: '' : syntax error ERROR: 0:7: '' : syntax error, unexpected INT, expecting COMMA or SEMICOLON
ERROR: 8 compilation errors. No code generated. ERROR: 8 compilation errors. No code generated.

View File

@ -4,7 +4,7 @@ ERROR: 0:2: '#if' : unexpected tokens following directive
ERROR: 0:5: 'string' : End of line in string ERROR: 0:5: 'string' : End of line in string
ERROR: 0:5: 'macro expansion' : expected '(' following n ERROR: 0:5: 'macro expansion' : expected '(' following n
ERROR: 0:5: '""' : string literals not supported ERROR: 0:5: '""' : string literals not supported
ERROR: 0:5: '' : syntax error ERROR: 0:5: '' : syntax error, unexpected INT, expecting COMMA or SEMICOLON
ERROR: 6 compilation errors. No code generated. ERROR: 6 compilation errors. No code generated.

View File

@ -1,6 +1,6 @@
cppIndent.vert cppIndent.vert
ERROR: 0:61: 'macro expansion' : Too few args in Macro FUNC ERROR: 0:61: 'macro expansion' : Too few args in Macro FUNC
ERROR: 0:61: '' : syntax error ERROR: 0:61: '' : syntax error, unexpected COMMA
ERROR: 2 compilation errors. No code generated. ERROR: 2 compilation errors. No code generated.

View File

@ -2,7 +2,7 @@ glspv.frag
ERROR: 0:4: '#error' : GL_SPIRV is set ( correct , not an error ) ERROR: 0:4: '#error' : GL_SPIRV is set ( correct , not an error )
ERROR: 0:6: '#error' : GL_SPIR is 100 ERROR: 0:6: '#error' : GL_SPIR is 100
ERROR: 0:14: 'input_attachment_index' : only allowed when using GLSL for Vulkan ERROR: 0:14: 'input_attachment_index' : only allowed when using GLSL for Vulkan
ERROR: 0:14: '' : syntax error ERROR: 0:14: '' : syntax error, unexpected IDENTIFIER, expecting LEFT_BRACE or COMMA or SEMICOLON
ERROR: 4 compilation errors. No code generated. ERROR: 4 compilation errors. No code generated.

View File

@ -7,7 +7,7 @@ ERROR: 0:9: 'packed' : not allowed when generating SPIR-V
ERROR: 0:13: 'gl_VertexIndex' : undeclared identifier ERROR: 0:13: 'gl_VertexIndex' : undeclared identifier
ERROR: 0:14: 'gl_InstanceIndex' : undeclared identifier ERROR: 0:14: 'gl_InstanceIndex' : undeclared identifier
ERROR: 0:17: 'gl_DepthRangeParameters' : undeclared identifier ERROR: 0:17: 'gl_DepthRangeParameters' : undeclared identifier
ERROR: 0:20: '' : syntax error ERROR: 0:20: '' : syntax error, unexpected IDENTIFIER, expecting LEFT_BRACE or COMMA or SEMICOLON
ERROR: 8 compilation errors. No code generated. ERROR: 8 compilation errors. No code generated.

View File

@ -19,7 +19,7 @@ ERROR: 0:112: '#if' : unexpected tokens following directive
ERROR: 0:117: 'macro expansion' : End of line in macro substitution: FOOM ERROR: 0:117: 'macro expansion' : End of line in macro substitution: FOOM
ERROR: 0:118: 'preprocessor evaluation' : can't evaluate expression ERROR: 0:118: 'preprocessor evaluation' : can't evaluate expression
ERROR: 0:118: '#if' : unexpected tokens following directive ERROR: 0:118: '#if' : unexpected tokens following directive
ERROR: 0:150: '' : syntax error ERROR: 0:150: '' : syntax error, unexpected EQUAL
ERROR: 19 compilation errors. No code generated. ERROR: 19 compilation errors. No code generated.

View File

@ -1,6 +1,6 @@
syntaxError.frag syntaxError.frag
ERROR: 0:9: 'vec5' : undeclared identifier ERROR: 0:9: 'vec5' : undeclared identifier
ERROR: 0:9: '' : syntax error ERROR: 0:9: '' : syntax error, unexpected IDENTIFIER, expecting COMMA or SEMICOLON
ERROR: 2 compilation errors. No code generated. ERROR: 2 compilation errors. No code generated.

View File

@ -63,6 +63,8 @@ using namespace glslang;
%} %}
%define parse.error verbose
%union { %union {
struct { struct {
glslang::TSourceLoc loc; glslang::TSourceLoc loc;

File diff suppressed because it is too large Load Diff

View File

@ -1,19 +1,19 @@
/* A Bison parser, made by GNU Bison 2.7. */ /* A Bison parser, made by GNU Bison 3.0.4. */
/* Bison interface for Yacc-like parsers in C /* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc. Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or the Free Software Foundation, either version 3 of the License, or
(at your option) any later version. (at your option) any later version.
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details. GNU General Public License for more details.
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
@ -26,13 +26,13 @@
special exception, which will cause the skeleton and the resulting special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public Bison output files to be licensed under the GNU General Public
License without this special exception. License without this special exception.
This special exception was added by the Free Software Foundation in This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */ version 2.2 of Bison. */
#ifndef YY_YY_GLSLANG_TAB_CPP_H_INCLUDED #ifndef YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED
# define YY_YY_GLSLANG_TAB_CPP_H_INCLUDED # define YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED
/* Enabling traces. */ /* Debug traces. */
#ifndef YYDEBUG #ifndef YYDEBUG
# define YYDEBUG 1 # define YYDEBUG 1
#endif #endif
@ -40,306 +40,305 @@
extern int yydebug; extern int yydebug;
#endif #endif
/* Tokens. */ /* Token type. */
#ifndef YYTOKENTYPE #ifndef YYTOKENTYPE
# define YYTOKENTYPE # define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers enum yytokentype
know about them. */ {
enum yytokentype { ATTRIBUTE = 258,
ATTRIBUTE = 258, VARYING = 259,
VARYING = 259, CONST = 260,
CONST = 260, BOOL = 261,
BOOL = 261, FLOAT = 262,
FLOAT = 262, DOUBLE = 263,
DOUBLE = 263, INT = 264,
INT = 264, UINT = 265,
UINT = 265, INT64_T = 266,
INT64_T = 266, UINT64_T = 267,
UINT64_T = 267, FLOAT16_T = 268,
FLOAT16_T = 268, BREAK = 269,
BREAK = 269, CONTINUE = 270,
CONTINUE = 270, DO = 271,
DO = 271, ELSE = 272,
ELSE = 272, FOR = 273,
FOR = 273, IF = 274,
IF = 274, DISCARD = 275,
DISCARD = 275, RETURN = 276,
RETURN = 276, SWITCH = 277,
SWITCH = 277, CASE = 278,
CASE = 278, DEFAULT = 279,
DEFAULT = 279, SUBROUTINE = 280,
SUBROUTINE = 280, BVEC2 = 281,
BVEC2 = 281, BVEC3 = 282,
BVEC3 = 282, BVEC4 = 283,
BVEC4 = 283, IVEC2 = 284,
IVEC2 = 284, IVEC3 = 285,
IVEC3 = 285, IVEC4 = 286,
IVEC4 = 286, I64VEC2 = 287,
I64VEC2 = 287, I64VEC3 = 288,
I64VEC3 = 288, I64VEC4 = 289,
I64VEC4 = 289, UVEC2 = 290,
UVEC2 = 290, UVEC3 = 291,
UVEC3 = 291, UVEC4 = 292,
UVEC4 = 292, U64VEC2 = 293,
U64VEC2 = 293, U64VEC3 = 294,
U64VEC3 = 294, U64VEC4 = 295,
U64VEC4 = 295, VEC2 = 296,
VEC2 = 296, VEC3 = 297,
VEC3 = 297, VEC4 = 298,
VEC4 = 298, MAT2 = 299,
MAT2 = 299, MAT3 = 300,
MAT3 = 300, MAT4 = 301,
MAT4 = 301, CENTROID = 302,
CENTROID = 302, IN = 303,
IN = 303, OUT = 304,
OUT = 304, INOUT = 305,
INOUT = 305, UNIFORM = 306,
UNIFORM = 306, PATCH = 307,
PATCH = 307, SAMPLE = 308,
SAMPLE = 308, BUFFER = 309,
BUFFER = 309, SHARED = 310,
SHARED = 310, COHERENT = 311,
COHERENT = 311, VOLATILE = 312,
VOLATILE = 312, RESTRICT = 313,
RESTRICT = 313, READONLY = 314,
READONLY = 314, WRITEONLY = 315,
WRITEONLY = 315, DVEC2 = 316,
DVEC2 = 316, DVEC3 = 317,
DVEC3 = 317, DVEC4 = 318,
DVEC4 = 318, DMAT2 = 319,
DMAT2 = 319, DMAT3 = 320,
DMAT3 = 320, DMAT4 = 321,
DMAT4 = 321, F16VEC2 = 322,
F16VEC2 = 322, F16VEC3 = 323,
F16VEC3 = 323, F16VEC4 = 324,
F16VEC4 = 324, F16MAT2 = 325,
F16MAT2 = 325, F16MAT3 = 326,
F16MAT3 = 326, F16MAT4 = 327,
F16MAT4 = 327, NOPERSPECTIVE = 328,
NOPERSPECTIVE = 328, FLAT = 329,
FLAT = 329, SMOOTH = 330,
SMOOTH = 330, LAYOUT = 331,
LAYOUT = 331, __EXPLICITINTERPAMD = 332,
__EXPLICITINTERPAMD = 332, MAT2X2 = 333,
MAT2X2 = 333, MAT2X3 = 334,
MAT2X3 = 334, MAT2X4 = 335,
MAT2X4 = 335, MAT3X2 = 336,
MAT3X2 = 336, MAT3X3 = 337,
MAT3X3 = 337, MAT3X4 = 338,
MAT3X4 = 338, MAT4X2 = 339,
MAT4X2 = 339, MAT4X3 = 340,
MAT4X3 = 340, MAT4X4 = 341,
MAT4X4 = 341, DMAT2X2 = 342,
DMAT2X2 = 342, DMAT2X3 = 343,
DMAT2X3 = 343, DMAT2X4 = 344,
DMAT2X4 = 344, DMAT3X2 = 345,
DMAT3X2 = 345, DMAT3X3 = 346,
DMAT3X3 = 346, DMAT3X4 = 347,
DMAT3X4 = 347, DMAT4X2 = 348,
DMAT4X2 = 348, DMAT4X3 = 349,
DMAT4X3 = 349, DMAT4X4 = 350,
DMAT4X4 = 350, F16MAT2X2 = 351,
F16MAT2X2 = 351, F16MAT2X3 = 352,
F16MAT2X3 = 352, F16MAT2X4 = 353,
F16MAT2X4 = 353, F16MAT3X2 = 354,
F16MAT3X2 = 354, F16MAT3X3 = 355,
F16MAT3X3 = 355, F16MAT3X4 = 356,
F16MAT3X4 = 356, F16MAT4X2 = 357,
F16MAT4X2 = 357, F16MAT4X3 = 358,
F16MAT4X3 = 358, F16MAT4X4 = 359,
F16MAT4X4 = 359, ATOMIC_UINT = 360,
ATOMIC_UINT = 360, SAMPLER1D = 361,
SAMPLER1D = 361, SAMPLER2D = 362,
SAMPLER2D = 362, SAMPLER3D = 363,
SAMPLER3D = 363, SAMPLERCUBE = 364,
SAMPLERCUBE = 364, SAMPLER1DSHADOW = 365,
SAMPLER1DSHADOW = 365, SAMPLER2DSHADOW = 366,
SAMPLER2DSHADOW = 366, SAMPLERCUBESHADOW = 367,
SAMPLERCUBESHADOW = 367, SAMPLER1DARRAY = 368,
SAMPLER1DARRAY = 368, SAMPLER2DARRAY = 369,
SAMPLER2DARRAY = 369, SAMPLER1DARRAYSHADOW = 370,
SAMPLER1DARRAYSHADOW = 370, SAMPLER2DARRAYSHADOW = 371,
SAMPLER2DARRAYSHADOW = 371, ISAMPLER1D = 372,
ISAMPLER1D = 372, ISAMPLER2D = 373,
ISAMPLER2D = 373, ISAMPLER3D = 374,
ISAMPLER3D = 374, ISAMPLERCUBE = 375,
ISAMPLERCUBE = 375, ISAMPLER1DARRAY = 376,
ISAMPLER1DARRAY = 376, ISAMPLER2DARRAY = 377,
ISAMPLER2DARRAY = 377, USAMPLER1D = 378,
USAMPLER1D = 378, USAMPLER2D = 379,
USAMPLER2D = 379, USAMPLER3D = 380,
USAMPLER3D = 380, USAMPLERCUBE = 381,
USAMPLERCUBE = 381, USAMPLER1DARRAY = 382,
USAMPLER1DARRAY = 382, USAMPLER2DARRAY = 383,
USAMPLER2DARRAY = 383, SAMPLER2DRECT = 384,
SAMPLER2DRECT = 384, SAMPLER2DRECTSHADOW = 385,
SAMPLER2DRECTSHADOW = 385, ISAMPLER2DRECT = 386,
ISAMPLER2DRECT = 386, USAMPLER2DRECT = 387,
USAMPLER2DRECT = 387, SAMPLERBUFFER = 388,
SAMPLERBUFFER = 388, ISAMPLERBUFFER = 389,
ISAMPLERBUFFER = 389, USAMPLERBUFFER = 390,
USAMPLERBUFFER = 390, SAMPLERCUBEARRAY = 391,
SAMPLERCUBEARRAY = 391, SAMPLERCUBEARRAYSHADOW = 392,
SAMPLERCUBEARRAYSHADOW = 392, ISAMPLERCUBEARRAY = 393,
ISAMPLERCUBEARRAY = 393, USAMPLERCUBEARRAY = 394,
USAMPLERCUBEARRAY = 394, SAMPLER2DMS = 395,
SAMPLER2DMS = 395, ISAMPLER2DMS = 396,
ISAMPLER2DMS = 396, USAMPLER2DMS = 397,
USAMPLER2DMS = 397, SAMPLER2DMSARRAY = 398,
SAMPLER2DMSARRAY = 398, ISAMPLER2DMSARRAY = 399,
ISAMPLER2DMSARRAY = 399, USAMPLER2DMSARRAY = 400,
USAMPLER2DMSARRAY = 400, SAMPLEREXTERNALOES = 401,
SAMPLEREXTERNALOES = 401, SAMPLER = 402,
SAMPLER = 402, SAMPLERSHADOW = 403,
SAMPLERSHADOW = 403, TEXTURE1D = 404,
TEXTURE1D = 404, TEXTURE2D = 405,
TEXTURE2D = 405, TEXTURE3D = 406,
TEXTURE3D = 406, TEXTURECUBE = 407,
TEXTURECUBE = 407, TEXTURE1DARRAY = 408,
TEXTURE1DARRAY = 408, TEXTURE2DARRAY = 409,
TEXTURE2DARRAY = 409, ITEXTURE1D = 410,
ITEXTURE1D = 410, ITEXTURE2D = 411,
ITEXTURE2D = 411, ITEXTURE3D = 412,
ITEXTURE3D = 412, ITEXTURECUBE = 413,
ITEXTURECUBE = 413, ITEXTURE1DARRAY = 414,
ITEXTURE1DARRAY = 414, ITEXTURE2DARRAY = 415,
ITEXTURE2DARRAY = 415, UTEXTURE1D = 416,
UTEXTURE1D = 416, UTEXTURE2D = 417,
UTEXTURE2D = 417, UTEXTURE3D = 418,
UTEXTURE3D = 418, UTEXTURECUBE = 419,
UTEXTURECUBE = 419, UTEXTURE1DARRAY = 420,
UTEXTURE1DARRAY = 420, UTEXTURE2DARRAY = 421,
UTEXTURE2DARRAY = 421, TEXTURE2DRECT = 422,
TEXTURE2DRECT = 422, ITEXTURE2DRECT = 423,
ITEXTURE2DRECT = 423, UTEXTURE2DRECT = 424,
UTEXTURE2DRECT = 424, TEXTUREBUFFER = 425,
TEXTUREBUFFER = 425, ITEXTUREBUFFER = 426,
ITEXTUREBUFFER = 426, UTEXTUREBUFFER = 427,
UTEXTUREBUFFER = 427, TEXTURECUBEARRAY = 428,
TEXTURECUBEARRAY = 428, ITEXTURECUBEARRAY = 429,
ITEXTURECUBEARRAY = 429, UTEXTURECUBEARRAY = 430,
UTEXTURECUBEARRAY = 430, TEXTURE2DMS = 431,
TEXTURE2DMS = 431, ITEXTURE2DMS = 432,
ITEXTURE2DMS = 432, UTEXTURE2DMS = 433,
UTEXTURE2DMS = 433, TEXTURE2DMSARRAY = 434,
TEXTURE2DMSARRAY = 434, ITEXTURE2DMSARRAY = 435,
ITEXTURE2DMSARRAY = 435, UTEXTURE2DMSARRAY = 436,
UTEXTURE2DMSARRAY = 436, SUBPASSINPUT = 437,
SUBPASSINPUT = 437, SUBPASSINPUTMS = 438,
SUBPASSINPUTMS = 438, ISUBPASSINPUT = 439,
ISUBPASSINPUT = 439, ISUBPASSINPUTMS = 440,
ISUBPASSINPUTMS = 440, USUBPASSINPUT = 441,
USUBPASSINPUT = 441, USUBPASSINPUTMS = 442,
USUBPASSINPUTMS = 442, IMAGE1D = 443,
IMAGE1D = 443, IIMAGE1D = 444,
IIMAGE1D = 444, UIMAGE1D = 445,
UIMAGE1D = 445, IMAGE2D = 446,
IMAGE2D = 446, IIMAGE2D = 447,
IIMAGE2D = 447, UIMAGE2D = 448,
UIMAGE2D = 448, IMAGE3D = 449,
IMAGE3D = 449, IIMAGE3D = 450,
IIMAGE3D = 450, UIMAGE3D = 451,
UIMAGE3D = 451, IMAGE2DRECT = 452,
IMAGE2DRECT = 452, IIMAGE2DRECT = 453,
IIMAGE2DRECT = 453, UIMAGE2DRECT = 454,
UIMAGE2DRECT = 454, IMAGECUBE = 455,
IMAGECUBE = 455, IIMAGECUBE = 456,
IIMAGECUBE = 456, UIMAGECUBE = 457,
UIMAGECUBE = 457, IMAGEBUFFER = 458,
IMAGEBUFFER = 458, IIMAGEBUFFER = 459,
IIMAGEBUFFER = 459, UIMAGEBUFFER = 460,
UIMAGEBUFFER = 460, IMAGE1DARRAY = 461,
IMAGE1DARRAY = 461, IIMAGE1DARRAY = 462,
IIMAGE1DARRAY = 462, UIMAGE1DARRAY = 463,
UIMAGE1DARRAY = 463, IMAGE2DARRAY = 464,
IMAGE2DARRAY = 464, IIMAGE2DARRAY = 465,
IIMAGE2DARRAY = 465, UIMAGE2DARRAY = 466,
UIMAGE2DARRAY = 466, IMAGECUBEARRAY = 467,
IMAGECUBEARRAY = 467, IIMAGECUBEARRAY = 468,
IIMAGECUBEARRAY = 468, UIMAGECUBEARRAY = 469,
UIMAGECUBEARRAY = 469, IMAGE2DMS = 470,
IMAGE2DMS = 470, IIMAGE2DMS = 471,
IIMAGE2DMS = 471, UIMAGE2DMS = 472,
UIMAGE2DMS = 472, IMAGE2DMSARRAY = 473,
IMAGE2DMSARRAY = 473, IIMAGE2DMSARRAY = 474,
IIMAGE2DMSARRAY = 474, UIMAGE2DMSARRAY = 475,
UIMAGE2DMSARRAY = 475, STRUCT = 476,
STRUCT = 476, VOID = 477,
VOID = 477, WHILE = 478,
WHILE = 478, IDENTIFIER = 479,
IDENTIFIER = 479, TYPE_NAME = 480,
TYPE_NAME = 480, FLOATCONSTANT = 481,
FLOATCONSTANT = 481, DOUBLECONSTANT = 482,
DOUBLECONSTANT = 482, INTCONSTANT = 483,
INTCONSTANT = 483, UINTCONSTANT = 484,
UINTCONSTANT = 484, INT64CONSTANT = 485,
INT64CONSTANT = 485, UINT64CONSTANT = 486,
UINT64CONSTANT = 486, BOOLCONSTANT = 487,
BOOLCONSTANT = 487, FLOAT16CONSTANT = 488,
FLOAT16CONSTANT = 488, LEFT_OP = 489,
LEFT_OP = 489, RIGHT_OP = 490,
RIGHT_OP = 490, INC_OP = 491,
INC_OP = 491, DEC_OP = 492,
DEC_OP = 492, LE_OP = 493,
LE_OP = 493, GE_OP = 494,
GE_OP = 494, EQ_OP = 495,
EQ_OP = 495, NE_OP = 496,
NE_OP = 496, AND_OP = 497,
AND_OP = 497, OR_OP = 498,
OR_OP = 498, XOR_OP = 499,
XOR_OP = 499, MUL_ASSIGN = 500,
MUL_ASSIGN = 500, DIV_ASSIGN = 501,
DIV_ASSIGN = 501, ADD_ASSIGN = 502,
ADD_ASSIGN = 502, MOD_ASSIGN = 503,
MOD_ASSIGN = 503, LEFT_ASSIGN = 504,
LEFT_ASSIGN = 504, RIGHT_ASSIGN = 505,
RIGHT_ASSIGN = 505, AND_ASSIGN = 506,
AND_ASSIGN = 506, XOR_ASSIGN = 507,
XOR_ASSIGN = 507, OR_ASSIGN = 508,
OR_ASSIGN = 508, SUB_ASSIGN = 509,
SUB_ASSIGN = 509, LEFT_PAREN = 510,
LEFT_PAREN = 510, RIGHT_PAREN = 511,
RIGHT_PAREN = 511, LEFT_BRACKET = 512,
LEFT_BRACKET = 512, RIGHT_BRACKET = 513,
RIGHT_BRACKET = 513, LEFT_BRACE = 514,
LEFT_BRACE = 514, RIGHT_BRACE = 515,
RIGHT_BRACE = 515, DOT = 516,
DOT = 516, COMMA = 517,
COMMA = 517, COLON = 518,
COLON = 518, EQUAL = 519,
EQUAL = 519, SEMICOLON = 520,
SEMICOLON = 520, BANG = 521,
BANG = 521, DASH = 522,
DASH = 522, TILDE = 523,
TILDE = 523, PLUS = 524,
PLUS = 524, STAR = 525,
STAR = 525, SLASH = 526,
SLASH = 526, PERCENT = 527,
PERCENT = 527, LEFT_ANGLE = 528,
LEFT_ANGLE = 528, RIGHT_ANGLE = 529,
RIGHT_ANGLE = 529, VERTICAL_BAR = 530,
VERTICAL_BAR = 530, CARET = 531,
CARET = 531, AMPERSAND = 532,
AMPERSAND = 532, QUESTION = 533,
QUESTION = 533, INVARIANT = 534,
INVARIANT = 534, PRECISE = 535,
PRECISE = 535, HIGH_PRECISION = 536,
HIGH_PRECISION = 536, MEDIUM_PRECISION = 537,
MEDIUM_PRECISION = 537, LOW_PRECISION = 538,
LOW_PRECISION = 538, PRECISION = 539,
PRECISION = 539, PACKED = 540,
PACKED = 540, RESOURCE = 541,
RESOURCE = 541, SUPERP = 542
SUPERP = 542 };
};
#endif #endif
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
union YYSTYPE
{ {
/* Line 2058 of yacc.c */ #line 68 "MachineIndependent/glslang.y" /* yacc.c:1909 */
#line 66 "glslang.y"
struct { struct {
glslang::TSourceLoc loc; glslang::TSourceLoc loc;
@ -373,28 +372,16 @@ typedef union YYSTYPE
}; };
} interm; } interm;
#line 376 "MachineIndependent/glslang_tab.cpp.h" /* yacc.c:1909 */
};
/* Line 2058 of yacc.c */ typedef union YYSTYPE YYSTYPE;
#line 379 "glslang_tab.cpp.h"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_DECLARED 1
#endif #endif
#ifdef YYPARSE_PARAM
#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
#else
int yyparse ();
#endif
#else /* ! YYPARSE_PARAM */
#if defined __STDC__ || defined __cplusplus
int yyparse (glslang::TParseContext* pParseContext);
#else
int yyparse ();
#endif
#endif /* ! YYPARSE_PARAM */
#endif /* !YY_YY_GLSLANG_TAB_CPP_H_INCLUDED */ int yyparse (glslang::TParseContext* pParseContext);
#endif /* !YY_YY_MACHINEINDEPENDENT_GLSLANG_TAB_CPP_H_INCLUDED */