| 442 | |
| 443 | |
| 444 | Expr* Parser::ParseSubScripting(Expr* lhs) { |
| 445 | auto rhs = ParseExpr(); |
| 446 | auto tok = ts_.Peek(); |
| 447 | ts_.Expect(']'); |
| 448 | auto operand = BinaryOp::New(tok, '+', lhs, rhs); |
| 449 | return UnaryOp::New(Token::DEREF, operand); |
| 450 | } |
| 451 | |
| 452 | |
| 453 | BinaryOp* Parser::ParseMemberRef(const Token* tok, int op, Expr* lhs) { |