Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/parser.yy

    rf9941ff rb6b3c42  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Oct 25 12:28:54 2017
    13 // Update Count     : 2893
     12// Last Modified On : Mon Oct 16 11:07:29 2017
     13// Update Count     : 2892
    1414//
    1515
     
    180180%token ATTRIBUTE EXTENSION                                                              // GCC
    181181%token IF ELSE SWITCH CASE DEFAULT DO WHILE FOR BREAK CONTINUE GOTO RETURN
    182 %token CHOOSE DISABLE ENABLE FALLTHRU FALLTHROUGH TRY CATCH CATCHRESUME FINALLY THROW THROWRESUME AT WITH WHEN WAITFOR // CFA
     182%token CHOOSE DISABLE ENABLE FALLTHRU TRY CATCH CATCHRESUME FINALLY THROW THROWRESUME AT WITH WHEN WAITFOR // CFA
    183183%token ASM                                                                                              // C99, extension ISO/IEC 9899:1999 Section J.5.10(1)
    184184%token ALIGNAS ALIGNOF GENERIC STATICASSERT                             // C11
     
    362362%precedence ELSE        // token precedence for start of else clause in IF/WAITFOR statement
    363363
    364 %locations                      // support location tracking for error messages
     364%locations
    365365
    366366%start translation_unit                                                                 // parse-tree root
     
    458458                { $$ = new ExpressionNode( new StmtExpr( dynamic_cast< CompoundStmt * >(maybeMoveBuild< Statement >($2) ) ) ); }
    459459        | type_name '.' no_attr_identifier                                      // CFA, nested type
    460                 { throw SemanticError("Qualified names are currently unimplemented."); $$ = nullptr; }                                                          // FIX ME
     460                { $$ = nullptr; }                                                               // FIX ME
    461461        | type_name '.' '[' push field_list pop ']'                     // CFA, nested type / tuple field selector
    462                 { throw SemanticError("Qualified names are currently unimplemented."); $$ = nullptr; }                                                          // FIX ME
     462                { $$ = nullptr; }                                                               // FIX ME
    463463        ;
    464464
     
    974974        ;
    975975
    976 fall_through_name:                                                                              // CFA
     976fall_through:                                                                                   // CFA
    977977        FALLTHRU
    978         | FALLTHROUGH
    979         ;
    980 
    981 fall_through:                                                                                   // CFA
    982         fall_through_name
    983978                { $$ = nullptr; }
    984         | fall_through_name ';'
     979        | FALLTHRU ';'
    985980                { $$ = nullptr; }
    986981        ;
     
    24912486        | TYPEDEFname
    24922487        | TYPEGENname
    2493         | FALLTHROUGH
    2494                 { $$ = Token{ new string( "fallthrough" ), { nullptr, -1 } }; }
    24952488        | CONST
    24962489                { $$ = Token{ new string( "__const__" ), { nullptr, -1 } }; }
     
    27582751//
    27592752//              typedef int foo;
    2760 //              forall( otype T ) struct foo;
     2753//              forall( otype T ) foo( T );
    27612754//              int f( int foo ); // redefine typedef name in new scope
    27622755//
Note: See TracChangeset for help on using the changeset viewer.