swiftlang/swift
"Instance member cannot be used on type" diagnostic message could be more specific
Open
#62,909 opened on Jan 8, 2023
bugcompilerdiagnostics qualitygood first issuetype checker
Repository metrics
- Stars
- (69,989 stars)
- PR merge metrics
- (PR metrics pending)
Description
Motivation
It took me far too long to understand why the compiler was giving me this error (I was quickly trying something a bit less trivial than this example involving async/await, and thought the issue was around the execution context):
@main public struct Scraper
{
public static func main()
{
let data = fetch() // Instance member 'fetch' cannot be used on type 'Scraper'
^~~~~
}
func fetch() -> Data
{
return Data()
}
}
Solution
A more precise wording, something like "Instance method cannot be called from static context", would be much more helpful.