34 votes

Jeux de règles pour cppcheck

Cppcheck vous permet de créer vos propres fichiers de règles, mais je ne sais pas combien de fonctionnalités de cppcheck sont exposées.

Quelqu'un travaille-t-il sur un ensemble qui appliquerait les règles JSF ou MISRA ?

11voto

johnwait Points 639

Vous ne serez pas en mesure de mettre en œuvre tous les MISRA/JSF règles et des directives du cppcheck règles, la plupart du temps que les simples limitation de certaines des fonctionnalités du langage C et de constructions ou qui sont de même style (certains qui viennent à l'esprit: les espaces avant/après ./->, # des arguments sur une seule ligne, l'utilisation des syndicats pour fournir des différentes méthodes d'accès à la mémoire, la présence de non signé/signed avant de char, etc).

L'utilisateur Ira Baxter assez bien cloué dans un commentaire sur une autre question touchant à cppcheck: tout ne peut pas être représenté/simplifié comme un modèle. En s'appuyant sur des modèles de règles personnalisées rend difficile à manipuler et à détecter le niveau plus élevé des problèmes, liés par exemple à des types (par exemple, sizeof() sur les types, vous devez analyser et recueillir les jetons (typedefs, les enums) utilisé comme un type de représentation), l'héritage (par exemple des classes, incl. dérivés de ceux, utilisés à la fois comme virtuel et non virtuel), et la portée. Elles doivent être codées en dur dans cppcheck (vous pouvez toujours fourche cppcheck...)

Dans tous les cas, avez-vous touché MISRA (ou JSF) les règles? Est-ce une exigence pour un projet? Si pas, vous pouvez récupérer une copie de la MISRA lignes directrices (vous avez déjà la JSF) et cochez celles qui vous pouvez mettre en œuvre à l'aide de PCRE modèles. Si c'est une obligation, je vous suggère "investir" dans un produit commercial qui ne vérifie MISRA/JSF lignes directrices et d'utiliser les deux outils.

Une dernière remarque: vous n'avez pas besoin de toutes les MISRA/JSF règles, et de nombreux outils de laisser un petit pourcentage des personnes.

1voto

DTSCode Points 328

D'après ce que je peux dire, en parcourant la documentation, il semble assez exposé. http://cppcheck.sourceforge.net/manual.pdf .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X