** Por favor, participe en esta encuesta para una función planeada por mí **
CPPCheck es una herramienta de análisis estático para el código C/C ++. Proporciona un análisis de código único para detectar errores y se centra en detectar comportamientos indefinidos y construcciones de codificación peligrosas. El objetivo es tener muy pocos falsos positivos. CPPCheck está diseñado para poder analizar su código C/C ++, incluso si tiene una sintaxis no estándar (común en proyectos integrados).
Crear cppcheck.yml bajo .github/workflows con los siguientes contenidos
name : cppcheck-action-test
on : [push]
jobs :
build :
name : cppcheck-test
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here name : cppcheck-action
on : [push]
jobs :
build :
name : cppcheck
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : cppcheck
uses : deep5050/cppcheck-action@main
with :
github_token : ${{ secrets.GITHUB_TOKEN}}
check_library :
skip_preprocessor :
enable :
exclude_check :
inconclusive :
inline_suppression :
force_language :
force :
max_ctu_depth :
platform :
std :
output_file :
other_options :
- name : publish report
uses : mikeal/publish-to-github-action@master
env :
GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME : ' main ' # your branch name goes here| Opción | Valor | Descripción | Por defecto |
|---|---|---|---|
| check_library | enable , disable | Mostrar mensajes de información cuando los archivos de la biblioteca tienen información incompleta | disable |
| Skip_PreCrocessor | enable , disable | Imprima la salida del preprocesador en stdout y no realice un procesamiento adicional | disable |
| permitir | all , warning , style , performance , portability , information , unusedFunction , missingInclude | Habilitar cheques adicionales. Si desea habilitar la verificación múltiple a la vez, separarlos usando , sin espacio en blanco. Ejemplo: style,warning,performance | all |
| excluir_check | ./path/to/ignore | Dé una ruta de archivo o directorio para excluir de la verificación. Ejemplo: ./no_check.cpp | Nada para ignorar |
| poco concluyente | enable , disable | Permitir que cppcheck informes a pesar de que el análisis no es concluyente | enable |
| en línea_supresión | enable , disable | Habilitar supresiones en línea. Úselos colocando uno o más comentarios, como: '// CPPCHECK-supresión de advertencia' | disable |
| Force_language | c , c++ | Obliga a CPPCheck a verificar todos los archivos como el idioma dado. Los valores válidos son: c , c++ | detectado por auto |
| fuerza | enable , disable | Forzar la verificación de todas las configuraciones en los archivos | disable |
| max_ctu_depth | number | Profundidad máxima en el análisis completo del programa. Un valor mayor significará más errores, pero también significa que el análisis será más lento. Ejemplo: 4 | 2 |
| plataforma | unix32 , unix64 , win32A , win32W , win64 , elbrus-e1cp , native pic16 mips32 , avr8 pic8 unspecified pic8-enhanced | Especifica tipos y tamaños específicos de la plataforma | unspecified |
| std | c89 , c99 , c11 , c++11 , c++14 , c++17 , c++20 | Establezca el estándar C/C ++ | c11 , c++20 |
| output_file | ./path/to/output/file.txt | Dar un nombre de archivo para el informe de salida | ./cppcheck_report.txt |
| otras_options | --option1 --option2=value -opt3 | Cualquier otra opción que desee agregar, separar con un espacio, las opciones incorrectas causarán una falla. Ejemplo: --bug-hunting --verbose | disable |
Para obtener más detalles, consulte las documentos de CPPCheck
Licencia de MIT
Copyright (c) 2021 Dipankar Pal
El permiso se otorga, de forma gratuita, a cualquier persona que obtenga una copia de este software y archivos de documentación asociados (el "software"), para tratar en el software sin restricción, incluidos los derechos de los derechos de usar, copiar, modificar, fusionar, publicar, distribuir, sublicense y/o vender copias del software, y para permitir que las personas a quienes se les proporciona el software para hacer, sujeto a las siguientes condiciones: las siguientes condiciones: las siguientes condiciones: las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todas las copias o porciones sustanciales del software.
El software se proporciona "tal cual", sin garantía de ningún tipo, expresa o implícita, incluidas, entre otros, las garantías de comerciabilidad, idoneidad para un propósito particular y no infracción. En ningún caso los autores o titulares de derechos de autor serán responsables de cualquier reclamo, daños u otra responsabilidad, ya sea en una acción de contrato, agravio o de otra manera, que surge, de o en relación con el software o el uso u otros tratos en el software.
Íconos realizados por Freepik de www.flaticon.com
Gracias a estas maravillosas personas (Key Emoji):
Bader | Stefan Hagen ? |
Este proyecto sigue la especificación de todos los contribuyentes. ¡Contribuciones de cualquier tipo bienvenido!