From e5efea89d79917c282f39dfb218c8adcff149ff9 Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 26 Jun 2024 12:46:34 -0700 Subject: [PATCH] Prefer function-style cast instead of static_cast to convert integers to Ids. (#4084) As requested in review of #4082. --- toolchain/check/subst.cpp | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/toolchain/check/subst.cpp b/toolchain/check/subst.cpp index 821e04b41a9e..b7bb90533373 100644 --- a/toolchain/check/subst.cpp +++ b/toolchain/check/subst.cpp @@ -60,22 +60,20 @@ static auto PushOperand(Context& context, Worklist& worklist, SemIR::IdKind kind, int32_t arg) -> void { switch (kind) { case SemIR::IdKind::For: - worklist.Push(static_cast(arg)); + worklist.Push(SemIR::InstId(arg)); break; case SemIR::IdKind::For: - if (auto type_id = static_cast(arg); type_id.is_valid()) { + if (auto type_id = SemIR::TypeId(arg); type_id.is_valid()) { worklist.Push(context.types().GetInstId(type_id)); } break; case SemIR::IdKind::For: - for (auto inst_id : - context.inst_blocks().Get(static_cast(arg))) { + for (auto inst_id : context.inst_blocks().Get(SemIR::InstBlockId(arg))) { worklist.Push(inst_id); } break; case SemIR::IdKind::For: - for (auto type_id : - context.type_blocks().Get(static_cast(arg))) { + for (auto type_id : context.type_blocks().Get(SemIR::TypeBlockId(arg))) { worklist.Push(context.types().GetInstId(type_id)); } break; @@ -103,14 +101,14 @@ static auto PopOperand(Context& context, Worklist& worklist, SemIR::IdKind kind, case SemIR::IdKind::For: return worklist.Pop().index; case SemIR::IdKind::For: { - auto type_id = static_cast(arg); + auto type_id = SemIR::TypeId(arg); if (!type_id.is_valid()) { return arg; } return context.GetTypeIdForTypeInst(worklist.Pop()).index; } case SemIR::IdKind::For: { - auto old_inst_block_id = static_cast(arg); + auto old_inst_block_id = SemIR::InstBlockId(arg); auto size = context.inst_blocks().Get(old_inst_block_id).size(); SemIR::CopyOnWriteInstBlock new_inst_block(context.sem_ir(), old_inst_block_id); @@ -120,7 +118,7 @@ static auto PopOperand(Context& context, Worklist& worklist, SemIR::IdKind kind, return new_inst_block.GetCanonical().index; } case SemIR::IdKind::For: { - auto old_type_block_id = static_cast(arg); + auto old_type_block_id = SemIR::TypeBlockId(arg); auto size = context.type_blocks().Get(old_type_block_id).size(); SemIR::CopyOnWriteTypeBlock new_type_block(context.sem_ir(), old_type_block_id);