ReactOS  0.4.14-dev-583-g2a1ba2c
hlsl.tab.c File Reference
#include "wine/debug.h"
#include <stdio.h>
#include "d3dcompiler_private.h"
#include <stddef.h>
Include dependency graph for hlsl.tab.c:

Go to the source code of this file.

Classes

union  YYSTYPE
 
struct  YYLTYPE
 
union  yyalloc
 

Macros

#define YYBISON   1
 
#define YYBISON_VERSION   "3.4.1"
 
#define YYSKELETON_NAME   "yacc.c"
 
#define YYPURE   0
 
#define YYPUSH   0
 
#define YYPULL   1
 
#define yyparse   hlsl_parse
 
#define yylex   hlsl_lex
 
#define yyerror   hlsl_error
 
#define yydebug   hlsl_debug
 
#define yynerrs   hlsl_nerrs
 
#define yylval   hlsl_lval
 
#define yychar   hlsl_char
 
#define yylloc   hlsl_lloc
 
#define YY_NULLPTR   ((void*)0)
 
#define YYERROR_VERBOSE   1
 
#define YY_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED
 
#define YYDEBUG   0
 
#define YYTOKENTYPE
 
#define YYSTYPE_IS_TRIVIAL   1
 
#define YYSTYPE_IS_DECLARED   1
 
#define YYLTYPE_IS_DECLARED   1
 
#define YYLTYPE_IS_TRIVIAL   1
 
#define YYSIZE_T   size_t
 
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
 
#define YY_(Msgid)   Msgid
 
#define YY_ATTRIBUTE(Spec)   /* empty */
 
#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
 
#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))
 
#define YYUSE(E)   ((void) (E))
 
#define YY_INITIAL_VALUE(Value)   Value
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
 
#define YY_IGNORE_MAYBE_UNINITIALIZED_END
 
#define YY_ASSERT(E)   ((void) (0 && (E)))
 
#define YYSTACK_ALLOC   YYMALLOC
 
#define YYSTACK_FREE   YYFREE
 
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
 
#define YYMALLOC   malloc
 
#define YYFREE   free
 
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
 
#define YYSTACK_BYTES(N)
 
#define YYCOPY_NEEDED   1
 
#define YYSTACK_RELOCATE(Stack_alloc, Stack)
 
#define YYCOPY(Dst, Src, Count)
 
#define YYFINAL   2
 
#define YYLAST   820
 
#define YYNTOKENS   129
 
#define YYNNTS   64
 
#define YYNRULES   174
 
#define YYNSTATES   320
 
#define YYUNDEFTOK   2
 
#define YYMAXUTOK   359
 
#define YYTRANSLATE(YYX)   ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
 
#define YYPACT_NINF   -228
 
#define yypact_value_is_default(Yystate)   (!!((Yystate) == (-228)))
 
#define YYTABLE_NINF   -35
 
#define yytable_value_is_error(Yytable_value)   0
 
#define yyerrok   (yyerrstatus = 0)
 
#define yyclearin   (yychar = YYEMPTY)
 
#define YYEMPTY   (-2)
 
#define YYEOF   0
 
#define YYACCEPT   goto yyacceptlab
 
#define YYABORT   goto yyabortlab
 
#define YYERROR   goto yyerrorlab
 
#define YYRECOVERING()   (!!yyerrstatus)
 
#define YYBACKUP(Token, Value)
 
#define YYTERROR   1
 
#define YYERRCODE   256
 
#define YYLLOC_DEFAULT(Current, Rhs, N)
 
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
 
#define YYDPRINTF(Args)
 
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 
#define YY_STACK_PRINT(Bottom, Top)
 
#define YY_REDUCE_PRINT(Rule)
 
#define YYINITDEPTH   200
 
#define YYMAXDEPTH   10000
 
#define YYCASE_(N, S)
 
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
 
#define YYSYNTAX_ERROR
 

Typedefs

typedef union YYSTYPE YYSTYPE
 
typedef struct YYLTYPE YYLTYPE
 
typedef unsigned char yytype_uint8
 
typedef signed char yytype_int8
 
typedef unsigned short yytype_uint16
 
typedef short yytype_int16
 

Enumerations

enum  loop_type { LOOP_FOR, LOOP_WHILE, LOOP_DO_WHILE }
 
enum  yytokentype {
  INSTR_ADD = 258, INSTR_NOP = 259, INSTR_MOV = 260, INSTR_SUB = 261,
  INSTR_MAD = 262, INSTR_MUL = 263, INSTR_RCP = 264, INSTR_RSQ = 265,
  INSTR_DP3 = 266, INSTR_DP4 = 267, INSTR_MIN = 268, INSTR_MAX = 269,
  INSTR_SLT = 270, INSTR_SGE = 271, INSTR_ABS = 272, INSTR_EXP = 273,
  INSTR_LOG = 274, INSTR_EXPP = 275, INSTR_LOGP = 276, INSTR_DST = 277,
  INSTR_LRP = 278, INSTR_FRC = 279, INSTR_POW = 280, INSTR_CRS = 281,
  INSTR_SGN = 282, INSTR_NRM = 283, INSTR_SINCOS = 284, INSTR_M4x4 = 285,
  INSTR_M4x3 = 286, INSTR_M3x4 = 287, INSTR_M3x3 = 288, INSTR_M3x2 = 289,
  INSTR_DCL = 290, INSTR_DEF = 291, INSTR_DEFB = 292, INSTR_DEFI = 293,
  INSTR_REP = 294, INSTR_ENDREP = 295, INSTR_IF = 296, INSTR_ELSE = 297,
  INSTR_ENDIF = 298, INSTR_BREAK = 299, INSTR_BREAKP = 300, INSTR_CALL = 301,
  INSTR_CALLNZ = 302, INSTR_LOOP = 303, INSTR_RET = 304, INSTR_ENDLOOP = 305,
  INSTR_LABEL = 306, INSTR_SETP = 307, INSTR_TEXLDL = 308, INSTR_LIT = 309,
  INSTR_MOVA = 310, INSTR_CND = 311, INSTR_CMP = 312, INSTR_DP2ADD = 313,
  INSTR_TEXCOORD = 314, INSTR_TEXCRD = 315, INSTR_TEXKILL = 316, INSTR_TEX = 317,
  INSTR_TEXLD = 318, INSTR_TEXBEM = 319, INSTR_TEXBEML = 320, INSTR_TEXREG2AR = 321,
  INSTR_TEXREG2GB = 322, INSTR_TEXREG2RGB = 323, INSTR_TEXM3x2PAD = 324, INSTR_TEXM3x2TEX = 325,
  INSTR_TEXM3x3PAD = 326, INSTR_TEXM3x3SPEC = 327, INSTR_TEXM3x3VSPEC = 328, INSTR_TEXM3x3TEX = 329,
  INSTR_TEXDP3TEX = 330, INSTR_TEXM3x2DEPTH = 331, INSTR_TEXDP3 = 332, INSTR_TEXM3x3 = 333,
  INSTR_TEXDEPTH = 334, INSTR_BEM = 335, INSTR_DSX = 336, INSTR_DSY = 337,
  INSTR_TEXLDP = 338, INSTR_TEXLDB = 339, INSTR_TEXLDD = 340, INSTR_PHASE = 341,
  REG_TEMP = 342, REG_OUTPUT = 343, REG_INPUT = 344, REG_CONSTFLOAT = 345,
  REG_CONSTINT = 346, REG_CONSTBOOL = 347, REG_TEXTURE = 348, REG_SAMPLER = 349,
  REG_TEXCRDOUT = 350, REG_OPOS = 351, REG_OFOG = 352, REG_OPTS = 353,
  REG_VERTEXCOLOR = 354, REG_FRAGCOLOR = 355, REG_FRAGDEPTH = 356, REG_VPOS = 357,
  REG_VFACE = 358, REG_ADDRESS = 359, REG_LOOP = 360, REG_PREDICATE = 361,
  REG_LABEL = 362, VER_VS10 = 363, VER_VS11 = 364, VER_VS20 = 365,
  VER_VS2X = 366, VER_VS30 = 367, VER_PS10 = 368, VER_PS11 = 369,
  VER_PS12 = 370, VER_PS13 = 371, VER_PS14 = 372, VER_PS20 = 373,
  VER_PS2X = 374, VER_PS30 = 375, SHIFT_X2 = 376, SHIFT_X4 = 377,
  SHIFT_X8 = 378, SHIFT_D2 = 379, SHIFT_D4 = 380, SHIFT_D8 = 381,
  MOD_SAT = 382, MOD_PP = 383, MOD_CENTROID = 384, COMP_GT = 385,
  COMP_LT = 386, COMP_GE = 387, COMP_LE = 388, COMP_EQ = 389,
  COMP_NE = 390, SMOD_BIAS = 391, SMOD_SCALEBIAS = 392, SMOD_DZ = 393,
  SMOD_DW = 394, SMOD_ABS = 395, SMOD_NOT = 396, SAMPTYPE_1D = 397,
  SAMPTYPE_2D = 398, SAMPTYPE_CUBE = 399, SAMPTYPE_VOLUME = 400, USAGE_POSITION = 401,
  USAGE_BLENDWEIGHT = 402, USAGE_BLENDINDICES = 403, USAGE_NORMAL = 404, USAGE_PSIZE = 405,
  USAGE_TEXCOORD = 406, USAGE_TANGENT = 407, USAGE_BINORMAL = 408, USAGE_TESSFACTOR = 409,
  USAGE_POSITIONT = 410, USAGE_COLOR = 411, USAGE_FOG = 412, USAGE_DEPTH = 413,
  USAGE_SAMPLE = 414, COMPONENT = 415, IMMVAL = 416, IMMBOOL = 417,
  INSTR_ADD = 258, INSTR_NOP = 259, INSTR_MOV = 260, INSTR_SUB = 261,
  INSTR_MAD = 262, INSTR_MUL = 263, INSTR_RCP = 264, INSTR_RSQ = 265,
  INSTR_DP3 = 266, INSTR_DP4 = 267, INSTR_MIN = 268, INSTR_MAX = 269,
  INSTR_SLT = 270, INSTR_SGE = 271, INSTR_ABS = 272, INSTR_EXP = 273,
  INSTR_LOG = 274, INSTR_EXPP = 275, INSTR_LOGP = 276, INSTR_DST = 277,
  INSTR_LRP = 278, INSTR_FRC = 279, INSTR_POW = 280, INSTR_CRS = 281,
  INSTR_SGN = 282, INSTR_NRM = 283, INSTR_SINCOS = 284, INSTR_M4x4 = 285,
  INSTR_M4x3 = 286, INSTR_M3x4 = 287, INSTR_M3x3 = 288, INSTR_M3x2 = 289,
  INSTR_DCL = 290, INSTR_DEF = 291, INSTR_DEFB = 292, INSTR_DEFI = 293,
  INSTR_REP = 294, INSTR_ENDREP = 295, INSTR_IF = 296, INSTR_ELSE = 297,
  INSTR_ENDIF = 298, INSTR_BREAK = 299, INSTR_BREAKP = 300, INSTR_CALL = 301,
  INSTR_CALLNZ = 302, INSTR_LOOP = 303, INSTR_RET = 304, INSTR_ENDLOOP = 305,
  INSTR_LABEL = 306, INSTR_SETP = 307, INSTR_TEXLDL = 308, INSTR_LIT = 309,
  INSTR_MOVA = 310, INSTR_CND = 311, INSTR_CMP = 312, INSTR_DP2ADD = 313,
  INSTR_TEXCOORD = 314, INSTR_TEXCRD = 315, INSTR_TEXKILL = 316, INSTR_TEX = 317,
  INSTR_TEXLD = 318, INSTR_TEXBEM = 319, INSTR_TEXBEML = 320, INSTR_TEXREG2AR = 321,
  INSTR_TEXREG2GB = 322, INSTR_TEXREG2RGB = 323, INSTR_TEXM3x2PAD = 324, INSTR_TEXM3x2TEX = 325,
  INSTR_TEXM3x3PAD = 326, INSTR_TEXM3x3SPEC = 327, INSTR_TEXM3x3VSPEC = 328, INSTR_TEXM3x3TEX = 329,
  INSTR_TEXDP3TEX = 330, INSTR_TEXM3x2DEPTH = 331, INSTR_TEXDP3 = 332, INSTR_TEXM3x3 = 333,
  INSTR_TEXDEPTH = 334, INSTR_BEM = 335, INSTR_DSX = 336, INSTR_DSY = 337,
  INSTR_TEXLDP = 338, INSTR_TEXLDB = 339, INSTR_TEXLDD = 340, INSTR_PHASE = 341,
  REG_TEMP = 342, REG_OUTPUT = 343, REG_INPUT = 344, REG_CONSTFLOAT = 345,
  REG_CONSTINT = 346, REG_CONSTBOOL = 347, REG_TEXTURE = 348, REG_SAMPLER = 349,
  REG_TEXCRDOUT = 350, REG_OPOS = 351, REG_OFOG = 352, REG_OPTS = 353,
  REG_VERTEXCOLOR = 354, REG_FRAGCOLOR = 355, REG_FRAGDEPTH = 356, REG_VPOS = 357,
  REG_VFACE = 358, REG_ADDRESS = 359, REG_LOOP = 360, REG_PREDICATE = 361,
  REG_LABEL = 362, VER_VS10 = 363, VER_VS11 = 364, VER_VS20 = 365,
  VER_VS2X = 366, VER_VS30 = 367, VER_PS10 = 368, VER_PS11 = 369,
  VER_PS12 = 370, VER_PS13 = 371, VER_PS14 = 372, VER_PS20 = 373,
  VER_PS2X = 374, VER_PS30 = 375, SHIFT_X2 = 376, SHIFT_X4 = 377,
  SHIFT_X8 = 378, SHIFT_D2 = 379, SHIFT_D4 = 380, SHIFT_D8 = 381,
  MOD_SAT = 382, MOD_PP = 383, MOD_CENTROID = 384, COMP_GT = 385,
  COMP_LT = 386, COMP_GE = 387, COMP_LE = 388, COMP_EQ = 389,
  COMP_NE = 390, SMOD_BIAS = 391, SMOD_SCALEBIAS = 392, SMOD_DZ = 393,
  SMOD_DW = 394, SMOD_ABS = 395, SMOD_NOT = 396, SAMPTYPE_1D = 397,
  SAMPTYPE_2D = 398, SAMPTYPE_CUBE = 399, SAMPTYPE_VOLUME = 400, USAGE_POSITION = 401,
  USAGE_BLENDWEIGHT = 402, USAGE_BLENDINDICES = 403, USAGE_NORMAL = 404, USAGE_PSIZE = 405,
  USAGE_TEXCOORD = 406, USAGE_TANGENT = 407, USAGE_BINORMAL = 408, USAGE_TESSFACTOR = 409,
  USAGE_POSITIONT = 410, USAGE_COLOR = 411, USAGE_FOG = 412, USAGE_DEPTH = 413,
  USAGE_SAMPLE = 414, COMPONENT = 415, IMMVAL = 416, IMMBOOL = 417,
  KW_BLENDSTATE = 258, KW_BREAK = 259, KW_BUFFER = 260, KW_CBUFFER = 261,
  KW_COLUMN_MAJOR = 262, KW_COMPILE = 263, KW_CONST = 264, KW_CONTINUE = 265,
  KW_DEPTHSTENCILSTATE = 266, KW_DEPTHSTENCILVIEW = 267, KW_DISCARD = 268, KW_DO = 269,
  KW_DOUBLE = 270, KW_ELSE = 271, KW_EXTERN = 272, KW_FALSE = 273,
  KW_FOR = 274, KW_GEOMETRYSHADER = 275, KW_GROUPSHARED = 276, KW_IF = 277,
  KW_IN = 278, KW_INLINE = 279, KW_INOUT = 280, KW_MATRIX = 281,
  KW_NAMESPACE = 282, KW_NOINTERPOLATION = 283, KW_OUT = 284, KW_PASS = 285,
  KW_PIXELSHADER = 286, KW_PRECISE = 287, KW_RASTERIZERSTATE = 288, KW_RENDERTARGETVIEW = 289,
  KW_RETURN = 290, KW_REGISTER = 291, KW_ROW_MAJOR = 292, KW_SAMPLER = 293,
  KW_SAMPLER1D = 294, KW_SAMPLER2D = 295, KW_SAMPLER3D = 296, KW_SAMPLERCUBE = 297,
  KW_SAMPLER_STATE = 298, KW_SAMPLERCOMPARISONSTATE = 299, KW_SHARED = 300, KW_STATEBLOCK = 301,
  KW_STATEBLOCK_STATE = 302, KW_STATIC = 303, KW_STRING = 304, KW_STRUCT = 305,
  KW_SWITCH = 306, KW_TBUFFER = 307, KW_TECHNIQUE = 308, KW_TECHNIQUE10 = 309,
  KW_TEXTURE = 310, KW_TEXTURE1D = 311, KW_TEXTURE1DARRAY = 312, KW_TEXTURE2D = 313,
  KW_TEXTURE2DARRAY = 314, KW_TEXTURE2DMS = 315, KW_TEXTURE2DMSARRAY = 316, KW_TEXTURE3D = 317,
  KW_TEXTURE3DARRAY = 318, KW_TEXTURECUBE = 319, KW_TRUE = 320, KW_TYPEDEF = 321,
  KW_UNIFORM = 322, KW_VECTOR = 323, KW_VERTEXSHADER = 324, KW_VOID = 325,
  KW_VOLATILE = 326, KW_WHILE = 327, OP_INC = 328, OP_DEC = 329,
  OP_AND = 330, OP_OR = 331, OP_EQ = 332, OP_LEFTSHIFT = 333,
  OP_LEFTSHIFTASSIGN = 334, OP_RIGHTSHIFT = 335, OP_RIGHTSHIFTASSIGN = 336, OP_ELLIPSIS = 337,
  OP_LE = 338, OP_GE = 339, OP_NE = 340, OP_ADDASSIGN = 341,
  OP_SUBASSIGN = 342, OP_MULASSIGN = 343, OP_DIVASSIGN = 344, OP_MODASSIGN = 345,
  OP_ANDASSIGN = 346, OP_ORASSIGN = 347, OP_XORASSIGN = 348, OP_UNKNOWN1 = 349,
  OP_UNKNOWN2 = 350, OP_UNKNOWN3 = 351, OP_UNKNOWN4 = 352, PRE_LINE = 353,
  VAR_IDENTIFIER = 354, TYPE_IDENTIFIER = 355, NEW_IDENTIFIER = 356, STRING = 357,
  C_FLOAT = 358, C_INTEGER = 359, KW_BLENDSTATE = 258, KW_BREAK = 259,
  KW_BUFFER = 260, KW_CBUFFER = 261, KW_COLUMN_MAJOR = 262, KW_COMPILE = 263,
  KW_CONST = 264, KW_CONTINUE = 265, KW_DEPTHSTENCILSTATE = 266, KW_DEPTHSTENCILVIEW = 267,
  KW_DISCARD = 268, KW_DO = 269, KW_DOUBLE = 270, KW_ELSE = 271,
  KW_EXTERN = 272, KW_FALSE = 273, KW_FOR = 274, KW_GEOMETRYSHADER = 275,
  KW_GROUPSHARED = 276, KW_IF = 277, KW_IN = 278, KW_INLINE = 279,
  KW_INOUT = 280, KW_MATRIX = 281, KW_NAMESPACE = 282, KW_NOINTERPOLATION = 283,
  KW_OUT = 284, KW_PASS = 285, KW_PIXELSHADER = 286, KW_PRECISE = 287,
  KW_RASTERIZERSTATE = 288, KW_RENDERTARGETVIEW = 289, KW_RETURN = 290, KW_REGISTER = 291,
  KW_ROW_MAJOR = 292, KW_SAMPLER = 293, KW_SAMPLER1D = 294, KW_SAMPLER2D = 295,
  KW_SAMPLER3D = 296, KW_SAMPLERCUBE = 297, KW_SAMPLER_STATE = 298, KW_SAMPLERCOMPARISONSTATE = 299,
  KW_SHARED = 300, KW_STATEBLOCK = 301, KW_STATEBLOCK_STATE = 302, KW_STATIC = 303,
  KW_STRING = 304, KW_STRUCT = 305, KW_SWITCH = 306, KW_TBUFFER = 307,
  KW_TECHNIQUE = 308, KW_TECHNIQUE10 = 309, KW_TEXTURE = 310, KW_TEXTURE1D = 311,
  KW_TEXTURE1DARRAY = 312, KW_TEXTURE2D = 313, KW_TEXTURE2DARRAY = 314, KW_TEXTURE2DMS = 315,
  KW_TEXTURE2DMSARRAY = 316, KW_TEXTURE3D = 317, KW_TEXTURE3DARRAY = 318, KW_TEXTURECUBE = 319,
  KW_TRUE = 320, KW_TYPEDEF = 321, KW_UNIFORM = 322, KW_VECTOR = 323,
  KW_VERTEXSHADER = 324, KW_VOID = 325, KW_VOLATILE = 326, KW_WHILE = 327,
  OP_INC = 328, OP_DEC = 329, OP_AND = 330, OP_OR = 331,
  OP_EQ = 332, OP_LEFTSHIFT = 333, OP_LEFTSHIFTASSIGN = 334, OP_RIGHTSHIFT = 335,
  OP_RIGHTSHIFTASSIGN = 336, OP_ELLIPSIS = 337, OP_LE = 338, OP_GE = 339,
  OP_NE = 340, OP_ADDASSIGN = 341, OP_SUBASSIGN = 342, OP_MULASSIGN = 343,
  OP_DIVASSIGN = 344, OP_MODASSIGN = 345, OP_ANDASSIGN = 346, OP_ORASSIGN = 347,
  OP_XORASSIGN = 348, OP_UNKNOWN1 = 349, OP_UNKNOWN2 = 350, OP_UNKNOWN3 = 351,
  OP_UNKNOWN4 = 352, PRE_LINE = 353, VAR_IDENTIFIER = 354, TYPE_IDENTIFIER = 355,
  NEW_IDENTIFIER = 356, STRING = 357, C_FLOAT = 358, C_INTEGER = 359,
  tRCINCLUDE = 258, tIF = 259, tIFDEF = 260, tIFNDEF = 261,
  tELSE = 262, tELIF = 263, tENDIF = 264, tDEFINED = 265,
  tNL = 266, tINCLUDE = 267, tLINE = 268, tGCCLINE = 269,
  tERROR = 270, tWARNING = 271, tPRAGMA = 272, tPPIDENT = 273,
  tUNDEF = 274, tMACROEND = 275, tCONCAT = 276, tELIPSIS = 277,
  tSTRINGIZE = 278, tIDENT = 279, tLITERAL = 280, tMACRO = 281,
  tDEFINE = 282, tDQSTRING = 283, tSQSTRING = 284, tIQSTRING = 285,
  tUINT = 286, tSINT = 287, tULONG = 288, tSLONG = 289,
  tULONGLONG = 290, tSLONGLONG = 291, tRCINCLUDEPATH = 292, tLOGOR = 293,
  tLOGAND = 294, tEQ = 295, tNE = 296, tLTE = 297,
  tGTE = 298, tLSHIFT = 299, tRSHIFT = 300, tRCINCLUDE = 258,
  tIF = 259, tIFDEF = 260, tIFNDEF = 261, tELSE = 262,
  tELIF = 263, tENDIF = 264, tDEFINED = 265, tNL = 266,
  tINCLUDE = 267, tLINE = 268, tGCCLINE = 269, tERROR = 270,
  tWARNING = 271, tPRAGMA = 272, tPPIDENT = 273, tUNDEF = 274,
  tMACROEND = 275, tCONCAT = 276, tELIPSIS = 277, tSTRINGIZE = 278,
  tIDENT = 279, tLITERAL = 280, tMACRO = 281, tDEFINE = 282,
  tDQSTRING = 283, tSQSTRING = 284, tIQSTRING = 285, tUINT = 286,
  tSINT = 287, tULONG = 288, tSLONG = 289, tULONGLONG = 290,
  tSLONGLONG = 291, tRCINCLUDEPATH = 292, tLOGOR = 293, tLOGAND = 294,
  tEQ = 295, tNE = 296, tLTE = 297, tGTE = 298,
  tLSHIFT = 299, tRSHIFT = 300, tEQ = 258, tEQEQ = 259,
  tNEQ = 260, tNEQEQ = 261, tLSHIFT = 262, tRSHIFT = 263,
  tRRSHIFT = 264, tOR = 265, tAND = 266, tLEQ = 267,
  tGEQ = 268, tCCValue = 269, tEQ = 258, tEQEQ = 259,
  tNEQ = 260, tNEQEQ = 261, tLSHIFT = 262, tRSHIFT = 263,
  tRRSHIFT = 264, tOR = 265, tAND = 266, tLEQ = 267,
  tGEQ = 268, tCCValue = 269, kBREAK = 258, kCASE = 259,
  kCATCH = 260, kCONTINUE = 261, kDEFAULT = 262, kDELETE = 263,
  kDO = 264, kELSE = 265, kFUNCTION = 266, kIF = 267,
  kFINALLY = 268, kFOR = 269, kGET = 270, kIN = 271,
  kSET = 272, kINSTANCEOF = 273, kNEW = 274, kNULL = 275,
  kRETURN = 276, kSWITCH = 277, kTHIS = 278, kTHROW = 279,
  kTRUE = 280, kFALSE = 281, kTRY = 282, kTYPEOF = 283,
  kVAR = 284, kVOID = 285, kWHILE = 286, kWITH = 287,
  tANDAND = 288, tOROR = 289, tINC = 290, tDEC = 291,
  tHTMLCOMMENT = 292, kDIVEQ = 293, kDCOL = 294, tIdentifier = 295,
  tAssignOper = 296, tEqOper = 297, tShiftOper = 298, tRelOper = 299,
  tNumericLiteral = 300, tBooleanLiteral = 301, tStringLiteral = 302, tEOF = 303,
  LOWER_THAN_ELSE = 304, kBREAK = 258, kCASE = 259, kCATCH = 260,
  kCONTINUE = 261, kDEFAULT = 262, kDELETE = 263, kDO = 264,
  kELSE = 265, kFUNCTION = 266, kIF = 267, kFINALLY = 268,
  kFOR = 269, kGET = 270, kIN = 271, kSET = 272,
  kINSTANCEOF = 273, kNEW = 274, kNULL = 275, kRETURN = 276,
  kSWITCH = 277, kTHIS = 278, kTHROW = 279, kTRUE = 280,
  kFALSE = 281, kTRY = 282, kTYPEOF = 283, kVAR = 284,
  kVOID = 285, kWHILE = 286, kWITH = 287, tANDAND = 288,
  tOROR = 289, tINC = 290, tDEC = 291, tHTMLCOMMENT = 292,
  kDIVEQ = 293, kDCOL = 294, tIdentifier = 295, tAssignOper = 296,
  tEqOper = 297, tShiftOper = 298, tRelOper = 299, tNumericLiteral = 300,
  tBooleanLiteral = 301, tStringLiteral = 302, tEOF = 303, LOWER_THAN_ELSE = 304,
  COND_SPACE = 258, COND_EOF = 259, COND_OR = 260, COND_AND = 261,
  COND_NOT = 262, COND_XOR = 263, COND_IMP = 264, COND_EQV = 265,
  COND_LT = 266, COND_GT = 267, COND_EQ = 268, COND_NE = 269,
  COND_GE = 270, COND_LE = 271, COND_ILT = 272, COND_IGT = 273,
  COND_IEQ = 274, COND_INE = 275, COND_IGE = 276, COND_ILE = 277,
  COND_LPAR = 278, COND_RPAR = 279, COND_TILDA = 280, COND_SS = 281,
  COND_ISS = 282, COND_ILHS = 283, COND_IRHS = 284, COND_LHS = 285,
  COND_RHS = 286, COND_PERCENT = 287, COND_DOLLARS = 288, COND_QUESTION = 289,
  COND_AMPER = 290, COND_EXCLAM = 291, COND_IDENT = 292, COND_NUMBER = 293,
  COND_LITER = 294, COND_ERROR = 295, TK_ALTER = 258, TK_AND = 259,
  TK_BY = 260, TK_CHAR = 261, TK_COMMA = 262, TK_CREATE = 263,
  TK_DELETE = 264, TK_DROP = 265, TK_DISTINCT = 266, TK_DOT = 267,
  TK_EQ = 268, TK_FREE = 269, TK_FROM = 270, TK_GE = 271,
  TK_GT = 272, TK_HOLD = 273, TK_ADD = 274, TK_ID = 275,
  TK_ILLEGAL = 276, TK_INSERT = 277, TK_INT = 278, TK_INTEGER = 279,
  TK_INTO = 280, TK_IS = 281, TK_KEY = 282, TK_LE = 283,
  TK_LONG = 284, TK_LONGCHAR = 285, TK_LP = 286, TK_LT = 287,
  TK_LOCALIZABLE = 288, TK_MINUS = 289, TK_NE = 290, TK_NOT = 291,
  TK_NULL = 292, TK_OBJECT = 293, TK_OR = 294, TK_ORDER = 295,
  TK_PRIMARY = 296, TK_RP = 297, TK_SELECT = 298, TK_SET = 299,
  TK_SHORT = 300, TK_SPACE = 301, TK_STAR = 302, TK_STRING = 303,
  TK_TABLE = 304, TK_TEMPORARY = 305, TK_UPDATE = 306, TK_VALUES = 307,
  TK_WHERE = 308, TK_WILDCARD = 309, END_OF_FILE = 310, ILLEGAL = 311,
  SPACE = 312, UNCLOSED_STRING = 313, COMMENT = 314, FUNCTION = 315,
  COLUMN = 316, TK_LIKE = 318, TK_NEGATION = 319, TK_ALTER = 258,
  TK_AND = 259, TK_BY = 260, TK_CHAR = 261, TK_COMMA = 262,
  TK_CREATE = 263, TK_DELETE = 264, TK_DROP = 265, TK_DISTINCT = 266,
  TK_DOT = 267, TK_EQ = 268, TK_FREE = 269, TK_FROM = 270,
  TK_GE = 271, TK_GT = 272, TK_HOLD = 273, TK_ADD = 274,
  TK_ID = 275, TK_ILLEGAL = 276, TK_INSERT = 277, TK_INT = 278,
  TK_INTEGER = 279, TK_INTO = 280, TK_IS = 281, TK_KEY = 282,
  TK_LE = 283, TK_LONG = 284, TK_LONGCHAR = 285, TK_LP = 286,
  TK_LT = 287, TK_LOCALIZABLE = 288, TK_MINUS = 289, TK_NE = 290,
  TK_NOT = 291, TK_NULL = 292, TK_OBJECT = 293, TK_OR = 294,
  TK_ORDER = 295, TK_PRIMARY = 296, TK_RP = 297, TK_SELECT = 298,
  TK_SET = 299, TK_SHORT = 300, TK_SPACE = 301, TK_STAR = 302,
  TK_STRING = 303, TK_TABLE = 304, TK_TEMPORARY = 305, TK_UPDATE = 306,
  TK_VALUES = 307, TK_WHERE = 308, TK_WILDCARD = 309, END_OF_FILE = 310,
  ILLEGAL = 311, SPACE = 312, UNCLOSED_STRING = 313, COMMENT = 314,
  FUNCTION = 315, COLUMN = 316, TK_LIKE = 318, TK_NEGATION = 319,
  TOK_Parent = 258, TOK_Self = 259, TOK_DblFSlash = 260, TOK_FSlash = 261,
  TOK_Axis = 262, TOK_Colon = 263, TOK_OpAnd = 264, TOK_OpOr = 265,
  TOK_OpNot = 266, TOK_OpEq = 267, TOK_OpIEq = 268, TOK_OpNEq = 269,
  TOK_OpINEq = 270, TOK_OpLt = 271, TOK_OpILt = 272, TOK_OpGt = 273,
  TOK_OpIGt = 274, TOK_OpLEq = 275, TOK_OpILEq = 276, TOK_OpGEq = 277,
  TOK_OpIGEq = 278, TOK_OpAll = 279, TOK_OpAny = 280, TOK_NCName = 281,
  TOK_Literal = 282, TOK_Number = 283, tEXPRESSION = 258, tEOF = 259,
  tNL = 260, tEMPTYBRACKETS = 261, tLTEQ = 262, tGTEQ = 263,
  tNEQ = 264, tSTOP = 265, tME = 266, tREM = 267,
  tTRUE = 268, tFALSE = 269, tNOT = 270, tAND = 271,
  tOR = 272, tXOR = 273, tEQV = 274, tIMP = 275,
  tIS = 276, tMOD = 277, tCALL = 278, tDIM = 279,
  tSUB = 280, tFUNCTION = 281, tGET = 282, tLET = 283,
  tCONST = 284, tIF = 285, tELSE = 286, tELSEIF = 287,
  tEND = 288, tTHEN = 289, tEXIT = 290, tWHILE = 291,
  tWEND = 292, tDO = 293, tLOOP = 294, tUNTIL = 295,
  tFOR = 296, tTO = 297, tEACH = 298, tIN = 299,
  tSELECT = 300, tCASE = 301, tBYREF = 302, tBYVAL = 303,
  tOPTION = 304, tNOTHING = 305, tEMPTY = 306, tNULL = 307,
  tCLASS = 308, tSET = 309, tNEW = 310, tPUBLIC = 311,
  tPRIVATE = 312, tNEXT = 313, tON = 314, tRESUME = 315,
  tGOTO = 316, tIdentifier = 317, tString = 318, tDEFAULT = 319,
  tERROR = 320, tEXPLICIT = 321, tPROPERTY = 322, tSTEP = 323,
  tInt = 324, tDouble = 325, tEXPRESSION = 258, tEOF = 259,
  tNL = 260, tEMPTYBRACKETS = 261, tLTEQ = 262, tGTEQ = 263,
  tNEQ = 264, tSTOP = 265, tME = 266, tREM = 267,
  tTRUE = 268, tFALSE = 269, tNOT = 270, tAND = 271,
  tOR = 272, tXOR = 273, tEQV = 274, tIMP = 275,
  tIS = 276, tMOD = 277, tCALL = 278, tDIM = 279,
  tSUB = 280, tFUNCTION = 281, tGET = 282, tLET = 283,
  tCONST = 284, tIF = 285, tELSE = 286, tELSEIF = 287,
  tEND = 288, tTHEN = 289, tEXIT = 290, tWHILE = 291,
  tWEND = 292, tDO = 293, tLOOP = 294, tUNTIL = 295,
  tFOR = 296, tTO = 297, tEACH = 298, tIN = 299,
  tSELECT = 300, tCASE = 301, tBYREF = 302, tBYVAL = 303,
  tOPTION = 304, tNOTHING = 305, tEMPTY = 306, tNULL = 307,
  tCLASS = 308, tSET = 309, tNEW = 310, tPUBLIC = 311,
  tPRIVATE = 312, tNEXT = 313, tON = 314, tRESUME = 315,
  tGOTO = 316, tIdentifier = 317, tString = 318, tDEFAULT = 319,
  tERROR = 320, tEXPLICIT = 321, tPROPERTY = 322, tSTEP = 323,
  tInt = 324, tDouble = 325, TK_SELECT = 258, TK_FROM = 259,
  TK_STAR = 260, TK_COMMA = 261, TK_DOT = 262, TK_IS = 263,
  TK_LP = 264, TK_RP = 265, TK_NULL = 266, TK_FALSE = 267,
  TK_TRUE = 268, TK_INTEGER = 269, TK_WHERE = 270, TK_SPACE = 271,
  TK_MINUS = 272, TK_ILLEGAL = 273, TK_BY = 274, TK_ASSOCIATORS = 275,
  TK_OF = 276, TK_STRING = 277, TK_ID = 278, TK_PATH = 279,
  TK_OR = 280, TK_AND = 281, TK_NOT = 282, TK_EQ = 283,
  TK_NE = 284, TK_LT = 285, TK_GT = 286, TK_LE = 287,
  TK_GE = 288, TK_LIKE = 289, TK_SELECT = 258, TK_FROM = 259,
  TK_STAR = 260, TK_COMMA = 261, TK_DOT = 262, TK_IS = 263,
  TK_LP = 264, TK_RP = 265, TK_NULL = 266, TK_FALSE = 267,
  TK_TRUE = 268, TK_INTEGER = 269, TK_WHERE = 270, TK_SPACE = 271,
  TK_MINUS = 272, TK_ILLEGAL = 273, TK_BY = 274, TK_ASSOCIATORS = 275,
  TK_OF = 276, TK_STRING = 277, TK_ID = 278, TK_PATH = 279,
  TK_OR = 280, TK_AND = 281, TK_NOT = 282, TK_EQ = 283,
  TK_NE = 284, TK_LT = 285, TK_GT = 286, TK_LE = 287,
  TK_GE = 288, TK_LIKE = 289, aIDENTIFIER = 258, aPRAGMA = 259,
  aKNOWNTYPE = 260, aNUM = 261, aHEXNUM = 262, aDOUBLE = 263,
  aSTRING = 264, aWSTRING = 265, aSQSTRING = 266, aUUID = 267,
  aEOF = 268, aACF = 269, SHL = 270, SHR = 271,
  MEMBERPTR = 272, EQUALITY = 273, INEQUALITY = 274, GREATEREQUAL = 275,
  LESSEQUAL = 276, LOGICALOR = 277, LOGICALAND = 278, ELLIPSIS = 279,
  tAGGREGATABLE = 280, tALLOCATE = 281, tANNOTATION = 282, tAPPOBJECT = 283,
  tASYNC = 284, tASYNCUUID = 285, tAUTOHANDLE = 286, tBINDABLE = 287,
  tBOOLEAN = 288, tBROADCAST = 289, tBYTE = 290, tBYTECOUNT = 291,
  tCALLAS = 292, tCALLBACK = 293, tCASE = 294, tCDECL = 295,
  tCHAR = 296, tCOCLASS = 297, tCODE = 298, tCOMMSTATUS = 299,
  tCONST = 300, tCONTEXTHANDLE = 301, tCONTEXTHANDLENOSERIALIZE = 302, tCONTEXTHANDLESERIALIZE = 303,
  tCONTROL = 304, tCPPQUOTE = 305, tDECODE = 306, tDEFAULT = 307,
  tDEFAULTBIND = 308, tDEFAULTCOLLELEM = 309, tDEFAULTVALUE = 310, tDEFAULTVTABLE = 311,
  tDISABLECONSISTENCYCHECK = 312, tDISPLAYBIND = 313, tDISPINTERFACE = 314, tDLLNAME = 315,
  tDOUBLE = 316, tDUAL = 317, tENABLEALLOCATE = 318, tENCODE = 319,
  tENDPOINT = 320, tENTRY = 321, tENUM = 322, tERRORSTATUST = 323,
  tEXPLICITHANDLE = 324, tEXTERN = 325, tFALSE = 326, tFASTCALL = 327,
  tFAULTSTATUS = 328, tFLOAT = 329, tFORCEALLOCATE = 330, tHANDLE = 331,
  tHANDLET = 332, tHELPCONTEXT = 333, tHELPFILE = 334, tHELPSTRING = 335,
  tHELPSTRINGCONTEXT = 336, tHELPSTRINGDLL = 337, tHIDDEN = 338, tHYPER = 339,
  tID = 340, tIDEMPOTENT = 341, tIGNORE = 342, tIIDIS = 343,
  tIMMEDIATEBIND = 344, tIMPLICITHANDLE = 345, tIMPORT = 346, tIMPORTLIB = 347,
  tIN = 348, tIN_LINE = 349, tINLINE = 350, tINPUTSYNC = 351,
  tINT = 352, tINT32 = 353, tINT3264 = 354, tINT64 = 355,
  tINTERFACE = 356, tLCID = 357, tLENGTHIS = 358, tLIBRARY = 359,
  tLICENSED = 360, tLOCAL = 361, tLONG = 362, tMAYBE = 363,
  tMESSAGE = 364, tMETHODS = 365, tMODULE = 366, tNAMESPACE = 367,
  tNOCODE = 368, tNONBROWSABLE = 369, tNONCREATABLE = 370, tNONEXTENSIBLE = 371,
  tNOTIFY = 372, tNOTIFYFLAG = 373, tNULL = 374, tOBJECT = 375,
  tODL = 376, tOLEAUTOMATION = 377, tOPTIMIZE = 378, tOPTIONAL = 379,
  tOUT = 380, tPARTIALIGNORE = 381, tPASCAL = 382, tPOINTERDEFAULT = 383,
  tPRAGMA_WARNING = 384, tPROGID = 385, tPROPERTIES = 386, tPROPGET = 387,
  tPROPPUT = 388, tPROPPUTREF = 389, tPROXY = 390, tPTR = 391,
  tPUBLIC = 392, tRANGE = 393, tREADONLY = 394, tREF = 395,
  tREGISTER = 396, tREPRESENTAS = 397, tREQUESTEDIT = 398, tRESTRICTED = 399,
  tRETVAL = 400, tSAFEARRAY = 401, tSHORT = 402, tSIGNED = 403,
  tSIZEIS = 404, tSIZEOF = 405, tSMALL = 406, tSOURCE = 407,
  tSTATIC = 408, tSTDCALL = 409, tSTRICTCONTEXTHANDLE = 410, tSTRING = 411,
  tSTRUCT = 412, tSWITCH = 413, tSWITCHIS = 414, tSWITCHTYPE = 415,
  tTHREADING = 416, tTRANSMITAS = 417, tTRUE = 418, tTYPEDEF = 419,
  tUIDEFAULT = 420, tUNION = 421, tUNIQUE = 422, tUNSIGNED = 423,
  tUSESGETLASTERROR = 424, tUSERMARSHAL = 425, tUUID = 426, tV1ENUM = 427,
  tVARARG = 428, tVERSION = 429, tVIPROGID = 430, tVOID = 431,
  tWCHAR = 432, tWIREMARSHAL = 433, tAPARTMENT = 434, tNEUTRAL = 435,
  tSINGLE = 436, tFREE = 437, tBOTH = 438, CAST = 439,
  PPTR = 440, POS = 441, NEG = 442, ADDRESSOF = 443,
  aIDENTIFIER = 258, aPRAGMA = 259, aKNOWNTYPE = 260, aNUM = 261,
  aHEXNUM = 262, aDOUBLE = 263, aSTRING = 264, aWSTRING = 265,
  aSQSTRING = 266, aUUID = 267, aEOF = 268, aACF = 269,
  SHL = 270, SHR = 271, MEMBERPTR = 272, EQUALITY = 273,
  INEQUALITY = 274, GREATEREQUAL = 275, LESSEQUAL = 276, LOGICALOR = 277,
  LOGICALAND = 278, ELLIPSIS = 279, tAGGREGATABLE = 280, tALLOCATE = 281,
  tANNOTATION = 282, tAPPOBJECT = 283, tASYNC = 284, tASYNCUUID = 285,
  tAUTOHANDLE = 286, tBINDABLE = 287, tBOOLEAN = 288, tBROADCAST = 289,
  tBYTE = 290, tBYTECOUNT = 291, tCALLAS = 292, tCALLBACK = 293,
  tCASE = 294, tCDECL = 295, tCHAR = 296, tCOCLASS = 297,
  tCODE = 298, tCOMMSTATUS = 299, tCONST = 300, tCONTEXTHANDLE = 301,
  tCONTEXTHANDLENOSERIALIZE = 302, tCONTEXTHANDLESERIALIZE = 303, tCONTROL = 304, tCPPQUOTE = 305,
  tDECODE = 306, tDEFAULT = 307, tDEFAULTBIND = 308, tDEFAULTCOLLELEM = 309,
  tDEFAULTVALUE = 310, tDEFAULTVTABLE = 311, tDISABLECONSISTENCYCHECK = 312, tDISPLAYBIND = 313,
  tDISPINTERFACE = 314, tDLLNAME = 315, tDOUBLE = 316, tDUAL = 317,
  tENABLEALLOCATE = 318, tENCODE = 319, tENDPOINT = 320, tENTRY = 321,
  tENUM = 322, tERRORSTATUST = 323, tEXPLICITHANDLE = 324, tEXTERN = 325,
  tFALSE = 326, tFASTCALL = 327, tFAULTSTATUS = 328, tFLOAT = 329,
  tFORCEALLOCATE = 330, tHANDLE = 331, tHANDLET = 332, tHELPCONTEXT = 333,
  tHELPFILE = 334, tHELPSTRING = 335, tHELPSTRINGCONTEXT = 336, tHELPSTRINGDLL = 337,
  tHIDDEN = 338, tHYPER = 339, tID = 340, tIDEMPOTENT = 341,
  tIGNORE = 342, tIIDIS = 343, tIMMEDIATEBIND = 344, tIMPLICITHANDLE = 345,
  tIMPORT = 346, tIMPORTLIB = 347, tIN = 348, tIN_LINE = 349,
  tINLINE = 350, tINPUTSYNC = 351, tINT = 352, tINT32 = 353,
  tINT3264 = 354, tINT64 = 355, tINTERFACE = 356, tLCID = 357,
  tLENGTHIS = 358, tLIBRARY = 359, tLICENSED = 360, tLOCAL = 361,
  tLONG = 362, tMAYBE = 363, tMESSAGE = 364, tMETHODS = 365,
  tMODULE = 366, tNAMESPACE = 367, tNOCODE = 368, tNONBROWSABLE = 369,
  tNONCREATABLE = 370, tNONEXTENSIBLE = 371, tNOTIFY = 372, tNOTIFYFLAG = 373,
  tNULL = 374, tOBJECT = 375, tODL = 376, tOLEAUTOMATION = 377,
  tOPTIMIZE = 378, tOPTIONAL = 379, tOUT = 380, tPARTIALIGNORE = 381,
  tPASCAL = 382, tPOINTERDEFAULT = 383, tPRAGMA_WARNING = 384, tPROGID = 385,
  tPROPERTIES = 386, tPROPGET = 387, tPROPPUT = 388, tPROPPUTREF = 389,
  tPROXY = 390, tPTR = 391, tPUBLIC = 392, tRANGE = 393,
  tREADONLY = 394, tREF = 395, tREGISTER = 396, tREPRESENTAS = 397,
  tREQUESTEDIT = 398, tRESTRICTED = 399, tRETVAL = 400, tSAFEARRAY = 401,
  tSHORT = 402, tSIGNED = 403, tSIZEIS = 404, tSIZEOF = 405,
  tSMALL = 406, tSOURCE = 407, tSTATIC = 408, tSTDCALL = 409,
  tSTRICTCONTEXTHANDLE = 410, tSTRING = 411, tSTRUCT = 412, tSWITCH = 413,
  tSWITCHIS = 414, tSWITCHTYPE = 415, tTHREADING = 416, tTRANSMITAS = 417,
  tTRUE = 418, tTYPEDEF = 419, tUIDEFAULT = 420, tUNION = 421,
  tUNIQUE = 422, tUNSIGNED = 423, tUSESGETLASTERROR = 424, tUSERMARSHAL = 425,
  tUUID = 426, tV1ENUM = 427, tVARARG = 428, tVERSION = 429,
  tVIPROGID = 430, tVOID = 431, tWCHAR = 432, tWIREMARSHAL = 433,
  tAPARTMENT = 434, tNEUTRAL = 435, tSINGLE = 436, tFREE = 437,
  tBOTH = 438, CAST = 439, PPTR = 440, POS = 441,
  NEG = 442, ADDRESSOF = 443, tRCINCLUDE = 258, tIF = 259,
  tIFDEF = 260, tIFNDEF = 261, tELSE = 262, tELIF = 263,
  tENDIF = 264, tDEFINED = 265, tNL = 266, tINCLUDE = 267,
  tLINE = 268, tGCCLINE = 269, tERROR = 270, tWARNING = 271,
  tPRAGMA = 272, tPPIDENT = 273, tUNDEF = 274, tMACROEND = 275,
  tCONCAT = 276, tELIPSIS = 277, tSTRINGIZE = 278, tIDENT = 279,
  tLITERAL = 280, tMACRO = 281, tDEFINE = 282, tDQSTRING = 283,
  tSQSTRING = 284, tIQSTRING = 285, tUINT = 286, tSINT = 287,
  tULONG = 288, tSLONG = 289, tULONGLONG = 290, tSLONGLONG = 291,
  tRCINCLUDEPATH = 292, tLOGOR = 293, tLOGAND = 294, tEQ = 295,
  tNE = 296, tLTE = 297, tGTE = 298, tLSHIFT = 299,
  tRSHIFT = 300, tRCINCLUDE = 258, tIF = 259, tIFDEF = 260,
  tIFNDEF = 261, tELSE = 262, tELIF = 263, tENDIF = 264,
  tDEFINED = 265, tNL = 266, tINCLUDE = 267, tLINE = 268,
  tGCCLINE = 269, tERROR = 270, tWARNING = 271, tPRAGMA = 272,
  tPPIDENT = 273, tUNDEF = 274, tMACROEND = 275, tCONCAT = 276,
  tELIPSIS = 277, tSTRINGIZE = 278, tIDENT = 279, tLITERAL = 280,
  tMACRO = 281, tDEFINE = 282, tDQSTRING = 283, tSQSTRING = 284,
  tIQSTRING = 285, tUINT = 286, tSINT = 287, tULONG = 288,
  tSLONG = 289, tULONGLONG = 290, tSLONGLONG = 291, tRCINCLUDEPATH = 292,
  tLOGOR = 293, tLOGAND = 294, tEQ = 295, tNE = 296,
  tLTE = 297, tGTE = 298, tLSHIFT = 299, tRSHIFT = 300
}
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (hlsl_parser)
 
int hlsl_lex (void)
 
static void set_location (struct source_location *loc, const struct YYLTYPE *l)
 
void WINAPIV hlsl_message (const char *fmt,...)
 
static const charhlsl_get_error_level_name (enum hlsl_error_level level)
 
void WINAPIV hlsl_report_message (const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
 
static void hlsl_error (const char *s)
 
static void debug_dump_decl (struct hlsl_type *type, DWORD modifiers, const char *declname, unsigned int line_no)
 
static void check_invalid_matrix_modifiers (DWORD modifiers, struct source_location *loc)
 
static BOOL declare_variable (struct hlsl_ir_var *decl, BOOL local)
 
static DWORD add_modifier (DWORD modifiers, DWORD mod, const struct YYLTYPE *loc)
 
static BOOL check_type_modifiers (DWORD modifiers, struct source_location *loc)
 
static BOOL add_type_to_scope (struct hlsl_scope *scope, struct hlsl_type *def)
 
static void declare_predefined_types (struct hlsl_scope *scope)
 
static struct hlsl_ir_ifloop_condition (struct list *cond_list)
 
static struct listcreate_loop (enum loop_type type, struct list *init, struct list *cond, struct hlsl_ir_node *iter, struct list *body, struct source_location *loc)
 
static unsigned int initializer_size (const struct parse_initializer *initializer)
 
static void free_parse_initializer (struct parse_initializer *initializer)
 
static struct hlsl_ir_swizzlenew_swizzle (DWORD s, unsigned int components, struct hlsl_ir_node *val, struct source_location *loc)
 
static struct hlsl_ir_swizzleget_swizzle (struct hlsl_ir_node *value, const char *swizzle, struct source_location *loc)
 
static void struct_var_initializer (struct list *list, struct hlsl_ir_var *var, struct parse_initializer *initializer)
 
static struct listdeclare_vars (struct hlsl_type *basic_type, DWORD modifiers, struct list *var_list)
 
static BOOL add_struct_field (struct list *fields, struct hlsl_struct_field *field)
 
static struct listgen_struct_fields (struct hlsl_type *type, DWORD modifiers, struct list *fields)
 
static struct hlsl_typenew_struct_type (const char *name, DWORD modifiers, struct list *fields)
 
static BOOL add_typedef (DWORD modifiers, struct hlsl_type *orig_type, struct list *list, struct source_location *loc)
 
static BOOL add_func_parameter (struct list *list, struct parse_parameter *param, const struct source_location *loc)
 
static struct reg_reservationparse_reg_reservation (const char *reg_string)
 
static const struct hlsl_ir_function_declget_overloaded_func (struct wine_rb_tree *funcs, char *name, struct list *params, BOOL exact_signature)
 
int hlsl_parse (void)
 
voidmalloc (YYSIZE_T)
 
void free (void *)
 
static YYSIZE_T yystrlen (const char *yystr)
 
static charyystpcpy (char *yydest, const char *yysrc)
 
static YYSIZE_T yytnamerr (char *yyres, const char *yystr)
 
static int yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
 
static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
 
int yyparse (void)
 
static void dump_function_decl (struct wine_rb_entry *entry, void *context)
 
static void dump_function (struct wine_rb_entry *entry, void *context)
 
struct bwriter_shaderparse_hlsl (enum shader_type type, DWORD major, DWORD minor, const char *entrypoint, char **messages)
 

Variables

struct hlsl_parse_ctx hlsl_ctx
 
YYSTYPE hlsl_lval
 
YYLTYPE hlsl_lloc
 
static const yytype_uint8 yytranslate []
 
static const char *const yytname []
 
static const yytype_int16 yypact []
 
static const yytype_uint8 yydefact []
 
static const yytype_int16 yypgoto []
 
static const yytype_int16 yydefgoto []
 
static const yytype_int16 yytable []
 
static const yytype_int16 yycheck []
 
static const yytype_uint8 yystos []
 
static const yytype_uint8 yyr1 []
 
static const yytype_uint8 yyr2 []
 
int yychar
 
YYSTYPE yylval
 
YYLTYPE yylloc = { 1, 1, 1, 1 }
 
int yynerrs
 

Macro Definition Documentation

◆ YY_

#define YY_ (   Msgid)    Msgid

Definition at line 1192 of file hlsl.tab.c.

◆ YY_ASSERT

#define YY_ASSERT (   E)    ((void) (0 && (E)))

Definition at line 1241 of file hlsl.tab.c.

◆ YY_ATTRIBUTE

#define YY_ATTRIBUTE (   Spec)    /* empty */

Definition at line 1202 of file hlsl.tab.c.

◆ YY_ATTRIBUTE_PURE

#define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))

Definition at line 1207 of file hlsl.tab.c.

◆ YY_ATTRIBUTE_UNUSED

#define YY_ATTRIBUTE_UNUSED   YY_ATTRIBUTE ((__unused__))

Definition at line 1211 of file hlsl.tab.c.

◆ YY_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED

#define YY_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED

Definition at line 967 of file hlsl.tab.c.

◆ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN

#define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN

Definition at line 1233 of file hlsl.tab.c.

◆ YY_IGNORE_MAYBE_UNINITIALIZED_END

#define YY_IGNORE_MAYBE_UNINITIALIZED_END

Definition at line 1234 of file hlsl.tab.c.

◆ YY_INITIAL_VALUE

#define YY_INITIAL_VALUE (   Value)    Value

Definition at line 1230 of file hlsl.tab.c.

◆ YY_NULLPTR

#define YY_NULLPTR   ((void*)0)

Definition at line 952 of file hlsl.tab.c.

◆ YY_REDUCE_PRINT

#define YY_REDUCE_PRINT (   Rule)

Definition at line 2136 of file hlsl.tab.c.

◆ YY_STACK_PRINT

#define YY_STACK_PRINT (   Bottom,
  Top 
)

Definition at line 2135 of file hlsl.tab.c.

◆ YY_SYMBOL_PRINT

#define YY_SYMBOL_PRINT (   Title,
  Type,
  Value,
  Location 
)

Definition at line 2134 of file hlsl.tab.c.

◆ YYABORT

#define YYABORT   goto yyabortlab

Definition at line 1913 of file hlsl.tab.c.

◆ YYACCEPT

#define YYACCEPT   goto yyacceptlab

Definition at line 1912 of file hlsl.tab.c.

◆ YYBACKUP

#define YYBACKUP (   Token,
  Value 
)
Value:
{ \
yychar = (Token); \
yylval = (Value); \
YYPOPSTACK (yylen); \
yystate = *yyssp; \
goto yybackup; \
} \
else \
{ \
yyerror (YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (0)
_In_opt_ ULONG _Out_ PULONG Value
Definition: rtlfuncs.h:2343
#define yychar
Definition: hlsl.tab.c:74
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID _Out_ PULONG _Inout_ PLUID _Out_ PHANDLE Token
#define YY_(Msgid)
Definition: hlsl.tab.c:1192
if(!(yy_init))
Definition: macro.lex.yy.c:714
#define YYEMPTY
Definition: hlsl.tab.c:1909

Definition at line 1919 of file hlsl.tab.c.

◆ YYBISON

#define YYBISON   1

Definition at line 48 of file hlsl.tab.c.

◆ YYBISON_VERSION

#define YYBISON_VERSION   "3.4.1"

Definition at line 51 of file hlsl.tab.c.

◆ YYCASE_

#define YYCASE_ (   N,
  S 
)
Value:
case N: \
yyformat = S; \
break
#define S(x)
Definition: test.h:207

◆ yychar

#define yychar   hlsl_char

Definition at line 74 of file hlsl.tab.c.

◆ yyclearin

#define yyclearin   (yychar = YYEMPTY)

Definition at line 1908 of file hlsl.tab.c.

◆ YYCOPY

#define YYCOPY (   Dst,
  Src,
  Count 
)
Value:
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(Dst)[yyi] = (Src)[yyi]; \
} \
while (0)
_Inout_ __drv_aliasesMem PSLIST_ENTRY _Inout_ PSLIST_ENTRY _In_ ULONG Count
Definition: exfuncs.h:1015
#define Dst
Definition: mesh.h:153

Definition at line 1361 of file hlsl.tab.c.

◆ YYCOPY_NEEDED

#define YYCOPY_NEEDED   1

Definition at line 1333 of file hlsl.tab.c.

◆ yydebug

#define yydebug   hlsl_debug

Definition at line 70 of file hlsl.tab.c.

◆ YYDEBUG

#define YYDEBUG   0

Definition at line 970 of file hlsl.tab.c.

◆ YYDPRINTF

#define YYDPRINTF (   Args)

Definition at line 2133 of file hlsl.tab.c.

◆ YYEMPTY

#define YYEMPTY   (-2)

Definition at line 1909 of file hlsl.tab.c.

◆ YYEOF

#define YYEOF   0

Definition at line 1910 of file hlsl.tab.c.

◆ YYERRCODE

#define YYERRCODE   256

Definition at line 1938 of file hlsl.tab.c.

◆ yyerrok

#define yyerrok   (yyerrstatus = 0)

Definition at line 1907 of file hlsl.tab.c.

◆ yyerror

#define yyerror   hlsl_error

Definition at line 69 of file hlsl.tab.c.

◆ YYERROR

#define YYERROR   goto yyerrorlab

Definition at line 1914 of file hlsl.tab.c.

◆ YYERROR_VERBOSE

#define YYERROR_VERBOSE   1

Definition at line 961 of file hlsl.tab.c.

◆ YYFINAL

#define YYFINAL   2

Definition at line 1374 of file hlsl.tab.c.

◆ YYFREE

#define YYFREE   free

Definition at line 1302 of file hlsl.tab.c.

◆ YYINITDEPTH

#define YYINITDEPTH   200

Definition at line 2142 of file hlsl.tab.c.

◆ YYLAST

#define YYLAST   820

Definition at line 1376 of file hlsl.tab.c.

◆ yylex

#define yylex   hlsl_lex

Definition at line 68 of file hlsl.tab.c.

◆ yylloc

#define yylloc   hlsl_lloc

Definition at line 75 of file hlsl.tab.c.

◆ YYLLOC_DEFAULT

#define YYLLOC_DEFAULT (   Current,
  Rhs,
 
)
Value:
if (N) \
{ \
(Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
(Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
} \
else \
{ \
(Current).first_line = (Current).last_line = \
YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = \
YYRHSLOC (Rhs, 0).last_column; \
} \
while (0)
if(!(yy_init))
Definition: macro.lex.yy.c:714
#define YYRHSLOC(Rhs, K)
Definition: hlsl.tab.c:1965

Definition at line 1946 of file hlsl.tab.c.

◆ YYLTYPE_IS_DECLARED

#define YYLTYPE_IS_DECLARED   1

Definition at line 1128 of file hlsl.tab.c.

◆ YYLTYPE_IS_TRIVIAL

#define YYLTYPE_IS_TRIVIAL   1

Definition at line 1129 of file hlsl.tab.c.

◆ yylval

#define yylval   hlsl_lval

Definition at line 73 of file hlsl.tab.c.

◆ YYMALLOC

#define YYMALLOC   malloc

Definition at line 1296 of file hlsl.tab.c.

◆ YYMAXDEPTH

#define YYMAXDEPTH   10000

Definition at line 2153 of file hlsl.tab.c.

◆ YYMAXUTOK

#define YYMAXUTOK   359

Definition at line 1388 of file hlsl.tab.c.

◆ yynerrs

#define yynerrs   hlsl_nerrs

Definition at line 71 of file hlsl.tab.c.

◆ YYNNTS

#define YYNNTS   64

Definition at line 1381 of file hlsl.tab.c.

◆ YYNRULES

#define YYNRULES   174

Definition at line 1383 of file hlsl.tab.c.

◆ YYNSTATES

#define YYNSTATES   320

Definition at line 1385 of file hlsl.tab.c.

◆ YYNTOKENS

#define YYNTOKENS   129

Definition at line 1379 of file hlsl.tab.c.

◆ YYPACT_NINF

#define YYPACT_NINF   -228

Definition at line 1534 of file hlsl.tab.c.

◆ yypact_value_is_default

#define yypact_value_is_default (   Yystate)    (!!((Yystate) == (-228)))

Definition at line 1536 of file hlsl.tab.c.

◆ yyparse

#define yyparse   hlsl_parse

Definition at line 67 of file hlsl.tab.c.

◆ YYPOPSTACK

#define YYPOPSTACK (   N)    (yyvsp -= (N), yyssp -= (N), yylsp -= (N))

◆ YYPULL

#define YYPULL   1

Definition at line 63 of file hlsl.tab.c.

◆ YYPURE

#define YYPURE   0

Definition at line 57 of file hlsl.tab.c.

◆ YYPUSH

#define YYPUSH   0

Definition at line 60 of file hlsl.tab.c.

◆ YYRECOVERING

#define YYRECOVERING ( )    (!!yyerrstatus)

Definition at line 1917 of file hlsl.tab.c.

◆ YYRHSLOC

#define YYRHSLOC (   Rhs,
 
)    ((Rhs)[K])

Definition at line 1965 of file hlsl.tab.c.

◆ YYSIZE_MAXIMUM

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

Definition at line 1182 of file hlsl.tab.c.

◆ YYSIZE_T

#define YYSIZE_T   size_t

Definition at line 1176 of file hlsl.tab.c.

◆ YYSKELETON_NAME

#define YYSKELETON_NAME   "yacc.c"

Definition at line 54 of file hlsl.tab.c.

◆ YYSTACK_ALLOC

#define YYSTACK_ALLOC   YYMALLOC

Definition at line 1282 of file hlsl.tab.c.

◆ YYSTACK_ALLOC_MAXIMUM

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

Definition at line 1285 of file hlsl.tab.c.

◆ YYSTACK_BYTES

#define YYSTACK_BYTES (   N)
Value:
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
short yytype_int16
#define YYSTACK_GAP_MAXIMUM
Definition: hlsl.tab.c:1325
union YYSTYPE YYSTYPE
Definition: hlsl.tab.c:1113

Definition at line 1329 of file hlsl.tab.c.

◆ YYSTACK_FREE

#define YYSTACK_FREE   YYFREE

Definition at line 1283 of file hlsl.tab.c.

◆ YYSTACK_GAP_MAXIMUM

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

Definition at line 1325 of file hlsl.tab.c.

◆ YYSTACK_RELOCATE

#define YYSTACK_RELOCATE (   Stack_alloc,
  Stack 
)
Value:
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)
#define YYSTACK_GAP_MAXIMUM
Definition: hlsl.tab.c:1325

Definition at line 1340 of file hlsl.tab.c.

◆ YYSTYPE_IS_DECLARED

#define YYSTYPE_IS_DECLARED   1

Definition at line 1115 of file hlsl.tab.c.

◆ YYSTYPE_IS_TRIVIAL

#define YYSTYPE_IS_TRIVIAL   1

Definition at line 1114 of file hlsl.tab.c.

◆ YYSYNTAX_ERROR

#define YYSYNTAX_ERROR
Value:
yysyntax_error (&yymsg_alloc, &yymsg, \
yyssp, yytoken)
static int yysyntax_error(YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken)
Definition: hlsl.tab.c:2255

◆ YYTABLE_NINF

#define YYTABLE_NINF   -35

Definition at line 1539 of file hlsl.tab.c.

◆ yytable_value_is_error

#define yytable_value_is_error (   Yytable_value)    0

Definition at line 1541 of file hlsl.tab.c.

◆ YYTERROR

#define YYTERROR   1

Definition at line 1937 of file hlsl.tab.c.

◆ YYTOKENTYPE

#define YYTOKENTYPE

Definition at line 978 of file hlsl.tab.c.

◆ YYTRANSLATE

#define YYTRANSLATE (   YYX)    ((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

Definition at line 1392 of file hlsl.tab.c.

◆ YYUNDEFTOK

#define YYUNDEFTOK   2

Definition at line 1387 of file hlsl.tab.c.

◆ YYUSE

#define YYUSE (   E)    ((void) (E))

Definition at line 1216 of file hlsl.tab.c.

Typedef Documentation

◆ YYLTYPE

Definition at line 1120 of file hlsl.tab.c.

◆ YYSTYPE

typedef union YYSTYPE YYSTYPE

Definition at line 1113 of file hlsl.tab.c.

◆ yytype_int16

Definition at line 1166 of file hlsl.tab.c.

◆ yytype_int8

Definition at line 1154 of file hlsl.tab.c.

◆ yytype_uint16

Definition at line 1160 of file hlsl.tab.c.

◆ yytype_uint8

Definition at line 1148 of file hlsl.tab.c.

Enumeration Type Documentation

◆ loop_type

Enumerator
LOOP_FOR 
LOOP_WHILE 
LOOP_DO_WHILE 

Definition at line 368 of file hlsl.tab.c.

369 {
370  LOOP_FOR,
371  LOOP_WHILE,
373 };

◆ yytokentype

Enumerator
INSTR_ADD 
INSTR_NOP 
INSTR_MOV 
INSTR_SUB 
INSTR_MAD 
INSTR_MUL 
INSTR_RCP 
INSTR_RSQ 
INSTR_DP3 
INSTR_DP4 
INSTR_MIN 
INSTR_MAX 
INSTR_SLT 
INSTR_SGE 
INSTR_ABS 
INSTR_EXP 
INSTR_LOG 
INSTR_EXPP 
INSTR_LOGP 
INSTR_DST 
INSTR_LRP 
INSTR_FRC 
INSTR_POW 
INSTR_CRS 
INSTR_SGN 
INSTR_NRM 
INSTR_SINCOS 
INSTR_M4x4 
INSTR_M4x3 
INSTR_M3x4 
INSTR_M3x3 
INSTR_M3x2 
INSTR_DCL 
INSTR_DEF 
INSTR_DEFB 
INSTR_DEFI 
INSTR_REP 
INSTR_ENDREP 
INSTR_IF 
INSTR_ELSE 
INSTR_ENDIF 
INSTR_BREAK 
INSTR_BREAKP 
INSTR_CALL 
INSTR_CALLNZ 
INSTR_LOOP 
INSTR_RET 
INSTR_ENDLOOP 
INSTR_LABEL 
INSTR_SETP 
INSTR_TEXLDL 
INSTR_LIT 
INSTR_MOVA 
INSTR_CND 
INSTR_CMP 
INSTR_DP2ADD 
INSTR_TEXCOORD 
INSTR_TEXCRD 
INSTR_TEXKILL 
INSTR_TEX 
INSTR_TEXLD 
INSTR_TEXBEM 
INSTR_TEXBEML 
INSTR_TEXREG2AR 
INSTR_TEXREG2GB 
INSTR_TEXREG2RGB 
INSTR_TEXM3x2PAD 
INSTR_TEXM3x2TEX 
INSTR_TEXM3x3PAD 
INSTR_TEXM3x3SPEC 
INSTR_TEXM3x3VSPEC 
INSTR_TEXM3x3TEX 
INSTR_TEXDP3TEX 
INSTR_TEXM3x2DEPTH 
INSTR_TEXDP3 
INSTR_TEXM3x3 
INSTR_TEXDEPTH 
INSTR_BEM 
INSTR_DSX 
INSTR_DSY 
INSTR_TEXLDP 
INSTR_TEXLDB 
INSTR_TEXLDD 
INSTR_PHASE 
REG_TEMP 
REG_OUTPUT 
REG_INPUT 
REG_CONSTFLOAT 
REG_CONSTINT 
REG_CONSTBOOL 
REG_TEXTURE 
REG_SAMPLER 
REG_TEXCRDOUT 
REG_OPOS 
REG_OFOG 
REG_OPTS 
REG_VERTEXCOLOR 
REG_FRAGCOLOR 
REG_FRAGDEPTH 
REG_VPOS 
REG_VFACE 
REG_ADDRESS 
REG_LOOP 
REG_PREDICATE 
REG_LABEL 
VER_VS10 
VER_VS11 
VER_VS20 
VER_VS2X 
VER_VS30 
VER_PS10 
VER_PS11 
VER_PS12 
VER_PS13 
VER_PS14 
VER_PS20 
VER_PS2X 
VER_PS30 
SHIFT_X2 
SHIFT_X4 
SHIFT_X8 
SHIFT_D2 
SHIFT_D4 
SHIFT_D8 
MOD_SAT 
MOD_PP 
MOD_CENTROID 
COMP_GT 
COMP_LT 
COMP_GE 
COMP_LE 
COMP_EQ 
COMP_NE 
SMOD_BIAS 
SMOD_SCALEBIAS 
SMOD_DZ 
SMOD_DW 
SMOD_ABS 
SMOD_NOT 
SAMPTYPE_1D 
SAMPTYPE_2D 
SAMPTYPE_CUBE 
SAMPTYPE_VOLUME 
USAGE_POSITION 
USAGE_BLENDWEIGHT 
USAGE_BLENDINDICES 
USAGE_NORMAL 
USAGE_PSIZE 
USAGE_TEXCOORD 
USAGE_TANGENT 
USAGE_BINORMAL 
USAGE_TESSFACTOR 
USAGE_POSITIONT 
USAGE_COLOR 
USAGE_FOG 
USAGE_DEPTH 
USAGE_SAMPLE 
COMPONENT 
IMMVAL 
IMMBOOL 
INSTR_ADD 
INSTR_NOP 
INSTR_MOV 
INSTR_SUB 
INSTR_MAD 
INSTR_MUL 
INSTR_RCP 
INSTR_RSQ 
INSTR_DP3 
INSTR_DP4 
INSTR_MIN 
INSTR_MAX 
INSTR_SLT 
INSTR_SGE 
INSTR_ABS 
INSTR_EXP 
INSTR_LOG 
INSTR_EXPP 
INSTR_LOGP 
INSTR_DST 
INSTR_LRP 
INSTR_FRC 
INSTR_POW 
INSTR_CRS 
INSTR_SGN 
INSTR_NRM 
INSTR_SINCOS 
INSTR_M4x4 
INSTR_M4x3 
INSTR_M3x4 
INSTR_M3x3 
INSTR_M3x2 
INSTR_DCL 
INSTR_DEF 
INSTR_DEFB 
INSTR_DEFI 
INSTR_REP 
INSTR_ENDREP 
INSTR_IF 
INSTR_ELSE 
INSTR_ENDIF 
INSTR_BREAK 
INSTR_BREAKP 
INSTR_CALL 
INSTR_CALLNZ 
INSTR_LOOP 
INSTR_RET 
INSTR_ENDLOOP 
INSTR_LABEL 
INSTR_SETP 
INSTR_TEXLDL 
INSTR_LIT 
INSTR_MOVA 
INSTR_CND 
INSTR_CMP 
INSTR_DP2ADD 
INSTR_TEXCOORD 
INSTR_TEXCRD 
INSTR_TEXKILL 
INSTR_TEX 
INSTR_TEXLD 
INSTR_TEXBEM 
INSTR_TEXBEML 
INSTR_TEXREG2AR 
INSTR_TEXREG2GB 
INSTR_TEXREG2RGB 
INSTR_TEXM3x2PAD 
INSTR_TEXM3x2TEX 
INSTR_TEXM3x3PAD 
INSTR_TEXM3x3SPEC 
INSTR_TEXM3x3VSPEC 
INSTR_TEXM3x3TEX 
INSTR_TEXDP3TEX 
INSTR_TEXM3x2DEPTH 
INSTR_TEXDP3 
INSTR_TEXM3x3 
INSTR_TEXDEPTH 
INSTR_BEM 
INSTR_DSX 
INSTR_DSY 
INSTR_TEXLDP 
INSTR_TEXLDB 
INSTR_TEXLDD 
INSTR_PHASE 
REG_TEMP 
REG_OUTPUT 
REG_INPUT 
REG_CONSTFLOAT 
REG_CONSTINT 
REG_CONSTBOOL 
REG_TEXTURE 
REG_SAMPLER 
REG_TEXCRDOUT 
REG_OPOS 
REG_OFOG 
REG_OPTS 
REG_VERTEXCOLOR 
REG_FRAGCOLOR 
REG_FRAGDEPTH 
REG_VPOS 
REG_VFACE 
REG_ADDRESS 
REG_LOOP 
REG_PREDICATE 
REG_LABEL 
VER_VS10 
VER_VS11 
VER_VS20 
VER_VS2X 
VER_VS30 
VER_PS10 
VER_PS11 
VER_PS12 
VER_PS13 
VER_PS14 
VER_PS20 
VER_PS2X 
VER_PS30 
SHIFT_X2 
SHIFT_X4 
SHIFT_X8 
SHIFT_D2 
SHIFT_D4 
SHIFT_D8 
MOD_SAT 
MOD_PP 
MOD_CENTROID 
COMP_GT 
COMP_LT 
COMP_GE 
COMP_LE 
COMP_EQ 
COMP_NE 
SMOD_BIAS 
SMOD_SCALEBIAS 
SMOD_DZ 
SMOD_DW 
SMOD_ABS 
SMOD_NOT 
SAMPTYPE_1D 
SAMPTYPE_2D 
SAMPTYPE_CUBE 
SAMPTYPE_VOLUME 
USAGE_POSITION 
USAGE_BLENDWEIGHT 
USAGE_BLENDINDICES 
USAGE_NORMAL 
USAGE_PSIZE 
USAGE_TEXCOORD 
USAGE_TANGENT 
USAGE_BINORMAL 
USAGE_TESSFACTOR 
USAGE_POSITIONT 
USAGE_COLOR 
USAGE_FOG 
USAGE_DEPTH 
USAGE_SAMPLE 
COMPONENT 
IMMVAL 
IMMBOOL 
KW_BLENDSTATE 
KW_BREAK 
KW_BUFFER 
KW_CBUFFER 
KW_COLUMN_MAJOR 
KW_COMPILE 
KW_CONST 
KW_CONTINUE 
KW_DEPTHSTENCILSTATE 
KW_DEPTHSTENCILVIEW 
KW_DISCARD 
KW_DO 
KW_DOUBLE 
KW_ELSE 
KW_EXTERN 
KW_FALSE 
KW_FOR 
KW_GEOMETRYSHADER 
KW_GROUPSHARED 
KW_IF 
KW_IN 
KW_INLINE 
KW_INOUT 
KW_MATRIX 
KW_NAMESPACE 
KW_NOINTERPOLATION 
KW_OUT 
KW_PASS 
KW_PIXELSHADER 
KW_PRECISE 
KW_RASTERIZERSTATE 
KW_RENDERTARGETVIEW 
KW_RETURN 
KW_REGISTER 
KW_ROW_MAJOR 
KW_SAMPLER 
KW_SAMPLER1D 
KW_SAMPLER2D 
KW_SAMPLER3D 
KW_SAMPLERCUBE 
KW_SAMPLER_STATE 
KW_SAMPLERCOMPARISONSTATE 
KW_SHARED 
KW_STATEBLOCK 
KW_STATEBLOCK_STATE 
KW_STATIC 
KW_STRING 
KW_STRUCT 
KW_SWITCH 
KW_TBUFFER 
KW_TECHNIQUE 
KW_TECHNIQUE10 
KW_TEXTURE 
KW_TEXTURE1D 
KW_TEXTURE1DARRAY 
KW_TEXTURE2D 
KW_TEXTURE2DARRAY 
KW_TEXTURE2DMS 
KW_TEXTURE2DMSARRAY 
KW_TEXTURE3D 
KW_TEXTURE3DARRAY 
KW_TEXTURECUBE 
KW_TRUE 
KW_TYPEDEF 
KW_UNIFORM 
KW_VECTOR 
KW_VERTEXSHADER 
KW_VOID 
KW_VOLATILE 
KW_WHILE 
OP_INC 
OP_DEC 
OP_AND 
OP_OR 
OP_EQ 
OP_LEFTSHIFT 
OP_LEFTSHIFTASSIGN 
OP_RIGHTSHIFT 
OP_RIGHTSHIFTASSIGN 
OP_ELLIPSIS 
OP_LE 
OP_GE 
OP_NE 
OP_ADDASSIGN 
OP_SUBASSIGN 
OP_MULASSIGN 
OP_DIVASSIGN 
OP_MODASSIGN 
OP_ANDASSIGN 
OP_ORASSIGN 
OP_XORASSIGN 
OP_UNKNOWN1 
OP_UNKNOWN2 
OP_UNKNOWN3 
OP_UNKNOWN4 
PRE_LINE 
VAR_IDENTIFIER 
TYPE_IDENTIFIER 
NEW_IDENTIFIER 
STRING 
C_FLOAT 
C_INTEGER 
KW_BLENDSTATE 
KW_BREAK 
KW_BUFFER 
KW_CBUFFER 
KW_COLUMN_MAJOR 
KW_COMPILE 
KW_CONST 
KW_CONTINUE 
KW_DEPTHSTENCILSTATE 
KW_DEPTHSTENCILVIEW 
KW_DISCARD 
KW_DO 
KW_DOUBLE 
KW_ELSE 
KW_EXTERN 
KW_FALSE 
KW_FOR 
KW_GEOMETRYSHADER 
KW_GROUPSHARED 
KW_IF 
KW_IN 
KW_INLINE 
KW_INOUT 
KW_MATRIX 
KW_NAMESPACE 
KW_NOINTERPOLATION 
KW_OUT 
KW_PASS 
KW_PIXELSHADER 
KW_PRECISE 
KW_RASTERIZERSTATE 
KW_RENDERTARGETVIEW 
KW_RETURN 
KW_REGISTER 
KW_ROW_MAJOR 
KW_SAMPLER 
KW_SAMPLER1D 
KW_SAMPLER2D 
KW_SAMPLER3D 
KW_SAMPLERCUBE 
KW_SAMPLER_STATE 
KW_SAMPLERCOMPARISONSTATE 
KW_SHARED 
KW_STATEBLOCK 
KW_STATEBLOCK_STATE 
KW_STATIC 
KW_STRING 
KW_STRUCT 
KW_SWITCH 
KW_TBUFFER 
KW_TECHNIQUE 
KW_TECHNIQUE10 
KW_TEXTURE 
KW_TEXTURE1D 
KW_TEXTURE1DARRAY 
KW_TEXTURE2D 
KW_TEXTURE2DARRAY 
KW_TEXTURE2DMS 
KW_TEXTURE2DMSARRAY 
KW_TEXTURE3D 
KW_TEXTURE3DARRAY 
KW_TEXTURECUBE 
KW_TRUE 
KW_TYPEDEF 
KW_UNIFORM 
KW_VECTOR 
KW_VERTEXSHADER 
KW_VOID 
KW_VOLATILE 
KW_WHILE 
OP_INC 
OP_DEC 
OP_AND 
OP_OR 
OP_EQ 
OP_LEFTSHIFT 
OP_LEFTSHIFTASSIGN 
OP_RIGHTSHIFT 
OP_RIGHTSHIFTASSIGN 
OP_ELLIPSIS 
OP_LE 
OP_GE 
OP_NE 
OP_ADDASSIGN 
OP_SUBASSIGN 
OP_MULASSIGN 
OP_DIVASSIGN 
OP_MODASSIGN 
OP_ANDASSIGN 
OP_ORASSIGN 
OP_XORASSIGN 
OP_UNKNOWN1 
OP_UNKNOWN2 
OP_UNKNOWN3 
OP_UNKNOWN4 
PRE_LINE 
VAR_IDENTIFIER 
TYPE_IDENTIFIER 
NEW_IDENTIFIER 
STRING 
C_FLOAT 
C_INTEGER 
tRCINCLUDE 
tIF 
tIFDEF 
tIFNDEF 
tELSE 
tELIF 
tENDIF 
tDEFINED 
tNL 
tINCLUDE 
tLINE 
tGCCLINE 
tERROR 
tWARNING 
tPRAGMA 
tPPIDENT 
tUNDEF 
tMACROEND 
tCONCAT 
tELIPSIS 
tSTRINGIZE 
tIDENT 
tLITERAL 
tMACRO 
tDEFINE 
tDQSTRING 
tSQSTRING 
tIQSTRING 
tUINT 
tSINT 
tULONG 
tSLONG 
tULONGLONG 
tSLONGLONG 
tRCINCLUDEPATH 
tLOGOR 
tLOGAND 
tEQ 
tNE 
tLTE 
tGTE 
tLSHIFT 
tRSHIFT 
tRCINCLUDE 
tIF 
tIFDEF 
tIFNDEF 
tELSE 
tELIF 
tENDIF 
tDEFINED 
tNL 
tINCLUDE 
tLINE 
tGCCLINE 
tERROR 
tWARNING 
tPRAGMA 
tPPIDENT 
tUNDEF 
tMACROEND 
tCONCAT 
tELIPSIS 
tSTRINGIZE 
tIDENT 
tLITERAL 
tMACRO 
tDEFINE 
tDQSTRING 
tSQSTRING 
tIQSTRING 
tUINT 
tSINT 
tULONG 
tSLONG 
tULONGLONG 
tSLONGLONG 
tRCINCLUDEPATH 
tLOGOR 
tLOGAND 
tEQ 
tNE 
tLTE 
tGTE 
tLSHIFT 
tRSHIFT 
tEQ 
tEQEQ 
tNEQ 
tNEQEQ 
tLSHIFT 
tRSHIFT 
tRRSHIFT 
tOR 
tAND 
tLEQ 
tGEQ 
tCCValue 
tEQ 
tEQEQ 
tNEQ 
tNEQEQ 
tLSHIFT 
tRSHIFT 
tRRSHIFT 
tOR 
tAND 
tLEQ 
tGEQ 
tCCValue 
kBREAK 
kCASE 
kCATCH 
kCONTINUE 
kDEFAULT 
kDELETE 
kDO 
kELSE 
kFUNCTION 
kIF 
kFINALLY 
kFOR 
kGET 
kIN 
kSET 
kINSTANCEOF 
kNEW 
kNULL 
kRETURN 
kSWITCH 
kTHIS 
kTHROW 
kTRUE 
kFALSE 
kTRY 
kTYPEOF 
kVAR 
kVOID 
kWHILE 
kWITH 
tANDAND 
tOROR 
tINC 
tDEC 
tHTMLCOMMENT 
kDIVEQ 
kDCOL 
tIdentifier 
tAssignOper 
tEqOper 
tShiftOper 
tRelOper 
tNumericLiteral 
tBooleanLiteral 
tStringLiteral 
tEOF 
LOWER_THAN_ELSE 
kBREAK 
kCASE 
kCATCH 
kCONTINUE 
kDEFAULT 
kDELETE 
kDO 
kELSE 
kFUNCTION 
kIF 
kFINALLY 
kFOR 
kGET 
kIN 
kSET 
kINSTANCEOF 
kNEW 
kNULL 
kRETURN 
kSWITCH 
kTHIS 
kTHROW 
kTRUE 
kFALSE 
kTRY 
kTYPEOF 
kVAR 
kVOID 
kWHILE 
kWITH 
tANDAND 
tOROR 
tINC 
tDEC 
tHTMLCOMMENT 
kDIVEQ 
kDCOL 
tIdentifier 
tAssignOper 
tEqOper 
tShiftOper 
tRelOper 
tNumericLiteral 
tBooleanLiteral 
tStringLiteral 
tEOF 
LOWER_THAN_ELSE 
COND_SPACE 
COND_EOF 
COND_OR 
COND_AND 
COND_NOT 
COND_XOR 
COND_IMP 
COND_EQV 
COND_LT 
COND_GT 
COND_EQ 
COND_NE 
COND_GE 
COND_LE 
COND_ILT 
COND_IGT 
COND_IEQ 
COND_INE 
COND_IGE 
COND_ILE 
COND_LPAR 
COND_RPAR 
COND_TILDA 
COND_SS 
COND_ISS 
COND_ILHS 
COND_IRHS 
COND_LHS 
COND_RHS 
COND_PERCENT 
COND_DOLLARS 
COND_QUESTION 
COND_AMPER 
COND_EXCLAM 
COND_IDENT 
COND_NUMBER 
COND_LITER 
COND_ERROR 
TK_ALTER 
TK_AND 
TK_BY 
TK_CHAR 
TK_COMMA 
TK_CREATE 
TK_DELETE 
TK_DROP 
TK_DISTINCT 
TK_DOT 
TK_EQ 
TK_FREE 
TK_FROM 
TK_GE 
TK_GT 
TK_HOLD 
TK_ADD 
TK_ID 
TK_ILLEGAL 
TK_INSERT 
TK_INT 
TK_INTEGER 
TK_INTO 
TK_IS 
TK_KEY 
TK_LE 
TK_LONG 
TK_LONGCHAR 
TK_LP 
TK_LT 
TK_LOCALIZABLE 
TK_MINUS 
TK_NE 
TK_NOT 
TK_NULL 
TK_OBJECT 
TK_OR 
TK_ORDER 
TK_PRIMARY 
TK_RP 
TK_SELECT 
TK_SET 
TK_SHORT 
TK_SPACE 
TK_STAR 
TK_STRING 
TK_TABLE 
TK_TEMPORARY 
TK_UPDATE 
TK_VALUES 
TK_WHERE 
TK_WILDCARD 
END_OF_FILE 
ILLEGAL 
SPACE 
UNCLOSED_STRING 
COMMENT 
FUNCTION 
COLUMN 
TK_LIKE 
TK_NEGATION 
TK_ALTER 
TK_AND 
TK_BY 
TK_CHAR 
TK_COMMA 
TK_CREATE 
TK_DELETE 
TK_DROP 
TK_DISTINCT 
TK_DOT 
TK_EQ 
TK_FREE 
TK_FROM 
TK_GE 
TK_GT 
TK_HOLD 
TK_ADD 
TK_ID 
TK_ILLEGAL 
TK_INSERT 
TK_INT 
TK_INTEGER 
TK_INTO 
TK_IS 
TK_KEY 
TK_LE 
TK_LONG 
TK_LONGCHAR 
TK_LP 
TK_LT 
TK_LOCALIZABLE 
TK_MINUS 
TK_NE 
TK_NOT 
TK_NULL 
TK_OBJECT 
TK_OR 
TK_ORDER 
TK_PRIMARY 
TK_RP 
TK_SELECT 
TK_SET 
TK_SHORT 
TK_SPACE 
TK_STAR 
TK_STRING 
TK_TABLE 
TK_TEMPORARY 
TK_UPDATE 
TK_VALUES 
TK_WHERE 
TK_WILDCARD 
END_OF_FILE 
ILLEGAL 
SPACE 
UNCLOSED_STRING 
COMMENT 
FUNCTION 
COLUMN 
TK_LIKE 
TK_NEGATION 
TOK_Parent 
TOK_Self 
TOK_DblFSlash 
TOK_FSlash 
TOK_Axis 
TOK_Colon 
TOK_OpAnd 
TOK_OpOr 
TOK_OpNot 
TOK_OpEq 
TOK_OpIEq 
TOK_OpNEq 
TOK_OpINEq 
TOK_OpLt 
TOK_OpILt 
TOK_OpGt 
TOK_OpIGt 
TOK_OpLEq 
TOK_OpILEq 
TOK_OpGEq 
TOK_OpIGEq 
TOK_OpAll 
TOK_OpAny 
TOK_NCName 
TOK_Literal 
TOK_Number 
tEXPRESSION 
tEOF 
tNL 
tEMPTYBRACKETS 
tLTEQ 
tGTEQ 
tNEQ 
tSTOP 
tME 
tREM 
tTRUE 
tFALSE 
tNOT 
tAND 
tOR 
tXOR 
tEQV 
tIMP 
tIS 
tMOD 
tCALL 
tDIM 
tSUB 
tFUNCTION 
tGET 
tLET 
tCONST 
tIF 
tELSE 
tELSEIF 
tEND 
tTHEN 
tEXIT 
tWHILE 
tWEND 
tDO 
tLOOP 
tUNTIL 
tFOR 
tTO 
tEACH 
tIN 
tSELECT 
tCASE 
tBYREF 
tBYVAL 
tOPTION 
tNOTHING 
tEMPTY 
tNULL 
tCLASS 
tSET 
tNEW 
tPUBLIC 
tPRIVATE 
tNEXT 
tON 
tRESUME 
tGOTO 
tIdentifier 
tString 
tDEFAULT 
tERROR 
tEXPLICIT 
tPROPERTY 
tSTEP 
tInt 
tDouble 
tEXPRESSION 
tEOF 
tNL 
tEMPTYBRACKETS 
tLTEQ 
tGTEQ 
tNEQ 
tSTOP 
tME 
tREM 
tTRUE 
tFALSE 
tNOT 
tAND 
tOR 
tXOR 
tEQV 
tIMP 
tIS 
tMOD 
tCALL 
tDIM 
tSUB 
tFUNCTION 
tGET 
tLET 
tCONST 
tIF 
tELSE 
tELSEIF 
tEND 
tTHEN 
tEXIT 
tWHILE 
tWEND 
tDO 
tLOOP 
tUNTIL 
tFOR 
tTO 
tEACH 
tIN 
tSELECT 
tCASE 
tBYREF 
tBYVAL 
tOPTION 
tNOTHING 
tEMPTY 
tNULL 
tCLASS 
tSET 
tNEW 
tPUBLIC 
tPRIVATE 
tNEXT 
tON 
tRESUME 
tGOTO 
tIdentifier 
tString 
tDEFAULT 
tERROR 
tEXPLICIT 
tPROPERTY 
tSTEP 
tInt 
tDouble 
TK_SELECT 
TK_FROM 
TK_STAR 
TK_COMMA 
TK_DOT 
TK_IS 
TK_LP 
TK_RP 
TK_NULL 
TK_FALSE 
TK_TRUE 
TK_INTEGER 
TK_WHERE 
TK_SPACE 
TK_MINUS 
TK_ILLEGAL 
TK_BY 
TK_ASSOCIATORS 
TK_OF 
TK_STRING 
TK_ID 
TK_PATH 
TK_OR 
TK_AND 
TK_NOT 
TK_EQ 
TK_NE 
TK_LT 
TK_GT 
TK_LE 
TK_GE 
TK_LIKE 
TK_SELECT 
TK_FROM 
TK_STAR 
TK_COMMA 
TK_DOT 
TK_IS 
TK_LP 
TK_RP 
TK_NULL 
TK_FALSE 
TK_TRUE 
TK_INTEGER 
TK_WHERE 
TK_SPACE 
TK_MINUS 
TK_ILLEGAL 
TK_BY 
TK_ASSOCIATORS 
TK_OF 
TK_STRING 
TK_ID 
TK_PATH 
TK_OR 
TK_AND 
TK_NOT 
TK_EQ 
TK_NE 
TK_LT 
TK_GT 
TK_LE 
TK_GE 
TK_LIKE 
aIDENTIFIER 
aPRAGMA 
aKNOWNTYPE 
aNUM 
aHEXNUM 
aDOUBLE 
aSTRING 
aWSTRING 
aSQSTRING 
aUUID 
aEOF 
aACF 
SHL 
SHR 
MEMBERPTR 
EQUALITY 
INEQUALITY 
GREATEREQUAL 
LESSEQUAL 
LOGICALOR 
LOGICALAND 
ELLIPSIS 
tAGGREGATABLE 
tALLOCATE 
tANNOTATION 
tAPPOBJECT 
tASYNC 
tASYNCUUID 
tAUTOHANDLE 
tBINDABLE 
tBOOLEAN 
tBROADCAST 
tBYTE 
tBYTECOUNT 
tCALLAS 
tCALLBACK 
tCASE 
tCDECL 
tCHAR 
tCOCLASS 
tCODE 
tCOMMSTATUS 
tCONST 
tCONTEXTHANDLE 
tCONTEXTHANDLENOSERIALIZE 
tCONTEXTHANDLESERIALIZE 
tCONTROL 
tCPPQUOTE 
tDECODE 
tDEFAULT 
tDEFAULTBIND 
tDEFAULTCOLLELEM 
tDEFAULTVALUE 
tDEFAULTVTABLE 
tDISABLECONSISTENCYCHECK 
tDISPLAYBIND 
tDISPINTERFACE 
tDLLNAME 
tDOUBLE 
tDUAL 
tENABLEALLOCATE 
tENCODE 
tENDPOINT 
tENTRY 
tENUM 
tERRORSTATUST 
tEXPLICITHANDLE 
tEXTERN 
tFALSE 
tFASTCALL 
tFAULTSTATUS 
tFLOAT 
tFORCEALLOCATE 
tHANDLE 
tHANDLET 
tHELPCONTEXT 
tHELPFILE 
tHELPSTRING 
tHELPSTRINGCONTEXT 
tHELPSTRINGDLL 
tHIDDEN 
tHYPER 
tID 
tIDEMPOTENT 
tIGNORE 
tIIDIS 
tIMMEDIATEBIND 
tIMPLICITHANDLE 
tIMPORT 
tIMPORTLIB 
tIN 
tIN_LINE 
tINLINE 
tINPUTSYNC 
tINT 
tINT32 
tINT3264 
tINT64 
tINTERFACE 
tLCID 
tLENGTHIS 
tLIBRARY 
tLICENSED 
tLOCAL 
tLONG 
tMAYBE 
tMESSAGE 
tMETHODS 
tMODULE 
tNAMESPACE 
tNOCODE 
tNONBROWSABLE 
tNONCREATABLE 
tNONEXTENSIBLE 
tNOTIFY 
tNOTIFYFLAG 
tNULL 
tOBJECT 
tODL 
tOLEAUTOMATION 
tOPTIMIZE 
tOPTIONAL 
tOUT 
tPARTIALIGNORE 
tPASCAL 
tPOINTERDEFAULT 
tPRAGMA_WARNING 
tPROGID 
tPROPERTIES 
tPROPGET 
tPROPPUT 
tPROPPUTREF 
tPROXY 
tPTR 
tPUBLIC 
tRANGE 
tREADONLY 
tREF 
tREGISTER 
tREPRESENTAS 
tREQUESTEDIT 
tRESTRICTED 
tRETVAL 
tSAFEARRAY 
tSHORT 
tSIGNED 
tSIZEIS 
tSIZEOF 
tSMALL 
tSOURCE 
tSTATIC 
tSTDCALL 
tSTRICTCONTEXTHANDLE 
tSTRING 
tSTRUCT 
tSWITCH 
tSWITCHIS 
tSWITCHTYPE 
tTHREADING 
tTRANSMITAS 
tTRUE 
tTYPEDEF 
tUIDEFAULT 
tUNION 
tUNIQUE 
tUNSIGNED 
tUSESGETLASTERROR 
tUSERMARSHAL 
tUUID 
tV1ENUM 
tVARARG 
tVERSION 
tVIPROGID 
tVOID 
tWCHAR 
tWIREMARSHAL 
tAPARTMENT 
tNEUTRAL 
tSINGLE 
tFREE 
tBOTH 
CAST 
PPTR 
POS 
NEG 
ADDRESSOF 
aIDENTIFIER 
aPRAGMA 
aKNOWNTYPE 
aNUM 
aHEXNUM 
aDOUBLE 
aSTRING 
aWSTRING 
aSQSTRING 
aUUID 
aEOF 
aACF 
SHL 
SHR 
MEMBERPTR 
EQUALITY 
INEQUALITY 
GREATEREQUAL 
LESSEQUAL 
LOGICALOR 
LOGICALAND 
ELLIPSIS 
tAGGREGATABLE 
tALLOCATE 
tANNOTATION 
tAPPOBJECT 
tASYNC 
tASYNCUUID 
tAUTOHANDLE 
tBINDABLE 
tBOOLEAN 
tBROADCAST 
tBYTE 
tBYTECOUNT 
tCALLAS 
tCALLBACK 
tCASE 
tCDECL 
tCHAR 
tCOCLASS 
tCODE 
tCOMMSTATUS 
tCONST 
tCONTEXTHANDLE 
tCONTEXTHANDLENOSERIALIZE 
tCONTEXTHANDLESERIALIZE 
tCONTROL 
tCPPQUOTE 
tDECODE 
tDEFAULT 
tDEFAULTBIND 
tDEFAULTCOLLELEM 
tDEFAULTVALUE 
tDEFAULTVTABLE 
tDISABLECONSISTENCYCHECK 
tDISPLAYBIND 
tDISPINTERFACE 
tDLLNAME 
tDOUBLE 
tDUAL 
tENABLEALLOCATE 
tENCODE 
tENDPOINT 
tENTRY 
tENUM 
tERRORSTATUST 
tEXPLICITHANDLE 
tEXTERN 
tFALSE 
tFASTCALL 
tFAULTSTATUS 
tFLOAT 
tFORCEALLOCATE 
tHANDLE 
tHANDLET 
tHELPCONTEXT 
tHELPFILE 
tHELPSTRING 
tHELPSTRINGCONTEXT 
tHELPSTRINGDLL 
tHIDDEN 
tHYPER 
tID 
tIDEMPOTENT 
tIGNORE 
tIIDIS 
tIMMEDIATEBIND 
tIMPLICITHANDLE 
tIMPORT 
tIMPORTLIB 
tIN 
tIN_LINE 
tINLINE 
tINPUTSYNC 
tINT 
tINT32 
tINT3264 
tINT64 
tINTERFACE 
tLCID 
tLENGTHIS 
tLIBRARY 
tLICENSED 
tLOCAL 
tLONG 
tMAYBE 
tMESSAGE 
tMETHODS 
tMODULE 
tNAMESPACE 
tNOCODE 
tNONBROWSABLE 
tNONCREATABLE 
tNONEXTENSIBLE 
tNOTIFY 
tNOTIFYFLAG 
tNULL 
tOBJECT 
tODL 
tOLEAUTOMATION 
tOPTIMIZE 
tOPTIONAL 
tOUT 
tPARTIALIGNORE 
tPASCAL 
tPOINTERDEFAULT 
tPRAGMA_WARNING 
tPROGID 
tPROPERTIES 
tPROPGET 
tPROPPUT 
tPROPPUTREF 
tPROXY 
tPTR 
tPUBLIC 
tRANGE 
tREADONLY 
tREF 
tREGISTER 
tREPRESENTAS 
tREQUESTEDIT 
tRESTRICTED 
tRETVAL 
tSAFEARRAY 
tSHORT 
tSIGNED 
tSIZEIS 
tSIZEOF 
tSMALL 
tSOURCE 
tSTATIC 
tSTDCALL 
tSTRICTCONTEXTHANDLE 
tSTRING 
tSTRUCT 
tSWITCH 
tSWITCHIS 
tSWITCHTYPE 
tTHREADING 
tTRANSMITAS 
tTRUE 
tTYPEDEF 
tUIDEFAULT 
tUNION 
tUNIQUE 
tUNSIGNED 
tUSESGETLASTERROR 
tUSERMARSHAL 
tUUID 
tV1ENUM 
tVARARG 
tVERSION 
tVIPROGID 
tVOID 
tWCHAR 
tWIREMARSHAL 
tAPARTMENT 
tNEUTRAL 
tSINGLE 
tFREE 
tBOTH 
CAST 
PPTR 
POS 
NEG 
ADDRESSOF 
tRCINCLUDE 
tIF 
tIFDEF 
tIFNDEF 
tELSE 
tELIF 
tENDIF 
tDEFINED 
tNL 
tINCLUDE 
tLINE 
tGCCLINE 
tERROR 
tWARNING 
tPRAGMA 
tPPIDENT 
tUNDEF 
tMACROEND 
tCONCAT 
tELIPSIS 
tSTRINGIZE 
tIDENT 
tLITERAL 
tMACRO 
tDEFINE 
tDQSTRING 
tSQSTRING 
tIQSTRING 
tUINT 
tSINT 
tULONG 
tSLONG 
tULONGLONG 
tSLONGLONG 
tRCINCLUDEPATH 
tLOGOR 
tLOGAND 
tEQ 
tNE 
tLTE 
tGTE 
tLSHIFT 
tRSHIFT 
tRCINCLUDE 
tIF 
tIFDEF 
tIFNDEF 
tELSE 
tELIF 
tENDIF 
tDEFINED 
tNL 
tINCLUDE 
tLINE 
tGCCLINE 
tERROR 
tWARNING 
tPRAGMA 
tPPIDENT 
tUNDEF 
tMACROEND 
tCONCAT 
tELIPSIS 
tSTRINGIZE 
tIDENT 
tLITERAL 
tMACRO 
tDEFINE 
tDQSTRING 
tSQSTRING 
tIQSTRING 
tUINT 
tSINT 
tULONG 
tSLONG 
tULONGLONG 
tSLONGLONG 
tRCINCLUDEPATH 
tLOGOR 
tLOGAND 
tEQ 
tNE 
tLTE 
tGTE 
tLSHIFT 
tRSHIFT 

Definition at line 979 of file hlsl.tab.c.

980  {
981  KW_BLENDSTATE = 258,
982  KW_BREAK = 259,
983  KW_BUFFER = 260,
984  KW_CBUFFER = 261,
985  KW_COLUMN_MAJOR = 262,
986  KW_COMPILE = 263,
987  KW_CONST = 264,
988  KW_CONTINUE = 265,
989  KW_DEPTHSTENCILSTATE = 266,
990  KW_DEPTHSTENCILVIEW = 267,
991  KW_DISCARD = 268,
992  KW_DO = 269,
993  KW_DOUBLE = 270,
994  KW_ELSE = 271,
995  KW_EXTERN = 272,
996  KW_FALSE = 273,
997  KW_FOR = 274,
998  KW_GEOMETRYSHADER = 275,
999  KW_GROUPSHARED = 276,
1000  KW_IF = 277,
1001  KW_IN = 278,
1002  KW_INLINE = 279,
1003  KW_INOUT = 280,
1004  KW_MATRIX = 281,
1005  KW_NAMESPACE = 282,
1006  KW_NOINTERPOLATION = 283,
1007  KW_OUT = 284,
1008  KW_PASS = 285,
1009  KW_PIXELSHADER = 286,
1010  KW_PRECISE = 287,
1011  KW_RASTERIZERSTATE = 288,
1012  KW_RENDERTARGETVIEW = 289,
1013  KW_RETURN = 290,
1014  KW_REGISTER = 291,
1015  KW_ROW_MAJOR = 292,
1016  KW_SAMPLER = 293,
1017  KW_SAMPLER1D = 294,
1018  KW_SAMPLER2D = 295,
1019  KW_SAMPLER3D = 296,
1020  KW_SAMPLERCUBE = 297,
1021  KW_SAMPLER_STATE = 298,
1023  KW_SHARED = 300,
1024  KW_STATEBLOCK = 301,
1025  KW_STATEBLOCK_STATE = 302,
1026  KW_STATIC = 303,
1027  KW_STRING = 304,
1028  KW_STRUCT = 305,
1029  KW_SWITCH = 306,
1030  KW_TBUFFER = 307,
1031  KW_TECHNIQUE = 308,
1032  KW_TECHNIQUE10 = 309,
1033  KW_TEXTURE = 310,
1034  KW_TEXTURE1D = 311,
1035  KW_TEXTURE1DARRAY = 312,
1036  KW_TEXTURE2D = 313,
1037  KW_TEXTURE2DARRAY = 314,
1038  KW_TEXTURE2DMS = 315,
1039  KW_TEXTURE2DMSARRAY = 316,
1040  KW_TEXTURE3D = 317,
1041  KW_TEXTURE3DARRAY = 318,
1042  KW_TEXTURECUBE = 319,
1043  KW_TRUE = 320,
1044  KW_TYPEDEF = 321,
1045  KW_UNIFORM = 322,
1046  KW_VECTOR = 323,
1047  KW_VERTEXSHADER = 324,
1048  KW_VOID = 325,
1049  KW_VOLATILE = 326,
1050  KW_WHILE = 327,
1051  OP_INC = 328,
1052  OP_DEC = 329,
1053  OP_AND = 330,
1054  OP_OR = 331,
1055  OP_EQ = 332,
1056  OP_LEFTSHIFT = 333,
1057  OP_LEFTSHIFTASSIGN = 334,
1058  OP_RIGHTSHIFT = 335,
1059  OP_RIGHTSHIFTASSIGN = 336,
1060  OP_ELLIPSIS = 337,
1061  OP_LE = 338,
1062  OP_GE = 339,
1063  OP_NE = 340,
1064  OP_ADDASSIGN = 341,
1065  OP_SUBASSIGN = 342,
1066  OP_MULASSIGN = 343,
1067  OP_DIVASSIGN = 344,
1068  OP_MODASSIGN = 345,
1069  OP_ANDASSIGN = 346,
1070  OP_ORASSIGN = 347,
1071  OP_XORASSIGN = 348,
1072  OP_UNKNOWN1 = 349,
1073  OP_UNKNOWN2 = 350,
1074  OP_UNKNOWN3 = 351,
1075  OP_UNKNOWN4 = 352,
1076  PRE_LINE = 353,
1077  VAR_IDENTIFIER = 354,
1078  TYPE_IDENTIFIER = 355,
1079  NEW_IDENTIFIER = 356,
1080  STRING = 357,
1081  C_FLOAT = 358,
1082  C_INTEGER = 359
1083  };
std::wstring STRING
Definition: fontsub.cpp:33

Function Documentation

◆ add_func_parameter()

static BOOL add_func_parameter ( struct list list,
struct parse_parameter param,
const struct source_location loc 
)
static

Definition at line 851 of file hlsl.tab.c.

852 {
853  struct hlsl_ir_var *decl = d3dcompiler_alloc(sizeof(*decl));
854 
855  if (!decl)
856  {
857  ERR("Out of memory.\n");
858  return FALSE;
859  }
860  decl->data_type = param->type;
861  decl->loc = *loc;
862  decl->name = param->name;
863  decl->semantic = param->semantic;
864  decl->reg_reservation = param->reg_reservation;
865  decl->modifiers = param->modifiers;
866 
867  if (!add_declaration(hlsl_ctx.cur_scope, decl, FALSE))
868  {
869  free_declaration(decl);
870  return FALSE;
871  }
872  list_add_tail(list, &decl->param_entry);
873  return TRUE;
874 }
const char * semantic
#define TRUE
Definition: types.h:120
const struct reg_reservation * reg_reservation
struct list scope_entry param_entry
static void * d3dcompiler_alloc(SIZE_T size)
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
Definition: list.h:102
GLfloat param
Definition: glext.h:5796
struct hlsl_type * data_type
struct source_location loc
struct hlsl_parse_ctx hlsl_ctx
Definition: hlsl.tab.c:90
Definition: _list.h:228
void free_declaration(struct hlsl_ir_var *decl) DECLSPEC_HIDDEN
Definition: utils.c:798
#define ERR(fmt,...)
Definition: debug.h:109
BOOL add_declaration(struct hlsl_scope *scope, struct hlsl_ir_var *decl, BOOL local_var) DECLSPEC_HIDDEN
Definition: utils.c:761
unsigned int modifiers
const char * name

Referenced by yyparse().

◆ add_modifier()

static DWORD add_modifier ( DWORD  modifiers,
DWORD  mod,
const struct YYLTYPE loc 
)
static

Definition at line 4852 of file hlsl.tab.c.

4853 {
4854  if (modifiers & mod)
4855  {
4856  hlsl_report_message(hlsl_ctx.source_file, loc->first_line, loc->first_column, HLSL_LEVEL_ERROR,
4857  "modifier '%s' already specified", debug_modifiers(mod));
4858  return modifiers;
4859  }
4862  {
4863  hlsl_report_message(hlsl_ctx.source_file, loc->first_line, loc->first_column, HLSL_LEVEL_ERROR,
4864  "more than one matrix majority keyword");
4865  return modifiers;
4866  }
4867  return modifiers | mod;
4868 }
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
#define HLSL_MODIFIER_ROW_MAJOR
const char * debug_modifiers(DWORD modifiers) DECLSPEC_HIDDEN
Definition: utils.c:1722
struct source_location loc
struct hlsl_parse_ctx hlsl_ctx
Definition: hlsl.tab.c:90
unsigned int modifiers
static int mod
Definition: i386-dis.c:1273
#define HLSL_MODIFIER_COLUMN_MAJOR

Referenced by yyparse().

◆ add_struct_field()

static BOOL add_struct_field ( struct list fields,
struct hlsl_struct_field field 
)
static

Definition at line 733 of file hlsl.tab.c.

734 {
735  struct hlsl_struct_field *f;
736 
737  LIST_FOR_EACH_ENTRY(f, fields, struct hlsl_struct_field, entry)
738  {
739  if (!strcmp(f->name, field->name))
740  return FALSE;
741  }
742  list_add_tail(fields, &field->entry);
743  return TRUE;
744 }
#define TRUE
Definition: types.h:120
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
Definition: list.h:102
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
Definition: list.h:198
GLfloat f
Definition: glext.h:7540
Definition: parser.c:43
uint32_t entry
Definition: isohybrid.c:63
#define f
Definition: ke_i.h:83
int strcmp(const char *String1, const char *String2)
Definition: utclib.c:469

Referenced by yyparse().

◆ add_type_to_scope()

static BOOL add_type_to_scope ( struct hlsl_scope scope,
struct hlsl_type def 
)
static

Definition at line 246 of file hlsl.tab.c.

247 {
248  if (get_type(scope, def->name, FALSE))
249  return FALSE;
250 
251  wine_rb_put(&scope->types, def->name, &def->scope_entry);
252  return TRUE;
253 }
#define TRUE
Definition: types.h:120
struct wine_rb_entry scope_entry
const char * name
static int wine_rb_put(struct wine_rb_tree *tree, const void *key, struct wine_rb_entry *entry)
Definition: rbtree.h:215
struct hlsl_type * get_type(struct hlsl_scope *scope, const char *name, BOOL recursive) DECLSPEC_HIDDEN
Definition: utils.c:841
struct wine_rb_tree types

Referenced by add_typedef(), declare_predefined_types(), and yyparse().

◆ add_typedef()

static BOOL add_typedef ( DWORD  modifiers,
struct hlsl_type orig_type,
struct list list,
struct source_location loc 
)
static

Definition at line 806 of file hlsl.tab.c.

808 {
809  BOOL ret;
810  struct hlsl_type *type;
811  struct parse_variable_def *v, *v_next;
812 
813  if (!check_type_modifiers(modifiers, loc))
814  {
818  return FALSE;
819  }
820 
822  {
823  if (v->array_size)
824  type = new_array_type(orig_type, v->array_size);
825  else
826  type = clone_hlsl_type(orig_type);
827  if (!type)
828  {
829  ERR("Out of memory\n");
830  return FALSE;
831  }
832  d3dcompiler_free((void *)type->name);
833  type->name = v->name;
834  type->modifiers |= modifiers;
835 
836  if (type->type != HLSL_CLASS_MATRIX)
837  check_invalid_matrix_modifiers(type->modifiers, &v->loc);
838 
839  ret = add_type_to_scope(hlsl_ctx.cur_scope, type);
840  if (!ret)
841  {
842  hlsl_report_message(v->loc.file, v->loc.line, v->loc.col, HLSL_LEVEL_ERROR,
843  "redefinition of custom type '%s'", v->name);
844  }
846  }
848  return TRUE;
849 }
#define TRUE
Definition: types.h:120
static void check_invalid_matrix_modifiers(DWORD modifiers, struct source_location *loc)
Definition: hlsl.tab.c:169
struct source_location loc
struct hlsl_type * clone_hlsl_type(struct hlsl_type *old) DECLSPEC_HIDDEN
Definition: utils.c:929
static BOOL d3dcompiler_free(void *ptr)
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
unsigned int BOOL
Definition: ntddk_ex.h:94
static BOOL check_type_modifiers(DWORD modifiers, struct source_location *loc)
Definition: hlsl.tab.c:235
struct hlsl_parse_ctx hlsl_ctx
Definition: hlsl.tab.c:90
int ret
uint32_t entry
Definition: isohybrid.c:63
Definition: _list.h:228
#define ERR(fmt,...)
Definition: debug.h:109
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
Definition: list.h:204
const GLdouble * v
Definition: gl.h:2040
static BOOL add_type_to_scope(struct hlsl_scope *scope, struct hlsl_type *def)
Definition: hlsl.tab.c:246
struct hlsl_type * new_array_type(struct hlsl_type *basic_type, unsigned int array_size) DECLSPEC_HIDDEN
Definition: utils.c:828

Referenced by yyparse().

◆ check_invalid_matrix_modifiers()

static void check_invalid_matrix_modifiers ( DWORD  modifiers,
struct source_location loc 
)
static

Definition at line 169 of file hlsl.tab.c.

170 {
172  {
173  hlsl_report_message(loc->file, loc->line, loc->col, HLSL_LEVEL_ERROR,
174  "'row_major' or 'column_major' modifiers are only allowed for matrices");
175  }
176 }
struct source_location loc
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
#define HLSL_MODIFIER_ROW_MAJOR
#define HLSL_MODIFIER_COLUMN_MAJOR

Referenced by add_typedef(), declare_variable(), and yyparse().

◆ check_type_modifiers()

static BOOL check_type_modifiers ( DWORD  modifiers,
struct source_location loc 
)
static

Definition at line 235 of file hlsl.tab.c.

236 {
237  if (modifiers & ~HLSL_TYPE_MODIFIERS_MASK)
238  {
239  hlsl_report_message(loc->file, loc->line, loc->col, HLSL_LEVEL_ERROR,
240  "modifier not allowed on typedefs");
241  return FALSE;
242  }
243  return TRUE;
244 }
#define TRUE
Definition: types.h:120
struct source_location loc
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
#define HLSL_TYPE_MODIFIERS_MASK

Referenced by add_typedef(), and yyparse().

◆ create_loop()

static struct list* create_loop ( enum loop_type  type,
struct list init,
struct list cond,
struct hlsl_ir_node iter,
struct list body,
struct source_location loc 
)
static

Definition at line 375 of file hlsl.tab.c.

377 {
378  struct list *list = NULL;
379  struct hlsl_ir_loop *loop = NULL;
380  struct hlsl_ir_if *cond_jump = NULL;
381 
382  list = d3dcompiler_alloc(sizeof(*list));
383  if (!list)
384  goto oom;
385  list_init(list);
386 
387  if (init)
389 
390  loop = d3dcompiler_alloc(sizeof(*loop));
391  if (!loop)
392  goto oom;
393  loop->node.type = HLSL_IR_LOOP;
394  loop->node.loc = *loc;
395  list_add_tail(list, &loop->node.entry);
396  loop->body = d3dcompiler_alloc(sizeof(*loop->body));
397  if (!loop->body)
398  goto oom;
399  list_init(loop->body);
400 
401  cond_jump = loop_condition(cond);
402  if (!cond_jump)
403  goto oom;
404 
405  if (type != LOOP_DO_WHILE)
406  list_add_tail(loop->body, &cond_jump->node.entry);
407 
408  list_move_tail(loop->body, body);
409 
410  if (iter)
411  list_add_tail(loop->body, &iter->entry);
412 
413  if (type == LOOP_DO_WHILE)
414  list_add_tail(loop->body, &cond_jump->node.entry);
415 
417  d3dcompiler_free(cond);
419  return list;
420 
421 oom:
422  ERR("Out of memory.\n");
423  if (loop)
424  d3dcompiler_free(loop->body);
425  d3dcompiler_free(loop);
426  d3dcompiler_free(cond_jump);
429  free_instr_list(cond);
430  free_instr(iter);
432  return NULL;
433 }
void free_instr(struct hlsl_ir_node *node) DECLSPEC_HIDDEN
Definition: utils.c:2224
static BOOL d3dcompiler_free(void *ptr)
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
static int init
Definition: wintirpc.c:33
void free_instr_list(struct list *list) DECLSPEC_HIDDEN
Definition: utils.c:2122
static void * d3dcompiler_alloc(SIZE_T size)
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
Definition: list.h:102
smooth NULL
Definition: ftsmooth.c:416
__WINE_SERVER_LIST_INLINE void list_move_head(struct list *dst, struct list *src)
Definition: list.h:176
__WINE_SERVER_LIST_INLINE void list_move_tail(struct list *dst, struct list *src)
Definition: list.h:164
struct list * body
Definition: _list.h:228
#define ERR(fmt,...)
Definition: debug.h:109
#define list
Definition: rosglue.h:35
static const void * body(MD5_CTX *ctx, const void *data, unsigned long size)
Definition: md5.c:100
struct hlsl_ir_node node
struct hlsl_ir_node node
__WINE_SERVER_LIST_INLINE void list_init(struct list *list)
Definition: list.h:149
static struct hlsl_ir_if * loop_condition(struct list *cond_list)
Definition: hlsl.tab.c:316

Referenced by yyparse().

◆ debug_dump_decl()

static void debug_dump_decl ( struct hlsl_type type,
DWORD  modifiers,
const char declname,
unsigned int  line_no 
)
static

Definition at line 161 of file hlsl.tab.c.

162 {
163  TRACE("Line %u: ", line_no);
164  if (modifiers)
165  TRACE("%s ", debug_modifiers(modifiers));
166  TRACE("%s %s;\n", debug_hlsl_type(type), declname);
167 }
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
const char * debug_hlsl_type(const struct hlsl_type *type) DECLSPEC_HIDDEN
Definition: utils.c:1695
#define TRACE(s)
Definition: solgame.cpp:4
const char * debug_modifiers(DWORD modifiers) DECLSPEC_HIDDEN
Definition: utils.c:1722

Referenced by declare_vars(), and gen_struct_fields().

◆ declare_predefined_types()

static void declare_predefined_types ( struct hlsl_scope scope)
static

Definition at line 255 of file hlsl.tab.c.

256 {
257  struct hlsl_type *type;
258  unsigned int x, y, bt;
259  static const char * const names[] =
260  {
261  "float",
262  "half",
263  "double",
264  "int",
265  "uint",
266  "bool",
267  };
268  char name[10];
269 
270  for (bt = 0; bt <= HLSL_TYPE_LAST_SCALAR; ++bt)
271  {
272  for (y = 1; y <= 4; ++y)
273  {
274  for (x = 1; x <= 4; ++x)
275  {
276  sprintf(name, "%s%ux%u", names[bt], x, y);
278  add_type_to_scope(scope, type);
279 
280  if (y == 1)
281  {
282  sprintf(name, "%s%u", names[bt], x);
284  add_type_to_scope(scope, type);
285 
286  if (x == 1)
287  {
288  sprintf(name, "%s", names[bt]);
290  add_type_to_scope(scope, type);
291  }
292  }
293  }
294  }
295  }
296 
297  /* DX8 effects predefined types */
299  add_type_to_scope(scope, type);
301  add_type_to_scope(scope, type);
303  add_type_to_scope(scope, type);
305  add_type_to_scope(scope, type);
307  add_type_to_scope(scope, type);
309  add_type_to_scope(scope, type);
311  add_type_to_scope(scope, type);
313  add_type_to_scope(scope, type);
314 }
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
struct hlsl_type * new_hlsl_type(const char *name, enum hlsl_type_class type_class, enum hlsl_base_type base_type, unsigned dimx, unsigned dimy) DECLSPEC_HIDDEN
Definition: utils.c:806
#define sprintf(buf, format,...)
Definition: sprintf.c:55
GLuint GLuint * names
Definition: glext.h:11545
static char * d3dcompiler_strdup(const char *string)
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
static BOOL add_type_to_scope(struct hlsl_scope *scope, struct hlsl_type *def)
Definition: hlsl.tab.c:246
Definition: name.c:38

Referenced by parse_hlsl().

◆ declare_variable()

static BOOL declare_variable ( struct hlsl_ir_var decl,
BOOL  local 
)
static

Definition at line 178 of file hlsl.tab.c.

179 {
180  BOOL ret;
181 
182  TRACE("Declaring variable %s.\n", decl->name);
183  if (decl->data_type->type == HLSL_CLASS_MATRIX)
184  {
186  {
187  decl->modifiers |= hlsl_ctx.matrix_majority == HLSL_ROW_MAJOR
189  }
190  }
191  else
193 
194  if (local)
195  {
198  if (invalid)
199  {
200  hlsl_report_message(decl->loc.file, decl->loc.line, decl->loc.col, HLSL_LEVEL_ERROR,
201  "modifier '%s' invalid for local variables", debug_modifiers(invalid));
202  }
203  if (decl->semantic)
204  {
205  hlsl_report_message(decl->loc.file, decl->loc.line, decl->loc.col, HLSL_LEVEL_ERROR,
206  "semantics are not allowed on local variables");
207  return FALSE;
208  }
209  }
210  else
211  {
212  if (find_function(decl->name))
213  {
214  hlsl_report_message(decl->loc.file, decl->loc.line, decl->loc.col, HLSL_LEVEL_ERROR,
215  "redefinition of '%s'", decl->name);
216  return FALSE;
217  }
218  }
219  ret = add_declaration(hlsl_ctx.cur_scope, decl, local);
220  if (!ret)
221  {
222  struct hlsl_ir_var *old = get_variable(hlsl_ctx.cur_scope, decl->name);
223 
224  hlsl_report_message(decl->loc.file, decl->loc.line, decl->loc.col, HLSL_LEVEL_ERROR,
225  "\"%s\" already declared", decl->name);
226  hlsl_report_message(old->loc.file, old->loc.line, old->loc.col, HLSL_LEVEL_NOTE,
227  "\"%s\" was previously declared here", old->name);
228  return FALSE;
229  }
230  return TRUE;
231 }
const char * semantic
static const WCHAR invalid[]
Definition: assoc.c:39
#define TRUE
Definition: types.h:120
static void check_invalid_matrix_modifiers(DWORD modifiers, struct source_location *loc)
Definition: hlsl.tab.c:169
struct hlsl_ir_var * get_variable(struct hlsl_scope *scope, const char *name) DECLSPEC_HIDDEN
Definition: utils.c:784
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
unsigned int BOOL
Definition: ntddk_ex.h:94
#define HLSL_STORAGE_GROUPSHARED
#define HLSL_MODIFIER_ROW_MAJOR
#define HLSL_STORAGE_SHARED
#define HLSL_STORAGE_EXTERN
#define TRACE(s)
Definition: solgame.cpp:4
struct hlsl_type * data_type
unsigned long DWORD
Definition: ntddk_ex.h:95
const char * debug_modifiers(DWORD modifiers) DECLSPEC_HIDDEN
Definition: utils.c:1722
#define HLSL_STORAGE_UNIFORM
struct source_location loc
struct hlsl_parse_ctx hlsl_ctx
Definition: hlsl.tab.c:90
int ret
BOOL find_function(const char *name) DECLSPEC_HIDDEN
Definition: utils.c:852
#define local
Definition: zutil.h:30
BOOL add_declaration(struct hlsl_scope *scope, struct hlsl_ir_var *decl, BOOL local_var) DECLSPEC_HIDDEN
Definition: utils.c:761
unsigned int modifiers
const char * name
#define HLSL_MODIFIER_COLUMN_MAJOR

Referenced by declare_vars().

◆ declare_vars()

static struct list* declare_vars ( struct hlsl_type basic_type,
DWORD  modifiers,
struct list var_list 
)
static

Definition at line 600 of file hlsl.tab.c.

601 {
602  struct hlsl_type *type;
603  struct parse_variable_def *v, *v_next;
604  struct hlsl_ir_var *var;
605  struct hlsl_ir_node *assignment;
606  BOOL ret, local = TRUE;
607  struct list *statements_list = d3dcompiler_alloc(sizeof(*statements_list));
608 
609  if (!statements_list)
610  {
611  ERR("Out of memory.\n");
612  LIST_FOR_EACH_ENTRY_SAFE(v, v_next, var_list, struct parse_variable_def, entry)
614  d3dcompiler_free(var_list);
615  return NULL;
616  }
617  list_init(statements_list);
618 
619  if (!var_list)
620  return statements_list;
621 
622  LIST_FOR_EACH_ENTRY_SAFE(v, v_next, var_list, struct parse_variable_def, entry)
623  {
624  var = d3dcompiler_alloc(sizeof(*var));
625  if (!var)
626  {
627  ERR("Out of memory.\n");
629  continue;
630  }
631  if (v->array_size)
632  type = new_array_type(basic_type, v->array_size);
633  else
634  type = basic_type;
635  var->data_type = type;
636  var->loc = v->loc;
637  var->name = v->name;
638  var->modifiers = modifiers;
639  var->semantic = v->semantic;
640  var->reg_reservation = v->reg_reservation;
641  debug_dump_decl(type, modifiers, v->name, v->loc.line);
642 
643  if (hlsl_ctx.cur_scope == hlsl_ctx.globals)
644  {
646  local = FALSE;
647  }
648 
649  if (var->modifiers & HLSL_MODIFIER_CONST && !(var->modifiers & HLSL_STORAGE_UNIFORM) && !v->initializer.args_count)
650  {
651  hlsl_report_message(v->loc.file, v->loc.line, v->loc.col,
652  HLSL_LEVEL_ERROR, "const variable without initializer");
653  free_declaration(var);
655  continue;
656  }
657 
658  ret = declare_variable(var, local);
659  if (!ret)
660  {
661  free_declaration(var);
663  continue;
664  }
665  TRACE("Declared variable %s.\n", var->name);
666 
667  if (v->initializer.args_count)
668  {
669  unsigned int size = initializer_size(&v->initializer);
670 
671  TRACE("Variable with initializer.\n");
672  if (type->type <= HLSL_CLASS_LAST_NUMERIC
673  && type->dimx * type->dimy != size && size != 1)
674  {
675  if (size < type->dimx * type->dimy)
676  {
677  hlsl_report_message(v->loc.file, v->loc.line, v->loc.col, HLSL_LEVEL_ERROR,
678  "'%s' initializer does not match", v->name);
679  free_parse_initializer(&v->initializer);
681  continue;
682  }
683  }
684  if ((type->type == HLSL_CLASS_STRUCT || type->type == HLSL_CLASS_ARRAY)
686  {
687  hlsl_report_message(v->loc.file, v->loc.line, v->loc.col, HLSL_LEVEL_ERROR,
688  "'%s' initializer does not match", v->name);
689  free_parse_initializer(&v->initializer);
691  continue;
692  }
693 
694  if (type->type == HLSL_CLASS_STRUCT)
695  {
696  struct_var_initializer(statements_list, var, &v->initializer);
698  continue;
699  }
700  if (type->type > HLSL_CLASS_LAST_NUMERIC)
701  {
702  FIXME("Initializers for non scalar/struct variables not supported yet.\n");
703  free_parse_initializer(&v->initializer);
705  continue;
706  }
707  if (v->array_size > 0)
708  {
709  FIXME("Initializing arrays is not supported yet.\n");
710  free_parse_initializer(&v->initializer);
712  continue;
713  }
714  if (v->initializer.args_count > 1)
715  {
716  FIXME("Complex initializers are not supported yet.\n");
717  free_parse_initializer(&v->initializer);
719  continue;
720  }
721 
722  assignment = make_assignment(&new_var_deref(var)->node, ASSIGN_OP_ASSIGN,
723  BWRITERSP_WRITEMASK_ALL, v->initializer.args[0]);
724  d3dcompiler_free(v->initializer.args);
725  list_add_tail(statements_list, &assignment->entry);
726  }
728  }
729  d3dcompiler_free(var_list);
730  return statements_list;
731 }
const char * semantic
static BOOL declare_variable(struct hlsl_ir_var *decl, BOOL local)
Definition: hlsl.tab.c:178
#define TRUE
Definition: types.h:120
const struct reg_reservation * reg_reservation
#define BWRITERSP_WRITEMASK_ALL
#define HLSL_MODIFIER_CONST
unsigned int components_count_type(struct hlsl_type *type) DECLSPEC_HIDDEN
Definition: utils.c:857
static BOOL d3dcompiler_free(void *ptr)
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
static void * d3dcompiler_alloc(SIZE_T size)
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
Definition: list.h:102
unsigned int BOOL
Definition: ntddk_ex.h:94
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
static void free_parse_initializer(struct parse_initializer *initializer)
Definition: hlsl.tab.c:447
#define TRACE(s)
Definition: solgame.cpp:4
GLsizeiptr size
Definition: glext.h:5919
static unsigned int initializer_size(const struct parse_initializer *initializer)
Definition: hlsl.tab.c:435
struct hlsl_type * data_type
#define HLSL_STORAGE_UNIFORM
struct source_location loc
struct hlsl_parse_ctx hlsl_ctx
Definition: hlsl.tab.c:90
int ret
uint32_t entry
Definition: isohybrid.c:63
Definition: _list.h:228
void free_declaration(struct hlsl_ir_var *decl) DECLSPEC_HIDDEN
Definition: utils.c:798
struct hlsl_ir_deref * new_var_deref(struct hlsl_ir_var *var) DECLSPEC_HIDDEN
Definition: utils.c:1354
#define local
Definition: zutil.h:30
#define ERR(fmt,...)
Definition: debug.h:109
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
Definition: list.h:204
const GLdouble * v
Definition: gl.h:2040
static void struct_var_initializer(struct list *list, struct hlsl_ir_var *var, struct parse_initializer *initializer)
Definition: hlsl.tab.c:552
__WINE_SERVER_LIST_INLINE void list_init(struct list *list)
Definition: list.h:149
struct hlsl_ir_node * make_assignment(struct hlsl_ir_node *left, enum parse_assign_op assign_op, DWORD writemask, struct hlsl_ir_node *right) DECLSPEC_HIDDEN
Definition: utils.c:1407
unsigned int modifiers
const char * name
static void debug_dump_decl(struct hlsl_type *type, DWORD modifiers, const char *declname, unsigned int line_no)
Definition: hlsl.tab.c:161
struct hlsl_type * new_array_type(struct hlsl_type *basic_type, unsigned int array_size) DECLSPEC_HIDDEN
Definition: utils.c:828
Definition: dlist.c:348

Referenced by yyparse().

◆ dump_function()

static void dump_function ( struct wine_rb_entry entry,
void context 
)
static

Definition at line 4877 of file hlsl.tab.c.

4878 {
4881 }
GLenum func
Definition: glext.h:6028
smooth NULL
Definition: ftsmooth.c:416
#define WINE_RB_ENTRY_VALUE(element, type, field)
Definition: rbtree.h:31
uint32_t entry
Definition: isohybrid.c:63
static void wine_rb_for_each_entry(struct wine_rb_tree *tree, wine_rb_traverse_func_t *callback, void *context)
Definition: rbtree.h:185
static void dump_function_decl(struct wine_rb_entry *entry, void *context)
Definition: hlsl.tab.c:4870

Referenced by parse_hlsl().

◆ dump_function_decl()

static void dump_function_decl ( struct wine_rb_entry entry,
void context 
)
static

Definition at line 4870 of file hlsl.tab.c.

4871 {
4873  if (func->body)
4875 }
GLenum func
Definition: glext.h:6028
void debug_dump_ir_function_decl(const struct hlsl_ir_function_decl *func) DECLSPEC_HIDDEN
Definition: utils.c:2086
#define WINE_RB_ENTRY_VALUE(element, type, field)
Definition: rbtree.h:31
uint32_t entry
Definition: isohybrid.c:63

Referenced by dump_function().

◆ free()

void free ( void )

Definition at line 147 of file cabinet.c.

148 {
150 }
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
Definition: heap.c:606
static PVOID ptr
Definition: dispmode.c:27
HANDLE ProcessHeap
Definition: servman.c:15

◆ free_parse_initializer()

static void free_parse_initializer ( struct parse_initializer initializer)
static

Definition at line 447 of file hlsl.tab.c.

448 {
449  unsigned int i;
450  for (i = 0; i < initializer->args_count; ++i)
451  free_instr(initializer->args[i]);
452  d3dcompiler_free(initializer->args);
453 }
void free_instr(struct hlsl_ir_node *node) DECLSPEC_HIDDEN
Definition: utils.c:2224
struct hlsl_ir_node ** args
static BOOL d3dcompiler_free(void *ptr)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248

Referenced by declare_vars(), gen_struct_fields(), and struct_var_initializer().

◆ gen_struct_fields()

static struct list* gen_struct_fields ( struct hlsl_type type,
DWORD  modifiers,
struct list fields 
)
static

Definition at line 746 of file hlsl.tab.c.

747 {
748  struct parse_variable_def *v, *v_next;
749  struct hlsl_struct_field *field;
750  struct list *list;
751 
752  list = d3dcompiler_alloc(sizeof(*list));
753  if (!list)
754  {
755  ERR("Out of memory.\n");
756  return NULL;
757  }
758  list_init(list);
759  LIST_FOR_EACH_ENTRY_SAFE(v, v_next, fields, struct parse_variable_def, entry)
760  {
761  debug_dump_decl(type, 0, v->name, v->loc.line);
762  field = d3dcompiler_alloc(sizeof(*field));
763  if (!field)
764  {
765  ERR("Out of memory.\n");
767  return list;
768  }
769  field->type = type;
770  field->name = v->name;
771  field->modifiers = modifiers;
772  field->semantic = v->semantic;
773  if (v->initializer.args_count)
774  {
775  hlsl_report_message(v->loc.file, v->loc.line, v->loc.col, HLSL_LEVEL_ERROR,
776  "struct field with an initializer.\n");
777  free_parse_initializer(&v->initializer);
778  }
779  list_add_tail(list, &field->entry);
781  }
782  d3dcompiler_free(fields);
783  return list;
784 }
static BOOL d3dcompiler_free(void *ptr)
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
static void * d3dcompiler_alloc(SIZE_T size)
void WINAPIV hlsl_report_message(const char *filename, DWORD line, DWORD column, enum hlsl_error_level level, const char *fmt,...)
Definition: hlsl.tab.c:115
__WINE_SERVER_LIST_INLINE void list_add_tail(struct list *list, struct list *elem)
Definition: list.h:102
smooth NULL
Definition: ftsmooth.c:416
static void free_parse_initializer(struct parse_initializer *initializer)
Definition: hlsl.tab.c:447
Definition: parser.c:43
uint32_t entry
Definition: isohybrid.c:63
Definition: _list.h:228
#define ERR(fmt,...)
Definition: debug.h:109
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
Definition: list.h:204
const GLdouble * v
Definition: gl.h:2040
#define list
Definition: rosglue.h:35
__WINE_SERVER_LIST_INLINE void list_init(struct list *list)
Definition: list.h:149
static void debug_dump_decl(struct hlsl_type *type, DWORD modifiers, const char *declname, unsigned int line_no)
Definition: hlsl.tab.c:161

Referenced by yyparse().

◆ get_overloaded_func()

static const struct hlsl_ir_function_decl* get_overloaded_func ( struct wine_rb_tree funcs,
char name,
struct list params,
BOOL  exact_signature 
)
static

Definition at line 918 of file hlsl.tab.c.

920 {
921  struct hlsl_ir_function *func;
922  struct wine_rb_entry *entry;
923 
925  if (entry)
926  {
928 
929  entry = wine_rb_get(&func->overloads, params);
930  if (!entry)
931  {
932  if (!exact_signature)
933  FIXME("No exact match, search for a compatible overloaded function (if any).\n");
934  return NULL;
935  }
937  }
938  return NULL;
939 }
GLenum func
Definition: glext.h:6028
GLenum const GLfloat * params
Definition: glext.h:5645
#define FIXME(fmt,...)
Definition: debug.h:110
smooth NULL
Definition: ftsmooth.c:416
#define WINE_RB_ENTRY_VALUE(element, type, field)
Definition: rbtree.h:31
static struct __wine_debug_functions funcs
Definition: debug.c:59
uint32_t entry
Definition: isohybrid.c:63
Definition: rbtree.h:35
Definition: name.c:38
static struct wine_rb_entry * wine_rb_get(const struct wine_rb_tree *tree, const void *key)
Definition: rbtree.h:203

Referenced by yyparse().

◆ get_swizzle()

static struct hlsl_ir_swizzle* get_swizzle ( struct hlsl_ir_node value,
const char swizzle,
struct source_location loc 
)
static

Definition at line 470 of file hlsl.tab.c.

472 {
473  unsigned int len = strlen(swizzle), component = 0;
474  unsigned int i, set, swiz = 0;
475  BOOL valid;
476 
477  if (value->data_type->type == HLSL_CLASS_MATRIX)
478  {
479  /* Matrix swizzle */
480  BOOL m_swizzle;
481  unsigned int inc, x, y;
482 
483  if (len < 3 || swizzle[0] != '_')
484  return NULL;
485  m_swizzle = swizzle[1] == 'm';
486  inc = m_swizzle ? 4 : 3;
487 
488  if (len % inc || len > inc * 4)
489  return NULL;
490 
491  for (i = 0; i < len; i += inc)
492  {
493  if (swizzle[i] != '_')
494  return NULL;
495  if (m_swizzle)
496  {
497  if (swizzle[i + 1] != 'm')
498  return NULL;
499  x = swizzle[i + 2] - '0';
500  y = swizzle[i + 3] - '0';
501  }
502  else
503  {
504  x = swizzle[i + 1] - '1';
505  y = swizzle[i + 2] - '1';
506  }
507 
508  if (x >= value->data_type->dimx || y >= value->data_type->dimy)
509  return NULL;
510  swiz |= (y << 4 | x) << component * 8;
511  component++;
512  }
513  return new_swizzle(swiz, component, value, loc);
514  }
515 
516  /* Vector swizzle */
517  if (len > 4)
518  return NULL;
519 
520  for (set = 0; set < 2; ++set)
521  {
522  valid = TRUE;
523  component = 0;
524  for (i = 0; i < len; ++i)
525  {
526  char c[2][4] = {{'x', 'y', 'z', 'w'}, {'r', 'g', 'b', 'a'}};
527  unsigned int s = 0;
528 
529  for (s = 0; s < 4; ++s)
530  {
531  if (swizzle[i] == c[set][s])
532  break;
533  }
534  if (s == 4)
535  {
536  valid = FALSE;
537  break;
538  }
539 
540  if (s >= value->data_type->dimx)
541  return NULL;
542  swiz |= s << component * 2;
543  component++;
544  }
545  if (valid)
546  return new_swizzle(swiz, component, value, loc);
547  }
548 
549  return NULL;
550 }
#define TRUE
Definition: types.h:120
ACPI_SIZE strlen(const char *String)
Definition: utclib.c:269
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
static struct hlsl_ir_swizzle * new_swizzle(DWORD s, unsigned int components, struct hlsl_ir_node *val, struct source_location *loc)
Definition: hlsl.tab.c:455
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
unsigned int BOOL
Definition: ntddk_ex.h:94
smooth NULL
Definition: ftsmooth.c:416
const GLubyte * c
Definition: glext.h:8905
static UINT set(struct ID3DXConstantTableImpl *table, IDirect3DDevice9 *device, struct ctab_constant *constant, const void **indata, D3DXPARAMETER_TYPE intype, UINT *size, UINT incol, D3DXPARAMETER_CLASS inclass, UINT index, BOOL is_pointer)
Definition: shader.c:1095
enum value::value_type type
GLenum GLsizei len
Definition: glext.h:6722
GLdouble s
Definition: gl.h:2039
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLuint GLenum swizzle
Definition: glext.h:9511
Definition: _set.h:46

Referenced by yyparse().

◆ hlsl_error()

static void hlsl_error ( const char s)
static

Definition at line 156 of file hlsl.tab.c.

157 {
158  hlsl_report_message(hlsl_ctx.source_file, hlsl_ctx.line_no, hlsl_ctx.column, HLSL_LEVEL_ERROR, "%s", s);
159 }