PVS-Studio est maintenant dans l'Explorateur de compilateurs

image1.png


Il n'y a pas longtemps, un événement important a eu lieu: PVS-Studio est apparu dans Compiler Explorer! Vous pouvez maintenant analyser rapidement et facilement votre code pour les erreurs directement sur godbolt.org (Explorateur de compilateurs). Cette innovation ouvre un grand nombre de nouvelles possibilités - de la curiosité satisfaisante sur les capacités de l'analyseur à la possibilité de partager rapidement le résultat du test avec un ami. Comment utiliser ces opportunités sera discuté dans cet article. Attention - Gros GIF!



Si vous voulez aller droit au but et analyser le code ici et maintenant, voici un lien complĂštement prĂȘt Ă  l'emploi . Je recommande de l'ajouter Ă  vos signets - cela vous sera toujours utile;)



Parlons maintenant de tout dans l'ordre. Compiler Explorer est un service en ligne interactif pour explorer les compilateurs. Ici, vous pouvez écrire du code directement sur le site et voir immédiatement quelle sortie d'assembly tel ou tel compilateur va générer pour lui:



image2.gif


De plus, il existe tout un ensemble de possibilités sur le site, et nous allons aujourd'hui envisager la possibilité d'analyser avec PVS-Studio. Afin de mener l'analyse, vous devez effectuer les opérations suivantes:



  1. Allez sur le site godbolt.org ,
  2. Dans l'onglet avec la sortie du compilateur, cliquez sur "Ajouter un outil ...",
  3. Sélectionnez "PVS-Studio" dans la liste déroulante.


Vous pouvez voir un exemple d'une telle séquence d'actions dans l'animation ci-dessous:



image3.gif


TerminĂ©! DĂ©sormais, dans la fenĂȘtre qui apparaĂźt, tous les avertissements Ă©mis par l'analyseur Ă  votre code seront automatiquement affichĂ©s. Vous pouvez analyser Ă  la fois votre propre code manuscrit et les fichiers source tĂ©lĂ©chargĂ©s sĂ©parĂ©ment. Naturellement, les fichiers doivent ĂȘtre autonomes et ne pas ĂȘtre inclus dans des fichiers qui ne font pas partie de la bibliothĂšque standard. Sinon, le fichier ne sera ni compilĂ© ni vĂ©rifiĂ©.



Pour le moment, l'analyse utilisant PVS-Studio est disponible sur le site pour toutes les versions de GCC et Clang pour les plates-formes x86 et x64. Nous prévoyons d'étendre les capacités du site à d'autres compilateurs que nous prenons en charge (par exemple, MSVC ou des compilateurs pour ARM), s'il y a une demande.



Actuellement, seuls les diagnostics gĂ©nĂ©raux des niveaux d'erreur, d'avertissement et de note sont activĂ©s sur le site. Nous avons dĂ©libĂ©rĂ©ment omis les autres modes (Optimisation, 64 bits, PersonnalisĂ© et MISRA) afin que seuls les avertissements les plus importants restent dans la sortie. De plus, contrairement Ă  PVS-Studio lui-mĂȘme, Compiler Explorer ne prend pas encore en charge C # et Java - nous prĂ©voyons d'exĂ©cuter l'analyse de code dans ces langages dĂšs qu'ils y apparaissent :)



Compiler Explorer a un systĂšme de fenĂȘtres trĂšs intelligent, vous pouvez donc les dĂ©placer ou , par exemple, se chevauchent. Si vous n'ĂȘtes pas actuellement intĂ©ressĂ© par la sortie du compilateur, vous pouvez la "cacher". Comme ça:



image4.gif


Vous pouvez soit Ă©crire du code directement dans la fenĂȘtre de l'Explorateur du compilateur, soit tĂ©lĂ©charger des fichiers individuels. Pour ce faire, cliquez sur "Enregistrer / Charger" et sĂ©lectionnez "SystĂšme de fichiers" dans l'onglet qui s'ouvre. Vous pouvez Ă©galement «tĂ©lĂ©charger» le code que vous Ă©crivez sur votre ordinateur en appuyant sur Ctrl + S.



image5.gif


Vous ne pouvez pas analyser des projets entiers sur le site - vous ne pouvez télécharger des fichiers que séparément.



Si vous souhaitez voir la sortie de votre programme, vous pouvez ouvrir la fenĂȘtre d'exĂ©cution en cliquant sur "Ajouter nouveau ... -> ExĂ©cution uniquement" dans la fenĂȘtre d'Ă©criture de code (pas dans la fenĂȘtre avec le compilateur). Sur le gif ci-dessous, vous pouvez voir la sortie des travaux de laboratoire tirĂ©e de notre page sur l' utilisation gratuite de PVS-Studio par les Ă©tudiants et les enseignants .



image6.gif


Au fait, avez-vous remarquĂ© que lorsque vous cliquez sur les liens vers godbolt, vous obtenez un code prĂ©-Ă©crit dans les fenĂȘtres prĂ©-arrangĂ©es? Oui, vous pouvez gĂ©nĂ©rer des permaliens qui prĂ©servent complĂštement l'Ă©tat de la page au moment de la gĂ©nĂ©ration! Pour ce faire, vous devez cliquer sur le bouton "Partager" dans le coin supĂ©rieur droit de l'Ă©cran.



image7.gif


Cette méthode est trÚs pratique pour partager les résultats de compilation / analyse de votre code avec vos amis et collÚgues. Il est particuliÚrement pratique que le destinataire n'ait littéralement rien à faire: il suffit de suivre le lien et tout ce dont vous avez besoin s'ouvrira immédiatement sous vos yeux.



Nous prĂ©voyons de profiter de cette opportunitĂ© pour travailler avec des clients dans le support technique: l'utilisation de l'Explorateur de compilateurs est souvent trĂšs pratique pour compiler des exemples peu reproductibles qui peuvent ĂȘtre rapidement pris et envoyĂ©s par courrier.



Dans l'onglet "Partager", vous trouverez Ă©galement un Ă©lĂ©ment pour crĂ©er un lien incorporĂ©, avec lequel vous pouvez intĂ©grer une fenĂȘtre avec l'Explorateur de compilateurs sur un autre site.



L'Explorateur de compilateurs contient toujours une version Ă  jour de PVS-Studio, par consĂ©quent, aprĂšs chacune de nos versions, de plus en plus d'erreurs peuvent ĂȘtre trouvĂ©es sur le site. NĂ©anmoins, l'utilisation de PVS-Studio sur godbolt.org ne donne pas une image complĂšte de ses capacitĂ©s, car PVS-Studio n'est pas seulement un diagnostic, mais aussi une infrastructure dĂ©veloppĂ©e:



  • Analyse de code en langages C, C ++, C # et Java pour un plus grand nombre de plates-formes et de compilateurs;
  • Plugins pour Visual Studio 2010-2019, JetBrains Rider, IntelliJ IDEA;
  • IntĂ©gration dans TeamCity, PlatformIO, Azure DevOps, Travis CI, CircleCI, GitLab CI / CD, Jenkins, SonarQube, etc.
  • Utilitaire de surveillance de compilation pour l'analyse indĂ©pendante de l'IDE ou du systĂšme de construction;
  • Et bien d'autres.


En fin de compte, ce n'est qu'aprÚs avoir téléchargé l'analyseur que vous pourrez analyser pleinement un projet composé de plusieurs fichiers. Par conséquent, la meilleure façon d'obtenir une compréhension correcte de PVS-Studio est de télécharger l' analyseur et de l'essayer sur votre projet.



Pour rester à jour, suivez nos actualités. Lisez également notre blog : nous y publions non seulement des nouvelles et des articles sur la recherche de bogues dans de vrais projets, mais également divers points intéressants liés au C, C ++, C # et Java.



Nos réseaux sociaux:







Si vous souhaitez partager cet article avec un public anglophone, veuillez utiliser le lien de traduction: George Gribkov. PVS-Studio est maintenant dans l'Explorateur de compilateurs! .



All Articles