Merge pull request #71470 from nate-chandler/bitwise-copyable/same-file

[BitwiseCopyable] Require conformance in same module as declaration.
This commit is contained in:
nate-chandler
2024-02-08 16:19:56 -08:00
committed by GitHub
3 changed files with 15 additions and 0 deletions

View File

@@ -391,6 +391,13 @@ bool swift::checkBitwiseCopyableConformance(ProtocolConformance *conformance,
return false;
}
// BitwiseCopyable must be added in the same source file.
auto conformanceDecl = conformanceDC->getAsDecl();
if (conformanceDecl->getModuleContext() != nominal->getModuleContext()) {
conformanceDecl->diagnose(diag::bitwise_copyable_outside_module, nominal);
return true;
}
auto check = isImplicit ? BitwiseCopyableCheck::Implicit
: BitwiseCopyableCheck::Explicit;