Ignore:
Timestamp:
Sep 21, 2012, 4:01:17 PM (8 years ago)
Author:
sam
Message:

lolfx: names such as "x" or "bgra" are field selectors, but we must also
accept them as variable names.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/generated/lolfx-scanner.cpp

    r1930 r1937  
    331331        (yy_c_buf_p) = yy_cp;
    332332
    333 #define YY_NUM_RULES 445
    334 #define YY_END_OF_BUFFER 446
     333#define YY_NUM_RULES 443
     334#define YY_END_OF_BUFFER 444
    335335/* This struct is not used in this scanner,
    336336   but its presence is necessary. */
     
    342342static yyconst flex_int16_t yy_accept[1627] =
    343343    {   0,
    344         0,    0,  439,  439,  444,  444,  446,  436,  434,  435,
    345       436,  436,  436,  436,  436,  436,  436,  436,  432,  432,
    346       436,  436,  436,  433,  433,  433,  433,  433,  433,  433,
    347       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    348       433,  433,  433,  433,  436,   92,   92,  433,  433,  433,
    349       433,   92,  433,  433,  433,  433,  433,  433,   93,   93,
    350        92,   93,   93,  433,  433,   91,   91,  436,  439,  440,
    351       441,  444,  443,  434,  414,    0,    0,    0,    0,    0,
    352         0,    0,    0,  422,  417,  427,  420,  409,  423,  410,
    353       424,  437,  442,  421,    0,  431,  432,  415,  411,  413,
    354 
    355       412,  416,  433,  433,  433,  433,  433,  433,  433,  433,
    356       433,  433,  433,  433,  433,  433,  433,  433,  433,  132,
    357       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    358       433,  433,  433,  433,  433,  137,  138,  433,  433,  433,
    359       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    360       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    361       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    362       433,  433,  433,  433,  428,  419,   92,  433,  433,   92,
    363       433,  433,  433,  433,  433,  433,  433,  102,  433,  433,
    364       433,  433,  433,   92,  433,  107,  108,  433,  433,  433,
    365 
    366       433,  433,  433,  433,  433,  433,   93,  433,   92,  433,
    367       433,  433,   93,  433,  433,  433,  433,  433,  433,  433,
    368       433,  433,  433,  433,  433,   91,  429,  418,  439,  438,
    369       444,    0,    0,    0,    0,  369,    0,    0,    0,    0,
    370         0,  430,  425,  426,  433,  155,  433,  433,  433,  433,
    371       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    372       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    373       433,  433,  433,  433,  433,  136,  433,  433,  433,  433,
    374       433,  433,  433,  433,  433,  433,  140,  433,  433,  433,
    375       433,  433,  390,  433,  433,  433,  433,  142,  433,  433,
    376 
    377       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    378       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    379       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    380       433,  433,  403,  433,  433,  433,  433,  433,  433,  433,
    381       433,  433,  433,  433,  433,   92,  433,  433,  433,  433,
    382       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    383       433,  433,  106,  433,  433,  110,  433,  433,  433,  433,
    384       433,  433,  433,  433,  112,  433,   93,  433,  433,  433,
    385       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    386       433,  433,  433,  433,   91,    0,    0,    0,    0,    0,
    387 
    388         0,    0,    0,    0,    0,    0,    0,  433,  433,  377,
    389       433,  124,  433,  433,  433,  126,  433,  433,  433,  379,
    390       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    391       433,  433,  433,  134,  384,  433,  433,  433,  433,  433,
    392       433,  433,  387,  433,  176,  433,  433,  433,  433,  324,
    393       329,  334,  339,  433,  181,  388,  433,  433,  433,  433,
    394       433,  188,  433,  433,  433,  191,  433,  433,  433,  433,
    395       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    396       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    397       433,  433,  433,  433,  433,  433,  401,  433,  433,  234,
    398 
    399       433,  150,  433,  433,  433,  433,  433,  433,  433,  433,
    400       152,  433,  433,   92,  433,   94,  433,  433,   96,  433,
    401       433,  433,  433,  433,  433,  433,  433,  104,  433,    4,
    402       433,  433,  433,  433,  433,  433,  433,   45,   62,   66,
    403        70,  433,  433,  433,   93,  433,  433,  433,  433,  433,
    404       433,  433,  433,   89,  120,  433,  433,  433,  433,   59,
    405        60,   61,  122,  433,   91,    0,  365,  366,    0,    0,
    406         0,    0,    0,  373,    0,    0,    0,  433,  433,  433,
    407       244,  249,  254,  259,  125,  433,  433,  378,  433,  433,
    408       380,  433,  433,  433,  128,  433,  433,  433,  433,  433,
    409 
    410       433,  433,  433,  170,  433,  433,  433,  172,  135,  433,
    411       433,  433,  433,  433,  433,  139,  433,  433,  433,  433,
    412       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    413       433,  433,  433,  194,  433,  433,  433,  433,  433,  433,
    414       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    415       396,  433,  433,  214,  433,  433,  433,  433,  433,  433,
    416       433,  433,  433,  402,  433,  433,  433,  344,  349,  354,
    417       359,  433,  405,  239,  433,  407,  433,  433,  433,  433,
    418       153,  433,   95,   50,   51,   52,  433,   98,  433,  433,
    419       433,   77,   81,   85,  433,   74,   75,   76,   90,  105,
    420 
    421        43,  109,  433,  433,   53,   54,   55,  433,  433,  433,
    422       433,  433,  433,    2,  433,  433,  433,  433,  433,  433,
    423       433,  433,  433,  433,   56,   57,   58,  433,  123,    0,
    424       367,  368,  370,    0,    0,    0,  375,    0,  433,  433,
    425       433,  433,  433,  433,  433,  158,  433,  433,  433,  433,
    426       433,  433,  433,  433,  433,  433,  382,  433,  433,  433,
    427       133,  304,  309,  314,  319,  433,  433,  171,  264,  269,
    428       274,  279,  386,  433,  433,  433,  433,  178,  433,  325,
    429       330,  335,  340,  326,  331,  336,  341,  327,  332,  337,
    430       342,  328,  333,  338,  343,  433,  433,  183,  433,  185,
    431 
    432       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    433       433,  433,  433,  394,  433,  433,  433,  433,  143,  433,
    434       433,  433,  433,  433,  433,  213,  397,  398,  433,  217,
    435       218,  148,  149,  433,  433,  433,  433,  433,  433,  433,
    436       433,  433,  433,  433,  433,  433,  240,  433,  433,  433,
    437       433,  433,  433,  433,  433,  433,  433,  433,  103,  433,
    438       433,    6,   63,   64,   65,   67,   68,   69,   71,   72,
    439        73,  433,  433,  433,  113,    3,    5,  118,  433,  119,
    440       433,  433,  433,  433,  364,  371,    0,  374,    0,  433,
    441       433,  433,  245,  250,  255,  260,  246,  251,  256,  261,
    442 
    443       247,  252,  257,  262,  248,  253,  258,  263,  433,  160,
    444       433,  433,  162,  433,  433,  433,  433,  130,  433,  131,
    445       433,  284,  289,  294,  299,  433,  433,  433,  433,  433,
    446       433,  433,  433,  433,  433,  173,  433,  433,  433,  433,
    447       433,  182,  433,  389,  433,  433,  433,  433,  433,  433,
    448       433,  433,  433,  196,  392,  433,  433,  433,  433,  433,
    449       433,  433,  433,  433,  433,  209,  433,  433,  433,  220,
    450       433,  433,  433,  433,  235,  433,  345,  350,  355,  360,
    451       346,  351,  356,  361,  347,  352,  357,  362,  348,  353,
    452       358,  363,  151,  433,  433,  433,  408,  433,  433,  433,
    453 
    454       433,  100,  101,   78,   79,   80,   82,   83,   84,   86,
    455        87,   88,  433,  433,   44,  433,  433,  209,  433,  224,
    456       121,  433,   49,  372,  376,  433,  433,  433,  433,  127,
    457       433,  433,  433,  433,  433,  433,  129,  433,  433,  433,
    458       433,  433,  433,  305,  310,  315,  320,  306,  311,  316,
    459       321,  307,  312,  317,  322,  308,  313,  318,  323,  433,
    460       385,  265,  270,  275,  280,  266,  271,  276,  281,  267,
    461       272,  277,  282,  268,  273,  278,  283,  433,  433,  433,
    462       433,  433,  433,  433,  433,  433,  391,  433,  433,  433,
    463       433,  433,  433,  433,  199,  433,  433,  433,  201,  433,
    464 
    465       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    466       433,  433,  400,  433,  433,  433,  433,  236,  404,  406,
    467       433,  433,  243,  433,   97,   99,  433,  433,  433,  433,
    468       433,  433,  433,  433,  433,  433,  433,  376,  433,  433,
    469       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    470       285,  290,  295,  300,  286,  291,  296,  301,  287,  292,
    471       297,  302,  288,  293,  298,  303,  433,  433,  433,  433,
    472       433,  180,  433,  186,  433,  433,  433,  433,  433,  433,
    473       433,  393,  433,  433,  433,  200,  433,  433,  433,  144,
    474       145,  146,  433,  433,  433,  433,  433,  433,  433,  221,
    475 
    476       225,  227,  231,  433,  433,  433,  433,  433,   48,   47,
    477       433,  433,  433,  433,  433,  433,   46,  114,  115,  116,
    478       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    479       157,  433,  433,  433,  433,  433,  381,  433,  433,  433,
    480       433,  433,  433,  177,  179,  184,  433,  433,  433,  190,
    481       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    482       433,  433,  433,  433,  433,  215,  433,  433,  433,  433,
    483       433,  433,  433,  433,  433,  433,  433,   14,   15,   16,
    484       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    485       433,    1,   20,   21,   22,  433,  433,  433,  433,  433,
    486 
    487       433,  433,  433,  433,  433,  433,  433,  433,  433,  175,
    488       433,  433,  189,  433,  193,  195,  433,  433,  433,  433,
    489       433,  204,  206,  208,  433,  147,  433,  433,  433,  399,
    490       433,  222,  433,  433,  433,  229,  232,  237,  433,  433,
    491       433,  433,  433,  433,  433,  433,  433,  433,  433,  433,
    492       433,   37,  433,  433,  433,  117,  433,  433,  433,  433,
    493       433,  433,  433,  156,  433,  161,  433,  433,  433,  433,
    494       433,  169,  383,  433,  433,  433,  433,  433,  433,  433,
    495       433,  433,  433,  433,  433,  211,  433,  433,  433,  433,
    496       433,  433,  433,  433,  433,  433,  242,  433,  433,   38,
    497 
    498       433,  433,   17,  433,  433,  433,  433,  433,  433,  433,
    499       433,  433,  433,  433,  433,   39,  433,  433,   23,  433,
    500       433,  164,  433,  165,  433,  433,  433,  433,  433,  141,
    501       192,  433,  433,  433,  433,  433,  433,  433,  433,  210,
    502       433,  433,  223,  433,  433,  433,  433,  433,  433,  433,
    503       433,  433,  433,  433,  433,  111,  433,  433,  433,  433,
    504        26,  433,   30,  433,  433,  433,  433,  433,  433,  433,
    505       433,  433,  433,  433,  433,  433,  433,  174,  433,  433,
    506       433,  433,  433,  433,  433,  433,  433,  433,  433,  226,
    507       228,  433,  433,  238,  241,  433,  433,  433,   28,   31,
    508 
    509       433,   10,  433,   11,  433,  433,  433,  433,  433,  433,
    510       433,  433,   29,   32,  433,  433,  433,  433,  433,  433,
    511       433,  187,  197,  433,  433,  433,  433,  433,  433,  433,
    512       433,  433,  433,  433,   18,   19,  433,  433,  433,    7,
    513       433,  433,  433,    8,  433,  433,   24,   25,  433,  433,
    514       433,  433,  163,  433,  433,  168,  395,  198,  433,  433,
    515       205,  207,  433,  216,  219,  230,  233,  433,  433,  433,
    516       433,   40,  433,   33,  433,  433,  433,  433,  159,  433,
    517       167,  433,  433,  433,   41,   35,  433,  433,  433,  433,
    518         9,   42,   36,  433,  433,  433,  203,  433,  433,  433,
    519 
    520       433,  433,  433,  433,  202,  433,  433,  433,   27,  433,
    521       433,  433,  433,   12,   13,  433,  433,  433,  433,  433,
    522       154,  433,  212,   34,  166,    0
     344        0,    0,  437,  437,  442,  442,  444,  434,  432,  433,
     345      434,  434,  434,  434,  434,  434,  434,  434,  429,  429,
     346      434,  434,  434,  431,  431,  431,  431,  431,  431,  431,
     347      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     348      431,  431,  431,  431,  434,  430,  430,  431,  431,  431,
     349      431,  430,  431,  431,  431,  431,  431,  431,  430,  430,
     350      430,  430,  430,  431,  431,  430,  430,  434,  437,  438,
     351      439,  442,  441,  432,  411,    0,    0,    0,    0,    0,
     352        0,    0,    0,  419,  414,  424,  417,  406,  420,  407,
     353      421,  435,  440,  418,    0,  428,  429,  412,  408,  410,
     354
     355      409,  413,  431,  431,  431,  431,  431,  431,  431,  431,
     356      431,  431,  431,  431,  431,  431,  431,  431,  431,  129,
     357      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     358      431,  431,  431,  431,  431,  134,  135,  431,  431,  431,
     359      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     360      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     361      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     362      431,  431,  431,  431,  425,  416,  430,  431,  431,  430,
     363      431,  431,  431,  431,  431,  431,  431,   99,  431,  431,
     364      431,  431,  431,  430,  431,  104,  105,  431,  431,  431,
     365
     366      431,  431,  431,  431,  431,  431,  430,  431,  430,  431,
     367      431,  431,  430,  431,  431,  431,  431,  431,  431,  431,
     368      431,  431,  431,  431,  431,  430,  426,  415,  437,  436,
     369      442,    0,    0,    0,    0,  366,    0,    0,    0,    0,
     370        0,  427,  422,  423,  431,  152,  431,  431,  431,  431,
     371      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     372      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     373      431,  431,  431,  431,  431,  133,  431,  431,  431,  431,
     374      431,  431,  431,  431,  431,  431,  137,  431,  431,  431,
     375      431,  431,  387,  431,  431,  431,  431,  139,  431,  431,
     376
     377      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     378      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     379      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     380      431,  431,  400,  431,  431,  431,  431,  431,  431,  431,
     381      431,  431,  431,  431,  431,  430,  431,  431,  431,  431,
     382      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     383      431,  431,  103,  431,  431,  107,  431,  431,  431,  431,
     384      431,  431,  431,  431,  109,  431,  430,  431,  431,  431,
     385      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     386      431,  431,  431,  431,  430,    0,    0,    0,    0,    0,
     387
     388        0,    0,    0,    0,    0,    0,    0,  431,  431,  374,
     389      431,  121,  431,  431,  431,  123,  431,  431,  431,  376,
     390      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     391      431,  431,  431,  131,  381,  431,  431,  431,  431,  431,
     392      431,  431,  384,  431,  173,  431,  431,  431,  431,  321,
     393      326,  331,  336,  431,  178,  385,  431,  431,  431,  431,
     394      431,  185,  431,  431,  431,  188,  431,  431,  431,  431,
     395      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     396      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     397      431,  431,  431,  431,  431,  431,  398,  431,  431,  231,
     398
     399      431,  147,  431,  431,  431,  431,  431,  431,  431,  431,
     400      149,  431,  431,  430,  431,   91,  431,  431,   93,  431,
     401      431,  431,  431,  431,  431,  431,  431,  101,  431,    4,
     402      431,  431,  431,  431,  431,  431,  431,   45,   62,   66,
     403       70,  431,  431,  431,  430,  431,  431,  431,  431,  431,
     404      431,  431,  431,   89,  117,  431,  431,  431,  431,   59,
     405       60,   61,  119,  431,  430,    0,  362,  363,    0,    0,
     406        0,    0,    0,  370,    0,    0,    0,  431,  431,  431,
     407      241,  246,  251,  256,  122,  431,  431,  375,  431,  431,
     408      377,  431,  431,  431,  125,  431,  431,  431,  431,  431,
     409
     410      431,  431,  431,  167,  431,  431,  431,  169,  132,  431,
     411      431,  431,  431,  431,  431,  136,  431,  431,  431,  431,
     412      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     413      431,  431,  431,  191,  431,  431,  431,  431,  431,  431,
     414      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     415      393,  431,  431,  211,  431,  431,  431,  431,  431,  431,
     416      431,  431,  431,  399,  431,  431,  431,  341,  346,  351,
     417      356,  431,  402,  236,  431,  404,  431,  431,  431,  431,
     418      150,  431,   92,   50,   51,   52,  431,   95,  431,  431,
     419      431,   77,   81,   85,  431,   74,   75,   76,   90,  102,
     420
     421       43,  106,  431,  431,   53,   54,   55,  431,  431,  431,
     422      431,  431,  431,    2,  431,  431,  431,  431,  431,  431,
     423      431,  431,  431,  431,   56,   57,   58,  431,  120,    0,
     424      364,  365,  367,    0,    0,    0,  372,    0,  431,  431,
     425      431,  431,  431,  431,  431,  155,  431,  431,  431,  431,
     426      431,  431,  431,  431,  431,  431,  379,  431,  431,  431,
     427      130,  301,  306,  311,  316,  431,  431,  168,  261,  266,
     428      271,  276,  383,  431,  431,  431,  431,  175,  431,  322,
     429      327,  332,  337,  323,  328,  333,  338,  324,  329,  334,
     430      339,  325,  330,  335,  340,  431,  431,  180,  431,  182,
     431
     432      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     433      431,  431,  431,  391,  431,  431,  431,  431,  140,  431,
     434      431,  431,  431,  431,  431,  210,  394,  395,  431,  214,
     435      215,  145,  146,  431,  431,  431,  431,  431,  431,  431,
     436      431,  431,  431,  431,  431,  431,  237,  431,  431,  431,
     437      431,  431,  431,  431,  431,  431,  431,  431,  100,  431,
     438      431,    6,   63,   64,   65,   67,   68,   69,   71,   72,
     439       73,  431,  431,  431,  110,    3,    5,  115,  431,  116,
     440      431,  431,  431,  431,  361,  368,    0,  371,    0,  431,
     441      431,  431,  242,  247,  252,  257,  243,  248,  253,  258,
     442
     443      244,  249,  254,  259,  245,  250,  255,  260,  431,  157,
     444      431,  431,  159,  431,  431,  431,  431,  127,  431,  128,
     445      431,  281,  286,  291,  296,  431,  431,  431,  431,  431,
     446      431,  431,  431,  431,  431,  170,  431,  431,  431,  431,
     447      431,  179,  431,  386,  431,  431,  431,  431,  431,  431,
     448      431,  431,  431,  193,  389,  431,  431,  431,  431,  431,
     449      431,  431,  431,  431,  431,  206,  431,  431,  431,  217,
     450      431,  431,  431,  431,  232,  431,  342,  347,  352,  357,
     451      343,  348,  353,  358,  344,  349,  354,  359,  345,  350,
     452      355,  360,  148,  431,  431,  431,  405,  431,  431,  431,
     453
     454      431,   97,   98,   78,   79,   80,   82,   83,   84,   86,
     455       87,   88,  431,  431,   44,  431,  431,  206,  431,  221,
     456      118,  431,   49,  369,  373,  431,  431,  431,  431,  124,
     457      431,  431,  431,  431,  431,  431,  126,  431,  431,  431,
     458      431,  431,  431,  302,  307,  312,  317,  303,  308,  313,
     459      318,  304,  309,  314,  319,  305,  310,  315,  320,  431,
     460      382,  262,  267,  272,  277,  263,  268,  273,  278,  264,
     461      269,  274,  279,  265,  270,  275,  280,  431,  431,  431,
     462      431,  431,  431,  431,  431,  431,  388,  431,  431,  431,
     463      431,  431,  431,  431,  196,  431,  431,  431,  198,  431,
     464
     465      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     466      431,  431,  397,  431,  431,  431,  431,  233,  401,  403,
     467      431,  431,  240,  431,   94,   96,  431,  431,  431,  431,
     468      431,  431,  431,  431,  431,  431,  431,  373,  431,  431,
     469      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     470      282,  287,  292,  297,  283,  288,  293,  298,  284,  289,
     471      294,  299,  285,  290,  295,  300,  431,  431,  431,  431,
     472      431,  177,  431,  183,  431,  431,  431,  431,  431,  431,
     473      431,  390,  431,  431,  431,  197,  431,  431,  431,  141,
     474      142,  143,  431,  431,  431,  431,  431,  431,  431,  218,
     475
     476      222,  224,  228,  431,  431,  431,  431,  431,   48,   47,
     477      431,  431,  431,  431,  431,  431,   46,  111,  112,  113,
     478      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     479      154,  431,  431,  431,  431,  431,  378,  431,  431,  431,
     480      431,  431,  431,  174,  176,  181,  431,  431,  431,  187,
     481      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     482      431,  431,  431,  431,  431,  212,  431,  431,  431,  431,
     483      431,  431,  431,  431,  431,  431,  431,   14,   15,   16,
     484      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     485      431,    1,   20,   21,   22,  431,  431,  431,  431,  431,
     486
     487      431,  431,  431,  431,  431,  431,  431,  431,  431,  172,
     488      431,  431,  186,  431,  190,  192,  431,  431,  431,  431,
     489      431,  201,  203,  205,  431,  144,  431,  431,  431,  396,
     490      431,  219,  431,  431,  431,  226,  229,  234,  431,  431,
     491      431,  431,  431,  431,  431,  431,  431,  431,  431,  431,
     492      431,   37,  431,  431,  431,  114,  431,  431,  431,  431,
     493      431,  431,  431,  153,  431,  158,  431,  431,  431,  431,
     494      431,  166,  380,  431,  431,  431,  431,  431,  431,  431,
     495      431,  431,  431,  431,  431,  208,  431,  431,  431,  431,
     496      431,  431,  431,  431,  431,  431,  239,  431,  431,   38,
     497
     498      431,  431,   17,  431,  431,  431,  431,  431,  431,  431,
     499      431,  431,  431,  431,  431,   39,  431,  431,   23,  431,
     500      431,  161,  431,  162,  431,  431,  431,  431,  431,  138,
     501      189,  431,  431,  431,  431,  431,  431,  431,  431,  207,
     502      431,  431,  220,  431,  431,  431,  431,  431,  431,  431,
     503      431,  431,  431,  431,  431,  108,  431,  431,  431,  431,
     504       26,  431,   30,  431,  431,  431,  431,  431,  431,  431,
     505      431,  431,  431,  431,  431,  431,  431,  171,  431,  431,
     506      431,  431,  431,  431,  431,  431,  431,  431,  431,  223,
     507      225,  431,  431,  235,  238,  431,  431,  431,   28,   31,
     508
     509      431,   10,  431,   11,  431,  431,  431,  431,  431,  431,
     510      431,  431,   29,   32,  431,  431,  431,  431,  431,  431,
     511      431,  184,  194,  431,  431,  431,  431,  431,  431,  431,
     512      431,  431,  431,  431,   18,   19,  431,  431,  431,    7,
     513      431,  431,  431,    8,  431,  431,   24,   25,  431,  431,
     514      431,  431,  160,  431,  431,  165,  392,  195,  431,  431,
     515      202,  204,  431,  213,  216,  227,  230,  431,  431,  431,
     516      431,   40,  431,   33,  431,  431,  431,  431,  156,  431,
     517      164,  431,  431,  431,   41,   35,  431,  431,  431,  431,
     518        9,   42,   36,  431,  431,  431,  200,  431,  431,  431,
     519
     520      431,  431,  431,  431,  199,  431,  431,  431,   27,  431,
     521      431,  431,  431,   12,   13,  431,  431,  431,  431,  431,
     522      151,  431,  209,   34,  163,    0
    523523    } ;
    524524
     
    23132313{ yylval->ival = 0; return token::BOOLCONSTANT; }
    23142314        YY_BREAK
    2315 case 91:
    2316 YY_RULE_SETUP
    2317 #line 170 "gpu/lolfx-scanner.l"
    2318 { return token::FIELDSELECTION; }
    2319         YY_BREAK
    2320 case 92:
    2321 YY_RULE_SETUP
    2322 #line 171 "gpu/lolfx-scanner.l"
    2323 { return token::FIELDSELECTION; }
    2324         YY_BREAK
    2325 case 93:
    2326 YY_RULE_SETUP
    2327 #line 172 "gpu/lolfx-scanner.l"
    2328 { return token::FIELDSELECTION; }
    2329         YY_BREAK
    23302315/*
    23312316  * GLSL keywords that are also valid or reserved in HLSL
    23322317  * and HLSL keywords that are also valid or reserved in GLSL.
    23332318  */
     2319case 91:
     2320YY_RULE_SETUP
     2321#line 175 "gpu/lolfx-scanner.l"
     2322{ return token::GHT_BOOL; }
     2323        YY_BREAK
     2324case 92:
     2325YY_RULE_SETUP
     2326#line 176 "gpu/lolfx-scanner.l"
     2327{ return token::GHT_BREAK; }
     2328        YY_BREAK
     2329case 93:
     2330YY_RULE_SETUP
     2331#line 177 "gpu/lolfx-scanner.l"
     2332{ return token::GHT_CASE; }
     2333        YY_BREAK
    23342334case 94:
    23352335YY_RULE_SETUP
     2336#line 178 "gpu/lolfx-scanner.l"
     2337{ return token::GHT_CENTROID; }
     2338        YY_BREAK
     2339case 95:
     2340YY_RULE_SETUP
    23362341#line 179 "gpu/lolfx-scanner.l"
    2337 { return token::GHT_BOOL; }
    2338         YY_BREAK
    2339 case 95:
     2342{ return token::GHT_CONST; }
     2343        YY_BREAK
     2344case 96:
    23402345YY_RULE_SETUP
    23412346#line 180 "gpu/lolfx-scanner.l"
    2342 { return token::GHT_BREAK; }
    2343         YY_BREAK
    2344 case 96:
     2347{ return token::GHT_CONTINUE; }
     2348        YY_BREAK
     2349case 97:
    23452350YY_RULE_SETUP
    23462351#line 181 "gpu/lolfx-scanner.l"
    2347 { return token::GHT_CASE; }
    2348         YY_BREAK
    2349 case 97:
     2352{ return token::GHT_DEFAULT; }
     2353        YY_BREAK
     2354case 98:
    23502355YY_RULE_SETUP
    23512356#line 182 "gpu/lolfx-scanner.l"
    2352 { return token::GHT_CENTROID; }
    2353         YY_BREAK
    2354 case 98:
     2357{ return token::GHT_DISCARD; }
     2358        YY_BREAK
     2359case 99:
    23552360YY_RULE_SETUP
    23562361#line 183 "gpu/lolfx-scanner.l"
    2357 { return token::GHT_CONST; }
    2358         YY_BREAK
    2359 case 99:
     2362{ return token::GHT_DO; }
     2363        YY_BREAK
     2364case 100:
    23602365YY_RULE_SETUP
    23612366#line 184 "gpu/lolfx-scanner.l"
    2362 { return token::GHT_CONTINUE; }
    2363         YY_BREAK
    2364 case 100:
     2367{ return token::GHT_DOUBLE; }
     2368        YY_BREAK
     2369case 101:
    23652370YY_RULE_SETUP
    23662371#line 185 "gpu/lolfx-scanner.l"
    2367 { return token::GHT_DEFAULT; }
    2368         YY_BREAK
    2369 case 101:
     2372{ return token::GHT_ELSE; }
     2373        YY_BREAK
     2374case 102:
    23702375YY_RULE_SETUP
    23712376#line 186 "gpu/lolfx-scanner.l"
    2372 { return token::GHT_DISCARD; }
    2373         YY_BREAK
    2374 case 102:
     2377{ return token::GHT_FLOAT; }
     2378        YY_BREAK
     2379case 103:
    23752380YY_RULE_SETUP
    23762381#line 187 "gpu/lolfx-scanner.l"
    2377 { return token::GHT_DO; }
    2378         YY_BREAK
    2379 case 103:
     2382{ return token::GHT_FOR; }
     2383        YY_BREAK
     2384case 104:
    23802385YY_RULE_SETUP
    23812386#line 188 "gpu/lolfx-scanner.l"
    2382 { return token::GHT_DOUBLE; }
    2383         YY_BREAK
    2384 case 104:
     2387{ return token::GHT_IF; }
     2388        YY_BREAK
     2389case 105:
    23852390YY_RULE_SETUP
    23862391#line 189 "gpu/lolfx-scanner.l"
    2387 { return token::GHT_ELSE; }
    2388         YY_BREAK
    2389 case 105:
     2392{ return token::GHT_IN; }
     2393        YY_BREAK
     2394case 106:
    23902395YY_RULE_SETUP
    23912396#line 190 "gpu/lolfx-scanner.l"
    2392 { return token::GHT_FLOAT; }
    2393         YY_BREAK
    2394 case 106:
     2397{ return token::GHT_INOUT; }
     2398        YY_BREAK
     2399case 107:
    23952400YY_RULE_SETUP
    23962401#line 191 "gpu/lolfx-scanner.l"
    2397 { return token::GHT_FOR; }
    2398         YY_BREAK
    2399 case 107:
     2402{ return token::GHT_INT; }
     2403        YY_BREAK
     2404case 108:
    24002405YY_RULE_SETUP
    24012406#line 192 "gpu/lolfx-scanner.l"
    2402 { return token::GHT_IF; }
    2403         YY_BREAK
    2404 case 108:
     2407{ return token::GHT_NOPERSPECTIVE; }
     2408        YY_BREAK
     2409case 109:
    24052410YY_RULE_SETUP
    24062411#line 193 "gpu/lolfx-scanner.l"
    2407 { return token::GHT_IN; }
    2408         YY_BREAK
    2409 case 109:
     2412{ return token::GHT_OUT; }
     2413        YY_BREAK
     2414case 110:
    24102415YY_RULE_SETUP
    24112416#line 194 "gpu/lolfx-scanner.l"
    2412 { return token::GHT_INOUT; }
    2413         YY_BREAK
    2414 case 110:
     2417{ return token::GHT_RETURN; }
     2418        YY_BREAK
     2419case 111:
    24152420YY_RULE_SETUP
    24162421#line 195 "gpu/lolfx-scanner.l"
    2417 { return token::GHT_INT; }
    2418         YY_BREAK
    2419 case 111:
     2422{ return token::GHT_SAMPLER1D; }
     2423        YY_BREAK
     2424case 112:
    24202425YY_RULE_SETUP
    24212426#line 196 "gpu/lolfx-scanner.l"
    2422 { return token::GHT_NOPERSPECTIVE; }
    2423         YY_BREAK
    2424 case 112:
     2427{ return token::GHT_SAMPLER2D; }
     2428        YY_BREAK
     2429case 113:
    24252430YY_RULE_SETUP
    24262431#line 197 "gpu/lolfx-scanner.l"
    2427 { return token::GHT_OUT; }
    2428         YY_BREAK
    2429 case 113:
     2432{ return token::GHT_SAMPLER3D; }
     2433        YY_BREAK
     2434case 114:
    24302435YY_RULE_SETUP
    24312436#line 198 "gpu/lolfx-scanner.l"
    2432 { return token::GHT_RETURN; }
    2433         YY_BREAK
    2434 case 114:
     2437{ return token::GHT_SAMPLERCUBE; }
     2438        YY_BREAK
     2439case 115:
    24352440YY_RULE_SETUP
    24362441#line 199 "gpu/lolfx-scanner.l"
    2437 { return token::GHT_SAMPLER1D; }
    2438         YY_BREAK
    2439 case 115:
     2442{ return token::GHT_STRUCT; }
     2443        YY_BREAK
     2444case 116:
    24402445YY_RULE_SETUP
    24412446#line 200 "gpu/lolfx-scanner.l"
    2442 { return token::GHT_SAMPLER2D; }
    2443         YY_BREAK
    2444 case 116:
     2447{ return token::GHT_SWITCH; }
     2448        YY_BREAK
     2449case 117:
    24452450YY_RULE_SETUP
    24462451#line 201 "gpu/lolfx-scanner.l"
    2447 { return token::GHT_SAMPLER3D; }
    2448         YY_BREAK
    2449 case 117:
     2452{ return token::GHT_UINT; }
     2453        YY_BREAK
     2454case 118:
    24502455YY_RULE_SETUP
    24512456#line 202 "gpu/lolfx-scanner.l"
    2452 { return token::GHT_SAMPLERCUBE; }
    2453         YY_BREAK
    2454 case 118:
     2457{ return token::GHT_UNIFORM; }
     2458        YY_BREAK
     2459case 119:
    24552460YY_RULE_SETUP
    24562461#line 203 "gpu/lolfx-scanner.l"
    2457 { return token::GHT_STRUCT; }
    2458         YY_BREAK
    2459 case 119:
     2462{ return token::GHT_VOID; }
     2463        YY_BREAK
     2464case 120:
    24602465YY_RULE_SETUP
    24612466#line 204 "gpu/lolfx-scanner.l"
    2462 { return token::GHT_SWITCH; }
    2463         YY_BREAK
    2464 case 120:
    2465 YY_RULE_SETUP
    2466 #line 205 "gpu/lolfx-scanner.l"
    2467 { return token::GHT_UINT; }
     2467{ return token::GHT_WHILE; }
    24682468        YY_BREAK
    24692469case 121:
    24702470YY_RULE_SETUP
    24712471#line 206 "gpu/lolfx-scanner.l"
    2472 { return token::GHT_UNIFORM; }
     2472{ return token::HGT_BOOL; }
    24732473        YY_BREAK
    24742474case 122:
    24752475YY_RULE_SETUP
    24762476#line 207 "gpu/lolfx-scanner.l"
    2477 { return token::GHT_VOID; }
     2477{ return token::HGT_BREAK; }
    24782478        YY_BREAK
    24792479case 123:
    24802480YY_RULE_SETUP
    24812481#line 208 "gpu/lolfx-scanner.l"
    2482 { return token::GHT_WHILE; }
     2482{ return token::HGT_CASE; }
    24832483        YY_BREAK
    24842484case 124:
    24852485YY_RULE_SETUP
     2486#line 209 "gpu/lolfx-scanner.l"
     2487{ return token::HGT_CENTROID; }
     2488        YY_BREAK
     2489case 125:
     2490YY_RULE_SETUP
    24862491#line 210 "gpu/lolfx-scanner.l"
    2487 { return token::HGT_BOOL; }
    2488         YY_BREAK
    2489 case 125:
     2492{ return token::HGT_CONST; }
     2493        YY_BREAK
     2494case 126:
    24902495YY_RULE_SETUP
    24912496#line 211 "gpu/lolfx-scanner.l"
    2492 { return token::HGT_BREAK; }
    2493         YY_BREAK
    2494 case 126:
     2497{ return token::HGT_CONTINUE; }
     2498        YY_BREAK
     2499case 127:
    24952500YY_RULE_SETUP
    24962501#line 212 "gpu/lolfx-scanner.l"
    2497 { return token::HGT_CASE; }
    2498         YY_BREAK
    2499 case 127:
     2502{ return token::HGT_DEFAULT; }
     2503        YY_BREAK
     2504case 128:
    25002505YY_RULE_SETUP
    25012506#line 213 "gpu/lolfx-scanner.l"
    2502 { return token::HGT_CENTROID; }
    2503         YY_BREAK
    2504 case 128:
     2507{ return token::HGT_DISCARD; }
     2508        YY_BREAK
     2509case 129:
    25052510YY_RULE_SETUP
    25062511#line 214 "gpu/lolfx-scanner.l"
    2507 { return token::HGT_CONST; }
    2508         YY_BREAK
    2509 case 129:
     2512{ return token::HGT_DO; }
     2513        YY_BREAK
     2514case 130:
    25102515YY_RULE_SETUP
    25112516#line 215 "gpu/lolfx-scanner.l"
    2512 { return token::HGT_CONTINUE; }
    2513         YY_BREAK
    2514 case 130:
     2517{ return token::HGT_DOUBLE; }
     2518        YY_BREAK
     2519case 131:
    25152520YY_RULE_SETUP
    25162521#line 216 "gpu/lolfx-scanner.l"
    2517 { return token::HGT_DEFAULT; }
    2518         YY_BREAK
    2519 case 131:
     2522{ return token::HGT_ELSE; }
     2523        YY_BREAK
     2524case 132:
    25202525YY_RULE_SETUP
    25212526#line 217 "gpu/lolfx-scanner.l"
    2522 { return token::HGT_DISCARD; }
    2523         YY_BREAK
    2524 case 132:
     2527{ return token::HGT_FLOAT; }
     2528        YY_BREAK
     2529case 133:
    25252530YY_RULE_SETUP
    25262531#line 218 "gpu/lolfx-scanner.l"
    2527 { return token::HGT_DO; }
    2528         YY_BREAK
    2529 case 133:
     2532{ return token::HGT_FOR; }
     2533        YY_BREAK
     2534case 134:
    25302535YY_RULE_SETUP
    25312536#line 219 "gpu/lolfx-scanner.l"
    2532 { return token::HGT_DOUBLE; }
    2533         YY_BREAK
    2534 case 134:
     2537{ return token::HGT_IF; }
     2538        YY_BREAK
     2539case 135:
    25352540YY_RULE_SETUP
    25362541#line 220 "gpu/lolfx-scanner.l"
    2537 { return token::HGT_ELSE; }
    2538         YY_BREAK
    2539 case 135:
     2542{ return token::HGT_IN; }
     2543        YY_BREAK
     2544case 136:
    25402545YY_RULE_SETUP
    25412546#line 221 "gpu/lolfx-scanner.l"
    2542 { return token::HGT_FLOAT; }
    2543         YY_BREAK
    2544 case 136:
     2547{ return token::HGT_INOUT; }
     2548        YY_BREAK
     2549case 137:
    25452550YY_RULE_SETUP
    25462551#line 222 "gpu/lolfx-scanner.l"
    2547 { return token::HGT_FOR; }
    2548         YY_BREAK
    2549 case 137:
     2552{ return token::HGT_INT; }
     2553        YY_BREAK
     2554case 138:
    25502555YY_RULE_SETUP
    25512556#line 223 "gpu/lolfx-scanner.l"
    2552 { return token::HGT_IF; }
    2553         YY_BREAK
    2554 case 138:
     2557{ return token::HGT_NOPERSPECTIVE; }
     2558        YY_BREAK
     2559case 139:
    25552560YY_RULE_SETUP
    25562561#line 224 "gpu/lolfx-scanner.l"
    2557 { return token::HGT_IN; }
    2558         YY_BREAK
    2559 case 139:
     2562{ return token::HGT_OUT; }
     2563        YY_BREAK
     2564case 140:
    25602565YY_RULE_SETUP
    25612566#line 225 "gpu/lolfx-scanner.l"
    2562 { return token::HGT_INOUT; }
    2563         YY_BREAK
    2564 case 140:
     2567{ return token::HGT_RETURN; }
     2568        YY_BREAK
     2569case 141:
    25652570YY_RULE_SETUP
    25662571#line 226 "gpu/lolfx-scanner.l"
    2567 { return token::HGT_INT; }
    2568         YY_BREAK
    2569 case 141:
     2572{ return token::HGT_SAMPLER1D; }
     2573        YY_BREAK
     2574case 142:
    25702575YY_RULE_SETUP
    25712576#line 227 "gpu/lolfx-scanner.l"
    2572 { return token::HGT_NOPERSPECTIVE; }
    2573         YY_BREAK
    2574 case 142:
     2577{ return token::HGT_SAMPLER2D; }
     2578        YY_BREAK
     2579case 143:
    25752580YY_RULE_SETUP
    25762581#line 228 "gpu/lolfx-scanner.l"
    2577 { return token::HGT_OUT; }
    2578         YY_BREAK
    2579 case 143:
     2582{ return token::HGT_SAMPLER3D; }
     2583        YY_BREAK
     2584case 144:
    25802585YY_RULE_SETUP
    25812586#line 229 "gpu/lolfx-scanner.l"
    2582 { return token::HGT_RETURN; }
    2583         YY_BREAK
    2584 case 144:
     2587{ return token::HGT_SAMPLERCUBE; }
     2588        YY_BREAK
     2589case 145:
    25852590YY_RULE_SETUP
    25862591#line 230 "gpu/lolfx-scanner.l"
    2587 { return token::HGT_SAMPLER1D; }
    2588         YY_BREAK
    2589 case 145:
     2592{ return token::HGT_STRUCT; }
     2593        YY_BREAK
     2594case 146:
    25902595YY_RULE_SETUP
    25912596#line 231 "gpu/lolfx-scanner.l"
    2592 { return token::HGT_SAMPLER2D; }
    2593         YY_BREAK
    2594 case 146:
     2597{ return token::HGT_SWITCH; }
     2598        YY_BREAK
     2599case 147:
    25952600YY_RULE_SETUP
    25962601#line 232 "gpu/lolfx-scanner.l"
    2597 { return token::HGT_SAMPLER3D; }
    2598         YY_BREAK
    2599 case 147:
     2602{ return token::HGT_UINT; }
     2603        YY_BREAK
     2604case 148:
    26002605YY_RULE_SETUP
    26012606#line 233 "gpu/lolfx-scanner.l"
    2602 { return token::HGT_SAMPLERCUBE; }
    2603         YY_BREAK
    2604 case 148:
     2607{ return token::HGT_UNIFORM; }
     2608        YY_BREAK
     2609case 149:
    26052610YY_RULE_SETUP
    26062611#line 234 "gpu/lolfx-scanner.l"
    2607 { return token::HGT_STRUCT; }
    2608         YY_BREAK
    2609 case 149:
     2612{ return token::HGT_VOID; }
     2613        YY_BREAK
     2614case 150:
    26102615YY_RULE_SETUP
    26112616#line 235 "gpu/lolfx-scanner.l"
    2612 { return token::HGT_SWITCH; }
    2613         YY_BREAK
    2614 case 150:
    2615 YY_RULE_SETUP
    2616 #line 236 "gpu/lolfx-scanner.l"
    2617 { return token::HGT_UINT; }
    2618         YY_BREAK
    2619 case 151:
    2620 YY_RULE_SETUP
    2621 #line 237 "gpu/lolfx-scanner.l"
    2622 { return token::HGT_UNIFORM; }
    2623         YY_BREAK
    2624 case 152:
    2625 YY_RULE_SETUP
    2626 #line 238 "gpu/lolfx-scanner.l"
    2627 { return token::HGT_VOID; }
    2628         YY_BREAK
    2629 case 153:
    2630 YY_RULE_SETUP
    2631 #line 239 "gpu/lolfx-scanner.l"
    26322617{ return token::HGT_WHILE; }
    26332618        YY_BREAK
     
    26362621  * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb509568%28v=vs.85%29.aspx
    26372622  */
     2623case 151:
     2624YY_RULE_SETUP
     2625#line 242 "gpu/lolfx-scanner.l"
     2626{ return token::HT_APPENDSTRUCTUREDBUFFER; }
     2627        YY_BREAK
     2628case 152:
     2629YY_RULE_SETUP
     2630#line 243 "gpu/lolfx-scanner.l"
     2631{ return token::HT_ASM; }
     2632        YY_BREAK
     2633case 153:
     2634YY_RULE_SETUP
     2635#line 244 "gpu/lolfx-scanner.l"
     2636{ return token::HT_ASM_FRAGMENT; }
     2637        YY_BREAK
    26382638case 154:
    26392639YY_RULE_SETUP
     2640#line 245 "gpu/lolfx-scanner.l"
     2641{ return token::HT_BLENDSTATE; }
     2642        YY_BREAK
     2643case 155:
     2644YY_RULE_SETUP
    26402645#line 246 "gpu/lolfx-scanner.l"
    2641 { return token::HT_APPENDSTRUCTUREDBUFFER; }
    2642         YY_BREAK
    2643 case 155:
     2646{ return token::HT_BUFFER; }
     2647        YY_BREAK
     2648case 156:
    26442649YY_RULE_SETUP
    26452650#line 247 "gpu/lolfx-scanner.l"
    2646 { return token::HT_ASM; }
    2647         YY_BREAK
    2648 case 156:
     2651{ return token::HT_BYTEADDRESSBUFFER; }
     2652        YY_BREAK
     2653case 157:
    26492654YY_RULE_SETUP
    26502655#line 248 "gpu/lolfx-scanner.l"
    2651 { return token::HT_ASM_FRAGMENT; }
    2652         YY_BREAK
    2653 case 157:
     2656{ return token::HT_CBUFFER; }
     2657        YY_BREAK
     2658case 158:
    26542659YY_RULE_SETUP
    26552660#line 249 "gpu/lolfx-scanner.l"
    2656 { return token::HT_BLENDSTATE; }
    2657         YY_BREAK
    2658 case 158:
     2661{ return token::HT_COLUMN_MAJOR; }
     2662        YY_BREAK
     2663case 159:
    26592664YY_RULE_SETUP
    26602665#line 250 "gpu/lolfx-scanner.l"
    2661 { return token::HT_BUFFER; }
    2662         YY_BREAK
    2663 case 159:
     2666{ return token::HT_COMPILE; }
     2667        YY_BREAK
     2668case 160:
    26642669YY_RULE_SETUP
    26652670#line 251 "gpu/lolfx-scanner.l"
    2666 { return token::HT_BYTEADDRESSBUFFER; }
    2667         YY_BREAK
    2668 case 160:
     2671{ return token::HT_COMPILE_FRAGMENT; }
     2672        YY_BREAK
     2673case 161:
    26692674YY_RULE_SETUP
    26702675#line 252 "gpu/lolfx-scanner.l"
    2671 { return token::HT_CBUFFER; }
    2672         YY_BREAK
    2673 case 161:
     2676{ return token::HT_COMPILESHADER; }
     2677        YY_BREAK
     2678case 162:
    26742679YY_RULE_SETUP
    26752680#line 253 "gpu/lolfx-scanner.l"
    2676 { return token::HT_COLUMN_MAJOR; }
    2677         YY_BREAK
    2678 case 162:
     2681{ return token::HT_COMPUTESHADER; }
     2682        YY_BREAK
     2683case 163:
    26792684YY_RULE_SETUP
    26802685#line 254 "gpu/lolfx-scanner.l"
    2681 { return token::HT_COMPILE; }
    2682         YY_BREAK
    2683 case 163:
     2686{ return token::HT_CONSUMESTRUCTUREDBUFFER; }
     2687        YY_BREAK
     2688case 164:
    26842689YY_RULE_SETUP
    26852690#line 255 "gpu/lolfx-scanner.l"
    2686 { return token::HT_COMPILE_FRAGMENT; }
    2687         YY_BREAK
    2688 case 164:
     2691{ return token::HT_DEPTHSTENCILSTATE; }
     2692        YY_BREAK
     2693case 165:
    26892694YY_RULE_SETUP
    26902695#line 256 "gpu/lolfx-scanner.l"
    2691 { return token::HT_COMPILESHADER; }
    2692         YY_BREAK
    2693 case 165:
     2696{ return token::HT_DEPTHSTENCILVIEW; }
     2697        YY_BREAK
     2698case 166:
    26942699YY_RULE_SETUP
    26952700#line 257 "gpu/lolfx-scanner.l"
    2696 { return token::HT_COMPUTESHADER; }
    2697         YY_BREAK
    2698 case 166:
     2701{ return token::HT_DOMAINSHADER; }
     2702        YY_BREAK
     2703case 167:
    26992704YY_RULE_SETUP
    27002705#line 258 "gpu/lolfx-scanner.l"
    2701 { return token::HT_CONSUMESTRUCTUREDBUFFER; }
    2702         YY_BREAK
    2703 case 167:
     2706{ return token::HT_DWORD; }
     2707        YY_BREAK
     2708case 168:
    27042709YY_RULE_SETUP
    27052710#line 259 "gpu/lolfx-scanner.l"
    2706 { return token::HT_DEPTHSTENCILSTATE; }
    2707         YY_BREAK
    2708 case 168:
     2711{ return token::HT_EXTERN; }
     2712        YY_BREAK
     2713case 169:
    27092714YY_RULE_SETUP
    27102715#line 260 "gpu/lolfx-scanner.l"
    2711 { return token::HT_DEPTHSTENCILVIEW; }
    2712         YY_BREAK
    2713 case 169:
     2716{ return token::HT_FALSE; }
     2717        YY_BREAK
     2718case 170:
    27142719YY_RULE_SETUP
    27152720#line 261 "gpu/lolfx-scanner.l"
    2716 { return token::HT_DOMAINSHADER; }
    2717         YY_BREAK
    2718 case 170:
     2721{ return token::HT_FXGROUP; }
     2722        YY_BREAK
     2723case 171:
    27192724YY_RULE_SETUP
    27202725#line 262 "gpu/lolfx-scanner.l"
    2721 { return token::HT_DWORD; }
    2722         YY_BREAK
    2723 case 171:
     2726{ return token::HT_GEOMETRYSHADER; }
     2727        YY_BREAK
     2728case 172:
    27242729YY_RULE_SETUP
    27252730#line 263 "gpu/lolfx-scanner.l"
    2726 { return token::HT_EXTERN; }
    2727         YY_BREAK
    2728 case 172:
     2731{ return token::HT_GROUPSHARED; }
     2732        YY_BREAK
     2733case 173:
    27292734YY_RULE_SETUP
    27302735#line 264 "gpu/lolfx-scanner.l"
    2731 { return token::HT_FALSE; }
    2732         YY_BREAK
    2733 case 173:
     2736{ return token::HT_HALF; }
     2737        YY_BREAK
     2738case 174:
    27342739YY_RULE_SETUP
    27352740#line 265 "gpu/lolfx-scanner.l"
    2736 { return token::HT_FXGROUP; }
    2737         YY_BREAK
    2738 case 174:
     2741{ return token::HT_HULLSHADER; }
     2742        YY_BREAK
     2743case 175:
    27392744YY_RULE_SETUP
    27402745#line 266 "gpu/lolfx-scanner.l"
    2741 { return token::HT_GEOMETRYSHADER; }
    2742         YY_BREAK
    2743 case 175:
     2746{ return token::HT_INLINE; }
     2747        YY_BREAK
     2748case 176:
    27442749YY_RULE_SETUP
    27452750#line 267 "gpu/lolfx-scanner.l"
    2746 { return token::HT_GROUPSHARED; }
    2747         YY_BREAK
    2748 case 176:
     2751{ return token::HT_INPUTPATCH; }
     2752        YY_BREAK
     2753case 177:
    27492754YY_RULE_SETUP
    27502755#line 268 "gpu/lolfx-scanner.l"
    2751 { return token::HT_HALF; }
    2752         YY_BREAK
    2753 case 177:
     2756{ return token::HT_INTERFACE; }
     2757        YY_BREAK
     2758case 178:
    27542759YY_RULE_SETUP
    27552760#line 269 "gpu/lolfx-scanner.l"
    2756 { return token::HT_HULLSHADER; }
    2757         YY_BREAK
    2758 case 178:
     2761{ return token::HT_LINE; }
     2762        YY_BREAK
     2763case 179:
    27592764YY_RULE_SETUP
    27602765#line 270 "gpu/lolfx-scanner.l"
    2761 { return token::HT_INLINE; }
    2762         YY_BREAK
    2763 case 179:
     2766{ return token::HT_LINEADJ; }
     2767        YY_BREAK
     2768case 180:
    27642769YY_RULE_SETUP
    27652770#line 271 "gpu/lolfx-scanner.l"
    2766 { return token::HT_INPUTPATCH; }
    2767         YY_BREAK
    2768 case 180:
     2771{ return token::HT_LINEAR; }
     2772        YY_BREAK
     2773case 181:
    27692774YY_RULE_SETUP
    27702775#line 272 "gpu/lolfx-scanner.l"
    2771 { return token::HT_INTERFACE; }
    2772         YY_BREAK
    2773 case 181:
     2776{ return token::HT_LINESTREAM; }
     2777        YY_BREAK
     2778case 182:
    27742779YY_RULE_SETUP
    27752780#line 273 "gpu/lolfx-scanner.l"
    2776 { return token::HT_LINE; }
    2777         YY_BREAK
    2778 case 182:
     2781{ return token::HT_MATRIX; }
     2782        YY_BREAK
     2783case 183:
    27792784YY_RULE_SETUP
    27802785#line 274 "gpu/lolfx-scanner.l"
    2781 { return token::HT_LINEADJ; }
    2782         YY_BREAK
    2783 case 183:
     2786{ return token::HT_NAMESPACE; }
     2787        YY_BREAK
     2788case 184:
    27842789YY_RULE_SETUP
    27852790#line 275 "gpu/lolfx-scanner.l"
    2786 { return token::HT_LINEAR; }
    2787         YY_BREAK
    2788 case 184:
     2791{ return token::HT_NOINTERPOLATION; }
     2792        YY_BREAK
     2793case 185:
    27892794YY_RULE_SETUP
    27902795#line 276 "gpu/lolfx-scanner.l"
    2791 { return token::HT_LINESTREAM; }
    2792         YY_BREAK
    2793 case 185:
     2796{ return token::HT_NULL; }
     2797        YY_BREAK
     2798case 186:
    27942799YY_RULE_SETUP
    27952800#line 277 "gpu/lolfx-scanner.l"
    2796 { return token::HT_MATRIX; }
    2797         YY_BREAK
    2798 case 186:
     2801{ return token::HT_OUTPUTPATCH; }
     2802        YY_BREAK
     2803case 187:
    27992804YY_RULE_SETUP
    28002805#line 278 "gpu/lolfx-scanner.l"
    2801 { return token::HT_NAMESPACE; }
    2802         YY_BREAK
    2803 case 187:
     2806{ return token::HT_PACKOFFSET; }
     2807        YY_BREAK
     2808case 188:
    28042809YY_RULE_SETUP
    28052810#line 279 "gpu/lolfx-scanner.l"
    2806 { return token::HT_NOINTERPOLATION; }
    2807         YY_BREAK
    2808 case 188:
     2811{ return token::HT_PASS; }
     2812        YY_BREAK
     2813case 189:
    28092814YY_RULE_SETUP
    28102815#line 280 "gpu/lolfx-scanner.l"
    2811 { return token::HT_NULL; }
    2812         YY_BREAK
    2813 case 189:
     2816{ return token::HT_PIXELFRAGMENT; }
     2817        YY_BREAK
     2818case 190:
    28142819YY_RULE_SETUP
    28152820#line 281 "gpu/lolfx-scanner.l"
    2816 { return token::HT_OUTPUTPATCH; }
    2817         YY_BREAK
    2818 case 190:
     2821{ return token::HT_PIXELSHADER; }
     2822        YY_BREAK
     2823case 191:
    28192824YY_RULE_SETUP
    28202825#line 282 "gpu/lolfx-scanner.l"
    2821 { return token::HT_PACKOFFSET; }
    2822         YY_BREAK
    2823 case 191:
     2826{ return token::HT_POINT; }
     2827        YY_BREAK
     2828case 192:
    28242829YY_RULE_SETUP
    28252830#line 283 "gpu/lolfx-scanner.l"
    2826 { return token::HT_PASS; }
    2827         YY_BREAK
    2828 case 192:
     2831{ return token::HT_POINTSTREAM; }
     2832        YY_BREAK
     2833case 193:
    28292834YY_RULE_SETUP
    28302835#line 284 "gpu/lolfx-scanner.l"
    2831 { return token::HT_PIXELFRAGMENT; }
    2832         YY_BREAK
    2833 case 193:
     2836{ return token::HT_PRECISE; }
     2837        YY_BREAK
     2838case 194:
    28342839YY_RULE_SETUP
    28352840#line 285 "gpu/lolfx-scanner.l"
    2836 { return token::HT_PIXELSHADER; }
    2837         YY_BREAK
    2838 case 194:
     2841{ return token::HT_RASTERIZERSTATE; }
     2842        YY_BREAK
     2843case 195:
    28392844YY_RULE_SETUP
    28402845#line 286 "gpu/lolfx-scanner.l"
    2841 { return token::HT_POINT; }
    2842         YY_BREAK
    2843 case 195:
     2846{ return token::HT_RENDERTARGETVIEW; }
     2847        YY_BREAK
     2848case 196:
    28442849YY_RULE_SETUP
    28452850#line 287 "gpu/lolfx-scanner.l"
    2846 { return token::HT_POINTSTREAM; }
    2847         YY_BREAK
    2848 case 196:
     2851{ return token::HT_REGISTER; }
     2852        YY_BREAK
     2853case 197:
    28492854YY_RULE_SETUP
    28502855#line 288 "gpu/lolfx-scanner.l"
    2851 { return token::HT_PRECISE; }
    2852         YY_BREAK
    2853 case 197:
     2856{ return token::HT_ROW_MAJOR; }
     2857        YY_BREAK
     2858case 198:
    28542859YY_RULE_SETUP
    28552860#line 289 "gpu/lolfx-scanner.l"
    2856 { return token::HT_RASTERIZERSTATE; }
    2857         YY_BREAK
    2858 case 198:
     2861{ return token::HT_RWBUFFER; }
     2862        YY_BREAK
     2863case 199:
    28592864YY_RULE_SETUP
    28602865#line 290 "gpu/lolfx-scanner.l"
    2861 { return token::HT_RENDERTARGETVIEW; }
    2862         YY_BREAK
    2863 case 199:
     2866{ return token::HT_RWBYTEADDRESSBUFFER; }
     2867        YY_BREAK
     2868case 200:
    28642869YY_RULE_SETUP
    28652870#line 291 "gpu/lolfx-scanner.l"
    2866 { return token::HT_REGISTER; }
    2867         YY_BREAK
    2868 case 200:
     2871{ return token::HT_RWSTRUCTUREDBUFFER; }
     2872        YY_BREAK
     2873case 201:
    28692874YY_RULE_SETUP
    28702875#line 292 "gpu/lolfx-scanner.l"
    2871 { return token::HT_ROW_MAJOR; }
    2872         YY_BREAK
    2873 case 201:
     2876{ return token::HT_RWTEXTURE1D; }
     2877        YY_BREAK
     2878case 202:
    28742879YY_RULE_SETUP
    28752880#line 293 "gpu/lolfx-scanner.l"
    2876 { return token::HT_RWBUFFER; }
    2877         YY_BREAK
    2878 case 202:
     2881{ return token::HT_RWTEXTURE1DARRAY; }
     2882        YY_BREAK
     2883case 203:
    28792884YY_RULE_SETUP
    28802885#line 294 "gpu/lolfx-scanner.l"
    2881 { return token::HT_RWBYTEADDRESSBUFFER; }
    2882         YY_BREAK
    2883 case 203:
     2886{ return token::HT_RWTEXTURE2D; }
     2887        YY_BREAK
     2888case 204:
    28842889YY_RULE_SETUP
    28852890#line 295 "gpu/lolfx-scanner.l"
    2886 { return token::HT_RWSTRUCTUREDBUFFER; }
    2887         YY_BREAK
    2888 case 204:
     2891{ return token::HT_RWTEXTURE2DARRAY; }
     2892        YY_BREAK
     2893case 205:
    28892894YY_RULE_SETUP
    28902895#line 296 "gpu/lolfx-scanner.l"
    2891 { return token::HT_RWTEXTURE1D; }
    2892         YY_BREAK
    2893 case 205:
     2896{ return token::HT_RWTEXTURE3D; }
     2897        YY_BREAK
     2898case 206:
    28942899YY_RULE_SETUP
    28952900#line 297 "gpu/lolfx-scanner.l"
    2896 { return token::HT_RWTEXTURE1DARRAY; }
    2897         YY_BREAK
    2898 case 206:
     2901{ return token::HT_SAMPLER; }
     2902        YY_BREAK
     2903case 207:
    28992904YY_RULE_SETUP
    29002905#line 298 "gpu/lolfx-scanner.l"
    2901 { return token::HT_RWTEXTURE2D; }
    2902         YY_BREAK
    2903 case 207:
     2906{ return token::HT_SAMPLER_STATE; }
     2907        YY_BREAK
     2908case 208:
    29042909YY_RULE_SETUP
    29052910#line 299 "gpu/lolfx-scanner.l"
    2906 { return token::HT_RWTEXTURE2DARRAY; }
    2907         YY_BREAK
    2908 case 208:
     2911{ return token::HT_SAMPLERSTATE; }
     2912        YY_BREAK
     2913case 209:
    29092914YY_RULE_SETUP
    29102915#line 300 "gpu/lolfx-scanner.l"
    2911 { return token::HT_RWTEXTURE3D; }
    2912         YY_BREAK
    2913 case 209:
     2916{ return token::HT_SAMPLERCOMPARISONSTATE; }
     2917        YY_BREAK
     2918case 210:
    29142919YY_RULE_SETUP
    29152920#line 301 "gpu/lolfx-scanner.l"
    2916 { return token::HT_SAMPLER; }
    2917         YY_BREAK
    2918 case 210:
     2921{ return token::HT_SHARED; }
     2922        YY_BREAK
     2923case 211:
    29192924YY_RULE_SETUP
    29202925#line 302 "gpu/lolfx-scanner.l"
    2921 { return token::HT_SAMPLER_STATE; }
    2922         YY_BREAK
    2923 case 211:
     2926{ return token::HT_SNORM; }
     2927        YY_BREAK
     2928case 212:
    29242929YY_RULE_SETUP
    29252930#line 303 "gpu/lolfx-scanner.l"
    2926 { return token::HT_SAMPLERSTATE; }
    2927         YY_BREAK
    2928 case 212:
     2931{ return token::HT_STATEBLOCK; }
     2932        YY_BREAK
     2933case 213:
    29292934YY_RULE_SETUP
    29302935#line 304 "gpu/lolfx-scanner.l"
    2931 { return token::HT_SAMPLERCOMPARISONSTATE; }
    2932         YY_BREAK
    2933 case 213:
     2936{ return token::HT_STATEBLOCK_STATE; }
     2937        YY_BREAK
     2938case 214:
    29342939YY_RULE_SETUP
    29352940#line 305 "gpu/lolfx-scanner.l"
    2936 { return token::HT_SHARED; }
    2937         YY_BREAK
    2938 case 214:
     2941{ return token::HT_STATIC; }
     2942        YY_BREAK
     2943case 215:
    29392944YY_RULE_SETUP
    29402945#line 306 "gpu/lolfx-scanner.l"
    2941 { return token::HT_SNORM; }
    2942         YY_BREAK
    2943 case 215:
     2946{ return token::HT_STRING; }
     2947        YY_BREAK
     2948case 216:
    29442949YY_RULE_SETUP
    29452950#line 307 "gpu/lolfx-scanner.l"
    2946 { return token::HT_STATEBLOCK; }
    2947         YY_BREAK
    2948 case 216:
     2951{ return token::HT_STRUCTUREDBUFFER; }
     2952        YY_BREAK
     2953case 217:
    29492954YY_RULE_SETUP
    29502955#line 308 "gpu/lolfx-scanner.l"
    2951 { return token::HT_STATEBLOCK_STATE; }
    2952         YY_BREAK
    2953 case 217:
     2956{ return token::HT_TBUFFER; }
     2957        YY_BREAK
     2958case 218:
    29542959YY_RULE_SETUP
    29552960#line 309 "gpu/lolfx-scanner.l"
    2956 { return token::HT_STATIC; }
    2957         YY_BREAK
    2958 case 218:
     2961{ return token::HT_TECHNIQUE; }
     2962        YY_BREAK
     2963case 219:
    29592964YY_RULE_SETUP
    29602965#line 310 "gpu/lolfx-scanner.l"
    2961 { return token::HT_STRING; }
    2962         YY_BREAK
    2963 case 219:
     2966{ return token::HT_TECHNIQUE10; }
     2967        YY_BREAK
     2968case 220:
    29642969YY_RULE_SETUP
    29652970#line 311 "gpu/lolfx-scanner.l"
    2966 { return token::HT_STRUCTUREDBUFFER; }
    2967         YY_BREAK
    2968 case 220:
     2971{ return token::HT_TECHNIQUE11XZ; }
     2972        YY_BREAK
     2973case 221:
    29692974YY_RULE_SETUP
    29702975#line 312 "gpu/lolfx-scanner.l"
    2971 { return token::HT_TBUFFER; }
    2972         YY_BREAK
    2973 case 221:
     2976{ return token::HT_TEXTURE; }
     2977        YY_BREAK
     2978case 222:
    29742979YY_RULE_SETUP
    29752980#line 313 "gpu/lolfx-scanner.l"
    2976 { return token::HT_TECHNIQUE; }
    2977         YY_BREAK
    2978 case 222:
     2981{ return token::HT_TEXTURE1D; }
     2982        YY_BREAK
     2983case 223:
    29792984YY_RULE_SETUP
    29802985#line 314 "gpu/lolfx-scanner.l"
    2981 { return token::HT_TECHNIQUE10; }
    2982         YY_BREAK
    2983 case 223:
     2986{ return token::HT_TEXTURE1DARRAY; }
     2987        YY_BREAK
     2988case 224:
    29842989YY_RULE_SETUP
    29852990#line 315 "gpu/lolfx-scanner.l"
    2986 { return token::HT_TECHNIQUE11XZ; }
    2987         YY_BREAK
    2988 case 224:
     2991{ return token::HT_TEXTURE2D; }
     2992        YY_BREAK
     2993case 225:
    29892994YY_RULE_SETUP
    29902995#line 316 "gpu/lolfx-scanner.l"
    2991 { return token::HT_TEXTURE; }
    2992         YY_BREAK
    2993 case 225:
     2996{ return token::HT_TEXTURE2DARRAY; }
     2997        YY_BREAK
     2998case 226:
    29942999YY_RULE_SETUP
    29953000#line 317 "gpu/lolfx-scanner.l"
    2996 { return token::HT_TEXTURE1D; }
    2997         YY_BREAK
    2998 case 226:
     3001{ return token::HT_TEXTURE2DMS; }
     3002        YY_BREAK
     3003case 227:
    29993004YY_RULE_SETUP
    30003005#line 318 "gpu/lolfx-scanner.l"
    3001 { return token::HT_TEXTURE1DARRAY; }
    3002         YY_BREAK
    3003 case 227:
     3006{ return token::HT_TEXTURE2DMSARRAY; }
     3007        YY_BREAK
     3008case 228:
    30043009YY_RULE_SETUP
    30053010#line 319 "gpu/lolfx-scanner.l"
    3006 { return token::HT_TEXTURE2D; }
    3007         YY_BREAK
    3008 case 228:
     3011{ return token::HT_TEXTURE3D; }
     3012        YY_BREAK
     3013case 229:
    30093014YY_RULE_SETUP
    30103015#line 320 "gpu/lolfx-scanner.l"
    3011 { return token::HT_TEXTURE2DARRAY; }
    3012         YY_BREAK
    3013 case 229:
     3016{ return token::HT_TEXTURECUBE; }
     3017        YY_BREAK
     3018case 230:
    30143019YY_RULE_SETUP
    30153020#line 321 "gpu/lolfx-scanner.l"
    3016 { return token::HT_TEXTURE2DMS; }
    3017         YY_BREAK
    3018 case 230:
     3021{ return token::HT_TEXTURECUBEARRAY; }
     3022        YY_BREAK
     3023case 231:
    30193024YY_RULE_SETUP
    30203025#line 322 "gpu/lolfx-scanner.l"
    3021 { return token::HT_TEXTURE2DMSARRAY; }
    3022         YY_BREAK
    3023 case 231:
     3026{ return token::HT_TRUE; }
     3027        YY_BREAK
     3028case 232:
    30243029YY_RULE_SETUP
    30253030#line 323 "gpu/lolfx-scanner.l"
    3026 { return token::HT_TEXTURE3D; }
    3027         YY_BREAK
    3028 case 232:
     3031{ return token::HT_TYPEDEF; }
     3032        YY_BREAK
     3033case 233:
    30293034YY_RULE_SETUP
    30303035#line 324 "gpu/lolfx-scanner.l"
    3031 { return token::HT_TEXTURECUBE; }
    3032         YY_BREAK
    3033 case 233:
     3036{ return token::HT_TRIANGLE; }
     3037        YY_BREAK
     3038case 234:
    30343039YY_RULE_SETUP
    30353040#line 325 "gpu/lolfx-scanner.l"
    3036 { return token::HT_TEXTURECUBEARRAY; }
    3037         YY_BREAK
    3038 case 234:
     3041{ return token::HT_TRIANGLEADJ; }
     3042        YY_BREAK
     3043case 235:
    30393044YY_RULE_SETUP
    30403045#line 326 "gpu/lolfx-scanner.l"
    3041 { return token::HT_TRUE; }
    3042         YY_BREAK
    3043 case 235:
     3046{ return token::HT_TRIANGLESTREAM; }
     3047        YY_BREAK
     3048case 236:
    30443049YY_RULE_SETUP
    30453050#line 327 "gpu/lolfx-scanner.l"
    3046 { return token::HT_TYPEDEF; }
    3047         YY_BREAK
    3048 case 236:
     3051{ return token::HT_UNORM; }
     3052        YY_BREAK
     3053case 237:
    30493054YY_RULE_SETUP
    30503055#line 328 "gpu/lolfx-scanner.l"
    3051 { return token::HT_TRIANGLE; }
    3052         YY_BREAK
    3053 case 237:
     3056{ return token::HT_VECTOR; }
     3057        YY_BREAK
     3058case 238:
    30543059YY_RULE_SETUP
    30553060#line 329 "gpu/lolfx-scanner.l"
    3056 { return token::HT_TRIANGLEADJ; }
    3057         YY_BREAK
    3058 case 238:
     3061{ return token::HT_VERTEXFRAGMENT; }
     3062        YY_BREAK
     3063case 239:
    30593064YY_RULE_SETUP
    30603065#line 330 "gpu/lolfx-scanner.l"
    3061 { return token::HT_TRIANGLESTREAM; }
    3062         YY_BREAK
    3063 case 239:
     3066{ return token::HT_VERTEXSHADER; }
     3067        YY_BREAK
     3068case 240:
    30643069YY_RULE_SETUP
    30653070#line 331 "gpu/lolfx-scanner.l"
    3066 { return token::HT_UNORM; }
    3067         YY_BREAK
    3068 case 240:
    3069 YY_RULE_SETUP
    3070 #line 332 "gpu/lolfx-scanner.l"
    3071 { return token::HT_VECTOR; }
    3072         YY_BREAK
    3073 case 241:
    3074 YY_RULE_SETUP
    3075 #line 333 "gpu/lolfx-scanner.l"
    3076 { return token::HT_VERTEXFRAGMENT; }
    3077         YY_BREAK
    3078 case 242:
    3079 YY_RULE_SETUP
    3080 #line 334 "gpu/lolfx-scanner.l"
    3081 { return token::HT_VERTEXSHADER; }
    3082         YY_BREAK
    3083 case 243:
    3084 YY_RULE_SETUP
    3085 #line 335 "gpu/lolfx-scanner.l"
    30863071{ return token::HT_VOLATILE; }
    30873072        YY_BREAK
     
    30903075  * TODO: this can probably be factored somehow
    30913076  */
     3077case 241:
     3078YY_RULE_SETUP
     3079#line 338 "gpu/lolfx-scanner.l"
     3080{ return token::HT_BOOL1; }
     3081        YY_BREAK
     3082case 242:
     3083YY_RULE_SETUP
     3084#line 339 "gpu/lolfx-scanner.l"
     3085{ return token::HT_BOOL1x1; }
     3086        YY_BREAK
     3087case 243:
     3088YY_RULE_SETUP
     3089#line 340 "gpu/lolfx-scanner.l"
     3090{ return token::HT_BOOL2x1; }
     3091        YY_BREAK
    30923092case 244:
    30933093YY_RULE_SETUP
     3094#line 341 "gpu/lolfx-scanner.l"
     3095{ return token::HT_BOOL3x1; }
     3096        YY_BREAK
     3097case 245:
     3098YY_RULE_SETUP
    30943099#line 342 "gpu/lolfx-scanner.l"
    3095 { return token::HT_BOOL1; }
    3096         YY_BREAK
    3097 case 245:
     3100{ return token::HT_BOOL4x1; }
     3101        YY_BREAK
     3102case 246:
    30983103YY_RULE_SETUP
    30993104#line 343 "gpu/lolfx-scanner.l"
    3100 { return token::HT_BOOL1x1; }
    3101         YY_BREAK
    3102 case 246:
     3105{ return token::HT_BOOL2; }
     3106        YY_BREAK
     3107case 247:
    31033108YY_RULE_SETUP
    31043109#line 344 "gpu/lolfx-scanner.l"
    3105 { return token::HT_BOOL2x1; }
    3106         YY_BREAK
    3107 case 247:
     3110{ return token::HT_BOOL1x2; }
     3111        YY_BREAK
     3112case 248:
    31083113YY_RULE_SETUP
    31093114#line 345 "gpu/lolfx-scanner.l"
    3110 { return token::HT_BOOL3x1; }
    3111         YY_BREAK
    3112 case 248:
     3115{ return token::HT_BOOL2x2; }
     3116        YY_BREAK
     3117case 249:
    31133118YY_RULE_SETUP
    31143119#line 346 "gpu/lolfx-scanner.l"
    3115 { return token::HT_BOOL4x1; }
    3116         YY_BREAK
    3117 case 249:
     3120{ return token::HT_BOOL3x2; }
     3121        YY_BREAK
     3122case 250:
    31183123YY_RULE_SETUP
    31193124#line 347 "gpu/lolfx-scanner.l"
    3120 { return token::HT_BOOL2; }
    3121         YY_BREAK
    3122 case 250:
     3125{ return token::HT_BOOL4x2; }
     3126        YY_BREAK
     3127case 251:
    31233128YY_RULE_SETUP
    31243129#line 348 "gpu/lolfx-scanner.l"
    3125 { return token::HT_BOOL1x2; }
    3126         YY_BREAK
    3127 case 251:
     3130{ return token::HT_BOOL3; }
     3131        YY_BREAK
     3132case 252:
    31283133YY_RULE_SETUP
    31293134#line 349 "gpu/lolfx-scanner.l"
    3130 { return token::HT_BOOL2x2; }
    3131         YY_BREAK
    3132 case 252:
     3135{ return token::HT_BOOL1x3; }
     3136        YY_BREAK
     3137case 253:
    31333138YY_RULE_SETUP
    31343139#line 350 "gpu/lolfx-scanner.l"
    3135 { return token::HT_BOOL3x2; }
    3136         YY_BREAK
    3137 case 253:
     3140{ return token::HT_BOOL2x3; }
     3141        YY_BREAK
     3142case 254:
    31383143YY_RULE_SETUP
    31393144#line 351 "gpu/lolfx-scanner.l"
    3140 { return token::HT_BOOL4x2; }
    3141         YY_BREAK
    3142 case 254:
     3145{ return token::HT_BOOL3x3; }
     3146        YY_BREAK
     3147case 255:
    31433148YY_RULE_SETUP
    31443149#line 352 "gpu/lolfx-scanner.l"
    3145 { return token::HT_BOOL3; }
    3146         YY_BREAK
    3147 case 255:
     3150{ return token::HT_BOOL4x3; }
     3151        YY_BREAK
     3152case 256:
    31483153YY_RULE_SETUP
    31493154#line 353 "gpu/lolfx-scanner.l"
    3150 { return token::HT_BOOL1x3; }
    3151         YY_BREAK
    3152 case 256:
     3155{ return token::HT_BOOL4; }
     3156        YY_BREAK
     3157case 257:
    31533158YY_RULE_SETUP
    31543159#line 354 "gpu/lolfx-scanner.l"
    3155 { return token::HT_BOOL2x3; }
    3156         YY_BREAK
    3157 case 257:
     3160{ return token::HT_BOOL1x4; }
     3161        YY_BREAK
     3162case 258:
    31583163YY_RULE_SETUP
    31593164#line 355 "gpu/lolfx-scanner.l"
    3160 { return token::HT_BOOL3x3; }
    3161         YY_BREAK
    3162 case 258:
     3165{ return token::HT_BOOL2x4; }
     3166        YY_BREAK
     3167case 259:
    31633168YY_RULE_SETUP
    31643169#line 356 "gpu/lolfx-scanner.l"
    3165 { return token::HT_BOOL4x3; }
    3166         YY_BREAK
    3167 case 259:
     3170{ return token::HT_BOOL3x4; }
     3171        YY_BREAK
     3172case 260:
    31683173YY_RULE_SETUP
    31693174#line 357 "gpu/lolfx-scanner.l"
    3170 { return token::HT_BOOL4; }
    3171         YY_BREAK
    3172 case 260:
    3173 YY_RULE_SETUP
    3174 #line 358 "gpu/lolfx-scanner.l"
    3175 { return token::HT_BOOL1x4; }
     3175{ return token::HT_BOOL4x4; }
    31763176        YY_BREAK
    31773177case 261:
    31783178YY_RULE_SETUP
    31793179#line 359 "gpu/lolfx-scanner.l"
    3180 { return token::HT_BOOL2x4; }
     3180{ return token::HT_FLOAT1; }
    31813181        YY_BREAK
    31823182case 262:
    31833183YY_RULE_SETUP
    31843184#line 360 "gpu/lolfx-scanner.l"
    3185 { return token::HT_BOOL3x4; }
     3185{ return token::HT_FLOAT1x1; }
    31863186        YY_BREAK
    31873187case 263:
    31883188YY_RULE_SETUP
    31893189#line 361 "gpu/lolfx-scanner.l"
    3190 { return token::HT_BOOL4x4; }
     3190{ return token::HT_FLOAT2x1; }
    31913191        YY_BREAK
    31923192case 264:
    31933193YY_RULE_SETUP
     3194#line 362 "gpu/lolfx-scanner.l"
     3195{ return token::HT_FLOAT3x1; }
     3196        YY_BREAK
     3197case 265:
     3198YY_RULE_SETUP
    31943199#line 363 "gpu/lolfx-scanner.l"
    3195 { return token::HT_FLOAT1; }
    3196         YY_BREAK
    3197 case 265:
     3200{ return token::HT_FLOAT4x1; }
     3201        YY_BREAK
     3202case 266:
    31983203YY_RULE_SETUP
    31993204#line 364 "gpu/lolfx-scanner.l"
    3200 { return token::HT_FLOAT1x1; }
    3201         YY_BREAK
    3202 case 266:
     3205{ return token::HT_FLOAT2; }
     3206        YY_BREAK
     3207case 267:
    32033208YY_RULE_SETUP
    32043209#line 365 "gpu/lolfx-scanner.l"
    3205 { return token::HT_FLOAT2x1; }
    3206         YY_BREAK
    3207 case 267:
     3210{ return token::HT_FLOAT1x2; }
     3211        YY_BREAK
     3212case 268:
    32083213YY_RULE_SETUP
    32093214#line 366 "gpu/lolfx-scanner.l"
    3210 { return token::HT_FLOAT3x1; }
    3211         YY_BREAK
    3212 case 268:
     3215{ return token::HT_FLOAT2x2; }
     3216        YY_BREAK
     3217case 269:
    32133218YY_RULE_SETUP
    32143219#line 367 "gpu/lolfx-scanner.l"
    3215 { return token::HT_FLOAT4x1; }
    3216         YY_BREAK
    3217 case 269:
     3220{ return token::HT_FLOAT3x2; }
     3221        YY_BREAK
     3222case 270:
    32183223YY_RULE_SETUP
    32193224#line 368 "gpu/lolfx-scanner.l"
    3220 { return token::HT_FLOAT2; }
    3221         YY_BREAK
    3222 case 270:
     3225{ return token::HT_FLOAT4x2; }
     3226        YY_BREAK
     3227case 271:
    32233228YY_RULE_SETUP
    32243229#line 369 "gpu/lolfx-scanner.l"
    3225 { return token::HT_FLOAT1x2; }
    3226         YY_BREAK
    3227 case 271:
     3230{ return token::HT_FLOAT3; }
     3231        YY_BREAK
     3232case 272:
    32283233YY_RULE_SETUP
    32293234#line 370 "gpu/lolfx-scanner.l"
    3230 { return token::HT_FLOAT2x2; }
    3231         YY_BREAK
    3232 case 272:
     3235{ return token::HT_FLOAT1x3; }
     3236        YY_BREAK
     3237case 273:
    32333238YY_RULE_SETUP
    32343239#line 371 "gpu/lolfx-scanner.l"
    3235 { return token::HT_FLOAT3x2; }
    3236         YY_BREAK
    3237 case 273:
     3240{ return token::HT_FLOAT2x3; }
     3241        YY_BREAK
     3242case 274:
    32383243YY_RULE_SETUP
    32393244#line 372 "gpu/lolfx-scanner.l"
    3240 { return token::HT_FLOAT4x2; }
    3241         YY_BREAK
    3242 case 274:
     3245{ return token::HT_FLOAT3x3; }
     3246        YY_BREAK
     3247case 275:
    32433248YY_RULE_SETUP
    32443249#line 373 "gpu/lolfx-scanner.l"
    3245 { return token::HT_FLOAT3; }
    3246         YY_BREAK
    3247 case 275:
     3250{ return token::HT_FLOAT4x3; }
     3251        YY_BREAK
     3252case 276:
    32483253YY_RULE_SETUP
    32493254#line 374 "gpu/lolfx-scanner.l"
    3250 { return token::HT_FLOAT1x3; }
    3251         YY_BREAK
    3252 case 276:
     3255{ return token::HT_FLOAT4; }
     3256        YY_BREAK
     3257case 277:
    32533258YY_RULE_SETUP
    32543259#line 375 "gpu/lolfx-scanner.l"
    3255 { return token::HT_FLOAT2x3; }
    3256         YY_BREAK
    3257 case 277:
     3260{ return token::HT_FLOAT1x4; }
     3261        YY_BREAK
     3262case 278:
    32583263YY_RULE_SETUP
    32593264#line 376 "gpu/lolfx-scanner.l"
    3260 { return token::HT_FLOAT3x3; }
    3261         YY_BREAK
    3262 case 278:
     3265{ return token::HT_FLOAT2x4; }
     3266        YY_BREAK
     3267case 279:
    32633268YY_RULE_SETUP
    32643269#line 377 "gpu/lolfx-scanner.l"
    3265 { return token::HT_FLOAT4x3; }
    3266         YY_BREAK
    3267 case 279:
     3270{ return token::HT_FLOAT3x4; }
     3271        YY_BREAK
     3272case 280:
    32683273YY_RULE_SETUP
    32693274#line 378 "gpu/lolfx-scanner.l"
    3270 { return token::HT_FLOAT4; }
    3271         YY_BREAK
    3272 case 280:
    3273 YY_RULE_SETUP
    3274 #line 379 "gpu/lolfx-scanner.l"
    3275 { return token::HT_FLOAT1x4; }
     3275{ return token::HT_FLOAT4x4; }
    32763276        YY_BREAK
    32773277case 281:
    32783278YY_RULE_SETUP
    32793279#line 380 "gpu/lolfx-scanner.l"
    3280 { return token::HT_FLOAT2x4; }
     3280{ return token::HT_DOUBLE1; }
    32813281        YY_BREAK
    32823282case 282:
    32833283YY_RULE_SETUP
    32843284#line 381 "gpu/lolfx-scanner.l"
    3285 { return token::HT_FLOAT3x4; }
     3285{ return token::HT_DOUBLE1x1; }
    32863286        YY_BREAK
    32873287case 283:
    32883288YY_RULE_SETUP
    32893289#line 382 "gpu/lolfx-scanner.l"
    3290 { return token::HT_FLOAT4x4; }
     3290{ return token::HT_DOUBLE2x1; }
    32913291        YY_BREAK
    32923292case 284:
    32933293YY_RULE_SETUP
     3294#line 383 "gpu/lolfx-scanner.l"
     3295{ return token::HT_DOUBLE3x1; }
     3296        YY_BREAK
     3297case 285:
     3298YY_RULE_SETUP
    32943299#line 384 "gpu/lolfx-scanner.l"
    3295 { return token::HT_DOUBLE1; }
    3296         YY_BREAK
    3297 case 285:
     3300{ return token::HT_DOUBLE4x1; }
     3301        YY_BREAK
     3302case 286:
    32983303YY_RULE_SETUP
    32993304#line 385 "gpu/lolfx-scanner.l"
    3300 { return token::HT_DOUBLE1x1; }
    3301         YY_BREAK
    3302 case 286:
     3305{ return token::HT_DOUBLE2; }
     3306        YY_BREAK
     3307case 287:
    33033308YY_RULE_SETUP
    33043309#line 386 "gpu/lolfx-scanner.l"
    3305 { return token::HT_DOUBLE2x1; }
    3306         YY_BREAK
    3307 case 287:
     3310{ return token::HT_DOUBLE1x2; }
     3311        YY_BREAK
     3312case 288:
    33083313YY_RULE_SETUP
    33093314#line 387 "gpu/lolfx-scanner.l"
    3310 { return token::HT_DOUBLE3x1; }
    3311         YY_BREAK
    3312 case 288:
     3315{ return token::HT_DOUBLE2x2; }
     3316        YY_BREAK
     3317case 289:
    33133318YY_RULE_SETUP
    33143319#line 388 "gpu/lolfx-scanner.l"
    3315 { return token::HT_DOUBLE4x1; }
    3316         YY_BREAK
    3317 case 289:
     3320{ return token::HT_DOUBLE3x2; }
     3321        YY_BREAK
     3322case 290:
    33183323YY_RULE_SETUP
    33193324#line 389 "gpu/lolfx-scanner.l"
    3320 { return token::HT_DOUBLE2; }
    3321         YY_BREAK
    3322 case 290:
     3325{ return token::HT_DOUBLE4x2; }
     3326        YY_BREAK
     3327case 291:
    33233328YY_RULE_SETUP
    33243329#line 390 "gpu/lolfx-scanner.l"
    3325 { return token::HT_DOUBLE1x2; }
    3326         YY_BREAK
    3327 case 291:
     3330{ return token::HT_DOUBLE3; }
     3331        YY_BREAK
     3332case 292:
    33283333YY_RULE_SETUP
    33293334#line 391 "gpu/lolfx-scanner.l"
    3330 { return token::HT_DOUBLE2x2; }
    3331         YY_BREAK
    3332 case 292:
     3335{ return token::HT_DOUBLE1x3; }
     3336        YY_BREAK
     3337case 293:
    33333338YY_RULE_SETUP
    33343339#line 392 "gpu/lolfx-scanner.l"
    3335 { return token::HT_DOUBLE3x2; }
    3336         YY_BREAK
    3337 case 293:
     3340{ return token::HT_DOUBLE2x3; }
     3341        YY_BREAK
     3342case 294:
    33383343YY_RULE_SETUP
    33393344#line 393 "gpu/lolfx-scanner.l"
    3340 { return token::HT_DOUBLE4x2; }
    3341         YY_BREAK
    3342 case 294:
     3345{ return token::HT_DOUBLE3x3; }
     3346        YY_BREAK
     3347case 295:
    33433348YY_RULE_SETUP
    33443349#line 394 "gpu/lolfx-scanner.l"
    3345 { return token::HT_DOUBLE3; }
    3346         YY_BREAK
    3347 case 295:
     3350{ return token::HT_DOUBLE4x3; }
     3351        YY_BREAK
     3352case 296:
    33483353YY_RULE_SETUP
    33493354#line 395 "gpu/lolfx-scanner.l"
    3350 { return token::HT_DOUBLE1x3; }
    3351         YY_BREAK
    3352 case 296:
     3355{ return token::HT_DOUBLE4; }
     3356        YY_BREAK
     3357case 297:
    33533358YY_RULE_SETUP
    33543359#line 396 "gpu/lolfx-scanner.l"
    3355 { return token::HT_DOUBLE2x3; }
    3356         YY_BREAK
    3357 case 297:
     3360{ return token::HT_DOUBLE1x4; }
     3361        YY_BREAK
     3362case 298:
    33583363YY_RULE_SETUP
    33593364#line 397 "gpu/lolfx-scanner.l"
    3360 { return token::HT_DOUBLE3x3; }
    3361         YY_BREAK
    3362 case 298:
     3365{ return token::HT_DOUBLE2x4; }
     3366        YY_BREAK
     3367case 299:
    33633368YY_RULE_SETUP
    33643369#line 398 "gpu/lolfx-scanner.l"
    3365 { return token::HT_DOUBLE4x3; }
    3366         YY_BREAK
    3367 case 299:
     3370{ return token::HT_DOUBLE3x4; }
     3371        YY_BREAK
     3372case 300:
    33683373YY_RULE_SETUP
    33693374#line 399 "gpu/lolfx-scanner.l"
    3370 { return token::HT_DOUBLE4; }
    3371         YY_BREAK
    3372 case 300:
    3373 YY_RULE_SETUP
    3374 #line 400 "gpu/lolfx-scanner.l"
    3375 { return token::HT_DOUBLE1x4; }
     3375{ return token::HT_DOUBLE4x4; }
    33763376        YY_BREAK
    33773377case 301:
    33783378YY_RULE_SETUP
    33793379#line 401 "gpu/lolfx-scanner.l"
    3380 { return token::HT_DOUBLE2x4; }
     3380{ return token::HT_DWORD1; }
    33813381        YY_BREAK
    33823382case 302:
    33833383YY_RULE_SETUP
    33843384#line 402 "gpu/lolfx-scanner.l"
    3385 { return token::HT_DOUBLE3x4; }
     3385{ return token::HT_DWORD1x1; }
    33863386        YY_BREAK
    33873387case 303:
    33883388YY_RULE_SETUP
    33893389#line 403 "gpu/lolfx-scanner.l"
    3390 { return token::HT_DOUBLE4x4; }
     3390{ return token::HT_DWORD2x1; }
    33913391        YY_BREAK
    33923392case 304:
    33933393YY_RULE_SETUP
     3394#line 404 "gpu/lolfx-scanner.l"
     3395{ return token::HT_DWORD3x1; }
     3396        YY_BREAK
     3397case 305:
     3398YY_RULE_SETUP
    33943399#line 405 "gpu/lolfx-scanner.l"
    3395 { return token::HT_DWORD1; }
    3396         YY_BREAK
    3397 case 305:
     3400{ return token::HT_DWORD4x1; }
     3401        YY_BREAK
     3402case 306:
    33983403YY_RULE_SETUP
    33993404#line 406 "gpu/lolfx-scanner.l"
    3400 { return token::HT_DWORD1x1; }
    3401         YY_BREAK
    3402 case 306:
     3405{ return token::HT_DWORD2; }
     3406        YY_BREAK
     3407case 307:
    34033408YY_RULE_SETUP
    34043409#line 407 "gpu/lolfx-scanner.l"
    3405 { return token::HT_DWORD2x1; }
    3406         YY_BREAK
    3407 case 307:
     3410{ return token::HT_DWORD1x2; }
     3411        YY_BREAK
     3412case 308:
    34083413YY_RULE_SETUP
    34093414#line 408 "gpu/lolfx-scanner.l"
    3410 { return token::HT_DWORD3x1; }
    3411         YY_BREAK
    3412 case 308:
     3415{ return token::HT_DWORD2x2; }
     3416        YY_BREAK
     3417case 309:
    34133418YY_RULE_SETUP
    34143419#line 409 "gpu/lolfx-scanner.l"
    3415 { return token::HT_DWORD4x1; }
    3416         YY_BREAK
    3417 case 309:
     3420{ return token::HT_DWORD3x2; }
     3421        YY_BREAK
     3422case 310:
    34183423YY_RULE_SETUP
    34193424#line 410 "gpu/lolfx-scanner.l"
    3420 { return token::HT_DWORD2; }
    3421         YY_BREAK
    3422 case 310:
     3425{ return token::HT_DWORD4x2; }
     3426        YY_BREAK
     3427case 311:
    34233428YY_RULE_SETUP
    34243429#line 411 "gpu/lolfx-scanner.l"
    3425 { return token::HT_DWORD1x2; }
    3426         YY_BREAK
    3427 case 311:
     3430{ return token::HT_DWORD3; }
     3431        YY_BREAK
     3432case 312:
    34283433YY_RULE_SETUP
    34293434#line 412 "gpu/lolfx-scanner.l"
    3430 { return token::HT_DWORD2x2; }
    3431         YY_BREAK
    3432 case 312:
     3435{ return token::HT_DWORD1x3; }
     3436        YY_BREAK
     3437case 313:
    34333438YY_RULE_SETUP
    34343439#line 413 "gpu/lolfx-scanner.l"
    3435 { return token::HT_DWORD3x2; }
    3436         YY_BREAK
    3437 case 313:
     3440{ return token::HT_DWORD2x3; }
     3441        YY_BREAK
     3442case 314:
    34383443YY_RULE_SETUP
    34393444#line 414 "gpu/lolfx-scanner.l"
    3440 { return token::HT_DWORD4x2; }
    3441         YY_BREAK
    3442 case 314:
     3445{ return token::HT_DWORD3x3; }
     3446        YY_BREAK
     3447case 315:
    34433448YY_RULE_SETUP
    34443449#line 415 "gpu/lolfx-scanner.l"
    3445 { return token::HT_DWORD3; }
    3446         YY_BREAK
    3447 case 315:
     3450{ return token::HT_DWORD4x3; }
     3451        YY_BREAK
     3452case 316:
    34483453YY_RULE_SETUP
    34493454#line 416 "gpu/lolfx-scanner.l"
    3450 { return token::HT_DWORD1x3; }
    3451         YY_BREAK
    3452 case 316:
     3455{ return token::HT_DWORD4; }
     3456        YY_BREAK
     3457case 317:
    34533458YY_RULE_SETUP
    34543459#line 417 "gpu/lolfx-scanner.l"
    3455 { return token::HT_DWORD2x3; }
    3456         YY_BREAK
    3457 case 317:
     3460{ return token::HT_DWORD1x4; }
     3461        YY_BREAK
     3462case 318:
    34583463YY_RULE_SETUP
    34593464#line 418 "gpu/lolfx-scanner.l"
    3460 { return token::HT_DWORD3x3; }
    3461         YY_BREAK
    3462 case 318:
     3465{ return token::HT_DWORD2x4; }
     3466        YY_BREAK
     3467case 319:
    34633468YY_RULE_SETUP
    34643469#line 419 "gpu/lolfx-scanner.l"
    3465 { return token::HT_DWORD4x3; }
    3466         YY_BREAK
    3467 case 319:
     3470{ return token::HT_DWORD3x4; }
     3471        YY_BREAK
     3472case 320:
    34683473YY_RULE_SETUP
    34693474#line 420 "gpu/lolfx-scanner.l"
    3470 { return token::HT_DWORD4; }
    3471         YY_BREAK
    3472 case 320:
    3473 YY_RULE_SETUP
    3474 #line 421 "gpu/lolfx-scanner.l"
    3475 { return token::HT_DWORD1x4; }
     3475{ return token::HT_DWORD4x4; }
    34763476        YY_BREAK
    34773477case 321:
    34783478YY_RULE_SETUP
    34793479#line 422 "gpu/lolfx-scanner.l"
    3480 { return token::HT_DWORD2x4; }
     3480{ return token::HT_INT1; }
    34813481        YY_BREAK
    34823482case 322:
    34833483YY_RULE_SETUP
    34843484#line 423 "gpu/lolfx-scanner.l"
    3485 { return token::HT_DWORD3x4; }
     3485{ return token::HT_INT1x1; }
    34863486        YY_BREAK
    34873487case 323:
    34883488YY_RULE_SETUP
    34893489#line 424 "gpu/lolfx-scanner.l"
    3490 { return token::HT_DWORD4x4; }
     3490{ return token::HT_INT2x1; }
    34913491        YY_BREAK
    34923492case 324:
    34933493YY_RULE_SETUP
     3494#line 425 "gpu/lolfx-scanner.l"
     3495{ return token::HT_INT3x1; }
     3496        YY_BREAK
     3497case 325:
     3498YY_RULE_SETUP
    34943499#line 426 "gpu/lolfx-scanner.l"
    3495 { return token::HT_INT1; }
    3496         YY_BREAK
    3497 case 325:
     3500{ return token::HT_INT4x1; }
     3501        YY_BREAK
     3502case 326:
    34983503YY_RULE_SETUP
    34993504#line 427 "gpu/lolfx-scanner.l"
    3500 { return token::HT_INT1x1; }
    3501         YY_BREAK
    3502 case 326:
     3505{ return token::HT_INT2; }
     3506        YY_BREAK
     3507case 327:
    35033508YY_RULE_SETUP
    35043509#line 428 "gpu/lolfx-scanner.l"
    3505 { return token::HT_INT2x1; }
    3506         YY_BREAK
    3507 case 327:
     3510{ return token::HT_INT1x2; }
     3511        YY_BREAK
     3512case 328:
    35083513YY_RULE_SETUP
    35093514#line 429 "gpu/lolfx-scanner.l"
    3510 { return token::HT_INT3x1; }
    3511         YY_BREAK
    3512 case 328:
     3515{ return token::HT_INT2x2; }
     3516        YY_BREAK
     3517case 329:
    35133518YY_RULE_SETUP
    35143519#line 430 "gpu/lolfx-scanner.l"
    3515 { return token::HT_INT4x1; }
    3516         YY_BREAK
    3517 case 329:
     3520{ return token::HT_INT3x2; }
     3521        YY_BREAK
     3522case 330:
    35183523YY_RULE_SETUP
    35193524#line 431 "gpu/lolfx-scanner.l"
    3520 { return token::HT_INT2; }
    3521         YY_BREAK
    3522 case 330:
     3525{ return token::HT_INT4x2; }
     3526        YY_BREAK
     3527case 331:
    35233528YY_RULE_SETUP
    35243529#line 432 "gpu/lolfx-scanner.l"
    3525 { return token::HT_INT1x2; }
    3526         YY_BREAK
    3527 case 331:
     3530{ return token::HT_INT3; }
     3531        YY_BREAK
     3532case 332:
    35283533YY_RULE_SETUP
    35293534#line 433 "gpu/lolfx-scanner.l"
    3530 { return token::HT_INT2x2; }
    3531         YY_BREAK
    3532 case 332:
     3535{ return token::HT_INT1x3; }
     3536        YY_BREAK
     3537case 333:
    35333538YY_RULE_SETUP
    35343539#line 434 "gpu/lolfx-scanner.l"
    3535 { return token::HT_INT3x2; }
    3536         YY_BREAK
    3537 case 333:
     3540{ return token::HT_INT2x3; }
     3541        YY_BREAK
     3542case 334:
    35383543YY_RULE_SETUP
    35393544#line 435 "gpu/lolfx-scanner.l"
    3540 { return token::HT_INT4x2; }
    3541         YY_BREAK
    3542 case 334:
     3545{ return token::HT_INT3x3; }
     3546        YY_BREAK
     3547case 335:
    35433548YY_RULE_SETUP
    35443549#line 436 "gpu/lolfx-scanner.l"
    3545 { return token::HT_INT3; }
    3546         YY_BREAK
    3547 case 335:
     3550{ return token::HT_INT4x3; }
     3551        YY_BREAK
     3552case 336:
    35483553YY_RULE_SETUP
    35493554#line 437 "gpu/lolfx-scanner.l"
    3550 { return token::HT_INT1x3; }
    3551         YY_BREAK
    3552 case 336:
     3555{ return token::HT_INT4; }
     3556        YY_BREAK
     3557case 337:
    35533558YY_RULE_SETUP
    35543559#line 438 "gpu/lolfx-scanner.l"
    3555 { return token::HT_INT2x3; }
    3556         YY_BREAK
    3557 case 337:
     3560{ return token::HT_INT1x4; }
     3561        YY_BREAK
     3562case 338:
    35583563YY_RULE_SETUP
    35593564#line 439 "gpu/lolfx-scanner.l"
    3560 { return token::HT_INT3x3; }
    3561         YY_BREAK
    3562 case 338:
     3565{ return token::HT_INT2x4; }
     3566        YY_BREAK
     3567case 339:
    35633568YY_RULE_SETUP
    35643569#line 440 "gpu/lolfx-scanner.l"
    3565 { return token::HT_INT4x3; }
    3566         YY_BREAK
    3567 case 339:
     3570{ return token::HT_INT3x4; }
     3571        YY_BREAK
     3572case 340:
    35683573YY_RULE_SETUP
    35693574#line 441 "gpu/lolfx-scanner.l"
    3570 { return token::HT_INT4; }
    3571         YY_BREAK
    3572 case 340:
    3573 YY_RULE_SETUP
    3574 #line 442 "gpu/lolfx-scanner.l"
    3575 { return token::HT_INT1x4; }
     3575{ return token::HT_INT4x4; }
    35763576        YY_BREAK
    35773577case 341:
    35783578YY_RULE_SETUP
    35793579#line 443 "gpu/lolfx-scanner.l"
    3580 { return token::HT_INT2x4; }
     3580{ return token::HT_UINT1; }
    35813581        YY_BREAK
    35823582case 342:
    35833583YY_RULE_SETUP
    35843584#line 444 "gpu/lolfx-scanner.l"
    3585 { return token::HT_INT3x4; }
     3585{ return token::HT_UINT1x1; }
    35863586        YY_BREAK
    35873587case 343:
    35883588YY_RULE_SETUP
    35893589#line 445 "gpu/lolfx-scanner.l"
    3590 { return token::HT_INT4x4; }
     3590{ return token::HT_UINT2x1; }
    35913591        YY_BREAK
    35923592case 344:
    35933593YY_RULE_SETUP
     3594#line 446 "gpu/lolfx-scanner.l"
     3595{ return token::HT_UINT3x1; }
     3596        YY_BREAK
     3597case 345:
     3598YY_RULE_SETUP
    35943599#line 447 "gpu/lolfx-scanner.l"
    3595 { return token::HT_UINT1; }
    3596         YY_BREAK
    3597 case 345:
     3600{ return token::HT_UINT4x1; }
     3601        YY_BREAK
     3602case 346:
    35983603YY_RULE_SETUP
    35993604#line 448 "gpu/lolfx-scanner.l"
    3600 { return token::HT_UINT1x1; }
    3601         YY_BREAK
    3602 case 346:
     3605{ return token::HT_UINT2; }
     3606        YY_BREAK
     3607case 347:
    36033608YY_RULE_SETUP
    36043609#line 449 "gpu/lolfx-scanner.l"
    3605 { return token::HT_UINT2x1; }
    3606         YY_BREAK
    3607 case 347:
     3610{ return token::HT_UINT1x2; }
     3611        YY_BREAK
     3612case 348:
    36083613YY_RULE_SETUP
    36093614#line 450 "gpu/lolfx-scanner.l"
    3610 { return token::HT_UINT3x1; }
    3611         YY_BREAK
    3612 case 348:
     3615{ return token::HT_UINT2x2; }
     3616        YY_BREAK
     3617case 349:
    36133618YY_RULE_SETUP
    36143619#line 451 "gpu/lolfx-scanner.l"
    3615 { return token::HT_UINT4x1; }
    3616         YY_BREAK
    3617 case 349:
     3620{ return token::HT_UINT3x2; }
     3621        YY_BREAK
     3622case 350:
    36183623YY_RULE_SETUP
    36193624#line 452 "gpu/lolfx-scanner.l"
    3620 { return token::HT_UINT2; }
    3621         YY_BREAK
    3622 case 350:
     3625{ return token::HT_UINT4x2; }
     3626        YY_BREAK
     3627case 351:
    36233628YY_RULE_SETUP
    36243629#line 453 "gpu/lolfx-scanner.l"
    3625 { return token::HT_UINT1x2; }
    3626         YY_BREAK
    3627 case 351:
     3630{ return token::HT_UINT3; }
     3631        YY_BREAK
     3632case 352:
    36283633YY_RULE_SETUP
    36293634#line 454 "gpu/lolfx-scanner.l"
    3630 { return token::HT_UINT2x2; }
    3631         YY_BREAK
    3632 case 352:
     3635{ return token::HT_UINT1x3; }
     3636        YY_BREAK
     3637case 353:
    36333638YY_RULE_SETUP
    36343639#line 455 "gpu/lolfx-scanner.l"
    3635 { return token::HT_UINT3x2; }
    3636         YY_BREAK
    3637 case 353:
     3640{ return token::HT_UINT2x3; }
     3641        YY_BREAK
     3642case 354:
    36383643YY_RULE_SETUP
    36393644#line 456 "gpu/lolfx-scanner.l"
    3640 { return token::HT_UINT4x2; }
    3641         YY_BREAK
    3642 case 354:
     3645{ return token::HT_UINT3x3; }
     3646        YY_BREAK
     3647case 355:
    36433648YY_RULE_SETUP
    36443649#line 457 "gpu/lolfx-scanner.l"
    3645 { return token::HT_UINT3; }
    3646         YY_BREAK
    3647 case 355:
     3650{ return token::HT_UINT4x3; }
     3651        YY_BREAK
     3652case 356:
    36483653YY_RULE_SETUP
    36493654#line 458 "gpu/lolfx-scanner.l"
    3650 { return token::HT_UINT1x3; }
    3651         YY_BREAK
    3652 case 356:
     3655{ return token::HT_UINT4; }
     3656        YY_BREAK
     3657case 357:
    36533658YY_RULE_SETUP
    36543659#line 459 "gpu/lolfx-scanner.l"
    3655 { return token::HT_UINT2x3; }
    3656         YY_BREAK
    3657 case 357:
     3660{ return token::HT_UINT1x4; }
     3661        YY_BREAK
     3662case 358:
    36583663YY_RULE_SETUP
    36593664#line 460 "gpu/lolfx-scanner.l"
    3660 { return token::HT_UINT3x3; }
    3661         YY_BREAK
    3662 case 358:
     3665{ return token::HT_UINT2x4; }
     3666        YY_BREAK
     3667case 359:
    36633668YY_RULE_SETUP
    36643669#line 461 "gpu/lolfx-scanner.l"
    3665 { return token::HT_UINT4x3; }
    3666         YY_BREAK
    3667 case 359:
     3670{ return token::HT_UINT3x4; }
     3671        YY_BREAK
     3672case 360:
    36683673YY_RULE_SETUP
    36693674#line 462 "gpu/lolfx-scanner.l"
    3670 { return token::HT_UINT4; }
    3671         YY_BREAK
    3672 case 360:
    3673 YY_RULE_SETUP
    3674 #line 463 "gpu/lolfx-scanner.l"
    3675 { return token::HT_UINT1x4; }
    3676         YY_BREAK
    3677 case 361:
    3678 YY_RULE_SETUP
    3679 #line 464 "gpu/lolfx-scanner.l"
    3680 { return token::HT_UINT2x4; }
    3681         YY_BREAK
    3682 case 362:
    3683 YY_RULE_SETUP
    3684 #line 465 "gpu/lolfx-scanner.l"
    3685 { return token::HT_UINT3x4; }
    3686         YY_BREAK
    3687 case 363:
    3688 YY_RULE_SETUP
    3689 #line 466 "gpu/lolfx-scanner.l"
    36903675{ return token::HT_UINT4x4; }
    36913676        YY_BREAK
     
    36943679  * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb943993%28v=vs.85%29.aspx
    36953680  */
     3681case 361:
     3682YY_RULE_SETUP
     3683#line 469 "gpu/lolfx-scanner.l"
     3684{ return token::PREPROCESSOR_DEFINE; }
     3685        YY_BREAK
     3686case 362:
     3687YY_RULE_SETUP
     3688#line 470 "gpu/lolfx-scanner.l"
     3689{ return token::PREPROCESSOR_ELIF; }
     3690        YY_BREAK
     3691case 363:
     3692YY_RULE_SETUP
     3693#line 471 "gpu/lolfx-scanner.l"
     3694{ return token::PREPROCESSOR_ELSE; }
     3695        YY_BREAK
    36963696case 364:
    36973697YY_RULE_SETUP
     3698#line 472 "gpu/lolfx-scanner.l"
     3699{ return token::PREPROCESSOR_ENDIF; }
     3700        YY_BREAK
     3701case 365:
     3702YY_RULE_SETUP
    36983703#line 473 "gpu/lolfx-scanner.l"
    3699 { return token::PREPROCESSOR_DEFINE; }
    3700         YY_BREAK
    3701 case 365:
     3704{ return token::PREPROCESSOR_ERROR; }
     3705        YY_BREAK
     3706case 366:
    37023707YY_RULE_SETUP
    37033708#line 474 "gpu/lolfx-scanner.l"
    3704 { return token::PREPROCESSOR_ELIF; }
    3705         YY_BREAK
    3706 case 366:
     3709{ return token::PREPROCESSOR_IF; }
     3710        YY_BREAK
     3711case 367:
    37073712YY_RULE_SETUP
    37083713#line 475 "gpu/lolfx-scanner.l"
    3709 { return token::PREPROCESSOR_ELSE; }
    3710         YY_BREAK
    3711 case 367:
     3714{ return token::PREPROCESSOR_IFDEF; }
     3715        YY_BREAK
     3716case 368:
    37123717YY_RULE_SETUP
    37133718#line 476 "gpu/lolfx-scanner.l"
    3714 { return token::PREPROCESSOR_ENDIF; }
    3715         YY_BREAK
    3716 case 368:
     3719{ return token::PREPROCESSOR_IFNDEF; }
     3720        YY_BREAK
     3721case 369:
    37173722YY_RULE_SETUP
    37183723#line 477 "gpu/lolfx-scanner.l"
    3719 { return token::PREPROCESSOR_ERROR; }
    3720         YY_BREAK
    3721 case 369:
     3724{ return token::PREPROCESSOR_INCLUDE; }
     3725        YY_BREAK
     3726case 370:
    37223727YY_RULE_SETUP
    37233728#line 478 "gpu/lolfx-scanner.l"
    3724 { return token::PREPROCESSOR_IF; }
    3725         YY_BREAK
    3726 case 370:
     3729{ return token::PREPROCESSOR_LINE; }
     3730        YY_BREAK
     3731case 371:
    37273732YY_RULE_SETUP
    37283733#line 479 "gpu/lolfx-scanner.l"
    3729 { return token::PREPROCESSOR_IFDEF; }
    3730         YY_BREAK
    3731 case 371:
     3734{ return token::PREPROCESSOR_PRAGMA; }
     3735        YY_BREAK
     3736case 372:
    37323737YY_RULE_SETUP
    37333738#line 480 "gpu/lolfx-scanner.l"
    3734 { return token::PREPROCESSOR_IFNDEF; }
    3735         YY_BREAK
    3736 case 372:
    3737 YY_RULE_SETUP
    3738 #line 481 "gpu/lolfx-scanner.l"
    3739 { return token::PREPROCESSOR_INCLUDE; }
    3740         YY_BREAK
    3741 case 373:
    3742 YY_RULE_SETUP
    3743 #line 482 "gpu/lolfx-scanner.l"
    3744 { return token::PREPROCESSOR_LINE; }
    3745         YY_BREAK
    3746 case 374:
    3747 YY_RULE_SETUP
    3748 #line 483 "gpu/lolfx-scanner.l"
    3749 { return token::PREPROCESSOR_PRAGMA; }
    3750         YY_BREAK
    3751 case 375:
    3752 YY_RULE_SETUP
    3753 #line 484 "gpu/lolfx-scanner.l"
    37543739{ return token::PREPROCESSOR_UNDEF; }
    37553740        YY_BREAK
     
    37573742  * GLSL preprocessor directives
    37583743  */
    3759 case 376:
    3760 YY_RULE_SETUP
    3761 #line 490 "gpu/lolfx-scanner.l"
     3744case 373:
     3745YY_RULE_SETUP
     3746#line 486 "gpu/lolfx-scanner.l"
    37623747{ /* ignore for now */ }
    37633748        YY_BREAK
     
    37663751  * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb509569%28v=vs.85%29.aspx
    37673752  */
     3753case 374:
     3754YY_RULE_SETUP
     3755#line 493 "gpu/lolfx-scanner.l"
     3756{ return token::HT_AUTO; }
     3757        YY_BREAK
     3758case 375:
     3759YY_RULE_SETUP
     3760#line 494 "gpu/lolfx-scanner.l"
     3761{ return token::HT_CATCH; }
     3762        YY_BREAK
     3763case 376:
     3764YY_RULE_SETUP
     3765#line 495 "gpu/lolfx-scanner.l"
     3766{ return token::HT_CHAR; }
     3767        YY_BREAK
    37683768case 377:
    37693769YY_RULE_SETUP
     3770#line 496 "gpu/lolfx-scanner.l"
     3771{ return token::HT_CLASS; }
     3772        YY_BREAK
     3773case 378:
     3774YY_RULE_SETUP
    37703775#line 497 "gpu/lolfx-scanner.l"
    3771 { return token::HT_AUTO; }
    3772         YY_BREAK
    3773 case 378:
     3776{ return token::HT_CONST_CAST; }
     3777        YY_BREAK
     3778case 379:
    37743779YY_RULE_SETUP
    37753780#line 498 "gpu/lolfx-scanner.l"
    3776 { return token::HT_CATCH; }
    3777         YY_BREAK
    3778 case 379:
     3781{ return token::HT_DELETE; }
     3782        YY_BREAK
     3783case 380:
    37793784YY_RULE_SETUP
    37803785#line 499 "gpu/lolfx-scanner.l"
    3781 { return token::HT_CHAR; }
    3782         YY_BREAK
    3783 case 380:
     3786{ return token::HT_DYNAMIC_CAST; }
     3787        YY_BREAK
     3788case 381:
    37843789YY_RULE_SETUP
    37853790#line 500 "gpu/lolfx-scanner.l"
    3786 { return token::HT_CLASS; }
    3787         YY_BREAK
    3788 case 381:
     3791{ return token::HT_ENUM; }
     3792        YY_BREAK
     3793case 382:
    37893794YY_RULE_SETUP
    37903795#line 501 "gpu/lolfx-scanner.l"
    3791 { return token::HT_CONST_CAST; }
    3792         YY_BREAK
    3793 case 382:
     3796{ return token::HT_EXPLICIT; }
     3797        YY_BREAK
     3798case 383:
    37943799YY_RULE_SETUP
    37953800#line 502 "gpu/lolfx-scanner.l"
    3796 { return token::HT_DELETE; }
    3797         YY_BREAK
    3798 case 383:
     3801{ return token::HT_FRIEND; }
     3802        YY_BREAK
     3803case 384:
    37993804YY_RULE_SETUP
    38003805#line 503 "gpu/lolfx-scanner.l"
    3801 { return token::HT_DYNAMIC_CAST; }
    3802         YY_BREAK
    3803 case 384:
     3806{ return token::HT_GOTO; }
     3807        YY_BREAK
     3808case 385:
    38043809YY_RULE_SETUP
    38053810#line 504 "gpu/lolfx-scanner.l"
    3806 { return token::HT_ENUM; }
    3807         YY_BREAK
    3808 case 385:
     3811{ return token::HT_LONG; }
     3812        YY_BREAK
     3813case 386:
    38093814YY_RULE_SETUP
    38103815#line 505 "gpu/lolfx-scanner.l"
    3811 { return token::HT_EXPLICIT; }
    3812         YY_BREAK
    3813 case 386:
     3816{ return token::HT_MUTABLE; }
     3817        YY_BREAK
     3818case 387:
    38143819YY_RULE_SETUP
    38153820#line 506 "gpu/lolfx-scanner.l"
    3816 { return token::HT_FRIEND; }
    3817         YY_BREAK
    3818 case 387:
     3821{ return token::HT_NEW; }
     3822        YY_BREAK
     3823case 388:
    38193824YY_RULE_SETUP
    38203825#line 507 "gpu/lolfx-scanner.l"
    3821 { return token::HT_GOTO; }
    3822         YY_BREAK
    3823 case 388:
     3826{ return token::HT_OPERATOR; }
     3827        YY_BREAK
     3828case 389:
    38243829YY_RULE_SETUP
    38253830#line 508 "gpu/lolfx-scanner.l"
    3826 { return token::HT_LONG; }
    3827         YY_BREAK
    3828 case 389:
     3831{ return token::HT_PRIVATE; }
     3832        YY_BREAK
     3833case 390:
    38293834YY_RULE_SETUP
    38303835#line 509 "gpu/lolfx-scanner.l"
    3831 { return token::HT_MUTABLE; }
    3832         YY_BREAK
    3833 case 390:
     3836{ return token::HT_PROTECTED; }
     3837        YY_BREAK
     3838case 391:
    38343839YY_RULE_SETUP
    38353840#line 510 "gpu/lolfx-scanner.l"
    3836 { return token::HT_NEW; }
    3837         YY_BREAK
    3838 case 391:
     3841{ return token::HT_PUBLIC; }
     3842        YY_BREAK
     3843case 392:
    38393844YY_RULE_SETUP
    38403845#line 511 "gpu/lolfx-scanner.l"
    3841 { return token::HT_OPERATOR; }
    3842         YY_BREAK
    3843 case 392:
     3846{ return token::HT_REINTERPRET_CAST; }
     3847        YY_BREAK
     3848case 393:
    38443849YY_RULE_SETUP
    38453850#line 512 "gpu/lolfx-scanner.l"
    3846 { return token::HT_PRIVATE; }
    3847         YY_BREAK
    3848 case 393:
     3851{ return token::HT_SHORT; }
     3852        YY_BREAK
     3853case 394:
    38493854YY_RULE_SETUP
    38503855#line 513 "gpu/lolfx-scanner.l"
    3851 { return token::HT_PROTECTED; }
    3852         YY_BREAK
    3853 case 394:
     3856{ return token::HT_SIGNED; }
     3857        YY_BREAK
     3858case 395:
    38543859YY_RULE_SETUP
    38553860#line 514 "gpu/lolfx-scanner.l"
    3856 { return token::HT_PUBLIC; }
    3857         YY_BREAK
    3858 case 395:
     3861{ return token::HT_SIZEOF; }
     3862        YY_BREAK
     3863case 396:
    38593864YY_RULE_SETUP
    38603865#line 515 "gpu/lolfx-scanner.l"
    3861 { return token::HT_REINTERPRET_CAST; }
    3862         YY_BREAK
    3863 case 396:
     3866{ return token::HT_STATIC_CAST; }
     3867        YY_BREAK
     3868case 397:
    38643869YY_RULE_SETUP
    38653870#line 516 "gpu/lolfx-scanner.l"
    3866 { return token::HT_SHORT; }
    3867         YY_BREAK
    3868 case 397:
     3871{ return token::HT_TEMPLATE; }
     3872        YY_BREAK
     3873case 398:
    38693874YY_RULE_SETUP
    38703875#line 517 "gpu/lolfx-scanner.l"
    3871 { return token::HT_SIGNED; }
    3872         YY_BREAK
    3873 case 398:
     3876{ return token::HT_THIS; }
     3877        YY_BREAK
     3878case 399:
    38743879YY_RULE_SETUP
    38753880#line 518 "gpu/lolfx-scanner.l"
    3876 { return token::HT_SIZEOF; }
    3877         YY_BREAK
    3878 case 399:
     3881{ return token::HT_THROW; }
     3882        YY_BREAK
     3883case 400:
    38793884YY_RULE_SETUP
    38803885#line 519 "gpu/lolfx-scanner.l"
    3881 { return token::HT_STATIC_CAST; }
    3882         YY_BREAK
    3883 case 400:
     3886{ return token::HT_TRY; }
     3887        YY_BREAK
     3888case 401:
    38843889YY_RULE_SETUP
    38853890#line 520 "gpu/lolfx-scanner.l"
    3886 { return token::HT_TEMPLATE; }
    3887         YY_BREAK
    3888 case 401:
     3891{ return token::HT_TYPENAME; }
     3892        YY_BREAK
     3893case 402:
    38893894YY_RULE_SETUP
    38903895#line 521 "gpu/lolfx-scanner.l"
    3891 { return token::HT_THIS; }
    3892         YY_BREAK
    3893 case 402:
     3896{ return token::HT_UNION; }
     3897        YY_BREAK
     3898case 403:
    38943899YY_RULE_SETUP
    38953900#line 522 "gpu/lolfx-scanner.l"
    3896 { return token::HT_THROW; }
    3897         YY_BREAK
    3898 case 403:
     3901{ return token::HT_UNSIGNED; }
     3902        YY_BREAK
     3903case 404:
    38993904YY_RULE_SETUP
    39003905#line 523 "gpu/lolfx-scanner.l"
    3901 { return token::HT_TRY; }
    3902         YY_BREAK
    3903 case 404:
     3906{ return token::HT_USING; }
     3907        YY_BREAK
     3908case 405:
    39043909YY_RULE_SETUP
    39053910#line 524 "gpu/lolfx-scanner.l"
    3906 { return token::HT_TYPENAME; }
    3907         YY_BREAK
    3908 case 405:
    3909 YY_RULE_SETUP
    3910 #line 525 "gpu/lolfx-scanner.l"
    3911 { return token::HT_UNION; }
    3912         YY_BREAK
    3913 case 406:
    3914 YY_RULE_SETUP
    3915 #line 526 "gpu/lolfx-scanner.l"
    3916 { return token::HT_UNSIGNED; }
    3917         YY_BREAK
    3918 case 407:
    3919 YY_RULE_SETUP
    3920 #line 527 "gpu/lolfx-scanner.l"
    3921 { return token::HT_USING; }
    3922         YY_BREAK
    3923 case 408:
    3924 YY_RULE_SETUP
    3925 #line 528 "gpu/lolfx-scanner.l"
    39263911{ return token::HT_VIRTUAL; }
    39273912        YY_BREAK
     
    39293914  * Various tokens
    39303915  */
     3916case 406:
     3917YY_RULE_SETUP
     3918#line 530 "gpu/lolfx-scanner.l"
     3919{ return token::T_INC; }
     3920        YY_BREAK
     3921case 407:
     3922YY_RULE_SETUP
     3923#line 531 "gpu/lolfx-scanner.l"
     3924{ return token::T_DEC; }
     3925        YY_BREAK
     3926case 408:
     3927YY_RULE_SETUP
     3928#line 532 "gpu/lolfx-scanner.l"
     3929{ return token::T_LE; }
     3930        YY_BREAK
    39313931case 409:
    39323932YY_RULE_SETUP
     3933#line 533 "gpu/lolfx-scanner.l"
     3934{ return token::T_GE; }
     3935        YY_BREAK
     3936case 410:
     3937YY_RULE_SETUP
    39333938#line 534 "gpu/lolfx-scanner.l"
    3934 { return token::T_INC; }
    3935         YY_BREAK
    3936 case 410:
     3939{ return token::T_EQ; }
     3940        YY_BREAK
     3941case 411:
    39373942YY_RULE_SETUP
    39383943#line 535 "gpu/lolfx-scanner.l"
    3939 { return token::T_DEC; }
    3940         YY_BREAK
    3941 case 411:
     3944{ return token::T_NE; }
     3945        YY_BREAK
     3946case 412:
    39423947YY_RULE_SETUP
    39433948#line 536 "gpu/lolfx-scanner.l"
    3944 { return token::T_LE; }
    3945         YY_BREAK
    3946 case 412:
     3949{ return token::T_LEFT; }
     3950        YY_BREAK
     3951case 413:
    39473952YY_RULE_SETUP
    39483953#line 537 "gpu/lolfx-scanner.l"
    3949 { return token::T_GE; }
    3950         YY_BREAK
    3951 case 413:
     3954{ return token::T_RIGHT; }
     3955        YY_BREAK
     3956case 414:
    39523957YY_RULE_SETUP
    39533958#line 538 "gpu/lolfx-scanner.l"
    3954 { return token::T_EQ; }
    3955         YY_BREAK
    3956 case 414:
     3959{ return token::T_AND; }
     3960        YY_BREAK
     3961case 415:
    39573962YY_RULE_SETUP
    39583963#line 539 "gpu/lolfx-scanner.l"
    3959 { return token::T_NE; }
    3960         YY_BREAK
    3961 case 415:
     3964{ return token::T_OR; }
     3965        YY_BREAK
     3966case 416:
    39623967YY_RULE_SETUP
    39633968#line 540 "gpu/lolfx-scanner.l"
    3964 { return token::T_LEFT; }
    3965         YY_BREAK
    3966 case 416:
    3967 YY_RULE_SETUP
    3968 #line 541 "gpu/lolfx-scanner.l"
    3969 { return token::T_RIGHT; }
     3969{ return token::T_XOR; }
    39703970        YY_BREAK
    39713971case 417:
    39723972YY_RULE_SETUP
    39733973#line 542 "gpu/lolfx-scanner.l"
    3974 { return token::T_AND; }
     3974{ return token::T_MULEQ; }
    39753975        YY_BREAK
    39763976case 418:
    39773977YY_RULE_SETUP
    39783978#line 543 "gpu/lolfx-scanner.l"
    3979 { return token::T_OR; }
     3979{ return token::T_DIVEQ; }
    39803980        YY_BREAK
    39813981case 419:
    39823982YY_RULE_SETUP
    39833983#line 544 "gpu/lolfx-scanner.l"
    3984 { return token::T_XOR; }
     3984{ return token::T_MODEQ; }
    39853985        YY_BREAK
    39863986case 420:
    39873987YY_RULE_SETUP
     3988#line 545 "gpu/lolfx-scanner.l"
     3989{ return token::T_ADDEQ; }
     3990        YY_BREAK
     3991case 421:
     3992YY_RULE_SETUP
    39883993#line 546 "gpu/lolfx-scanner.l"
    3989 { return token::T_MULEQ; }
    3990         YY_BREAK
    3991 case 421:
     3994{ return token::T_SUBEQ; }
     3995        YY_BREAK
     3996case 422:
    39923997YY_RULE_SETUP
    39933998#line 547 "gpu/lolfx-scanner.l"
    3994 { return token::T_DIVEQ; }
    3995         YY_BREAK
    3996 case 422:
     3999{ return token::T_LEFTEQ; }
     4000        YY_BREAK
     4001case 423:
    39974002YY_RULE_SETUP
    39984003#line 548 "gpu/lolfx-scanner.l"
    3999 { return token::T_MODEQ; }
    4000         YY_BREAK
    4001 case 423:
     4004{ return token::T_RIGHTEQ; }
     4005        YY_BREAK
     4006case 424:
    40024007YY_RULE_SETUP
    40034008#line 549 "gpu/lolfx-scanner.l"
    4004 { return token::T_ADDEQ; }
    4005         YY_BREAK
    4006 case 424:
     4009{ return token::T_ANDEQ; }
     4010        YY_BREAK
     4011case 425:
    40074012YY_RULE_SETUP
    40084013#line 550 "gpu/lolfx-scanner.l"
    4009 { return token::T_SUBEQ; }
    4010         YY_BREAK
    4011 case 425:
     4014{ return token::T_XOREQ; }
     4015        YY_BREAK
     4016case 426:
    40124017YY_RULE_SETUP
    40134018#line 551 "gpu/lolfx-scanner.l"
    4014 { return token::T_LEFTEQ; }
    4015         YY_BREAK
    4016 case 426:
    4017 YY_RULE_SETUP
    4018 #line 552 "gpu/lolfx-scanner.l"
    4019 { return token::T_RIGHTEQ; }
     4019{ return token::T_OREQ; }
    40204020        YY_BREAK
    40214021case 427:
    40224022YY_RULE_SETUP
    40234023#line 553 "gpu/lolfx-scanner.l"
    4024 { return token::T_ANDEQ; }
    4025         YY_BREAK
    4026 case 428:
    4027 YY_RULE_SETUP
    4028 #line 554 "gpu/lolfx-scanner.l"
    4029 { return token::T_XOREQ; }
    4030         YY_BREAK
    4031 case 429:
    4032 YY_RULE_SETUP
    4033 #line 555 "gpu/lolfx-scanner.l"
    4034 { return token::T_OREQ; }
    4035         YY_BREAK
    4036 case 430:
    4037 YY_RULE_SETUP
    4038 #line 557 "gpu/lolfx-scanner.l"
    40394024{
    40404025    yylval->fval = std::atof(yytext);
     
    40424027}
    40434028        YY_BREAK
    4044 case 431:
    4045 YY_RULE_SETUP
    4046 #line 561 "gpu/lolfx-scanner.l"
     4029case 428:
     4030YY_RULE_SETUP
     4031#line 557 "gpu/lolfx-scanner.l"
    40474032{
    40484033    yylval->uval = std::atoi(yytext);
     
    40504035}
    40514036        YY_BREAK
    4052 case 432:
    4053 YY_RULE_SETUP
    4054 #line 565 "gpu/lolfx-scanner.l"
     4037case 429:
     4038YY_RULE_SETUP
     4039#line 561 "gpu/lolfx-scanner.l"
    40554040{
    40564041    yylval->ival = std::atoi(yytext);
     
    40584043}
    40594044        YY_BREAK
    4060 case 433:
    4061 YY_RULE_SETUP
    4062 #line 570 "gpu/lolfx-scanner.l"
     4045case 430:
     4046YY_RULE_SETUP
     4047#line 566 "gpu/lolfx-scanner.l"
     4048{
     4049    /* Copy token for now */
     4050    yylval->sval = strdup(yytext);
     4051    return token::FIELDSELECTION;
     4052}
     4053        YY_BREAK
     4054case 431:
     4055YY_RULE_SETUP
     4056#line 572 "gpu/lolfx-scanner.l"
    40634057{
    40644058    /* Copy token for now */
     
    40674061}
    40684062        YY_BREAK
     4063case 432:
     4064YY_RULE_SETUP
     4065#line 578 "gpu/lolfx-scanner.l"
     4066{ /* ignore whitespace */ }
     4067        YY_BREAK
     4068case 433:
     4069/* rule 433 can match eol */
     4070YY_RULE_SETUP
     4071#line 579 "gpu/lolfx-scanner.l"
     4072{ yylloc->lines(1); }
     4073        YY_BREAK
    40694074case 434:
    40704075YY_RULE_SETUP
    4071 #line 576 "gpu/lolfx-scanner.l"
    4072 { /* ignore whitespace */ }
    4073         YY_BREAK
    4074 case 435:
    4075 /* rule 435 can match eol */
    4076 YY_RULE_SETUP
    4077 #line 577 "gpu/lolfx-scanner.l"
    4078 { yylloc->lines(1); }
    4079         YY_BREAK
    4080 case 436:
    4081 YY_RULE_SETUP
    4082 #line 578 "gpu/lolfx-scanner.l"
     4076#line 580 "gpu/lolfx-scanner.l"
    40834077{ return (token_type)*yytext; /* accept all characters */ }
    40844078        YY_BREAK
     
    40864080  * Ignore C comments
    40874081  */
     4082case 435:
     4083YY_RULE_SETUP
     4084#line 586 "gpu/lolfx-scanner.l"
     4085{ BEGIN(C_COMMENT); }
     4086        YY_BREAK
     4087case 436:
     4088YY_RULE_SETUP
     4089#line 587 "gpu/lolfx-scanner.l"
     4090{ BEGIN(INITIAL); }
     4091        YY_BREAK
    40884092case 437:
    40894093YY_RULE_SETUP
    4090 #line 584 "gpu/lolfx-scanner.l"
    4091 { BEGIN(C_COMMENT); }
     4094#line 588 "gpu/lolfx-scanner.l"
     4095{ }
    40924096        YY_BREAK
    40934097case 438:
    4094 YY_RULE_SETUP
    4095 #line 585 "gpu/lolfx-scanner.l"
    4096 { BEGIN(INITIAL); }
     4098/* rule 438 can match eol */
     4099YY_RULE_SETUP
     4100#line 589 "gpu/lolfx-scanner.l"
     4101{ yylloc->lines(1); }
    40974102        YY_BREAK
    40984103case 439:
    40994104YY_RULE_SETUP
    4100 #line 586 "gpu/lolfx-scanner.l"
    4101 { }
    4102         YY_BREAK
    4103 case 440:
    4104 /* rule 440 can match eol */
    4105 YY_RULE_SETUP
    4106 #line 587 "gpu/lolfx-scanner.l"
    4107 { yylloc->lines(1); }
    4108         YY_BREAK
    4109 case 441:
    4110 YY_RULE_SETUP
    4111 #line 588 "gpu/lolfx-scanner.l"
     4105#line 590 "gpu/lolfx-scanner.l"
    41124106{ }
    41134107        YY_BREAK
     
    41154109  * Ignore C++ comments
    41164110  */
     4111case 440:
     4112YY_RULE_SETUP
     4113#line 596 "gpu/lolfx-scanner.l"
     4114{ BEGIN(CPP_COMMENT); }
     4115        YY_BREAK
     4116case 441:
     4117/* rule 441 can match eol */
     4118YY_RULE_SETUP
     4119#line 597 "gpu/lolfx-scanner.l"
     4120{ yylloc->lines(1); BEGIN(INITIAL); }
     4121        YY_BREAK
    41174122case 442:
    41184123YY_RULE_SETUP
    4119 #line 594 "gpu/lolfx-scanner.l"
    4120 { BEGIN(CPP_COMMENT); }
     4124#line 598 "gpu/lolfx-scanner.l"
     4125{ }
    41214126        YY_BREAK
    41224127case 443:
    4123 /* rule 443 can match eol */
    4124 YY_RULE_SETUP
    4125 #line 595 "gpu/lolfx-scanner.l"
    4126 { yylloc->lines(1); BEGIN(INITIAL); }
    4127         YY_BREAK
    4128 case 444:
    4129 YY_RULE_SETUP
    4130 #line 596 "gpu/lolfx-scanner.l"
    4131 { }
    4132         YY_BREAK
    4133 case 445:
    4134 YY_RULE_SETUP
    4135 #line 598 "gpu/lolfx-scanner.l"
     4128YY_RULE_SETUP
     4129#line 600 "gpu/lolfx-scanner.l"
    41364130ECHO;
    41374131        YY_BREAK
    4138 #line 4139 "generated/lolfx-scanner.cpp"
     4132#line 4133 "generated/lolfx-scanner.cpp"
    41394133case YY_STATE_EOF(INITIAL):
    41404134case YY_STATE_EOF(C_COMMENT):
     
    50395033#define YYTABLES_NAME "yytables"
    50405034
    5041 #line 598 "gpu/lolfx-scanner.l"
     5035#line 600 "gpu/lolfx-scanner.l"
    50425036
    50435037
Note: See TracChangeset for help on using the changeset viewer.