swiftwasm / swiftwasm/JavaScriptKit

Memory corruption take 2

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

Nessuno ha ancora preso questa issue.

Lingua principale
Swift
Stelle
986
Fork
76
Merge medio
21h 11m
PR unite (30g)
4

Descrizione

I still see the following crash if I re-enable the Examples/Testing tests.

https://github.com/swiftwasm/JavaScriptKit/blob/84243a4c66d47e17c540bbdc17ef49f191840a07/Plugins/PackageToJS/Tests/ExampleTests.swift#L249-L250


   RuntimeError: memory access out of bounds
       at CounterPackageTests.xctest.dlmalloc (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[89702]:0x115e7de)
       at CounterPackageTests.xctest.malloc (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[89701]:0x115e22a)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::Demangler::demangleBoundGenerics(swift::Demangle::__runtime::Vector<swift::Demangle::__runtime::Node*>&, swift::Demangle::__runtime::Node*&) (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[28248]:0x522adc)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::Demangler::demangleBoundGenericType() (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[28200]:0x512379)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::Demangler::demangleOperator() (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[28174]:0x50e156)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::Demangler::demangleType(__swift::__runtime::llvm::StringRef, std::__2::function<swift::Demangle::__runtime::Node* (swift::Demangle::__runtime::SymbolicReferenceKind, swift::Demangle::__runtime::Directness, int, void const*)>) (wasm://wasm/CounterP
ackageTests.xctest-0f40d596:wasm-function[28172]:0x50db25)
       at CounterPackageTests.xctest.swift_getTypeByMangledName (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[27912]:0x4ee2ad)
       at CounterPackageTests.xctest.(anonymous namespace)::DecodedMetadataBuilder::resolveOpaqueType(swift::Demangle::__runtime::Node*, __swift::__runtime::llvm::ArrayRef<__swift::__runtime::llvm::ArrayRef<swift::MetadataPackOrValue>>, unsigned int) (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-functio
n[27992]:0x500764)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::TypeDecoder<(anonymous namespace)::DecodedMetadataBuilder>::decodeMangledType(swift::Demangle::__runtime::Node*, unsigned int, bool) (wasm://wasm/CounterPackageTests.xctest-0f40d596:wasm-function[27925]:0x4f3cfe)
       at CounterPackageTests.xctest.swift::Demangle::__runtime::TypeDecoder<(anonymous namespace)::DecodedMetadataBuilder>::decodeGenericArgs(swift::Demangle::__runtime::Node*, unsigned int, __swift::__runtime::llvm::SmallVectorImpl<swift::MetadataPackOrValue>&) (wasm://wasm/CounterPackageTests.xctest-0f40d596
:wasm-function[27971]:0x4fc426)

Toolchain version: DEVELOPMENT-SNAPSHOT-2025-10-02-a

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.

Direzione di ricerca

Inizia da Examples/Testing e dalle righe indicate 249-250 in ExampleTests.swift, quindi riproduci il crash usando la toolchain DEVELOPMENT-SNAPSHOT-2025-10-02-a. Traccia l’errore di accesso alla memoria segnalato durante l’esecuzione dei test; il lavoro è completato quando i test riattivati terminano senza il crash out-of-bounds.

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

Valutazione

Stack tecnologico
swift, wasm
Ambito
testing
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.