35d94c26d5
-> With Token::scope() it is possible to access the symboldatabase without having to call getSymbolDatabase(). The change increases safety because it is guaranteed that the database is available in all checks, even if the specific check doesn't call getSymbolDatabase - Tokenizer::_symbolDatabase does no longer have to be mutable -> Increased const correctness The change above required two additional changes: - A bug causing a debug message was fixed in the symboldatabase that became visible in the test suite by the change above. - Simplify expressions like "struct struct Foo" which might be result of typedef instanciation. |
||
---|---|---|
Cppcheck.xcodeproj | ||
cli | ||
democlient | ||
externals/tinyxml | ||
gui | ||
htdocs | ||
htmlreport | ||
lib | ||
man | ||
rules | ||
samples | ||
test | ||
tools | ||
win_installer | ||
.gitignore | ||
AUTHORS | ||
COPYING | ||
Changelog | ||
Makefile | ||
build-pcre.txt | ||
build.bat | ||
console_common.pri | ||
cppcheck.cbp | ||
cppcheck.cppcheck | ||
cppcheck.sln | ||
cppcheck_vs2010.sln | ||
createrelease | ||
doxyfile | ||
generate_coverage_report | ||
readme.md | ||
readme.txt | ||
readme_64-bit_Windows.txt | ||
readme_gui.txt | ||
runastyle | ||
runastyle.bat | ||
webreport.sh |
readme.md
Cppcheck
Donations
Donations
If you find Cppcheck useful for you, feel free to make a donation.
About the name
The original name of this program is "C++check" but it was later changed to "cppcheck".
Despite the name, Cppcheck is designed for both C and C++.
Manual
A manual is available online: http://cppcheck.sf.net/manual.pdf
Compiling
Any C++ compiler should work.
To build the GUI, you need Qt.
When building the command line tool, PCRE is normally used. PCRE is optional.
There are multiple compilation choices:
- qmake - cross platform build tool
- Windows: Visual Studio
- Windows: Qt Creator + mingw
- gnu make
- g++
qmake
You can use the gui/gui.pro file to build the GUI.
cd gui
qmake
make
Visual Studio
Use the cppcheck.sln file. The rules are normally enabled.
To compile with rules (pcre dependency):
- the pcre dll is needed. it can be downloaded from: http://cppcheck.sf.net/pcre-8.10-vs.zip
To compile without rules (no dependencies):
- remove the preprocessor define HAVE_RULES from the project
- remove the pcre.lib from the project
Qt Creator + mingw
The PCRE dll is needed to build the CLI. It can be downloaded here: http://software-download.name/pcre-library-windows/
gnu make
To build Cppcheck with rules (pcre dependency):
make HAVE_RULES=yes
To build Cppcheck without rules (no dependencies):
make
g++ (for experts)
If you just want to build Cppcheck without dependencies then you can use this command:
g++ -o cppcheck -Ilib cli/*.cpp lib/*.cpp
If you want to use --rule and --rule-file then dependencies are needed:
g++ -o cppcheck -lpcre -DHAVE_RULES -Ilib -Iexternals cli/*.cpp lib/*.cpp externals/tinyxml/*.cpp
mingw
make LDFLAGS=-lshlwapi
Cross compiling Win32 (CLI) version of Cppcheck in Linux
sudo apt-get install mingw32
make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi"
mv cppcheck cppcheck.exe