Changes in src/Parser/parser.yy [15f769c:24711a3]
- File:
-
- 1 edited
-
src/Parser/parser.yy (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/parser.yy
r15f769c r24711a3 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun Jun 20 18:46:51202113 // Update Count : 502312 // Last Modified On : Mon Apr 26 18:41:54 2021 13 // Update Count : 4990 14 14 // 15 15 … … 269 269 %token INT128 UINT128 uuFLOAT80 uuFLOAT128 // GCC 270 270 %token uFLOAT16 uFLOAT32 uFLOAT32X uFLOAT64 uFLOAT64X uFLOAT128 // GCC 271 %token DECIMAL32 DECIMAL64 DECIMAL128 // GCC272 271 %token ZERO_T ONE_T // CFA 273 272 %token SIZEOF TYPEOF VALIST AUTO_TYPE // GCC … … 288 287 289 288 // names and constants: lexer differentiates between identifier and typedef names 290 %token<tok> IDENTIFIER QUOTED_IDENTIFIER TYPED IMname TYPEDEFname TYPEGENname289 %token<tok> IDENTIFIER QUOTED_IDENTIFIER TYPEDEFname TYPEGENname 291 290 %token<tok> TIMEOUT WOR CATCH RECOVER CATCHRESUME FIXUP FINALLY // CFA 292 291 %token<tok> INTEGERconstant CHARACTERconstant STRINGliteral … … 587 586 | quasi_keyword 588 587 { $$ = new ExpressionNode( build_varref( $1 ) ); } 589 | TYPEDIMname // CFA, generic length argument590 // { $$ = new ExpressionNode( new TypeExpr( maybeMoveBuildType( DeclarationNode::newFromTypedef( $1 ) ) ) ); }591 // { $$ = new ExpressionNode( build_varref( $1 ) ); }592 { $$ = new ExpressionNode( build_dimensionref( $1 ) ); }593 588 | tuple 594 589 | '(' comma_expression ')' … … 1892 1887 | uFLOAT128 1893 1888 { $$ = DeclarationNode::newBasicType( DeclarationNode::uFloat128 ); } 1894 | DECIMAL321895 { SemanticError( yylloc, "_Decimal32 is currently unimplemented." ); $$ = nullptr; }1896 | DECIMAL641897 { SemanticError( yylloc, "_Decimal64 is currently unimplemented." ); $$ = nullptr; }1898 | DECIMAL1281899 { SemanticError( yylloc, "_Decimal128 is currently unimplemented." ); $$ = nullptr; }1900 1889 | COMPLEX // C99 1901 1890 { $$ = DeclarationNode::newComplexType( DeclarationNode::Complex ); } … … 2546 2535 | '[' identifier_or_type_name ']' 2547 2536 { 2548 typedefTable.addToScope( *$2, TYPED IMname, "9" );2549 $$ = DeclarationNode::newTypeParam( TypeDecl:: Dimension, $2 );2537 typedefTable.addToScope( *$2, TYPEDEFname, "9" ); 2538 $$ = DeclarationNode::newTypeParam( TypeDecl::ALtype, $2 ); 2550 2539 } 2551 2540 // | type_specifier identifier_parameter_declarator … … 2601 2590 { $$ = new ExpressionNode( new TypeExpr( maybeMoveBuildType( $1 ) ) ); } 2602 2591 | assignment_expression 2592 { SemanticError( yylloc, toString("Expression generic parameters are currently unimplemented: ", $1->build()) ); $$ = nullptr; } 2603 2593 | type_list ',' type 2604 2594 { $$ = (ExpressionNode *)($1->set_last( new ExpressionNode( new TypeExpr( maybeMoveBuildType( $3 ) ) ) )); } 2605 2595 | type_list ',' assignment_expression 2606 { $$ = (ExpressionNode *)( $1->set_last( $3 )); } 2596 { SemanticError( yylloc, toString("Expression generic parameters are currently unimplemented: ", $3->build()) ); $$ = nullptr; } 2597 // { $$ = (ExpressionNode *)( $1->set_last( $3 )); } 2607 2598 ; 2608 2599
Note:
See TracChangeset
for help on using the changeset viewer.