@@ -4160,10 +4160,12 @@ fixMemberRef(ConstraintSystem &cs, Type baseTy,
41604160 case MemberLookupResult::UR_TypeMemberOnInstance:
41614161 return AllowTypeOrInstanceMember::create (cs, baseTy, memberName, locator);
41624162
4163+ case MemberLookupResult::UR_Inaccessible:
4164+ return AllowInaccessibleMember::create (cs, decl, locator);
4165+
41634166 case MemberLookupResult::UR_MutatingMemberOnRValue:
41644167 case MemberLookupResult::UR_MutatingGetterOnRValue:
41654168 case MemberLookupResult::UR_LabelMismatch:
4166- case MemberLookupResult::UR_Inaccessible:
41674169 case MemberLookupResult::UR_UnavailableInExistential:
41684170 break ;
41694171 }
@@ -4187,9 +4189,9 @@ ConstraintSystem::SolutionKind ConstraintSystem::simplifyMemberConstraint(
41874189
41884190 auto locator = getConstraintLocator (locatorB);
41894191 MemberLookupResult result =
4190- performMemberLookup (kind, member, baseTy, functionRefKind, locator,
4191- /* includeInaccessibleMembers*/ false );
4192-
4192+ performMemberLookup (kind, member, baseTy, functionRefKind, locator,
4193+ /* includeInaccessibleMembers*/ shouldAttemptFixes () );
4194+
41934195 switch (result.OverallResult ) {
41944196 case MemberLookupResult::Unsolved:
41954197 // If requested, generate a constraint.
@@ -6195,6 +6197,7 @@ ConstraintSystem::SolutionKind ConstraintSystem::simplifyFixConstraint(
61956197 case FixKind::AllowInvalidInitRef:
61966198 case FixKind::AllowClosureParameterDestructuring:
61976199 case FixKind::MoveOutOfOrderArgument:
6200+ case FixKind::AllowInaccessibleMember:
61986201 llvm_unreachable (" handled elsewhere" );
61996202 }
62006203
0 commit comments