Skip to content

Commit 7ccd2ad

Browse files
committed
Revert "Update to ensure downgradeToWarning doesn't get reset"
This reverts commit c4251d2.
1 parent 5dbf31a commit 7ccd2ad

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

lib/Sema/ResilienceDiagnostics.cpp

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -105,16 +105,6 @@ bool TypeChecker::diagnoseInlinableDeclRefAccess(SourceLoc loc,
105105
}
106106

107107
DowngradeToWarning downgradeToWarning = DowngradeToWarning::No;
108-
// Don't change the order of the getDisallowedOriginKind call;
109-
// it can reset downgradeToWarning to NO so needs to be called here.
110-
auto originKind = getDisallowedOriginKind(D, where, downgradeToWarning);
111-
// For a default argument or property initializer, package type is
112-
// allowed at the use site with package access scope.
113-
auto allowedForPkgCtx = false;
114-
if (originKind == DisallowedOriginKind::None ||
115-
originKind == DisallowedOriginKind::PackageImport) {
116-
allowedForPkgCtx = where.isPackage() && declAccessScope.isPackage();
117-
}
118108

119109
// Swift 4.2 did not perform any checks for type aliases.
120110
if (isa<TypeAliasDecl>(D)) {
@@ -134,12 +124,22 @@ bool TypeChecker::diagnoseInlinableDeclRefAccess(SourceLoc loc,
134124
if (isa<TypeAliasDecl>(DC) && !Context.isSwiftVersionAtLeast(6))
135125
downgradeToWarning = DowngradeToWarning::Yes;
136126

127+
AccessLevel diagAccessLevel = declAccessScope.accessLevelForDiagnostics();
128+
129+
auto allowedForPkgCtx = false;
130+
auto originKind = getDisallowedOriginKind(D, where, downgradeToWarning);
131+
// For a default argument or property initializer, package type is
132+
// allowed at the use site with package access scope.
133+
if (originKind == DisallowedOriginKind::None ||
134+
originKind == DisallowedOriginKind::PackageImport) {
135+
allowedForPkgCtx = where.isPackage() && diagAccessLevel >= AccessLevel::Package;
136+
}
137+
137138
if (!allowedForPkgCtx) {
138139
auto diagID = diag::resilience_decl_unavailable;
139140
if (downgradeToWarning == DowngradeToWarning::Yes)
140141
diagID = diag::resilience_decl_unavailable_warn;
141142

142-
AccessLevel diagAccessLevel = declAccessScope.accessLevelForDiagnostics();
143143
Context.Diags.diagnose(loc, diagID, D, diagAccessLevel,
144144
fragileKind.getSelector());
145145

0 commit comments

Comments
 (0)