Ignore:
Timestamp:
Aug 31, 2014, 12:05:40 AM (5 years ago)
Author:
ksherdy
Message:

Grammar clean-up. Removed unused types. Restricted var decl to primitive or aggregate types (stream/BitBlock).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • proto/s2k/trunk/framework/input/grammar/scatter/b2k.scatter

    r4114 r4116  
    4444        STRUCT,
    4545        INT,
    46         VOID,
    47         BOOL,
     46        //BOOL,
    4847        //BITFIELD         "BitField",
    4948        BITBLOCK         "BitBlock",
     
    9392    bitBlockType            {hasFieldWidth;}  [],
    9493    integerConstant         {intValued;}           [fieldWidthSpecifier],  // codeBlockWidthSpecifier ],
    95     // primitiveType        {}                     [intType voidType boolType bitBlockType], // KH: update S2B
     94    // primitiveType        {}                     [intType], // KH: update S2B
    9695    fieldWidthType          {int fieldWidth = 1;}  [],
    9796    // codeBlockWidth{int codeBlockWidth = 128;}   [],
     
    167166    stmt                    #-> varDecl | funcCallOrAssignStmt | returnStmt | ifStmt | whileStmt | forStmt ;
    168167    blockStmt               ->  LCURLY stmt* RCURLY ;
    169     varDecl                 ->  type identifier TERMINATOR ;
     168    varDecl                 ->  (primitiveType | bitBlockType) identifier TERMINATOR ;
    170169    funcCallOrAssignStmt    #-> expr (assignRest _promote_) ? TERMINATOR ; // KH: Add SA pass to validate expr is a function call type   
    171170    assignOperator          ->  ASSIGN ;                 
     
    213212    //
    214213    type                #-> primitiveType   |
    215                             // bitFieldType    |
     214                            bitBlockType    |
     215                            // bitFieldType |
    216216                            structType      |
    217217                            kernelType      ;
    218218
    219     primitiveType       #->  ( intType | voidType | boolType | bitBlockType ) ;
     219    primitiveType       #->  ( intType ) ;
    220220
    221221    intType             ->  INT ;       // { @type = {{PrimitiveType.INTEGER}}; } ;
    222     voidType            ->  VOID ;      // { @type = {{PrimitiveType.VOID}}; } ; // KH: ?
    223     boolType            ->  BOOL ;      // { @type = {{PrimitiveType.BOOL}}; } ;
    224222    bitBlockType        ->  BITBLOCK fieldWidthSpecifier! {   @fieldWidth = @:value;
    225223                                                                    //@fieldWidth ; // KH ?
Note: See TracChangeset for help on using the changeset viewer.