Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/lex.cc

    r984dce6 rc6b1105  
    14671467 * Created On       : Sat Sep 22 08:58:10 2001
    14681468 * Last Modified By : Peter A. Buhr
    1469  * Last Modified On : Mon Mar 21 23:33:46 2016
    1470  * Update Count     : 450
     1469 * Last Modified On : Thu Jun 23 07:29:30 2016
     1470 * Update Count     : 457
    14711471 */
    14721472#line 20 "lex.ll"
     
    15021502
    15031503void rm_underscore() {
    1504         // remove underscores in numeric constant
    1505         int j = 0;
     1504        // Remove underscores in numeric constant by copying the non-underscore characters to the front of the string.
     1505        yyleng = 0;
    15061506        for ( int i = 0; yytext[i] != '\0'; i += 1 ) {
    15071507                if ( yytext[i] != '_' ) {
    1508                         yytext[j] = yytext[i];
    1509                         j += 1;
     1508                        yytext[yyleng] = yytext[i];
     1509                        yyleng += 1;
    15101510                } // if
    15111511        } // for
    1512         yyleng = j;
    15131512        yytext[yyleng] = '\0';
    15141513}
     
    15231522// ' stop highlighting
    15241523// display/white-space characters
    1525 // operators
    1526 
    1527 
    1528 
    1529 
    1530 #line 1531 "Parser/lex.cc"
     1524// overloadable operators
     1525// op_binary_not_over "?"|"->"|"."|"&&"|"||"|"@="
     1526// operator {op_unary_pre_post}|{op_binary_over}|{op_binary_not_over}
     1527
     1528
     1529
     1530
     1531#line 1532 "Parser/lex.cc"
    15311532
    15321533#define INITIAL 0
     
    17201721        register int yy_act;
    17211722   
    1722 #line 139 "lex.ll"
     1723#line 138 "lex.ll"
    17231724
    17241725                                   /* line directives */
    1725 #line 1726 "Parser/lex.cc"
     1726#line 1727 "Parser/lex.cc"
    17261727
    17271728        if ( !(yy_init) )
     
    18201821/* rule 1 can match eol */
    18211822YY_RULE_SETUP
    1822 #line 141 "lex.ll"
     1823#line 140 "lex.ll"
    18231824{
    18241825        /* " stop highlighting */
     
    18471848/* rule 2 can match eol */
    18481849YY_RULE_SETUP
    1849 #line 164 "lex.ll"
     1850#line 163 "lex.ll"
    18501851;
    18511852        YY_BREAK
     
    18531854case 3:
    18541855YY_RULE_SETUP
    1855 #line 167 "lex.ll"
     1856#line 166 "lex.ll"
    18561857{ BEGIN COMMENT; }
    18571858        YY_BREAK
     
    18591860/* rule 4 can match eol */
    18601861YY_RULE_SETUP
     1862#line 167 "lex.ll"
     1863;
     1864        YY_BREAK
     1865case 5:
     1866YY_RULE_SETUP
    18611867#line 168 "lex.ll"
    1862 ;
    1863         YY_BREAK
    1864 case 5:
    1865 YY_RULE_SETUP
    1866 #line 169 "lex.ll"
    18671868{ BEGIN 0; }
    18681869        YY_BREAK
     
    18711872/* rule 6 can match eol */
    18721873YY_RULE_SETUP
    1873 #line 172 "lex.ll"
     1874#line 171 "lex.ll"
    18741875;
    18751876        YY_BREAK
     
    18771878case 7:
    18781879YY_RULE_SETUP
     1880#line 174 "lex.ll"
     1881{ WHITE_RETURN(' '); }
     1882        YY_BREAK
     1883case 8:
     1884YY_RULE_SETUP
    18791885#line 175 "lex.ll"
    18801886{ WHITE_RETURN(' '); }
    18811887        YY_BREAK
    1882 case 8:
    1883 YY_RULE_SETUP
    1884 #line 176 "lex.ll"
    1885 { WHITE_RETURN(' '); }
    1886         YY_BREAK
    18871888case 9:
    18881889/* rule 9 can match eol */
    18891890YY_RULE_SETUP
    1890 #line 177 "lex.ll"
     1891#line 176 "lex.ll"
    18911892{ NEWLINE_RETURN(); }
    18921893        YY_BREAK
     
    18941895case 10:
    18951896YY_RULE_SETUP
     1897#line 179 "lex.ll"
     1898{ KEYWORD_RETURN(ALIGNAS); }                    // C11
     1899        YY_BREAK
     1900case 11:
     1901YY_RULE_SETUP
    18961902#line 180 "lex.ll"
    1897 { KEYWORD_RETURN(ALIGNAS); }                    // C11
    1898         YY_BREAK
    1899 case 11:
     1903{ KEYWORD_RETURN(ALIGNOF); }                    // C11
     1904        YY_BREAK
     1905case 12:
    19001906YY_RULE_SETUP
    19011907#line 181 "lex.ll"
    1902 { KEYWORD_RETURN(ALIGNOF); }                    // C11
    1903         YY_BREAK
    1904 case 12:
     1908{ KEYWORD_RETURN(ALIGNOF); }                    // GCC
     1909        YY_BREAK
     1910case 13:
    19051911YY_RULE_SETUP
    19061912#line 182 "lex.ll"
    19071913{ KEYWORD_RETURN(ALIGNOF); }                    // GCC
    19081914        YY_BREAK
    1909 case 13:
     1915case 14:
    19101916YY_RULE_SETUP
    19111917#line 183 "lex.ll"
    1912 { KEYWORD_RETURN(ALIGNOF); }                    // GCC
    1913         YY_BREAK
    1914 case 14:
     1918{ KEYWORD_RETURN(ASM); }
     1919        YY_BREAK
     1920case 15:
    19151921YY_RULE_SETUP
    19161922#line 184 "lex.ll"
    1917 { KEYWORD_RETURN(ASM); }
    1918         YY_BREAK
    1919 case 15:
     1923{ KEYWORD_RETURN(ASM); }                                // GCC
     1924        YY_BREAK
     1925case 16:
    19201926YY_RULE_SETUP
    19211927#line 185 "lex.ll"
    19221928{ KEYWORD_RETURN(ASM); }                                // GCC
    19231929        YY_BREAK
    1924 case 16:
     1930case 17:
    19251931YY_RULE_SETUP
    19261932#line 186 "lex.ll"
    1927 { KEYWORD_RETURN(ASM); }                                // GCC
    1928         YY_BREAK
    1929 case 17:
     1933{ KEYWORD_RETURN(AT); }                                 // CFA
     1934        YY_BREAK
     1935case 18:
    19301936YY_RULE_SETUP
    19311937#line 187 "lex.ll"
    1932 { KEYWORD_RETURN(AT); }                                 // CFA
    1933         YY_BREAK
    1934 case 18:
     1938{ KEYWORD_RETURN(ATOMIC); }                             // C11
     1939        YY_BREAK
     1940case 19:
    19351941YY_RULE_SETUP
    19361942#line 188 "lex.ll"
    1937 { KEYWORD_RETURN(ATOMIC); }                             // C11
    1938         YY_BREAK
    1939 case 19:
     1943{ KEYWORD_RETURN(ATTRIBUTE); }                  // GCC
     1944        YY_BREAK
     1945case 20:
    19401946YY_RULE_SETUP
    19411947#line 189 "lex.ll"
    19421948{ KEYWORD_RETURN(ATTRIBUTE); }                  // GCC
    19431949        YY_BREAK
    1944 case 20:
     1950case 21:
    19451951YY_RULE_SETUP
    19461952#line 190 "lex.ll"
    1947 { KEYWORD_RETURN(ATTRIBUTE); }                  // GCC
    1948         YY_BREAK
    1949 case 21:
     1953{ KEYWORD_RETURN(AUTO); }
     1954        YY_BREAK
     1955case 22:
    19501956YY_RULE_SETUP
    19511957#line 191 "lex.ll"
    1952 { KEYWORD_RETURN(AUTO); }
    1953         YY_BREAK
    1954 case 22:
     1958{ KEYWORD_RETURN(BOOL); }                               // C99
     1959        YY_BREAK
     1960case 23:
    19551961YY_RULE_SETUP
    19561962#line 192 "lex.ll"
    1957 { KEYWORD_RETURN(BOOL); }                               // C99
    1958         YY_BREAK
    1959 case 23:
     1963{ KEYWORD_RETURN(BREAK); }
     1964        YY_BREAK
     1965case 24:
    19601966YY_RULE_SETUP
    19611967#line 193 "lex.ll"
    1962 { KEYWORD_RETURN(BREAK); }
    1963         YY_BREAK
    1964 case 24:
     1968{ KEYWORD_RETURN(CASE); }
     1969        YY_BREAK
     1970case 25:
    19651971YY_RULE_SETUP
    19661972#line 194 "lex.ll"
    1967 { KEYWORD_RETURN(CASE); }
    1968         YY_BREAK
    1969 case 25:
     1973{ KEYWORD_RETURN(CATCH); }                              // CFA
     1974        YY_BREAK
     1975case 26:
    19701976YY_RULE_SETUP
    19711977#line 195 "lex.ll"
    1972 { KEYWORD_RETURN(CATCH); }                              // CFA
    1973         YY_BREAK
    1974 case 26:
     1978{ KEYWORD_RETURN(CATCHRESUME); }                // CFA
     1979        YY_BREAK
     1980case 27:
    19751981YY_RULE_SETUP
    19761982#line 196 "lex.ll"
    1977 { KEYWORD_RETURN(CATCHRESUME); }                // CFA
    1978         YY_BREAK
    1979 case 27:
     1983{ KEYWORD_RETURN(CHAR); }
     1984        YY_BREAK
     1985case 28:
    19801986YY_RULE_SETUP
    19811987#line 197 "lex.ll"
    1982 { KEYWORD_RETURN(CHAR); }
    1983         YY_BREAK
    1984 case 28:
     1988{ KEYWORD_RETURN(CHOOSE); }                             // CFA
     1989        YY_BREAK
     1990case 29:
    19851991YY_RULE_SETUP
    19861992#line 198 "lex.ll"
    1987 { KEYWORD_RETURN(CHOOSE); }                             // CFA
    1988         YY_BREAK
    1989 case 29:
     1993{ KEYWORD_RETURN(COMPLEX); }                    // C99
     1994        YY_BREAK
     1995case 30:
    19901996YY_RULE_SETUP
    19911997#line 199 "lex.ll"
    1992 { KEYWORD_RETURN(COMPLEX); }                    // C99
    1993         YY_BREAK
    1994 case 30:
     1998{ KEYWORD_RETURN(COMPLEX); }                    // GCC
     1999        YY_BREAK
     2000case 31:
    19952001YY_RULE_SETUP
    19962002#line 200 "lex.ll"
    19972003{ KEYWORD_RETURN(COMPLEX); }                    // GCC
    19982004        YY_BREAK
    1999 case 31:
     2005case 32:
    20002006YY_RULE_SETUP
    20012007#line 201 "lex.ll"
    2002 { KEYWORD_RETURN(COMPLEX); }                    // GCC
    2003         YY_BREAK
    2004 case 32:
     2008{ KEYWORD_RETURN(CONST); }
     2009        YY_BREAK
     2010case 33:
    20052011YY_RULE_SETUP
    20062012#line 202 "lex.ll"
    2007 { KEYWORD_RETURN(CONST); }
    2008         YY_BREAK
    2009 case 33:
     2013{ KEYWORD_RETURN(CONST); }                              // GCC
     2014        YY_BREAK
     2015case 34:
    20102016YY_RULE_SETUP
    20112017#line 203 "lex.ll"
    20122018{ KEYWORD_RETURN(CONST); }                              // GCC
    20132019        YY_BREAK
    2014 case 34:
     2020case 35:
    20152021YY_RULE_SETUP
    20162022#line 204 "lex.ll"
    2017 { KEYWORD_RETURN(CONST); }                              // GCC
    2018         YY_BREAK
    2019 case 35:
     2023{ KEYWORD_RETURN(CONTINUE); }
     2024        YY_BREAK
     2025case 36:
    20202026YY_RULE_SETUP
    20212027#line 205 "lex.ll"
    2022 { KEYWORD_RETURN(CONTINUE); }
    2023         YY_BREAK
    2024 case 36:
     2028{ KEYWORD_RETURN(DEFAULT); }
     2029        YY_BREAK
     2030case 37:
    20252031YY_RULE_SETUP
    20262032#line 206 "lex.ll"
    2027 { KEYWORD_RETURN(DEFAULT); }
    2028         YY_BREAK
    2029 case 37:
     2033{ KEYWORD_RETURN(DISABLE); }                    // CFA
     2034        YY_BREAK
     2035case 38:
    20302036YY_RULE_SETUP
    20312037#line 207 "lex.ll"
    2032 { KEYWORD_RETURN(DISABLE); }                    // CFA
    2033         YY_BREAK
    2034 case 38:
     2038{ KEYWORD_RETURN(DO); }
     2039        YY_BREAK
     2040case 39:
    20352041YY_RULE_SETUP
    20362042#line 208 "lex.ll"
    2037 { KEYWORD_RETURN(DO); }
    2038         YY_BREAK
    2039 case 39:
     2043{ KEYWORD_RETURN(DOUBLE); }
     2044        YY_BREAK
     2045case 40:
    20402046YY_RULE_SETUP
    20412047#line 209 "lex.ll"
    2042 { KEYWORD_RETURN(DOUBLE); }
    2043         YY_BREAK
    2044 case 40:
     2048{ KEYWORD_RETURN(DTYPE); }                              // CFA
     2049        YY_BREAK
     2050case 41:
    20452051YY_RULE_SETUP
    20462052#line 210 "lex.ll"
    2047 { KEYWORD_RETURN(DTYPE); }                              // CFA
    2048         YY_BREAK
    2049 case 41:
     2053{ KEYWORD_RETURN(ELSE); }
     2054        YY_BREAK
     2055case 42:
    20502056YY_RULE_SETUP
    20512057#line 211 "lex.ll"
    2052 { KEYWORD_RETURN(ELSE); }
    2053         YY_BREAK
    2054 case 42:
     2058{ KEYWORD_RETURN(ENABLE); }                             // CFA
     2059        YY_BREAK
     2060case 43:
    20552061YY_RULE_SETUP
    20562062#line 212 "lex.ll"
    2057 { KEYWORD_RETURN(ENABLE); }                             // CFA
    2058         YY_BREAK
    2059 case 43:
     2063{ KEYWORD_RETURN(ENUM); }
     2064        YY_BREAK
     2065case 44:
    20602066YY_RULE_SETUP
    20612067#line 213 "lex.ll"
    2062 { KEYWORD_RETURN(ENUM); }
    2063         YY_BREAK
    2064 case 44:
     2068{ KEYWORD_RETURN(EXTENSION); }                  // GCC
     2069        YY_BREAK
     2070case 45:
    20652071YY_RULE_SETUP
    20662072#line 214 "lex.ll"
    2067 { KEYWORD_RETURN(EXTENSION); }                  // GCC
    2068         YY_BREAK
    2069 case 45:
     2073{ KEYWORD_RETURN(EXTERN); }
     2074        YY_BREAK
     2075case 46:
    20702076YY_RULE_SETUP
    20712077#line 215 "lex.ll"
    2072 { KEYWORD_RETURN(EXTERN); }
    2073         YY_BREAK
    2074 case 46:
     2078{ KEYWORD_RETURN(FALLTHRU); }                   // CFA
     2079        YY_BREAK
     2080case 47:
    20752081YY_RULE_SETUP
    20762082#line 216 "lex.ll"
    2077 { KEYWORD_RETURN(FALLTHRU); }                   // CFA
    2078         YY_BREAK
    2079 case 47:
     2083{ KEYWORD_RETURN(FINALLY); }                    // CFA
     2084        YY_BREAK
     2085case 48:
    20802086YY_RULE_SETUP
    20812087#line 217 "lex.ll"
    2082 { KEYWORD_RETURN(FINALLY); }                    // CFA
    2083         YY_BREAK
    2084 case 48:
     2088{ KEYWORD_RETURN(FLOAT); }
     2089        YY_BREAK
     2090case 49:
    20852091YY_RULE_SETUP
    20862092#line 218 "lex.ll"
    2087 { KEYWORD_RETURN(FLOAT); }
    2088         YY_BREAK
    2089 case 49:
     2093{ KEYWORD_RETURN(FLOAT); }                              // GCC
     2094        YY_BREAK
     2095case 50:
    20902096YY_RULE_SETUP
    20912097#line 219 "lex.ll"
    2092 { KEYWORD_RETURN(FLOAT); }                              // GCC
    2093         YY_BREAK
    2094 case 50:
     2098{ KEYWORD_RETURN(FOR); }
     2099        YY_BREAK
     2100case 51:
    20952101YY_RULE_SETUP
    20962102#line 220 "lex.ll"
    2097 { KEYWORD_RETURN(FOR); }
    2098         YY_BREAK
    2099 case 51:
     2103{ KEYWORD_RETURN(FORALL); }                             // CFA
     2104        YY_BREAK
     2105case 52:
    21002106YY_RULE_SETUP
    21012107#line 221 "lex.ll"
    2102 { KEYWORD_RETURN(FORALL); }                             // CFA
    2103         YY_BREAK
    2104 case 52:
     2108{ KEYWORD_RETURN(FORTRAN); }
     2109        YY_BREAK
     2110case 53:
    21052111YY_RULE_SETUP
    21062112#line 222 "lex.ll"
    2107 { KEYWORD_RETURN(FORTRAN); }
    2108         YY_BREAK
    2109 case 53:
     2113{ KEYWORD_RETURN(FTYPE); }                              // CFA
     2114        YY_BREAK
     2115case 54:
    21102116YY_RULE_SETUP
    21112117#line 223 "lex.ll"
    2112 { KEYWORD_RETURN(FTYPE); }                              // CFA
    2113         YY_BREAK
    2114 case 54:
     2118{ KEYWORD_RETURN(GENERIC); }                    // C11
     2119        YY_BREAK
     2120case 55:
    21152121YY_RULE_SETUP
    21162122#line 224 "lex.ll"
    2117 { KEYWORD_RETURN(GENERIC); }                    // C11
    2118         YY_BREAK
    2119 case 55:
     2123{ KEYWORD_RETURN(GOTO); }
     2124        YY_BREAK
     2125case 56:
    21202126YY_RULE_SETUP
    21212127#line 225 "lex.ll"
    2122 { KEYWORD_RETURN(GOTO); }
    2123         YY_BREAK
    2124 case 56:
     2128{ KEYWORD_RETURN(IF); }
     2129        YY_BREAK
     2130case 57:
    21252131YY_RULE_SETUP
    21262132#line 226 "lex.ll"
    2127 { KEYWORD_RETURN(IF); }
    2128         YY_BREAK
    2129 case 57:
     2133{ KEYWORD_RETURN(IMAGINARY); }                  // C99
     2134        YY_BREAK
     2135case 58:
    21302136YY_RULE_SETUP
    21312137#line 227 "lex.ll"
    2132 { KEYWORD_RETURN(IMAGINARY); }                  // C99
    2133         YY_BREAK
    2134 case 58:
     2138{ KEYWORD_RETURN(IMAGINARY); }                  // GCC
     2139        YY_BREAK
     2140case 59:
    21352141YY_RULE_SETUP
    21362142#line 228 "lex.ll"
    21372143{ KEYWORD_RETURN(IMAGINARY); }                  // GCC
    21382144        YY_BREAK
    2139 case 59:
     2145case 60:
    21402146YY_RULE_SETUP
    21412147#line 229 "lex.ll"
    2142 { KEYWORD_RETURN(IMAGINARY); }                  // GCC
    2143         YY_BREAK
    2144 case 60:
     2148{ KEYWORD_RETURN(INLINE); }                             // C99
     2149        YY_BREAK
     2150case 61:
    21452151YY_RULE_SETUP
    21462152#line 230 "lex.ll"
    2147 { KEYWORD_RETURN(INLINE); }                             // C99
    2148         YY_BREAK
    2149 case 61:
     2153{ KEYWORD_RETURN(INLINE); }                             // GCC
     2154        YY_BREAK
     2155case 62:
    21502156YY_RULE_SETUP
    21512157#line 231 "lex.ll"
    21522158{ KEYWORD_RETURN(INLINE); }                             // GCC
    21532159        YY_BREAK
    2154 case 62:
     2160case 63:
    21552161YY_RULE_SETUP
    21562162#line 232 "lex.ll"
    2157 { KEYWORD_RETURN(INLINE); }                             // GCC
    2158         YY_BREAK
    2159 case 63:
     2163{ KEYWORD_RETURN(INT); }
     2164        YY_BREAK
     2165case 64:
    21602166YY_RULE_SETUP
    21612167#line 233 "lex.ll"
    2162 { KEYWORD_RETURN(INT); }
    2163         YY_BREAK
    2164 case 64:
     2168{ KEYWORD_RETURN(INT); }                                // GCC
     2169        YY_BREAK
     2170case 65:
    21652171YY_RULE_SETUP
    21662172#line 234 "lex.ll"
    2167 { KEYWORD_RETURN(INT); }                                // GCC
    2168         YY_BREAK
    2169 case 65:
     2173{ KEYWORD_RETURN(LABEL); }                              // GCC
     2174        YY_BREAK
     2175case 66:
    21702176YY_RULE_SETUP
    21712177#line 235 "lex.ll"
    2172 { KEYWORD_RETURN(LABEL); }                              // GCC
    2173         YY_BREAK
    2174 case 66:
     2178{ KEYWORD_RETURN(LONG); }
     2179        YY_BREAK
     2180case 67:
    21752181YY_RULE_SETUP
    21762182#line 236 "lex.ll"
    2177 { KEYWORD_RETURN(LONG); }
    2178         YY_BREAK
    2179 case 67:
     2183{ KEYWORD_RETURN(LVALUE); }                             // CFA
     2184        YY_BREAK
     2185case 68:
    21802186YY_RULE_SETUP
    21812187#line 237 "lex.ll"
    2182 { KEYWORD_RETURN(LVALUE); }                             // CFA
    2183         YY_BREAK
    2184 case 68:
     2188{ KEYWORD_RETURN(NORETURN); }                   // C11
     2189        YY_BREAK
     2190case 69:
    21852191YY_RULE_SETUP
    21862192#line 238 "lex.ll"
    2187 { KEYWORD_RETURN(NORETURN); }                   // C11
    2188         YY_BREAK
    2189 case 69:
     2193{ KEYWORD_RETURN(OFFSETOF); }           // GCC
     2194        YY_BREAK
     2195case 70:
    21902196YY_RULE_SETUP
    21912197#line 239 "lex.ll"
    2192 { KEYWORD_RETURN(OFFSETOF); }           // GCC
    2193         YY_BREAK
    2194 case 70:
     2198{ KEYWORD_RETURN(OTYPE); }                              // CFA
     2199        YY_BREAK
     2200case 71:
    21952201YY_RULE_SETUP
    21962202#line 240 "lex.ll"
    2197 { KEYWORD_RETURN(OTYPE); }                              // CFA
    2198         YY_BREAK
    2199 case 71:
     2203{ KEYWORD_RETURN(REGISTER); }
     2204        YY_BREAK
     2205case 72:
    22002206YY_RULE_SETUP
    22012207#line 241 "lex.ll"
    2202 { KEYWORD_RETURN(REGISTER); }
    2203         YY_BREAK
    2204 case 72:
     2208{ KEYWORD_RETURN(RESTRICT); }                   // C99
     2209        YY_BREAK
     2210case 73:
    22052211YY_RULE_SETUP
    22062212#line 242 "lex.ll"
    2207 { KEYWORD_RETURN(RESTRICT); }                   // C99
    2208         YY_BREAK
    2209 case 73:
     2213{ KEYWORD_RETURN(RESTRICT); }                   // GCC
     2214        YY_BREAK
     2215case 74:
    22102216YY_RULE_SETUP
    22112217#line 243 "lex.ll"
    22122218{ KEYWORD_RETURN(RESTRICT); }                   // GCC
    22132219        YY_BREAK
    2214 case 74:
     2220case 75:
    22152221YY_RULE_SETUP
    22162222#line 244 "lex.ll"
    2217 { KEYWORD_RETURN(RESTRICT); }                   // GCC
    2218         YY_BREAK
    2219 case 75:
     2223{ KEYWORD_RETURN(RETURN); }
     2224        YY_BREAK
     2225case 76:
    22202226YY_RULE_SETUP
    22212227#line 245 "lex.ll"
    2222 { KEYWORD_RETURN(RETURN); }
    2223         YY_BREAK
    2224 case 76:
     2228{ KEYWORD_RETURN(SHORT); }
     2229        YY_BREAK
     2230case 77:
    22252231YY_RULE_SETUP
    22262232#line 246 "lex.ll"
    2227 { KEYWORD_RETURN(SHORT); }
    2228         YY_BREAK
    2229 case 77:
     2233{ KEYWORD_RETURN(SIGNED); }
     2234        YY_BREAK
     2235case 78:
    22302236YY_RULE_SETUP
    22312237#line 247 "lex.ll"
    2232 { KEYWORD_RETURN(SIGNED); }
    2233         YY_BREAK
    2234 case 78:
     2238{ KEYWORD_RETURN(SIGNED); }                             // GCC
     2239        YY_BREAK
     2240case 79:
    22352241YY_RULE_SETUP
    22362242#line 248 "lex.ll"
    22372243{ KEYWORD_RETURN(SIGNED); }                             // GCC
    22382244        YY_BREAK
    2239 case 79:
     2245case 80:
    22402246YY_RULE_SETUP
    22412247#line 249 "lex.ll"
    2242 { KEYWORD_RETURN(SIGNED); }                             // GCC
    2243         YY_BREAK
    2244 case 80:
     2248{ KEYWORD_RETURN(SIZEOF); }
     2249        YY_BREAK
     2250case 81:
    22452251YY_RULE_SETUP
    22462252#line 250 "lex.ll"
    2247 { KEYWORD_RETURN(SIZEOF); }
    2248         YY_BREAK
    2249 case 81:
     2253{ KEYWORD_RETURN(STATIC); }
     2254        YY_BREAK
     2255case 82:
    22502256YY_RULE_SETUP
    22512257#line 251 "lex.ll"
    2252 { KEYWORD_RETURN(STATIC); }
    2253         YY_BREAK
    2254 case 82:
     2258{ KEYWORD_RETURN(STATICASSERT); }               // C11
     2259        YY_BREAK
     2260case 83:
    22552261YY_RULE_SETUP
    22562262#line 252 "lex.ll"
    2257 { KEYWORD_RETURN(STATICASSERT); }               // C11
    2258         YY_BREAK
    2259 case 83:
     2263{ KEYWORD_RETURN(STRUCT); }
     2264        YY_BREAK
     2265case 84:
    22602266YY_RULE_SETUP
    22612267#line 253 "lex.ll"
    2262 { KEYWORD_RETURN(STRUCT); }
    2263         YY_BREAK
    2264 case 84:
     2268{ KEYWORD_RETURN(SWITCH); }
     2269        YY_BREAK
     2270case 85:
    22652271YY_RULE_SETUP
    22662272#line 254 "lex.ll"
    2267 { KEYWORD_RETURN(SWITCH); }
    2268         YY_BREAK
    2269 case 85:
     2273{ KEYWORD_RETURN(THREADLOCAL); }                // C11
     2274        YY_BREAK
     2275case 86:
    22702276YY_RULE_SETUP
    22712277#line 255 "lex.ll"
    2272 { KEYWORD_RETURN(THREADLOCAL); }                // C11
    2273         YY_BREAK
    2274 case 86:
     2278{ KEYWORD_RETURN(THROW); }                              // CFA
     2279        YY_BREAK
     2280case 87:
    22752281YY_RULE_SETUP
    22762282#line 256 "lex.ll"
    2277 { KEYWORD_RETURN(THROW); }                              // CFA
    2278         YY_BREAK
    2279 case 87:
     2283{ KEYWORD_RETURN(THROWRESUME); }                // CFA
     2284        YY_BREAK
     2285case 88:
    22802286YY_RULE_SETUP
    22812287#line 257 "lex.ll"
    2282 { KEYWORD_RETURN(THROWRESUME); }                // CFA
    2283         YY_BREAK
    2284 case 88:
     2288{ KEYWORD_RETURN(TRAIT); }                              // CFA
     2289        YY_BREAK
     2290case 89:
    22852291YY_RULE_SETUP
    22862292#line 258 "lex.ll"
    2287 { KEYWORD_RETURN(TRAIT); }                              // CFA
    2288         YY_BREAK
    2289 case 89:
     2293{ KEYWORD_RETURN(TRY); }                                // CFA
     2294        YY_BREAK
     2295case 90:
    22902296YY_RULE_SETUP
    22912297#line 259 "lex.ll"
    2292 { KEYWORD_RETURN(TRY); }                                // CFA
    2293         YY_BREAK
    2294 case 90:
     2298{ KEYWORD_RETURN(TYPEDEF); }
     2299        YY_BREAK
     2300case 91:
    22952301YY_RULE_SETUP
    22962302#line 260 "lex.ll"
    2297 { KEYWORD_RETURN(TYPEDEF); }
    2298         YY_BREAK
    2299 case 91:
     2303{ KEYWORD_RETURN(TYPEOF); }                             // GCC
     2304        YY_BREAK
     2305case 92:
    23002306YY_RULE_SETUP
    23012307#line 261 "lex.ll"
    23022308{ KEYWORD_RETURN(TYPEOF); }                             // GCC
    23032309        YY_BREAK
    2304 case 92:
     2310case 93:
    23052311YY_RULE_SETUP
    23062312#line 262 "lex.ll"
    23072313{ KEYWORD_RETURN(TYPEOF); }                             // GCC
    23082314        YY_BREAK
    2309 case 93:
     2315case 94:
    23102316YY_RULE_SETUP
    23112317#line 263 "lex.ll"
    2312 { KEYWORD_RETURN(TYPEOF); }                             // GCC
    2313         YY_BREAK
    2314 case 94:
     2318{ KEYWORD_RETURN(UNION); }
     2319        YY_BREAK
     2320case 95:
    23152321YY_RULE_SETUP
    23162322#line 264 "lex.ll"
    2317 { KEYWORD_RETURN(UNION); }
    2318         YY_BREAK
    2319 case 95:
     2323{ KEYWORD_RETURN(UNSIGNED); }
     2324        YY_BREAK
     2325case 96:
    23202326YY_RULE_SETUP
    23212327#line 265 "lex.ll"
    2322 { KEYWORD_RETURN(UNSIGNED); }
    2323         YY_BREAK
    2324 case 96:
     2328{ KEYWORD_RETURN(VALIST); }                     // GCC
     2329        YY_BREAK
     2330case 97:
    23252331YY_RULE_SETUP
    23262332#line 266 "lex.ll"
    2327 { KEYWORD_RETURN(VALIST); }                     // GCC
    2328         YY_BREAK
    2329 case 97:
     2333{ KEYWORD_RETURN(VOID); }
     2334        YY_BREAK
     2335case 98:
    23302336YY_RULE_SETUP
    23312337#line 267 "lex.ll"
    2332 { KEYWORD_RETURN(VOID); }
    2333         YY_BREAK
    2334 case 98:
     2338{ KEYWORD_RETURN(VOLATILE); }
     2339        YY_BREAK
     2340case 99:
    23352341YY_RULE_SETUP
    23362342#line 268 "lex.ll"
    2337 { KEYWORD_RETURN(VOLATILE); }
    2338         YY_BREAK
    2339 case 99:
     2343{ KEYWORD_RETURN(VOLATILE); }                   // GCC
     2344        YY_BREAK
     2345case 100:
    23402346YY_RULE_SETUP
    23412347#line 269 "lex.ll"
    23422348{ KEYWORD_RETURN(VOLATILE); }                   // GCC
    23432349        YY_BREAK
    2344 case 100:
     2350case 101:
    23452351YY_RULE_SETUP
    23462352#line 270 "lex.ll"
    2347 { KEYWORD_RETURN(VOLATILE); }                   // GCC
    2348         YY_BREAK
    2349 case 101:
    2350 YY_RULE_SETUP
    2351 #line 271 "lex.ll"
    23522353{ KEYWORD_RETURN(WHILE); }
    23532354        YY_BREAK
     
    23552356case 102:
    23562357YY_RULE_SETUP
     2358#line 273 "lex.ll"
     2359{ IDENTIFIER_RETURN(); }
     2360        YY_BREAK
     2361case 103:
     2362YY_RULE_SETUP
    23572363#line 274 "lex.ll"
     2364{ ATTRIBUTE_RETURN(); }
     2365        YY_BREAK
     2366case 104:
     2367YY_RULE_SETUP
     2368#line 275 "lex.ll"
     2369{ BEGIN BKQUOTE; }
     2370        YY_BREAK
     2371case 105:
     2372YY_RULE_SETUP
     2373#line 276 "lex.ll"
    23582374{ IDENTIFIER_RETURN(); }
    23592375        YY_BREAK
    2360 case 103:
    2361 YY_RULE_SETUP
    2362 #line 275 "lex.ll"
    2363 { ATTRIBUTE_RETURN(); }
    2364         YY_BREAK
    2365 case 104:
    2366 YY_RULE_SETUP
    2367 #line 276 "lex.ll"
    2368 { BEGIN BKQUOTE; }
    2369         YY_BREAK
    2370 case 105:
     2376case 106:
    23712377YY_RULE_SETUP
    23722378#line 277 "lex.ll"
    2373 { IDENTIFIER_RETURN(); }
    2374         YY_BREAK
    2375 case 106:
    2376 YY_RULE_SETUP
    2377 #line 278 "lex.ll"
    23782379{ BEGIN 0; }
    23792380        YY_BREAK
     
    23812382case 107:
    23822383YY_RULE_SETUP
     2384#line 280 "lex.ll"
     2385{ NUMERIC_RETURN(ZERO); }                               // CFA
     2386        YY_BREAK
     2387case 108:
     2388YY_RULE_SETUP
    23832389#line 281 "lex.ll"
    2384 { NUMERIC_RETURN(ZERO); }                               // CFA
    2385         YY_BREAK
    2386 case 108:
     2390{ NUMERIC_RETURN(ONE); }                                // CFA
     2391        YY_BREAK
     2392case 109:
    23872393YY_RULE_SETUP
    23882394#line 282 "lex.ll"
    2389 { NUMERIC_RETURN(ONE); }                                // CFA
    2390         YY_BREAK
    2391 case 109:
     2395{ NUMERIC_RETURN(INTEGERconstant); }
     2396        YY_BREAK
     2397case 110:
    23922398YY_RULE_SETUP
    23932399#line 283 "lex.ll"
    23942400{ NUMERIC_RETURN(INTEGERconstant); }
    23952401        YY_BREAK
    2396 case 110:
     2402case 111:
    23972403YY_RULE_SETUP
    23982404#line 284 "lex.ll"
    23992405{ NUMERIC_RETURN(INTEGERconstant); }
    24002406        YY_BREAK
    2401 case 111:
     2407case 112:
    24022408YY_RULE_SETUP
    24032409#line 285 "lex.ll"
    2404 { NUMERIC_RETURN(INTEGERconstant); }
    2405         YY_BREAK
    2406 case 112:
     2410{ NUMERIC_RETURN(FLOATINGconstant); }
     2411        YY_BREAK
     2412case 113:
    24072413YY_RULE_SETUP
    24082414#line 286 "lex.ll"
    24092415{ NUMERIC_RETURN(FLOATINGconstant); }
    24102416        YY_BREAK
    2411 case 113:
    2412 YY_RULE_SETUP
    2413 #line 287 "lex.ll"
    2414 { NUMERIC_RETURN(FLOATINGconstant); }
    2415         YY_BREAK
    24162417/* character constant, allows empty value */
    24172418case 114:
    24182419YY_RULE_SETUP
     2420#line 289 "lex.ll"
     2421{ BEGIN QUOTE; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); }
     2422        YY_BREAK
     2423case 115:
     2424YY_RULE_SETUP
    24192425#line 290 "lex.ll"
    2420 { BEGIN QUOTE; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); }
    2421         YY_BREAK
    2422 case 115:
    2423 YY_RULE_SETUP
    2424 #line 291 "lex.ll"
    24252426{ *strtext += std::string( yytext ); }
    24262427        YY_BREAK
     
    24282429/* rule 116 can match eol */
    24292430YY_RULE_SETUP
    2430 #line 292 "lex.ll"
     2431#line 291 "lex.ll"
    24312432{ BEGIN 0; *strtext += std::string( yytext); RETURN_STR(CHARACTERconstant); }
    24322433        YY_BREAK
     
    24352436case 117:
    24362437YY_RULE_SETUP
     2438#line 295 "lex.ll"
     2439{ BEGIN STRING; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); }
     2440        YY_BREAK
     2441case 118:
     2442YY_RULE_SETUP
    24372443#line 296 "lex.ll"
    2438 { BEGIN STRING; rm_underscore(); strtext = new std::string; *strtext += std::string( yytext ); }
    2439         YY_BREAK
    2440 case 118:
    2441 YY_RULE_SETUP
    2442 #line 297 "lex.ll"
    24432444{ *strtext += std::string( yytext ); }
    24442445        YY_BREAK
     
    24462447/* rule 119 can match eol */
    24472448YY_RULE_SETUP
    2448 #line 298 "lex.ll"
     2449#line 297 "lex.ll"
    24492450{ BEGIN 0; *strtext += std::string( yytext ); RETURN_STR(STRINGliteral); }
    24502451        YY_BREAK
     
    24532454case 120:
    24542455YY_RULE_SETUP
    2455 #line 302 "lex.ll"
     2456#line 301 "lex.ll"
    24562457{ rm_underscore(); *strtext += std::string( yytext ); }
    24572458        YY_BREAK
     
    24592460/* rule 121 can match eol */
    24602461YY_RULE_SETUP
     2462#line 302 "lex.ll"
     2463{}                                              // continuation (ALSO HANDLED BY CPP)
     2464        YY_BREAK
     2465case 122:
     2466YY_RULE_SETUP
    24612467#line 303 "lex.ll"
    2462 {}                                              // continuation (ALSO HANDLED BY CPP)
    2463         YY_BREAK
    2464 case 122:
    2465 YY_RULE_SETUP
    2466 #line 304 "lex.ll"
    24672468{ *strtext += std::string( yytext ); } // unknown escape character
    24682469        YY_BREAK
     
    24702471case 123:
    24712472YY_RULE_SETUP
     2473#line 306 "lex.ll"
     2474{ ASCIIOP_RETURN(); }
     2475        YY_BREAK
     2476case 124:
     2477YY_RULE_SETUP
    24722478#line 307 "lex.ll"
    24732479{ ASCIIOP_RETURN(); }
    24742480        YY_BREAK
    2475 case 124:
     2481case 125:
    24762482YY_RULE_SETUP
    24772483#line 308 "lex.ll"
    24782484{ ASCIIOP_RETURN(); }
    24792485        YY_BREAK
    2480 case 125:
     2486case 126:
    24812487YY_RULE_SETUP
    24822488#line 309 "lex.ll"
    24832489{ ASCIIOP_RETURN(); }
    24842490        YY_BREAK
    2485 case 126:
     2491case 127:
    24862492YY_RULE_SETUP
    24872493#line 310 "lex.ll"
    24882494{ ASCIIOP_RETURN(); }
    24892495        YY_BREAK
    2490 case 127:
     2496case 128:
    24912497YY_RULE_SETUP
    24922498#line 311 "lex.ll"
    24932499{ ASCIIOP_RETURN(); }
    24942500        YY_BREAK
    2495 case 128:
     2501case 129:
    24962502YY_RULE_SETUP
    24972503#line 312 "lex.ll"
     2504{ ASCIIOP_RETURN(); }                                   // also operator
     2505        YY_BREAK
     2506case 130:
     2507YY_RULE_SETUP
     2508#line 313 "lex.ll"
    24982509{ ASCIIOP_RETURN(); }
    24992510        YY_BREAK
    2500 case 129:
    2501 YY_RULE_SETUP
    2502 #line 313 "lex.ll"
    2503 { ASCIIOP_RETURN(); }                                   // also operator
    2504         YY_BREAK
    2505 case 130:
     2511case 131:
    25062512YY_RULE_SETUP
    25072513#line 314 "lex.ll"
    25082514{ ASCIIOP_RETURN(); }
    25092515        YY_BREAK
    2510 case 131:
     2516case 132:
    25112517YY_RULE_SETUP
    25122518#line 315 "lex.ll"
    2513 { ASCIIOP_RETURN(); }
    2514         YY_BREAK
    2515 case 132:
     2519{ ASCIIOP_RETURN(); }                                   // also operator
     2520        YY_BREAK
     2521case 133:
    25162522YY_RULE_SETUP
    25172523#line 316 "lex.ll"
    2518 { ASCIIOP_RETURN(); }                                   // also operator
    2519         YY_BREAK
    2520 case 133:
    2521 YY_RULE_SETUP
    2522 #line 317 "lex.ll"
    25232524{ NAMEDOP_RETURN(ELLIPSIS); }
    25242525        YY_BREAK
     
    25262527case 134:
    25272528YY_RULE_SETUP
     2529#line 319 "lex.ll"
     2530{ RETURN_VAL('['); }
     2531        YY_BREAK
     2532case 135:
     2533YY_RULE_SETUP
    25282534#line 320 "lex.ll"
    2529 { RETURN_VAL('['); }
    2530         YY_BREAK
    2531 case 135:
     2535{ RETURN_VAL(']'); }
     2536        YY_BREAK
     2537case 136:
    25322538YY_RULE_SETUP
    25332539#line 321 "lex.ll"
    2534 { RETURN_VAL(']'); }
    2535         YY_BREAK
    2536 case 136:
     2540{ RETURN_VAL('{'); }
     2541        YY_BREAK
     2542case 137:
    25372543YY_RULE_SETUP
    25382544#line 322 "lex.ll"
    2539 { RETURN_VAL('{'); }
    2540         YY_BREAK
    2541 case 137:
    2542 YY_RULE_SETUP
    2543 #line 323 "lex.ll"
    25442545{ RETURN_VAL('}'); }
    25452546        YY_BREAK
     
    25472548case 138:
    25482549YY_RULE_SETUP
     2550#line 325 "lex.ll"
     2551{ ASCIIOP_RETURN(); }
     2552        YY_BREAK
     2553case 139:
     2554YY_RULE_SETUP
    25492555#line 326 "lex.ll"
    25502556{ ASCIIOP_RETURN(); }
    25512557        YY_BREAK
    2552 case 139:
     2558case 140:
    25532559YY_RULE_SETUP
    25542560#line 327 "lex.ll"
    25552561{ ASCIIOP_RETURN(); }
    25562562        YY_BREAK
    2557 case 140:
     2563case 141:
    25582564YY_RULE_SETUP
    25592565#line 328 "lex.ll"
    25602566{ ASCIIOP_RETURN(); }
    25612567        YY_BREAK
    2562 case 141:
     2568case 142:
    25632569YY_RULE_SETUP
    25642570#line 329 "lex.ll"
    25652571{ ASCIIOP_RETURN(); }
    25662572        YY_BREAK
    2567 case 142:
     2573case 143:
    25682574YY_RULE_SETUP
    25692575#line 330 "lex.ll"
    25702576{ ASCIIOP_RETURN(); }
    25712577        YY_BREAK
    2572 case 143:
     2578case 144:
    25732579YY_RULE_SETUP
    25742580#line 331 "lex.ll"
    25752581{ ASCIIOP_RETURN(); }
    25762582        YY_BREAK
    2577 case 144:
     2583case 145:
    25782584YY_RULE_SETUP
    25792585#line 332 "lex.ll"
    25802586{ ASCIIOP_RETURN(); }
    25812587        YY_BREAK
    2582 case 145:
     2588case 146:
    25832589YY_RULE_SETUP
    25842590#line 333 "lex.ll"
    25852591{ ASCIIOP_RETURN(); }
    25862592        YY_BREAK
    2587 case 146:
     2593case 147:
    25882594YY_RULE_SETUP
    25892595#line 334 "lex.ll"
    25902596{ ASCIIOP_RETURN(); }
    25912597        YY_BREAK
    2592 case 147:
     2598case 148:
    25932599YY_RULE_SETUP
    25942600#line 335 "lex.ll"
    25952601{ ASCIIOP_RETURN(); }
    25962602        YY_BREAK
    2597 case 148:
     2603case 149:
    25982604YY_RULE_SETUP
    25992605#line 336 "lex.ll"
    26002606{ ASCIIOP_RETURN(); }
    26012607        YY_BREAK
    2602 case 149:
     2608case 150:
    26032609YY_RULE_SETUP
    26042610#line 337 "lex.ll"
    26052611{ ASCIIOP_RETURN(); }
    26062612        YY_BREAK
    2607 case 150:
     2613case 151:
    26082614YY_RULE_SETUP
    26092615#line 338 "lex.ll"
    26102616{ ASCIIOP_RETURN(); }
    26112617        YY_BREAK
    2612 case 151:
    2613 YY_RULE_SETUP
    2614 #line 339 "lex.ll"
    2615 { ASCIIOP_RETURN(); }
    2616         YY_BREAK
    26172618case 152:
    26182619YY_RULE_SETUP
     2620#line 340 "lex.ll"
     2621{ NAMEDOP_RETURN(ICR); }
     2622        YY_BREAK
     2623case 153:
     2624YY_RULE_SETUP
    26192625#line 341 "lex.ll"
    2620 { NAMEDOP_RETURN(ICR); }
    2621         YY_BREAK
    2622 case 153:
     2626{ NAMEDOP_RETURN(DECR); }
     2627        YY_BREAK
     2628case 154:
    26232629YY_RULE_SETUP
    26242630#line 342 "lex.ll"
    2625 { NAMEDOP_RETURN(DECR); }
    2626         YY_BREAK
    2627 case 154:
     2631{ NAMEDOP_RETURN(EQ); }
     2632        YY_BREAK
     2633case 155:
    26282634YY_RULE_SETUP
    26292635#line 343 "lex.ll"
    2630 { NAMEDOP_RETURN(EQ); }
    2631         YY_BREAK
    2632 case 155:
     2636{ NAMEDOP_RETURN(NE); }
     2637        YY_BREAK
     2638case 156:
    26332639YY_RULE_SETUP
    26342640#line 344 "lex.ll"
    2635 { NAMEDOP_RETURN(NE); }
    2636         YY_BREAK
    2637 case 156:
     2641{ NAMEDOP_RETURN(LS); }
     2642        YY_BREAK
     2643case 157:
    26382644YY_RULE_SETUP
    26392645#line 345 "lex.ll"
    2640 { NAMEDOP_RETURN(LS); }
    2641         YY_BREAK
    2642 case 157:
     2646{ NAMEDOP_RETURN(RS); }
     2647        YY_BREAK
     2648case 158:
    26432649YY_RULE_SETUP
    26442650#line 346 "lex.ll"
    2645 { NAMEDOP_RETURN(RS); }
    2646         YY_BREAK
    2647 case 158:
     2651{ NAMEDOP_RETURN(LE); }
     2652        YY_BREAK
     2653case 159:
    26482654YY_RULE_SETUP
    26492655#line 347 "lex.ll"
    2650 { NAMEDOP_RETURN(LE); }
    2651         YY_BREAK
    2652 case 159:
     2656{ NAMEDOP_RETURN(GE); }
     2657        YY_BREAK
     2658case 160:
    26532659YY_RULE_SETUP
    26542660#line 348 "lex.ll"
    2655 { NAMEDOP_RETURN(GE); }
    2656         YY_BREAK
    2657 case 160:
     2661{ NAMEDOP_RETURN(ANDAND); }
     2662        YY_BREAK
     2663case 161:
    26582664YY_RULE_SETUP
    26592665#line 349 "lex.ll"
    2660 { NAMEDOP_RETURN(ANDAND); }
    2661         YY_BREAK
    2662 case 161:
     2666{ NAMEDOP_RETURN(OROR); }
     2667        YY_BREAK
     2668case 162:
    26632669YY_RULE_SETUP
    26642670#line 350 "lex.ll"
    2665 { NAMEDOP_RETURN(OROR); }
    2666         YY_BREAK
    2667 case 162:
     2671{ NAMEDOP_RETURN(ARROW); }
     2672        YY_BREAK
     2673case 163:
    26682674YY_RULE_SETUP
    26692675#line 351 "lex.ll"
    2670 { NAMEDOP_RETURN(ARROW); }
    2671         YY_BREAK
    2672 case 163:
     2676{ NAMEDOP_RETURN(PLUSassign); }
     2677        YY_BREAK
     2678case 164:
    26732679YY_RULE_SETUP
    26742680#line 352 "lex.ll"
    2675 { NAMEDOP_RETURN(PLUSassign); }
    2676         YY_BREAK
    2677 case 164:
     2681{ NAMEDOP_RETURN(MINUSassign); }
     2682        YY_BREAK
     2683case 165:
    26782684YY_RULE_SETUP
    26792685#line 353 "lex.ll"
    2680 { NAMEDOP_RETURN(MINUSassign); }
    2681         YY_BREAK
    2682 case 165:
     2686{ NAMEDOP_RETURN(MULTassign); }
     2687        YY_BREAK
     2688case 166:
    26832689YY_RULE_SETUP
    26842690#line 354 "lex.ll"
    2685 { NAMEDOP_RETURN(MULTassign); }
    2686         YY_BREAK
    2687 case 166:
     2691{ NAMEDOP_RETURN(DIVassign); }
     2692        YY_BREAK
     2693case 167:
    26882694YY_RULE_SETUP
    26892695#line 355 "lex.ll"
    2690 { NAMEDOP_RETURN(DIVassign); }
    2691         YY_BREAK
    2692 case 167:
     2696{ NAMEDOP_RETURN(MODassign); }
     2697        YY_BREAK
     2698case 168:
    26932699YY_RULE_SETUP
    26942700#line 356 "lex.ll"
    2695 { NAMEDOP_RETURN(MODassign); }
    2696         YY_BREAK
    2697 case 168:
     2701{ NAMEDOP_RETURN(ANDassign); }
     2702        YY_BREAK
     2703case 169:
    26982704YY_RULE_SETUP
    26992705#line 357 "lex.ll"
    2700 { NAMEDOP_RETURN(ANDassign); }
    2701         YY_BREAK
    2702 case 169:
     2706{ NAMEDOP_RETURN(ORassign); }
     2707        YY_BREAK
     2708case 170:
    27032709YY_RULE_SETUP
    27042710#line 358 "lex.ll"
    2705 { NAMEDOP_RETURN(ORassign); }
    2706         YY_BREAK
    2707 case 170:
     2711{ NAMEDOP_RETURN(ERassign); }
     2712        YY_BREAK
     2713case 171:
    27082714YY_RULE_SETUP
    27092715#line 359 "lex.ll"
    2710 { NAMEDOP_RETURN(ERassign); }
    2711         YY_BREAK
    2712 case 171:
     2716{ NAMEDOP_RETURN(LSassign); }
     2717        YY_BREAK
     2718case 172:
    27132719YY_RULE_SETUP
    27142720#line 360 "lex.ll"
    2715 { NAMEDOP_RETURN(LSassign); }
    2716         YY_BREAK
    2717 case 172:
    2718 YY_RULE_SETUP
    2719 #line 361 "lex.ll"
    27202721{ NAMEDOP_RETURN(RSassign); }
    27212722        YY_BREAK
    27222723case 173:
    27232724YY_RULE_SETUP
    2724 #line 363 "lex.ll"
     2725#line 362 "lex.ll"
    27252726{ NAMEDOP_RETURN(ATassign); }
    27262727        YY_BREAK
     
    27282729case 174:
    27292730YY_RULE_SETUP
     2731#line 365 "lex.ll"
     2732{ IDENTIFIER_RETURN(); }                                // unary
     2733        YY_BREAK
     2734case 175:
     2735YY_RULE_SETUP
    27302736#line 366 "lex.ll"
    2731 { IDENTIFIER_RETURN(); }                                // unary
    2732         YY_BREAK
    2733 case 175:
     2737{ IDENTIFIER_RETURN(); }
     2738        YY_BREAK
     2739case 176:
    27342740YY_RULE_SETUP
    27352741#line 367 "lex.ll"
    27362742{ IDENTIFIER_RETURN(); }
    27372743        YY_BREAK
    2738 case 176:
     2744case 177:
    27392745YY_RULE_SETUP
    27402746#line 368 "lex.ll"
    2741 { IDENTIFIER_RETURN(); }
    2742         YY_BREAK
    2743 case 177:
    2744 YY_RULE_SETUP
    2745 #line 369 "lex.ll"
    27462747{ IDENTIFIER_RETURN(); }                // binary
    27472748        YY_BREAK
     
    27742775case 178:
    27752776YY_RULE_SETUP
    2776 #line 396 "lex.ll"
     2777#line 395 "lex.ll"
    27772778{
    27782779        // 1 or 2 character unary operator ?
     
    27892790case 179:
    27902791YY_RULE_SETUP
    2791 #line 408 "lex.ll"
     2792#line 407 "lex.ll"
    27922793{ printf("unknown character(s):\"%s\" on line %d\n", yytext, yylineno); }
    27932794        YY_BREAK
    27942795case 180:
    27952796YY_RULE_SETUP
    2796 #line 410 "lex.ll"
     2797#line 409 "lex.ll"
    27972798ECHO;
    27982799        YY_BREAK
    2799 #line 2800 "Parser/lex.cc"
     2800#line 2801 "Parser/lex.cc"
    28002801case YY_STATE_EOF(INITIAL):
    28012802case YY_STATE_EOF(COMMENT):
     
    37723773#define YYTABLES_NAME "yytables"
    37733774
    3774 #line 410 "lex.ll"
     3775#line 409 "lex.ll"
    37753776
    37763777
Note: See TracChangeset for help on using the changeset viewer.