Xcode 不断抛出 swift 6 错误,但该错误不存在?
Xcode keeps throwing a swift 6 error but that doesn't exist?
Xcode 不断抛出一个编译器错误,它不符合 Swift 6 尚未发现。它只是在我下载 13.3 Xcode.
时才开始
错误为:
Expression requiring global actor 'MainActor' cannot appear in default-value expression of property '_api'; this is an error in Swift 6
我的代码正在执行状态对象调用,如下所示:
@StateObject var api = RecipeAPI()
我已经调试并关闭并重新打开所有内容,但没有任何变化。也报告给苹果了。
最佳,
伊姆兰
这是 Swift 5 中的警告。在 Swift 6 中,它将是一个错误。它建议您现在修复它,但将来它会破坏构建。您要求 MainActor 上的所有内容(包括 init
为 运行,但并未承诺此分配对 MainActor 本身为 运行(可能是因为它所属的类型是't also marked @MainActor
)。你可能会发现 5.6 中有很多这样的问题非常难以修复。他们仍在调整警告。(所以当你开始制定你的下一个问题“我如何消除所有 Swift 处理 SwiftUI 和 Foundation 时的并发警告”,答案可能是“你不能,或者至少不是以任何简单的方式。”这取决于确切的问题。)
Xcode 不断抛出一个编译器错误,它不符合 Swift 6 尚未发现。它只是在我下载 13.3 Xcode.
时才开始错误为:
Expression requiring global actor 'MainActor' cannot appear in default-value expression of property '_api'; this is an error in Swift 6
我的代码正在执行状态对象调用,如下所示:
@StateObject var api = RecipeAPI()
我已经调试并关闭并重新打开所有内容,但没有任何变化。也报告给苹果了。
最佳,
伊姆兰
这是 Swift 5 中的警告。在 Swift 6 中,它将是一个错误。它建议您现在修复它,但将来它会破坏构建。您要求 MainActor 上的所有内容(包括 init
为 运行,但并未承诺此分配对 MainActor 本身为 运行(可能是因为它所属的类型是't also marked @MainActor
)。你可能会发现 5.6 中有很多这样的问题非常难以修复。他们仍在调整警告。(所以当你开始制定你的下一个问题“我如何消除所有 Swift 处理 SwiftUI 和 Foundation 时的并发警告”,答案可能是“你不能,或者至少不是以任何简单的方式。”这取决于确切的问题。)