aboutsummaryrefslogtreecommitdiff
path: root/src/parser.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2016-12-06 21:26:17 -0500
committerAndrew Kelley <superjoe30@gmail.com>2016-12-06 21:26:17 -0500
commit6ed202ab16f42d73975e8a4508698857300c1b6f (patch)
tree35f75bca95b34a98f45f601568421c2ec763b83a /src/parser.cpp
parent0c531d447df88ed6c46e759fbfc9d253d2650c22 (diff)
downloadzig-6ed202ab16f42d73975e8a4508698857300c1b6f.tar.gz
zig-6ed202ab16f42d73975e8a4508698857300c1b6f.zip
IR: implement defer
Diffstat (limited to 'src/parser.cpp')
-rw-r--r--src/parser.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/parser.cpp b/src/parser.cpp
index 403271e0ed..9e34bc55ab 100644
--- a/src/parser.cpp
+++ b/src/parser.cpp
@@ -1414,7 +1414,7 @@ static AstNode *ast_parse_return_expr(ParseContext *pc, size_t *token_index) {
}
/*
-Defer = option("%" | "?") "defer" option(Expression)
+Defer = option("%" | "?") "defer" Expression
*/
static AstNode *ast_parse_defer_expr(ParseContext *pc, size_t *token_index) {
Token *token = &pc->tokens->at(*token_index);
@@ -1450,7 +1450,7 @@ static AstNode *ast_parse_defer_expr(ParseContext *pc, size_t *token_index) {
AstNode *node = ast_create_node(pc, node_type, token);
node->data.defer.kind = kind;
- node->data.defer.expr = ast_parse_expression(pc, token_index, false);
+ node->data.defer.expr = ast_parse_expression(pc, token_index, true);
return node;
}