- Utiliser MIRI pour détecter UB (c'est essentiel!)
- Tester le code unsafe
- Vérifier la sécurité mémoire
- Intégrer dans CI
Imaginez un détective 🕵️ qui cherche des bugs:
- MIRI = Le détective qui trouve les problèmes de mémoire
- Il vérifie votre code unsafe
- Il trouve les bugs avant qu'ils ne causent des problèmes!
C'est exactement comme MIRI fonctionne! C'est super important!
┌─────────────────────────────────────────┐
│ 🕵️ MIRI = DÉTECTIVE 🕵️ │
├─────────────────────────────────────────┤
│ │
│ Code unsafe │
│ │ │
│ ▼ MIRI analyse │
│ ┌─────────────┐ │
│ │ Détective │ → Trouve les bugs! │
│ └─────────────┘ │
│ │ │
│ ▼ Rapport │
│ "Bug trouvé: use-after-free!" │
│ │
│ Sécurité garantie! ✅ │
│ │
└─────────────────────────────────────────┘
Mnémonique: "Détective" - MIRI est comme un détective qui cherche les bugs de mémoire dans votre code unsafe!
rustup component add miri# Tester avec MIRI
cargo miri test
# Exécuter avec MIRI
cargo miri runMIRI détecte :
- Use-after-free
- Double-free
- Memory leaks
- Undefined behavior
- Violations de règles unsafe
MIRI est essentiel pour :
- Vérifier le code unsafe
- Détecter les bugs de sécurité
- Valider les invariants
- Intégrer dans CI/CD