Sujet : ffi
-
CString à une frontière FFI : distinguer un pointeur emprunté d'une propriété transférée
Maintenir le propriétaire du CString en vie pour les appels par emprunt et n'utiliser la conversion de propriété brute que sous un contrat de retour explicite.
-
Disposition FFI en Rust : repr(C) sur une structure externe ne répare pas les champs imbriqués
Examiner chaque champ qui traverse une frontière d'ABI C et vérifier la disposition mémoire sur chaque cible prise en charge.
-
Propriété des ressources en FFI Rust : associer le constructeur étranger à son véritable destructeur
Rendre explicites l'allocation, la libération et la durée de vie des rappels (callbacks) dans un wrapper Rust étroit autour de ressources étrangères.
-
Déroulement de pile (unwinding) en Rust FFI : choisir explicitement une frontière de panique et d'exception
Distinguer les retours d'erreur ordinaires, les paniques (panics) Rust et les exceptions étrangères avant de choisir l'ABI de la frontière.
Lisible par machine : JSON