mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Merge pull request #40892 from LucianoPAlmeida/SR-15273-access
This commit is contained in:
@@ -4294,8 +4294,8 @@ ConformanceChecker::resolveWitnessViaLookup(ValueDecl *requirement) {
|
|||||||
protoAccessScope.accessLevelForDiagnostics(),
|
protoAccessScope.accessLevelForDiagnostics(),
|
||||||
proto->getName());
|
proto->getName());
|
||||||
|
|
||||||
if (auto *decl = dyn_cast<AbstractFunctionDecl>(witness))
|
auto *decl = dyn_cast<AbstractFunctionDecl>(witness);
|
||||||
if (decl->isMemberwiseInitializer())
|
if (decl && decl->isSynthesized())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
diagnoseWitnessFixAccessLevel(diags, witness, requiredAccess,
|
diagnoseWitnessFixAccessLevel(diags, witness, requiredAccess,
|
||||||
|
|||||||
@@ -104,3 +104,11 @@ public struct NonPublicMemberwiseInitStruct: PublicInitProto {
|
|||||||
// expected-error@-1 {{initializer 'init(value:)' must be declared public because it matches a requirement in public protocol 'PublicInitProto'}}
|
// expected-error@-1 {{initializer 'init(value:)' must be declared public because it matches a requirement in public protocol 'PublicInitProto'}}
|
||||||
public var value: Int
|
public var value: Int
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// SR-15273
|
||||||
|
public protocol PublicEmptyInit {
|
||||||
|
init()
|
||||||
|
}
|
||||||
|
public struct Buggy: PublicEmptyInit {
|
||||||
|
// expected-error@-1 {{initializer 'init()' must be declared public because it matches a requirement in public protocol 'PublicEmptyInit'}}
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user