Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Mutating functions are not supported on structs

Aperta
#736 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
52/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
javascript, swift, wasm
Ambito
compilers, web-dev

Direzione di ricerca

Inizia dalla gestione di @JS struct e dal wrapper generato _bjs_Counter_increment mostrato nell’issue, quindi riproduci l’errore di compilazione con l’esempio Counter. Il lavoro è completato quando una @JS struct con una funzione mutante genera codice che viene compilato correttamente per WebAssembly.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Marking a mutating function on a structure @JS results in a compilation failure in the generated code.

For example, this struct generates code which fails to compile.

@JS struct Counter {

    var number: Int

    @JS public mutating func increment() {
        number += 1
    }

}
@_expose(wasm, "bjs_Counter_increment")
@_cdecl("bjs_Counter_increment")
public func _bjs_Counter_increment() -> Void {
    #if arch(wasm32)
    Counter.bridgeJSLiftParameter().increment() // error: cannot use mutating member on immutable value: function call returns immutable value
    #else
    fatalError("Only available on WebAssembly")
    #endif
}
Lingua principale
Swift
Stelle
986
Fork
76
Merge medio
21h 11m
PR unite (30g)
4

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di swiftwasm/JavaScriptKit

Tutte le issue di swiftwasm/JavaScriptKit

Issue simili

Altre issue su Swift

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.