diff --git a/k.krak b/k.krak index d08ecd3..f46a910 100644 --- a/k.krak +++ b/k.krak @@ -825,6 +825,10 @@ fun syntax_to_ast(file_name: str, syntax: *tree, import_paths: ref vecchildren.map(syntax_to_ast_helper)) else if (syntax->data.name == "defer_statement") return _defer(syntax->children.map(syntax_to_ast_helper)) + else if (syntax->data.name == "break_statement") + return _break() + else if (syntax->data.name == "continue_statement") + return _continue() else if (syntax->data.name == "match_statement") { return _match(vec(syntax_to_ast_helper(get_node("boolean_expression", syntax))) + get_nodes("case_statement", syntax).map(fun(s: *tree): *tree { @@ -890,7 +894,6 @@ fun syntax_to_ast(file_name: str, syntax: *tree, import_paths: ref vec>() } } var result = _translation_unit(file_name, syntax->children.map(syntax_to_ast_helper)) diff --git a/stdlib/ast.krak b/stdlib/ast.krak index 0d23ff1..1d3f1ff 100644 --- a/stdlib/ast.krak +++ b/stdlib/ast.krak @@ -187,12 +187,6 @@ fun _for(c: ref vec<*tree>): *tree { fun _return(c: ref vec<*tree>): *tree { return new>()->construct(ast::_return(), c) } -fun _break(c: ref vec<*tree>): *tree { - return new>()->construct(ast::_break(), c) -} -fun _continue(c: ref vec<*tree>): *tree { - return new>()->construct(ast::_continue(), c) -} fun _defer(c: ref vec<*tree>): *tree { return new>()->construct(ast::_defer(), c) }