From 20eacc4a8493f0d0088ceebbcc1490207c48b5ed Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 19 Feb 2023 12:10:28 +0000 Subject: [PATCH] Fix issue that conflicts with constant parapoly procedures and `deferred_*` procedures --- src/check_decl.cpp | 13 ------------- src/check_expr.cpp | 5 ++--- 2 files changed, 2 insertions(+), 16 deletions(-) diff --git a/src/check_decl.cpp b/src/check_decl.cpp index 1adb1e2ed..63e6514e0 100644 --- a/src/check_decl.cpp +++ b/src/check_decl.cpp @@ -1532,19 +1532,6 @@ gb_internal bool check_proc_body(CheckerContext *ctx_, Token token, DeclInfo *de 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; - } - } - } } } diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 93db559f8..356f0aaa3 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -5418,9 +5418,8 @@ gb_internal CALL_ARGUMENT_CHECKER(check_call_arguments_internal) { data->score = score; data->result_type = final_proc_type->Proc.results; 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;