aboutsummaryrefslogtreecommitdiff
path: root/src/parser.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-07-05 16:23:13 +0100
committergingerBill <bill@gingerbill.org>2021-07-05 16:23:13 +0100
commita98eee145d60a42324835c578d8573675d6fdd49 (patch)
tree2f4824a5812115ff84277d798b7322e97f962811 /src/parser.cpp
parentc6b9b3b9a41d6e049d39780933067d44cf2b6469 (diff)
Remove `try`; Replace `try x else y` with `or_else(x, y)`
Diffstat (limited to 'src/parser.cpp')
-rw-r--r--src/parser.cpp36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/parser.cpp b/src/parser.cpp
index 65626ca36..9bb4a9c3c 100644
--- a/src/parser.cpp
+++ b/src/parser.cpp
@@ -199,15 +199,6 @@ Ast *clone_ast(Ast *node) {
n->AutoCast.expr = clone_ast(n->AutoCast.expr);
break;
- case Ast_TryExpr:
- n->TryExpr.expr = clone_ast(n->TryExpr.expr);
- break;
-
- case Ast_TryElseExpr:
- n->TryElseExpr.expr = clone_ast(n->TryElseExpr.expr);
- n->TryElseExpr.else_expr = clone_ast(n->TryElseExpr.else_expr);
- break;
-
case Ast_InlineAsmExpr:
n->InlineAsmExpr.param_types = clone_ast_array(n->InlineAsmExpr.param_types);
n->InlineAsmExpr.return_type = clone_ast(n->InlineAsmExpr.return_type);
@@ -689,21 +680,6 @@ Ast *ast_auto_cast(AstFile *f, Token token, Ast *expr) {
return result;
}
-Ast *ast_try_expr(AstFile *f, Token token, Ast *expr) {
- Ast *result = alloc_ast_node(f, Ast_TryExpr);
- result->TryExpr.token = token;
- result->TryExpr.expr = expr;
- return result;
-}
-Ast *ast_try_else_expr(AstFile *f, Token try_token, Ast *expr, Token else_token, Ast *else_expr) {
- Ast *result = alloc_ast_node(f, Ast_TryElseExpr);
- result->TryElseExpr.try_token = try_token;
- result->TryElseExpr.expr = expr;
- result->TryElseExpr.else_token = else_token;
- result->TryElseExpr.else_expr = else_expr;
- return result;
-}
-
Ast *ast_inline_asm_expr(AstFile *f, Token token, Token open, Token close,
Array<Ast *> const &param_types,
@@ -2748,17 +2724,6 @@ Ast *parse_unary_expr(AstFile *f, bool lhs) {
return ast_auto_cast(f, token, expr);
}
- case Token_try: {
- Token try_token = advance_token(f);
- Ast *expr = parse_unary_expr(f, lhs);
- if (f->curr_token.kind == Token_else) {
- Token else_token = advance_token(f);
- Ast *else_expr = parse_expr(f, lhs);
- return ast_try_else_expr(f, try_token, expr, else_token, else_expr);
- }
- return ast_try_expr(f, try_token, expr);
- }
-
case Token_Add:
case Token_Sub:
case Token_Xor:
@@ -4385,7 +4350,6 @@ Ast *parse_stmt(AstFile *f) {
case Token_String:
case Token_OpenParen:
case Token_Pointer:
- case Token_try:
case Token_asm: // Inline assembly
// Unary Operators
case Token_Add: