mirror of
https://github.com/odin-lang/Odin.git
synced 2026-04-18 20:40:28 +00:00
Minimize add_type_info_type usage
This commit is contained in:
@@ -3573,7 +3573,7 @@ gb_internal bool check_builtin_procedure(CheckerContext *c, Operand *operand, As
|
||||
Entity *base_type_entity = alloc_entity_type_name(scope, token, elem, EntityState_Resolved);
|
||||
add_entity(c, scope, nullptr, base_type_entity);
|
||||
|
||||
add_type_info_type(c, soa_struct);
|
||||
// add_type_info_type(c, soa_struct);
|
||||
|
||||
operand->type = soa_struct;
|
||||
break;
|
||||
|
||||
@@ -8779,8 +8779,8 @@ gb_internal ExprKind check_type_assertion(CheckerContext *c, Operand *o, Ast *no
|
||||
return kind;
|
||||
}
|
||||
|
||||
add_type_info_type(c, o->type);
|
||||
add_type_info_type(c, bsrc->Union.variants[0]);
|
||||
// add_type_info_type(c, o->type);
|
||||
// add_type_info_type(c, bsrc->Union.variants[0]);
|
||||
|
||||
o->type = bsrc->Union.variants[0];
|
||||
o->mode = Addressing_OptionalOk;
|
||||
@@ -8812,8 +8812,8 @@ gb_internal ExprKind check_type_assertion(CheckerContext *c, Operand *o, Ast *no
|
||||
return kind;
|
||||
}
|
||||
|
||||
add_type_info_type(c, o->type);
|
||||
add_type_info_type(c, t);
|
||||
// add_type_info_type(c, o->type);
|
||||
// add_type_info_type(c, t);
|
||||
|
||||
o->type = t;
|
||||
o->mode = Addressing_OptionalOk;
|
||||
|
||||
@@ -1132,7 +1132,7 @@ gb_internal void check_type_switch_stmt(CheckerContext *ctx, Ast *node, u32 mod_
|
||||
|
||||
check_expr(ctx, &x, rhs);
|
||||
check_assignment(ctx, &x, nullptr, str_lit("type switch expression"));
|
||||
add_type_info_type(ctx, x.type);
|
||||
// add_type_info_type(ctx, x.type);
|
||||
|
||||
TypeSwitchKind switch_kind = check_valid_type_switch_type(x.type);
|
||||
if (switch_kind == TypeSwitch_Invalid) {
|
||||
@@ -1223,7 +1223,7 @@ gb_internal void check_type_switch_stmt(CheckerContext *ctx, Ast *node, u32 mod_
|
||||
continue;
|
||||
}
|
||||
case_type = y.type;
|
||||
add_type_info_type(ctx, y.type);
|
||||
// add_type_info_type(ctx, y.type);
|
||||
} else if (switch_kind == TypeSwitch_Any) {
|
||||
case_type = y.type;
|
||||
add_type_info_type(ctx, y.type);
|
||||
@@ -1259,7 +1259,9 @@ gb_internal void check_type_switch_stmt(CheckerContext *ctx, Ast *node, u32 mod_
|
||||
if (case_type == nullptr) {
|
||||
case_type = x.type;
|
||||
}
|
||||
add_type_info_type(ctx, case_type);
|
||||
if (switch_kind == TypeSwitch_Any) {
|
||||
add_type_info_type(ctx, case_type);
|
||||
}
|
||||
|
||||
check_open_scope(ctx, stmt);
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user