From b2097604d5a462c0c45a8c11607e7b49c9f7af68 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 15 Aug 2021 23:10:52 +0100 Subject: Add `clone_ast` for `or_else` and `or_return` --- src/parser.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/parser.cpp') diff --git a/src/parser.cpp b/src/parser.cpp index 9e684028d..c00585f37 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -187,6 +187,13 @@ Ast *clone_ast(Ast *node) { n->TernaryWhenExpr.cond = clone_ast(n->TernaryWhenExpr.cond); n->TernaryWhenExpr.y = clone_ast(n->TernaryWhenExpr.y); break; + case Ast_OrElseExpr: + n->OrElseExpr.x = clone_ast(n->OrElseExpr.x); + n->OrElseExpr.y = clone_ast(n->OrElseExpr.y); + break; + case Ast_OrReturnExpr: + n->OrReturnExpr.expr = clone_ast(n->OrReturnExpr.expr); + break; case Ast_TypeAssertion: n->TypeAssertion.expr = clone_ast(n->TypeAssertion.expr); n->TypeAssertion.type = clone_ast(n->TypeAssertion.type); -- cgit v1.2.3