Changeset f38e7d7


Ignore:
Timestamp:
Apr 17, 2018, 6:03:36 PM (4 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
aaron-thesis, arm-eh, cleanup-dtors, deferred_resn, demangler, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, with_gc
Children:
d046db2, e16294d
Parents:
81bb114
Message:

relocate zero_/one_t to preclude type modifies, e.g., long, short

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/parser.yy

    r81bb114 rf38e7d7  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Mar 28 17:52:24 2018
    13 // Update Count     : 3130
     12// Last Modified On : Tue Apr 17 17:10:30 2018
     13// Update Count     : 3144
    1414//
    1515
     
    391391%precedence '('
    392392
    393 %locations                      // support location tracking for error messages
     393%locations                                                                                              // support location tracking for error messages
    394394
    395395%start translation_unit                                                                 // parse-tree root
     
    17081708        | LONG
    17091709                { $$ = DeclarationNode::newLength( DeclarationNode::Long ); }
    1710         | ZERO_T
    1711                 { $$ = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); }
    1712         | ONE_T
    1713                 { $$ = DeclarationNode::newBuiltinType( DeclarationNode::One ); }
    17141710        | VALIST                                                                                        // GCC, __builtin_va_list
    17151711                { $$ = DeclarationNode::newBuiltinType( DeclarationNode::Valist ); }
     
    17311727basic_type_specifier:
    17321728        direct_type
     1729                // Cannot have type modifiers, e.g., short, long, etc.
    17331730        | type_qualifier_list_opt indirect_type type_qualifier_list_opt
    17341731                { $$ = $2->addQualifiers( $1 )->addQualifiers( $3 ); }
     
    17361733
    17371734direct_type:
    1738                 // A semantic check is necessary for conflicting type qualifiers.
    17391735        basic_type_name
    17401736        | type_qualifier_list basic_type_name
     
    17551751        | ATTR_TYPEGENname '(' comma_expression ')'                     // CFA: e.g., @type(a+b) y;
    17561752                { $$ = DeclarationNode::newAttr( $1, $3 ); }
     1753        | ZERO_T                                                                                        // CFA
     1754                { $$ = DeclarationNode::newBuiltinType( DeclarationNode::Zero ); }
     1755        | ONE_T                                                                                         // CFA
     1756                { $$ = DeclarationNode::newBuiltinType( DeclarationNode::One ); }
    17571757        ;
    17581758
Note: See TracChangeset for help on using the changeset viewer.