swiftlang/swift

Diagnostic for `static nonmutating` should be improved

Open

#77.835 geöffnet am 25. Nov. 2024

Auf GitHub ansehen
 (11 Kommentare) (0 Reaktionen) (1 zugewiesene Person)Swift (10.719 Forks)batch import
bugcompilerdeclarationsdiagnostics qualitygood first issuemutatingstatic declarationsswift 6.1type checker

Repository-Metriken

Stars
 (69.989 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 7T 6h) (556 gemergte PRs in 30 T)

Beschreibung

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

Contributor Guide