diff options
| author | Ginger Bill <bill@gingerbill.org> | 2016-09-15 18:58:29 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2016-09-15 18:58:29 +0100 |
| commit | 807256dea4d22550ee5da48e806b4e773670fbfc (patch) | |
| tree | 8db9056e3117d67f4dee4b8b6fe7a7c84c4b3b2b /src/checker | |
| parent | b6cb4f4d145bdc87aecf8edd678d025b22faff57 (diff) | |
ssa - alloca all variables at the very start
Diffstat (limited to 'src/checker')
| -rw-r--r-- | src/checker/stmt.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/checker/stmt.cpp b/src/checker/stmt.cpp index fa29456c2..1f57519e0 100644 --- a/src/checker/stmt.cpp +++ b/src/checker/stmt.cpp @@ -754,12 +754,14 @@ void check_stmt(Checker *c, AstNode *node, u32 flags) { case Addressing_Type: error(&c->error_collector, ast_node_token(node), "Is not an expression"); break; - default: - if (kind == Expr_Stmt) { - return; - } - error(&c->error_collector, ast_node_token(node), "Expression is not used"); - break; + case Addressing_NoValue: + return; + default: { + gbString expr_str = expr_to_string(operand.expr); + defer (gb_string_free(expr_str)); + + error(&c->error_collector, ast_node_token(node), "Expression is not used: `%s`", expr_str); + } break; } case_end; |