mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-05 07:08:48 +00:00
Fix issue that conflicts with constant parapoly procedures and deferred_* procedures
This commit is contained in:
@@ -1532,19 +1532,6 @@ gb_internal bool check_proc_body(CheckerContext *ctx_, Token token, DeclInfo *de
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add constant data to the identifier directly
|
|
||||||
for (Entity *e : params->variables) {
|
|
||||||
if (e->kind == Entity_Constant) {
|
|
||||||
Ast *ident = e->identifier.load();
|
|
||||||
if (ident) {
|
|
||||||
add_entity(ctx, e->scope, ident, e);
|
|
||||||
ident->tav.mode = Addressing_Constant;
|
|
||||||
ident->tav.value = e->Constant.value;
|
|
||||||
ident->tav.type = e->type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-3
@@ -5418,9 +5418,8 @@ gb_internal CALL_ARGUMENT_CHECKER(check_call_arguments_internal) {
|
|||||||
data->score = score;
|
data->score = score;
|
||||||
data->result_type = final_proc_type->Proc.results;
|
data->result_type = final_proc_type->Proc.results;
|
||||||
data->gen_entity = gen_entity;
|
data->gen_entity = gen_entity;
|
||||||
if (!are_types_identical(final_proc_type, ce->proc->tav.type)) {
|
|
||||||
add_type_and_value(c, ce->proc, Addressing_Value, final_proc_type, {});
|
add_type_and_value(c, ce->proc, Addressing_Value, final_proc_type, {});
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
|
|||||||
Reference in New Issue
Block a user