Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/lex.ll

    rf1da02c r553772b  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Sun Aug  4 20:53:47 2019
    13  * Update Count     : 719
     12 * Last Modified On : Wed May 15 21:25:27 2019
     13 * Update Count     : 708
    1414 */
    1515
     
    5959#define QKEYWORD_RETURN(x)      RETURN_VAL(x);                          // quasi-keyword
    6060#define IDENTIFIER_RETURN()     RETURN_VAL( typedefTable.isKind( yytext ) )
     61#define ATTRIBUTE_RETURN()      RETURN_VAL( ATTR_IDENTIFIER )
    6162
    6263#ifdef HAVE_KEYWORDS_FLOATXX                                                            // GCC >= 7 => keyword, otherwise typedef
     
    9192                                // identifier, GCC: $ in identifier
    9293identifier ([a-zA-Z_$]|{universal_char})([0-9a-zA-Z_$]|{universal_char})*
     94
     95                                // attribute identifier, GCC: $ in identifier
     96attr_identifier "@"{identifier}
    9397
    9498                                // numeric constants, CFA: '_' in constant
     
    214218__attribute__   { KEYWORD_RETURN(ATTRIBUTE); }                  // GCC
    215219auto                    { KEYWORD_RETURN(AUTO); }
    216 __auto_type             { KEYWORD_RETURN(AUTO_TYPE); }
    217220basetypeof              { KEYWORD_RETURN(BASETYPEOF); }                 // CFA
    218221_Bool                   { KEYWORD_RETURN(BOOL); }                               // C99
     
    273276__inline__              { KEYWORD_RETURN(INLINE); }                             // GCC
    274277int                             { KEYWORD_RETURN(INT); }
    275 int128                  { KEYWORD_RETURN(INT128); }                             // CFA
    276278__int128                { KEYWORD_RETURN(INT128); }                             // GCC
    277 __int128_t              { KEYWORD_RETURN(INT128); }                             // GCC
     279int128                  { KEYWORD_RETURN(INT128); }                             // GCC
    278280__label__               { KEYWORD_RETURN(LABEL); }                              // GCC
    279281long                    { KEYWORD_RETURN(LONG); }
     
    290292__restrict__    { KEYWORD_RETURN(RESTRICT); }                   // GCC
    291293return                  { KEYWORD_RETURN(RETURN); }
    292         /* resume                       { KEYWORD_RETURN(RESUME); }                             // CFA */
    293294short                   { KEYWORD_RETURN(SHORT); }
    294295signed                  { KEYWORD_RETURN(SIGNED); }
     
    299300_Static_assert  { KEYWORD_RETURN(STATICASSERT); }               // C11
    300301struct                  { KEYWORD_RETURN(STRUCT); }
    301         /* suspend                      { KEYWORD_RETURN(SUSPEND); }                    // CFA */
    302302switch                  { KEYWORD_RETURN(SWITCH); }
    303303thread                  { KEYWORD_RETURN(THREAD); }                             // C11
     
    314314__typeof__              { KEYWORD_RETURN(TYPEOF); }                             // GCC
    315315union                   { KEYWORD_RETURN(UNION); }
    316 __uint128_t             { KEYWORD_RETURN(UINT128); }                    // GCC
    317316unsigned                { KEYWORD_RETURN(UNSIGNED); }
    318317__builtin_va_list { KEYWORD_RETURN(VALIST); }                   // GCC
     
    334333        IDENTIFIER_RETURN();
    335334}
     335{attr_identifier} { ATTRIBUTE_RETURN(); }
    336336
    337337                                /* numeric constants */
Note: See TracChangeset for help on using the changeset viewer.