-
-/* A Bison parser, made by GNU Bison 2.4.1. */
+/* A Bison parser, made by GNU Bison 2.4.3. */
/* Skeleton interface for Bison's Yacc-like parsers in C
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
- Free Software Foundation, Inc.
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
+ 2009, 2010 Free Software Foundation, Inc.
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
enum yytokentype {
ATTRIBUTE = 258,
CONST_TOK = 259,
- BOOL = 260,
- FLOAT = 261,
- INT = 262,
- UINT = 263,
+ BOOL_TOK = 260,
+ FLOAT_TOK = 261,
+ INT_TOK = 262,
+ UINT_TOK = 263,
BREAK = 264,
CONTINUE = 265,
DO = 266,
VEC2 = 284,
VEC3 = 285,
VEC4 = 286,
- MAT2 = 287,
- MAT3 = 288,
- MAT4 = 289,
- CENTROID = 290,
- IN = 291,
- OUT = 292,
- INOUT = 293,
- UNIFORM = 294,
- VARYING = 295,
- NOPERSPECTIVE = 296,
- FLAT = 297,
- SMOOTH = 298,
- MAT2X2 = 299,
- MAT2X3 = 300,
- MAT2X4 = 301,
- MAT3X2 = 302,
- MAT3X3 = 303,
- MAT3X4 = 304,
- MAT4X2 = 305,
- MAT4X3 = 306,
- MAT4X4 = 307,
- SAMPLER1D = 308,
- SAMPLER2D = 309,
- SAMPLER3D = 310,
- SAMPLERCUBE = 311,
- SAMPLER1DSHADOW = 312,
- SAMPLER2DSHADOW = 313,
- SAMPLERCUBESHADOW = 314,
- SAMPLER1DARRAY = 315,
- SAMPLER2DARRAY = 316,
- SAMPLER1DARRAYSHADOW = 317,
- SAMPLER2DARRAYSHADOW = 318,
- ISAMPLER1D = 319,
- ISAMPLER2D = 320,
- ISAMPLER3D = 321,
- ISAMPLERCUBE = 322,
- ISAMPLER1DARRAY = 323,
- ISAMPLER2DARRAY = 324,
- USAMPLER1D = 325,
- USAMPLER2D = 326,
- USAMPLER3D = 327,
- USAMPLERCUBE = 328,
- USAMPLER1DARRAY = 329,
- USAMPLER2DARRAY = 330,
- STRUCT = 331,
- VOID = 332,
- WHILE = 333,
- IDENTIFIER = 334,
- FLOATCONSTANT = 335,
- INTCONSTANT = 336,
- UINTCONSTANT = 337,
- BOOLCONSTANT = 338,
- FIELD_SELECTION = 339,
- LEFT_OP = 340,
- RIGHT_OP = 341,
- INC_OP = 342,
- DEC_OP = 343,
- LE_OP = 344,
- GE_OP = 345,
- EQ_OP = 346,
- NE_OP = 347,
- AND_OP = 348,
- OR_OP = 349,
- XOR_OP = 350,
- MUL_ASSIGN = 351,
- DIV_ASSIGN = 352,
- ADD_ASSIGN = 353,
- MOD_ASSIGN = 354,
- LEFT_ASSIGN = 355,
- RIGHT_ASSIGN = 356,
- AND_ASSIGN = 357,
- XOR_ASSIGN = 358,
- OR_ASSIGN = 359,
- SUB_ASSIGN = 360,
- INVARIANT = 361,
- LOWP = 362,
- MEDIUMP = 363,
- HIGHP = 364,
- SUPERP = 365,
- PRECISION = 366,
- VERSION = 367,
- EXTENSION = 368,
- LINE = 369,
- PRAGMA = 370,
- COLON = 371,
- EOL = 372,
- INTERFACE = 373,
- OUTPUT = 374,
- LAYOUT_TOK = 375,
- ASM = 376,
- CLASS = 377,
- UNION = 378,
- ENUM = 379,
- TYPEDEF = 380,
- TEMPLATE = 381,
- THIS = 382,
- PACKED = 383,
- GOTO = 384,
- INLINE_TOK = 385,
- NOINLINE = 386,
- VOLATILE = 387,
- PUBLIC_TOK = 388,
- STATIC = 389,
- EXTERN = 390,
- EXTERNAL = 391,
- LONG = 392,
- SHORT = 393,
- DOUBLE = 394,
- HALF = 395,
- FIXED = 396,
- UNSIGNED = 397,
- INPUT = 398,
- OUPTUT = 399,
- HVEC2 = 400,
- HVEC3 = 401,
- HVEC4 = 402,
- DVEC2 = 403,
- DVEC3 = 404,
- DVEC4 = 405,
- FVEC2 = 406,
- FVEC3 = 407,
- FVEC4 = 408,
- SAMPLER2DRECT = 409,
- SAMPLER3DRECT = 410,
- SAMPLER2DRECTSHADOW = 411,
- SIZEOF = 412,
- CAST = 413,
- NAMESPACE = 414,
- USING = 415,
- COMMON = 416,
- PARTITION = 417,
- ACTIVE = 418,
- SAMPLERBUFFER = 419,
- FILTER = 420,
- IMAGE1D = 421,
- IMAGE2D = 422,
- IMAGE3D = 423,
- IMAGECUBE = 424,
- IMAGE1DARRAY = 425,
- IMAGE2DARRAY = 426,
- IIMAGE1D = 427,
- IIMAGE2D = 428,
- IIMAGE3D = 429,
- IIMAGECUBE = 430,
- IIMAGE1DARRAY = 431,
- IIMAGE2DARRAY = 432,
- UIMAGE1D = 433,
- UIMAGE2D = 434,
- UIMAGE3D = 435,
- UIMAGECUBE = 436,
- UIMAGE1DARRAY = 437,
- UIMAGE2DARRAY = 438,
- IMAGE1DSHADOW = 439,
- IMAGE2DSHADOW = 440,
- IMAGEBUFFER = 441,
- IIMAGEBUFFER = 442,
- UIMAGEBUFFER = 443,
- ROW_MAJOR = 444
+ CENTROID = 287,
+ IN_TOK = 288,
+ OUT_TOK = 289,
+ INOUT_TOK = 290,
+ UNIFORM = 291,
+ VARYING = 292,
+ NOPERSPECTIVE = 293,
+ FLAT = 294,
+ SMOOTH = 295,
+ MAT2X2 = 296,
+ MAT2X3 = 297,
+ MAT2X4 = 298,
+ MAT3X2 = 299,
+ MAT3X3 = 300,
+ MAT3X4 = 301,
+ MAT4X2 = 302,
+ MAT4X3 = 303,
+ MAT4X4 = 304,
+ SAMPLER1D = 305,
+ SAMPLER2D = 306,
+ SAMPLER3D = 307,
+ SAMPLERCUBE = 308,
+ SAMPLER1DSHADOW = 309,
+ SAMPLER2DSHADOW = 310,
+ SAMPLERCUBESHADOW = 311,
+ SAMPLER1DARRAY = 312,
+ SAMPLER2DARRAY = 313,
+ SAMPLER1DARRAYSHADOW = 314,
+ SAMPLER2DARRAYSHADOW = 315,
+ ISAMPLER1D = 316,
+ ISAMPLER2D = 317,
+ ISAMPLER3D = 318,
+ ISAMPLERCUBE = 319,
+ ISAMPLER1DARRAY = 320,
+ ISAMPLER2DARRAY = 321,
+ USAMPLER1D = 322,
+ USAMPLER2D = 323,
+ USAMPLER3D = 324,
+ USAMPLERCUBE = 325,
+ USAMPLER1DARRAY = 326,
+ USAMPLER2DARRAY = 327,
+ STRUCT = 328,
+ VOID_TOK = 329,
+ WHILE = 330,
+ IDENTIFIER = 331,
+ FLOATCONSTANT = 332,
+ INTCONSTANT = 333,
+ UINTCONSTANT = 334,
+ BOOLCONSTANT = 335,
+ FIELD_SELECTION = 336,
+ LEFT_OP = 337,
+ RIGHT_OP = 338,
+ INC_OP = 339,
+ DEC_OP = 340,
+ LE_OP = 341,
+ GE_OP = 342,
+ EQ_OP = 343,
+ NE_OP = 344,
+ AND_OP = 345,
+ OR_OP = 346,
+ XOR_OP = 347,
+ MUL_ASSIGN = 348,
+ DIV_ASSIGN = 349,
+ ADD_ASSIGN = 350,
+ MOD_ASSIGN = 351,
+ LEFT_ASSIGN = 352,
+ RIGHT_ASSIGN = 353,
+ AND_ASSIGN = 354,
+ XOR_ASSIGN = 355,
+ OR_ASSIGN = 356,
+ SUB_ASSIGN = 357,
+ INVARIANT = 358,
+ LOWP = 359,
+ MEDIUMP = 360,
+ HIGHP = 361,
+ SUPERP = 362,
+ PRECISION = 363,
+ VERSION = 364,
+ EXTENSION = 365,
+ LINE = 366,
+ COLON = 367,
+ EOL = 368,
+ INTERFACE = 369,
+ OUTPUT = 370,
+ PRAGMA_DEBUG_ON = 371,
+ PRAGMA_DEBUG_OFF = 372,
+ PRAGMA_OPTIMIZE_ON = 373,
+ PRAGMA_OPTIMIZE_OFF = 374,
+ PRAGMA_INVARIANT_ALL = 375,
+ LAYOUT_TOK = 376,
+ ASM = 377,
+ CLASS = 378,
+ UNION = 379,
+ ENUM = 380,
+ TYPEDEF = 381,
+ TEMPLATE = 382,
+ THIS = 383,
+ PACKED_TOK = 384,
+ GOTO = 385,
+ INLINE_TOK = 386,
+ NOINLINE = 387,
+ VOLATILE = 388,
+ PUBLIC_TOK = 389,
+ STATIC = 390,
+ EXTERN = 391,
+ EXTERNAL = 392,
+ LONG_TOK = 393,
+ SHORT_TOK = 394,
+ DOUBLE_TOK = 395,
+ HALF = 396,
+ FIXED_TOK = 397,
+ UNSIGNED = 398,
+ INPUT_TOK = 399,
+ OUPTUT = 400,
+ HVEC2 = 401,
+ HVEC3 = 402,
+ HVEC4 = 403,
+ DVEC2 = 404,
+ DVEC3 = 405,
+ DVEC4 = 406,
+ FVEC2 = 407,
+ FVEC3 = 408,
+ FVEC4 = 409,
+ SAMPLER2DRECT = 410,
+ SAMPLER3DRECT = 411,
+ SAMPLER2DRECTSHADOW = 412,
+ SIZEOF = 413,
+ CAST = 414,
+ NAMESPACE = 415,
+ USING = 416,
+ ERROR_TOK = 417,
+ COMMON = 418,
+ PARTITION = 419,
+ ACTIVE = 420,
+ SAMPLERBUFFER = 421,
+ FILTER = 422,
+ IMAGE1D = 423,
+ IMAGE2D = 424,
+ IMAGE3D = 425,
+ IMAGECUBE = 426,
+ IMAGE1DARRAY = 427,
+ IMAGE2DARRAY = 428,
+ IIMAGE1D = 429,
+ IIMAGE2D = 430,
+ IIMAGE3D = 431,
+ IIMAGECUBE = 432,
+ IIMAGE1DARRAY = 433,
+ IIMAGE2DARRAY = 434,
+ UIMAGE1D = 435,
+ UIMAGE2D = 436,
+ UIMAGE3D = 437,
+ UIMAGECUBE = 438,
+ UIMAGE1DARRAY = 439,
+ UIMAGE2DARRAY = 440,
+ IMAGE1DSHADOW = 441,
+ IMAGE2DSHADOW = 442,
+ IMAGEBUFFER = 443,
+ IIMAGEBUFFER = 444,
+ UIMAGEBUFFER = 445,
+ IMAGE1DARRAYSHADOW = 446,
+ IMAGE2DARRAYSHADOW = 447,
+ ROW_MAJOR = 448
};
#endif
typedef union YYSTYPE
{
-/* Line 1676 of yacc.c */
-#line 53 "glsl_parser.ypp"
+/* Line 1685 of yacc.c */
+#line 52 "glsl_parser.ypp"
int n;
float real;
char *identifier;
- union {
- struct ast_type_qualifier q;
- unsigned i;
- } type_qualifier;
+ struct ast_type_qualifier type_qualifier;
- struct ast_node *node;
- struct ast_type_specifier *type_specifier;
- struct ast_fully_specified_type *fully_specified_type;
- struct ast_function *function;
- struct ast_parameter_declarator *parameter_declarator;
- struct ast_function_definition *function_definition;
- struct ast_compound_statement *compound_statement;
- struct ast_expression *expression;
- struct ast_declarator_list *declarator_list;
- struct ast_struct_specifier *struct_specifier;
- struct ast_declaration *declaration;
+ ast_node *node;
+ ast_type_specifier *type_specifier;
+ ast_fully_specified_type *fully_specified_type;
+ ast_function *function;
+ ast_parameter_declarator *parameter_declarator;
+ ast_function_definition *function_definition;
+ ast_compound_statement *compound_statement;
+ ast_expression *expression;
+ ast_declarator_list *declarator_list;
+ ast_struct_specifier *struct_specifier;
+ ast_declaration *declaration;
struct {
- struct ast_node *cond;
- struct ast_expression *rest;
+ ast_node *cond;
+ ast_expression *rest;
} for_rest_statement;
+ struct {
+ ast_node *then_statement;
+ ast_node *else_statement;
+ } selection_rest_statement;
+
-/* Line 1676 of yacc.c */
-#line 271 "glsl_parser.h"
+/* Line 1685 of yacc.c */
+#line 276 "glsl_parser.h"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */