Rust 1.98.1 erklärt: Vtable-Fehlkompilat und Nullzeiger 2026
Offizieller Rust-Blog am 3. September: 1.98.1 flickt eine 1.98.0-vtable-Fehlkompilierung. Eine Null saß am Funktionszeigerplatz. Tracker: rust-lang/rust#161441.
Am 3. September 2026 veröffentlichte das Rust Release Team die Punktversion 1.98.1 im offiziellen Rust-Blog. Die Seite nennt einen Fix: eine Fehlkompilierung bei der vtable-Erzeugung. Offizieller Upgrade-Text: rustup update stable.
Der Suchbegriff ist die Punktversionsnummer. Der Blog sagt: In Rust 1.98.0 schrieb rustc unter Umständen einen Nullzeiger dorthin, wo in einer Trait-Objekt-vtable ein Funktionszeiger hingehört. Das ist undefiniertes Verhalten im erzeugten Code. Dieser Text prüft nur diesen Blog und die öffentliche Issue-Nummer. Kein rustup-Handbuch.
Was die öffentlichen Texte drucken
| Punkt | Öffentlicher Text | Grenze |
|---|---|---|
| Fehler | Null statt Funktionszeiger in der vtable | Nur unter Umständen |
| Wirkung | Undefiniertes Verhalten im erzeugten Code | Manchmal „nur“ Segfault nach dem Null-Laden |
| Upgrade | rustup update stable | Ein Offizialsatz, kein Tutorial |
| Tracker | RELEASES.md zeigt auf rust-lang/rust#161441 | Kein Sprachfeature-Drop |
Diese Ausgabe lesen
- 1
Das ist ein 1.98.0-Patch
Die Offizialseite setzt die Fehlkompilierung in den einzigen Feature-Abschnitt. Kein erneutes Ausliefern der 1.98.0-Spracheinträge, kein Sprachwechsel eines Paketmanagers.
- 2
Die Null sitzt am Funktionszeigerplatz
Offizialsatz: in some circumstances, rustc would incorrectly generate a trait object vtable with a null pointer where a function pointer should be.
- 3
Undefiniertes Verhalten ist nicht nur ein Absturz
Offizialtext: manchmal „nur“ Segfaults nach dem Laden des Nullzeigers, aber es kann auch eine Rechtfertigung für beliebige Effekte sein — typisch für UB.
- 4
Die öffentliche Issue hat eine Repro-Grenze
Issue 161441 heißt rustc emits a vacant vtable slot for a callable boxed async service. Der Bericht sagt: dieselbe Rama-Quelle lief unter 1.97.1 und stürzte unter 1.98.0 ab.
Was sonst öffentlich ist
Absturzzeichen stehen in der Issue
Der öffentliche Bericht sagt, macOS druckte SIGSEGV mit pc=0. Der erzeugte Aufrufer lud eine Service-Methode von vtable + 0x18 und sprang auf Null.
Das Datum von 1.98.0 steht nicht auf dieser Patch-Seite
RELEASES.md in rust-lang/rust datiert 1.98.0 auf 2026-08-20 und 1.98.1 auf 2026-09-03. Die Patch-Seite listet die Spracheinträge von 1.98.0 nicht erneut.
Das Team bittet weiter um beta-/nightly-Tests
Der Blog sagt: wer künftige Versionen testen will, soll lokal und in der CI rustup default beta oder nightly nutzen und Fehler melden.
Grenzen
Die Offizialseite datiert 1.98.2 nicht. Als Nächstes blog.rust-lang.org/2026/09/03/Rust-1.98.1/. Nur ein kurzes Meeting ohne Kontowand? wbstorm ist eine Browser-Raum-ID — siehe Raum erstellen oder beitreten und Whiteboard-Grundlagen.
# Sources
# blog.rust-lang.org/2026/09/03/Rust-1.98.1/
# github.com/rust-lang/rust/issues/161441
# 2026-09-03Ist das eine Neuauflage der 1.98.0-Features?
Nein. Dieser Text ist die Punktversion zur vtable-Fehlkompilierung. RELEASES.md datiert 1.98.0 auf den 20. August.
Gibt es immer einen Segfault?
Offizialtext: es kann „nur“ nach dem Null-Laden segfaulten, aber undefiniertes Verhalten kann auch beliebige Effekte rechtfertigen.
Ist das eine Produktanleitung?
Nein. Dieser Text prüft nur den Rust-Blog vom 3. September und die öffentliche Issue, kein rustup-Handbuch.