aboutsummaryrefslogtreecommitdiff
path: root/src/check_expr.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2020-06-06 15:16:24 +0100
committergingerBill <bill@gingerbill.org>2020-06-06 15:16:24 +0100
commit59a0bbb38512054eb5c6fc83383c3638ed03d1bf (patch)
treebd7f9e00f72a9b0d1c20e6eddd9251e0012e8070 /src/check_expr.cpp
parenta3fa647bfd579e38337cff173a672159d42f7fd6 (diff)
Improve termination rules checking for missing `return`; Make diverging procedure `-> !` be terminators
Diffstat (limited to 'src/check_expr.cpp')
-rw-r--r--src/check_expr.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp
index acfa40b78..21487c231 100644
--- a/src/check_expr.cpp
+++ b/src/check_expr.cpp
@@ -70,8 +70,8 @@ void check_entity_decl (CheckerContext *c, Entity *e, DeclInfo
void check_const_decl (CheckerContext *c, Entity *e, Ast *type_expr, Ast *init_expr, Type *named_type);
void check_proc_body (CheckerContext *c, Token token, DeclInfo *decl, Type *type, Ast *body);
void update_expr_type (CheckerContext *c, Ast *e, Type *type, bool final);
-bool check_is_terminating (Ast *node);
-bool check_has_break (Ast *stmt, bool implicit);
+bool check_is_terminating (Ast *node, String const &label);
+bool check_has_break (Ast *stmt, String const &label, bool implicit);
void check_stmt (CheckerContext *c, Ast *node, u32 flags);
void check_stmt_list (CheckerContext *c, Array<Ast *> const &stmts, u32 flags);
void check_init_constant (CheckerContext *c, Entity *e, Operand *operand);