EnglishFrenchSpanish

Ad


OnWorks favicon

cppcheck - Online in the Cloud

Run cppcheck in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command cppcheck that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


cppcheck - Tool for static C/C++ code analysis

SYNOPSIS


cppcheck [--append=<file>] [--check-config] [--check-library] [-D<id>] [-U<id>]
[--enable=<id>] [--error-exitcode=<n>] [--errorlist]
[--exitcode-suppressions=<file>] [--file-list=<file>] [--force] [--help]
[-I<dir>] [--includes-file=<file>] [--config-exclude=<dir>]
[--config-excludes-file=<file>] [--include=<file>] [-i<dir>] [--inconclusive]
[--inline-suppr] [-j<jobs>] [-l<load>] [--language=<language>] [--library=<cfg>]
[--max-configs=<limit>] [--platform=<type>] [--quiet] [--relative-paths=<paths>]
[--report-progress] [--rule=<rule>] [--rule-file=<file>] [--std=<id>]
[--suppress=<spec>] [--suppressions-list=<file>] [--template='<text>']
[--verbose] [--version] [--xml] [--xml-version=<version>]] [file or path] ...

DESCRIPTION


Cppcheck is a command-line tool that tries to detect bugs that your C/C++ compiler doesn't
see. It is versatile, and can check non-standard code including various compiler
extensions, inline assembly code, etc. Its internal preprocessor can handle includes,
macros, and several preprocessor commands. While Cppcheck is highly configurable, you can
start using it just by giving it a path to the source code.

OPTIONS


Analyze given C/C++ files for common errors.

--append=<file>
This allows you to provide information about functions by providing an implementation
for these.

--check-config
Check Cppcheck configuration. The normal code analysis is disabled by this flag.

--check-library
Show information messages when library files have incomplete info.

-D<id>
By default Cppcheck checks all configurations. Use -D to limit the checking. When -D
is used the checking is limited to the given configuration. Example: -DDEBUG=1
-D__cplusplus

-U<id>
By default Cppcheck checks all configurations. Use '-U' to explicitly hide certain
#ifdef <id> code paths from checking. Example: '-UDEBUG'

--enable=<id>
Enable additional checks. The available ids are:

all
Enable all checks. It is recommended to only use --enable=all when the whole
program is scanned, because this enables unusedFunction.

warning
Enable warning messages

style
Enable all coding style checks. All messages with the severities 'style',
'performance' and 'portability' are enabled.

performance
Enable performance messages

portability
Enable portability messages

information
Enable information messages

unusedFunction
Check for unused functions. It is recommend to only enable this when the whole
program is scanned

missingInclude
Warn if there are missing includes. For detailed information use --check-config

By default none of the additional checks are enabled. Several ids can be given if you
separate them with commas, e.g. --enable=style,unusedFunction. See also --std

--error-exitcode=<n>
If errors are found, integer <n> is returned instead of default 0. EXIT_FAILURE is
returned if arguments are not valid or if no input files are provided. Note that your
operating system can modify this value, e.g. 256 can become 0.

--errorlist
Print a list of all possible error messages in XML format.

--exitcode-suppressions=<file>
Used when certain messages should be displayed but should not cause a non-zero
exitcode.

--file-list=<file>
Specify the files to check in a text file. One filename per line. When file is -, the
file list will be read from standard input.

-f, --force
Force checking of files that have a lot of configurations. Error is printed if such a
file is found so there is no reason to use this by default. If used together with
--max-configs=, the last option is the one that is effective.

-h, --help
Print help text.

-I <dir>
Give path to search for include files. Give several -I parameters to give several
paths. First given path is searched for contained header files first. If paths are
relative to source files, this is not needed.

--includes-file=<file>
Specify directory paths to search for included header files in a text file. Add one
include path per line. First given path is searched for contained header files first.
If paths are relative to source files, this is not needed.

--config-exclude=<dir>
Path (prefix) to be excluded from configuration checking. Preprocessor configurations
defined in headers (but not sources) matching the prefix will not be considered for
evaluation of configuration alternatives.

--config-exclude-file=<file>
A file that contains a list of config-excludes.

--include=<file>
Force inclusion of a file before the checked file. Can be used for example when
checking the Linux kernel, where autoconf.h needs to be included for every file
compiled. Works the same way as the GCC -include option.

-i <dir>
Give path to ignore. Give several -i parameters to ignore several paths. Give
directory name or filename with path as parameter. Directory name is matched to all
parts of the path.

--inconclusive
Allow that Cppcheck reports even though the analysis is inconclusive. There are false
positives with this option. Each result must be carefully investigated before you know
if it is good or bad.

--inline-suppr
Enable inline suppressions. Use them by placing comments in the form: //
cppcheck-suppress memleak before the line to suppress.

-j <jobs>
Start <jobs> threads to do the checking work.

-l <load>
Specifies that no new threads should be started if there are other threads running and
the load average is at least <load> (ignored on non UNIX-like systems)

--language=<language>
Forces cppcheck to check all files as the given language. Valid values are: c, c++

--library=<cfg>
Use library configuration.

--max-configs=<limit>
Maximum number of configurations to check in a file before skipping it. Default is 12.
If used together with --force, the last option is the one that is effective.

--platform=<type>
Specifies platform specific types and sizes.The available platforms are:

unix32
32 bit unix variant

unix64
64 bit unix variant

win32A
32 bit Windows ASCII character encoding

win32W
32 bit Windows UNICODE character encoding

win64
64 bit Windows

By default the platform which was used to compile Cppcheck is used.

-q, --quiet
Only print something when there is an error.

-rp, -rp=<paths>, --relative-paths;, --relative-paths=<paths>
Use relative paths in output. When given, <paths> are used as base. You can separate
multiple paths by ';'. Otherwise path where source files are searched is used. E.g. if
given value is test, when checking test/test.cpp, the path in output will be test.cpp
instead of test/test.cpp. The feature uses string comparison to create relative paths,
so using e.g. ~ for home folder does not work. It is currently only possible to apply
the base paths to files that are on a lower level in the directory tree.

--report-progress
Report progress when checking a file.

--rule=<rule>
Match regular expression to create your own checks. E.g. rule "/ 0" can be used to
check division by zero. This command is only available if cppcheck was compiled with
HAVE_RULES=yes.

--rule-file=<file>
Use given rule XML file. See https://sourceforge.net/projects/cppcheck/files/Articles/
for more info about the syntax. This command is only available if cppcheck was
compiled with HAVE_RULES=yes.

--std=<id>
Set standard. The available options are:

posix
POSIX compatible code

c89
C code is C89 compatible

c99
C code is C99 compatible

c11
C code is C11 compatible (default)

c++03
C++ code is C++03 compatible

c++11
C++ code is C++11 compatible (default)

Example to set more than one standards: 'cppcheck --std=c99 --std=posix file.cpp'

--suppress=<spec>
Suppress a specific warning. The format of <spec> is: [error id]:[filename]:[line].
The [filename] and [line] are optional. [error id] may be * to suppress all warnings
(for a specified file or files). [filename] may contain the wildcard characters * or
?.

--suppressions-list=<file>
Suppress warnings listed in the file. Each suppression is in the format of <spec>
above.

--template='<text>'
Format the error messages. E.g. '{file}:{line},{severity},{id},{message}' or
'{file}({line}):({severity}) {message}'. Pre-defined templates: gcc, vs

-v, --verbose
More detailed error reports

--version
Print out version information

--xml
Write results in XML to error stream

--xml-version=<version>
Select the XML file version. Currently versions 1 and 2 are available. The default
version is 1.

Use cppcheck online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Phaser
    Phaser
    Phaser is a fast, free, and fun open
    source HTML5 game framework that offers
    WebGL and Canvas rendering across
    desktop and mobile web browsers. Games
    can be co...
    Download Phaser
  • 2
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    and...
    Download VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    a...
    Download OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - System for Automated
    Geoscientific Analyses - is a Geographic
    Information System (GIS) software with
    immense capabilities for geodata
    processing and ana...
    Download SAGA GIS
  • 5
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    you...
    Download D3.js
  • More »

Linux commands

Ad