( SPYFF | 2024. 09. 06., p – 14:30 )

Köszi, érdekesek. Igen, valgrindot használok és nagyon sok hibát ki tud szűrni. Memóriakezelési hibákra is hasznos de ami nekem különösen hasznos része, hogy deadlockokat is tud detektálni és írja ki és hol fogja a mutexet. Viszont csak ez a kettő magában szintén ad egyfajta hamis biztoságérzetet, mert a teszteseteidtől függ, előjön-e valami olyan leak, ami csak cornercase-ket érint. Legalább nem is ígérnek többet, ennyiből mindneképp korrektebb Rustnál.

Időközben találtam két projectet, https://xr0.dev/ és https://frama-c.com/, ez utóbbi elég fájdalmasan bloatednak néz ki, az xr0 meg nagyon kezdeti állapotban van. Mindenesetre nekem tetszene valami borrow checker-szerűség C-hez, ami mélységében felderíti a cornercaseket is. eBPF verifier valami hasonló, ott a kernel betöltési időben szól, ha dangling reference van, esetleg unsafe memory access vagy ehhez hasonlók. Sajnos ez csak kernelre korlátozódik és van egy 1 milliós utasítás limit is, végtelen ciklusokat elkerülendő.