Changeset 27434e9 for src/Parser/parser.yy
- Timestamp:
- Jun 23, 2021, 5:19:38 PM (3 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- b6f39aa
- Parents:
- 2b910f9 (diff), 1d71208 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/parser.yy
r2b910f9 r27434e9 635 635 postfix_expression: 636 636 primary_expression 637 | postfix_expression '[' assignment_expression ',' comma_expression ']' 638 // { $$ = new ExpressionNode( build_binary_val( OperKinds::Index, $1, new ExpressionNode( build_binary_val( OperKinds::Index, $3, $5 ) ) ) ); } 639 { SemanticError( yylloc, "New array subscript is currently unimplemented." ); $$ = nullptr; } 637 | postfix_expression '[' assignment_expression ',' tuple_expression_list ']' 638 // Historic, transitional: Disallow commas in subscripts. 639 // Switching to this behaviour may help check if a C compatibilty case uses comma-exprs in subscripts. 640 // { SemanticError( yylloc, "New array subscript is currently unimplemented." ); $$ = nullptr; } 641 // Current: Commas in subscripts make tuples. 642 { $$ = new ExpressionNode( build_binary_val( OperKinds::Index, $1, new ExpressionNode( build_tuple( (ExpressionNode *)($3->set_last( $5 ) ) )) ) ); } 640 643 | postfix_expression '[' assignment_expression ']' 641 644 // CFA, comma_expression disallowed in this context because it results in a common user error: subscripting a
Note: See TracChangeset
for help on using the changeset viewer.