diff options
| author | Ginger Bill <bill@gingerbill.org> | 2016-09-28 00:07:03 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2016-09-28 00:07:03 +0100 |
| commit | 5f6b0942f405f5595787ba3436e2e5410268e71e (patch) | |
| tree | f0b585689c1f4762167a58a7a8aa2ac4d2b79028 /src/checker/stmt.cpp | |
| parent | 6088cbeddb84e25e5966a1876ad4ffcaad6676c9 (diff) | |
Update Standard Library; Fix Type_Info for integers
Diffstat (limited to 'src/checker/stmt.cpp')
| -rw-r--r-- | src/checker/stmt.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/checker/stmt.cpp b/src/checker/stmt.cpp index bd3a512fa..89af771db 100644 --- a/src/checker/stmt.cpp +++ b/src/checker/stmt.cpp @@ -1017,10 +1017,14 @@ void check_stmt(Checker *c, AstNode *node, u32 flags) { auto *tuple = &proc_type->Proc.results->Tuple; variables = tuple->variables; } - check_init_variables(c, variables, result_count, - rs->results, make_string("return statement")); + if (gb_array_count(rs->results) == 0) { + error(ast_node_token(node), "Expected %td return values, got 0", result_count); + } else { + check_init_variables(c, variables, result_count, + rs->results, make_string("return statement")); + } } else if (gb_array_count(rs->results) > 0) { - error(ast_node_token(rs->results[0]), "No result values expected"); + error(ast_node_token(rs->results[0]), "No return values expected"); } case_end; |