mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-06 15:48:51 +00:00
Fix minor memory leak
This commit is contained in:
+12
-5
@@ -6800,14 +6800,21 @@ gb_internal ExprKind check_call_expr(CheckerContext *c, Operand *operand, Ast *c
|
|||||||
operand->type = t_invalid;
|
operand->type = t_invalid;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
gbString str = type_to_string(t);
|
|
||||||
defer (gb_string_free(str));
|
|
||||||
|
|
||||||
operand->mode = Addressing_Invalid;
|
operand->mode = Addressing_Invalid;
|
||||||
isize arg_count = args.count;
|
isize arg_count = args.count;
|
||||||
switch (arg_count) {
|
switch (arg_count) {
|
||||||
case 0: error(call, "Missing argument in conversion to '%s'", str); break;
|
case 0:
|
||||||
default: error(call, "Too many arguments in conversion to '%s'", str); break;
|
{
|
||||||
|
gbString str = type_to_string(t);
|
||||||
|
error(call, "Missing argument in conversion to '%s'", str);
|
||||||
|
gb_string_free(str);
|
||||||
|
} break;
|
||||||
|
default:
|
||||||
|
{
|
||||||
|
gbString str = type_to_string(t);
|
||||||
|
error(call, "Too many arguments in conversion to '%s'", str);
|
||||||
|
gb_string_free(str);
|
||||||
|
} break;
|
||||||
case 1: {
|
case 1: {
|
||||||
Ast *arg = args[0];
|
Ast *arg = args[0];
|
||||||
if (arg->kind == Ast_FieldValue) {
|
if (arg->kind == Ast_FieldValue) {
|
||||||
|
|||||||
Reference in New Issue
Block a user