Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/lex.ll

    r25744d2 r948fdef  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Tue Oct  6 18:15:41 2020
    13  * Update Count     : 743
     12 * Last Modified On : Sat Feb  1 07:16:44 2020
     13 * Update Count     : 724
    1414 */
    1515
     
    4343#include "TypedefTable.h"
    4444
    45 string * build_postfix_name( string * name );
    46 
    4745char *yyfilename;
    4846string *strtext;                                                                                // accumulate parts of character and string constant value
     
    6260#define IDENTIFIER_RETURN()     RETURN_VAL( typedefTable.isKind( yytext ) )
    6361
    64 #ifdef HAVE_KEYWORDS_FLOATXX                                                    // GCC >= 7 => keyword, otherwise typedef
     62#ifdef HAVE_KEYWORDS_FLOATXX                                                            // GCC >= 7 => keyword, otherwise typedef
    6563#define FLOATXX(v) KEYWORD_RETURN(v);
    6664#else
    67 #define FLOATXX(v) IDENTIFIER_RETURN();
     65#define FLOATXX(v) IDENTIFIER_RETURN(); 
    6866#endif // HAVE_KEYWORDS_FLOATXX
    6967
     
    292290__restrict__    { KEYWORD_RETURN(RESTRICT); }                   // GCC
    293291return                  { KEYWORD_RETURN(RETURN); }
    294  /* resume                      { KEYWORD_RETURN(RESUME); }                             // CFA */
     292        /* resume                       { KEYWORD_RETURN(RESUME); }                             // CFA */
    295293short                   { KEYWORD_RETURN(SHORT); }
    296294signed                  { KEYWORD_RETURN(SIGNED); }
     
    301299_Static_assert  { KEYWORD_RETURN(STATICASSERT); }               // C11
    302300struct                  { KEYWORD_RETURN(STRUCT); }
    303 suspend                 { KEYWORD_RETURN(SUSPEND); }                    // CFA
     301        /* suspend                      { KEYWORD_RETURN(SUSPEND); }                    // CFA */
    304302switch                  { KEYWORD_RETURN(SWITCH); }
    305303thread                  { KEYWORD_RETURN(THREAD); }                             // C11
     
    332330                                /* identifier */
    333331{identifier}    { IDENTIFIER_RETURN(); }
    334 "``"{identifier} {                                                                              // CFA
    335         yytext[yyleng] = '\0'; yytext += 2;                                     // SKULLDUGGERY: remove backquotes (ok to shorten?)
     332"``"{identifier}"``" {                                                                  // CFA
     333        yytext[yyleng - 2] = '\0'; yytext += 2;                         // SKULLDUGGERY: remove backquotes (ok to shorten?)
    336334        IDENTIFIER_RETURN();
    337335}
     
    434432"?"({op_unary_pre_post}|"()"|"[?]"|"{}") { IDENTIFIER_RETURN(); }
    435433"^?{}"                  { IDENTIFIER_RETURN(); }
    436 "?`"{identifier} {                                                                              // postfix operator
    437         yylval.tok.str = new string( &yytext[2] );                      // remove ?`
    438         yylval.tok.str = build_postfix_name( yylval.tok.str ); // add prefix
    439         RETURN_LOCN( typedefTable.isKind( *yylval.tok.str ) );
    440 }
     434"?`"{identifier} { IDENTIFIER_RETURN(); }                               // postfix operator
    441435"?"{op_binary_over}"?"  { IDENTIFIER_RETURN(); }                // binary
    442436        /*
Note: See TracChangeset for help on using the changeset viewer.