Refactor LookupCopyImpl and LookupDestroyImpl to share logic. (#6649)

Assisted-by: Google Antigravity with Gemini 3 Flash
This commit is contained in:
Jon Ross-Perkins
2026-01-23 23:07:15 +00:00
committed by GitHub
parent a1efc4be8f
commit f5a1579d4d
4 changed files with 70 additions and 96 deletions
+5 -6
View File
@@ -164,12 +164,11 @@ auto PerformCppOverloadResolution(Context& context, SemIR::LocId loc_id,
CARBON_CHECK(!best_viable_fn->RewriteKind);
SemIR::InstId result_id = ImportCppFunctionDecl(
context, loc_id, best_viable_fn->Function, arg_exprs.size());
if (auto fn_decl =
context.insts().TryGetAsWithId<SemIR::FunctionDecl>(result_id)) {
CheckCppOverloadAccess(context, loc_id, best_viable_fn->FoundDecl,
fn_decl->inst_id, overload_set.parent_scope_id);
} else {
CARBON_CHECK(result_id == SemIR::ErrorInst::InstId);
if (result_id != SemIR::ErrorInst::InstId) {
CheckCppOverloadAccess(
context, loc_id, best_viable_fn->FoundDecl,
context.insts().GetAsKnownInstId<SemIR::FunctionDecl>(result_id),
overload_set.parent_scope_id);
}
return result_id;
}