Intégré à Visual Studio, Microsoft C++ Code Analysis est un outil d’analyse statique qui aide à identifier et corriger les problèmes potentiels de code dans ce langage de programmation. A l’occasion de la mise à jour 17.14 de la suite de logiciels de développement de l’éditeur, ce produit a bénéficié d’améliorations pour mieux tracer, justifier et gérer plus efficacement les alertes de suppressions de code. Les évolutions de C++ Code Analysis ont été détaillées dans un billet de blog de Carson Radtke, ingénieur logiciel C++ et analyse statique chez Microsoft le 15 juillet. Selon la firme de Redmond, ces changements contribuent à monter d’un cran les capacités d’audit, de revue et de maintenance de code, mais aussi à gérer plus efficacement la dette technique et la cohérence entre les mécanismes de suppression de code. “Ces améliorations permettent un meilleur suivi, une meilleure justification et une meilleure gestion globale des suppressions d'alerte, ce qui se traduit par une base de code plus facile à maintenir et plus robuste”, assure M. Radtke.
Dans cette version, le support de l’attribut gsl::suppress a été mis à jour pour s’aligner avec les dernières directives clés (core guidelines) de la syntaxe C++ et permet désormais de supprimer par ce biais les alertes. De plus #pragma warning a été étendu pour supporter la justification de champ [le fait que les caractères de données d'un champ se trouvent avant ou après les caractères de remplissage qui l'accompagnent, NDLR]. #pragma warning(suppress) étant un mécanisme général du compilateur MSVC (Microsoft Visual C++) qui peut être utilisé pour n'importe quel avertissement du compilateur, tandis que [[gsl::suppress]] ne supprimera que les alertes émises par Microsoft C++ Code Analysis. L’éditeur recommande d'utiliser [[gsl::suppress]] pour supprimer les avertissements de C++ Code Analysis dans la mesure du possible.
Une prise en charge améliorée de SARIF
Enfin, la mise à jour de cet outil améliore la prise en charge du format d’échange des résultats d’analyse statique (SARIF, static analysis results interchange format) pour inclure des informations détaillées concernant les alertes de suppressions. Et plus spécifiquement la justification de ces suppressions fournie pour le programmeur. Cela laisse aux équipes de codeurs la capacité d’examiner les raisons pour lesquelles une alerte spécifique a été passés sous silence. Ces améliorations du mécanisme de suppression dans C++ Code Analysis sont disponibles dans l’outillage de compilateur MSVC livré avec la version 17.14 de Visual Studio 2022. Les versions plus récentes de la suite de logiciels de développement du fournisseur vont aussi bénéficier de ces ajouts.
Commentaire