codeclimate-cppcheck est un moteur climatique de code qui enveloppe CPPCHECK. Vous pouvez l'exécuter sur votre ligne de commande à l'aide du Code Climate CLI ou sur notre plate-forme d'analyse hébergée.
CPPCHECK est un outil d'analyse statique pour le code C / C ++.
codeclimate engines:install cppcheck pour installer le moteur CPPCHECK CLIMAT CLIMAT..codeclimate.yml . Voir l'exemple ci-dessous.codeclimate analyze . Si vous avez sauté l'étape 2, le moteur CPPCheck sera automatiquement installé à ce stade, en supposant qu'il est activé dans .codeclimate.yml . Comme l'outil de ligne de commande cppcheck lui-même, vous pouvez configurer divers aspects de l'analyse statique. À l'heure actuelle, les options suivantes sont prises en charge dans .codeclimate.yml :
check : Catégories de problèmes à vérifier. Par défaut, aucune vérification supplémentaire n'est activée. Les valeurs disponibles sont les suivantes: all , warning , style , performance , portability , information , unusedFunction , etc. Reportez-vous à l'option --enable= cppcheck pour plus d'informations.project : Utilisez Visual Studio Project / Solution ( *.vcxproj / *sln ) ou compile la base de données ( compile_commands.json ) pour les fichiers à analyser, inclure des chemins, des définies, une plate-forme et des indéfinis. Reportez-vous à l'option --project= cppcheck pour plus d'informations.language : oblige cppcheck à vérifier tous les fichiers comme la langue donnée. Les valeurs valides sont: c , c++ . Reportez-vous à l'option --language= cppcheck pour plus d'informations.stds : Normes linguistiques multiples contre lesquelles vérifier. Reportez-vous à l'option --std= cppcheck pour plus d'informations.platform : Spécifie les types et tailles spécifiques à la plate-forme. Les plates-formes intégrées disponibles sont: unix32 , unix64 , win32A , win32W , win64 , etc. Reportez-vous à l'option --platform= cppcheck pour plus d'informations.library : Spécifie les fichiers cfg de bibliothèque à charger. Reportez-vous à --library= Option de cppcheck pour plus d'informations.jobs : Spécifie le nombre d'emplois pour l'exécution Reportez-vous à l'option -j <jobs> de cppcheck pour plus d'informations.dump : Créez des fichiers de vidage pendant l'exécution. Reportez-vous à l'option --dump de cppcheck pour plus d'informations.defines : Définissez les symboles préprocesseurs. Reportez-vous à l'option -D de cppcheck pour plus d'informations.undefines : Symboles pré-incessants indéfinis. Reportez-vous à l'option -U de cppcheck pour plus d'informations.includes : les chemins de recherche incluent des fichiers. Le premier chemin donné est d'abord recherché les fichiers d'en-tête contenus. Si les chemins sont relatifs aux fichiers source, cela n'est pas nécessaire. Reportez-vous à l'option -I de cppcheck pour plus d'informations.max_configs : Nombre maximum de configurations pour vérifier un fichier avant de le sauter. La valeur par défaut est 12. max_configs peut également être défini sur force , ce qui force cppcheck pour vérifier toutes les configurations. Reportez-vous aux options --max-configs= et --force de cppcheck pour plus d'informations.inconclusive : permettre des problèmes de rapport qui ne sont pas concluants. Reportez-vous à l'option --inconclusive de cppcheck pour plus d'informations.suppressions-list : supprimer les avertissements répertoriés dans le fichier. Reportez-vous à l'option --suppressions-list de cppcheck pour plus d'informations.inline-suppr : Autoriser la suppression des avertissements avec des commentaires en ligne, par exemple: // cppcheck-suppress arrayIndexOutOfBounds . Reportez-vous à l'option --inline-suppr de cppcheck pour plus d'informationsDes options supplémentaires peuvent être prises en charge plus tard.
Un exemple de fichier .codeclimate.yml :
version : " 2 "
plugins :
cppcheck :
enabled : true
config :
check : all
project : compile_commands.json
language : c++
stds :
- c++11
platform : unix64
defines :
- " DEBUG=1 "
- " __cplusplus "
undefines :
- " DEBUG "
includes :
- include/
max_configs : 42
inconclusive : false
dump : false
dump : false
suppressions-list : .cppcheck-suppressions
inline-suppr : true
jobs : 4
library : googletest Pour obtenir de l'aide avec CPPCheck, consultez leur documentation.
Si vous rencontrez un problème climatique de code, examinez d'abord les problèmes de github de ce projet, car votre question a peut-être déjà été couverte. Sinon, allez-y et ouvrez un ticket d'assistance avec nous.