Open NachoSoto opened 2 years ago
Issue Description:
See also https://github.com/RevenueCat/purchases-ios/issues/1008.
Consider this code in a framework (all Swift):
@available(iOS, obsoleted: 1, renamed: "New") @available(tvOS, obsoleted: 1, renamed: "New") @available(watchOS, obsoleted: 1, renamed: "New") @available(macOS, obsoleted: 1, renamed: "New") @objc(RCOld) public class Old: NSObject { } @objc(RCNew) public class New: NSObject {}
Using `Old` from the same module produces the correct diagnostic and fix-it (albeit duplicated for some reason):
// 'Old' has been renamed to 'New' // Replace 'Old' with 'New' private let old = Old()
However, the same line of code from outside the module is wrong, and produces no fix-it.
// 'Old' is unavailable in iOS: 'Old' has been renamed to 'RCNew' private let old = Old()
@swift-ci create
Environment
Apple Swift version 5.5.1 (swiftlang-1300.0.31.4 clang-1300.0.29.6) Target: arm64-apple-macosx12.0 Xcode 13.1 (13A1030d)Additional Detail from JIRA
| | | |------------------|-----------------| |Votes | 1 | |Component/s | | |Labels | Bug | |Assignee | None | |Priority | Medium | md5: 799848e09653cfedd88874379605bd43Issue Description:
See also https://github.com/RevenueCat/purchases-ios/issues/1008.
Consider this code in a framework (all Swift):
Using `Old` from the same module produces the correct diagnostic and fix-it (albeit duplicated for some reason):
However, the same line of code from outside the module is wrong, and produces no fix-it.