swiftlang/swift

Diagnostic for `static nonmutating` should be improved

Aperta

#77.835 aperta il 25 nov 2024

 (11 commenti) (0 reazioni) (1 assegnatario)Swift (10.719 fork)batch import
bugcompilerdeclarationsdiagnostics qualitygood first issuemutatingstatic declarationsswift 6.1type checker

Metriche repository

Star
 (69.989 stelle)
Metriche merge PR
 (Merge medio 8g 17h) (510 PR mergiate in 30 g)

Descrizione

Description

No response

Reproduction

struct S {
  nonmutating static func foo() {}
}
430 | 
431 | struct S {
432 |   nonmutating static func foo() {}
    |   `- error: static functions must not be declared mutating [static_functions_not_mutating]
433 | }
434 | 

Expected behavior

An example approach to improving this error message is to list both modifiers.

We can also tailor it to call out the modifier in question as it currently does in the case of mutating. The drawback of this option is that it conveys less information about language grammar.s

Environment

Swift version 6.1-dev (26e888e45e6ede4)

Additional information

No response

Guida contributor