L'exécution du code compilé avec GCC va déclencher un accès à other_values[0] qui est "légitime" au sens où c'est une valeur qui existe, qui est proprement initialisée. Valgrind n'y voit que du feu (et ne pourrait pas trop faire autrement), mais address sanitizer ajoute le check de débordement de tableau qui va bien à la compil et trouve l'erreur à l'exécution.
# Test manquant ?
Posté par Matthieu Moy (site web personnel) . En réponse au journal Comparatif d'outils d'analyse mémoire. Évalué à 7.
J'ai l'impression qu'il manque un test qui est pourtant important pour distinguer les approches/outils :
L'exécution du code compilé avec GCC va déclencher un accès à
other_values[0]qui est "légitime" au sens où c'est une valeur qui existe, qui est proprement initialisée. Valgrind n'y voit que du feu (et ne pourrait pas trop faire autrement), mais address sanitizer ajoute le check de débordement de tableau qui va bien à la compil et trouve l'erreur à l'exécution.