Fix error message handling

This commit is contained in:
gingerBill
2024-05-11 13:59:06 +01:00
parent 811d53b305
commit 8e263de4aa
2 changed files with 3 additions and 3 deletions

View File

@@ -1619,7 +1619,7 @@ gb_internal bool check_proc_body(CheckerContext *ctx_, Token token, DeclInfo *de
if (e->kind != Entity_Variable) {
continue;
}
if (is_type_polymorphic(e->type)) {
if (is_type_polymorphic(e->type) && is_type_polymorphic_record_unspecialized(e->type)) {
gbString s = type_to_string(e->type);
char const *msg = "Unspecialized polymorphic types are not allowed in procedure parameters, got %s";
if (e->Variable.type_expr) {

View File

@@ -2100,8 +2100,8 @@ gb_internal bool is_type_polymorphic_record_unspecialized(Type *t) {
t = base_type(t);
if (t->kind == Type_Struct) {
return t->Struct.is_polymorphic && !t->Struct.is_poly_specialized;
} else if (t->kind == Type_Struct) {
return t->Struct.is_polymorphic && !t->Struct.is_poly_specialized;
} else if (t->kind == Type_Union) {
return t->Union.is_polymorphic && !t->Union.is_poly_specialized;
}
return false;
}