diff options
| author | Ginger Bill <bill@gingerbill.org> | 2017-01-05 21:43:36 +0000 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2017-01-05 21:43:36 +0000 |
| commit | b07ee9ec233bcdcc64e45788b85653c51e184523 (patch) | |
| tree | 7ef43991e009830d10999cabf0bc5b896acc2a7a /src/checker/expr.c | |
| parent | 915b5cdab7ae87ce38a6119f5c7e73aa0faaefa3 (diff) | |
Fix problem with `odin build`
Diffstat (limited to 'src/checker/expr.c')
| -rw-r--r-- | src/checker/expr.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/checker/expr.c b/src/checker/expr.c index cf27f0ff4..2c772d149 100644 --- a/src/checker/expr.c +++ b/src/checker/expr.c @@ -2642,14 +2642,12 @@ bool check_builtin_procedure(Checker *c, Operand *operand, AstNode *call, i32 id return false; } - AstNode *len = ce->args.e[1]; - - check_expr(c, &op, len); + check_expr(c, &op, ce->args.e[1]); if (op.mode == Addressing_Invalid) { return false; } - if (!is_type_integer(op.type)) { - gbString type_str = type_to_string(operand->type); + if (!is_type_integer(base_enum_type(op.type))) { + gbString type_str = type_to_string(op.type); error_node(call, "Length for `new_slice` must be an integer, got `%s`", type_str); gb_string_free(type_str); return false; |