Cppcheck

Cppcheck
Original author(s) Daniel Marjamäki
Initial release May 8, 2007 (2007-05-08)
Stable release
1.76 / October 8, 2016 (2016-10-08)
Repository github.com/danmar/cppcheck.git
Development status Active
Written in C++
Operating system Cross-platform
Available in English, Dutch, Finnish, Swedish, German, Russian, Polish, Japanese, Serbian
Type Static code analysis
License GNU General Public License
Website cppcheck.sourceforge.net

Cppcheck is a static code analysis tool for the C and C++ programming languages. It is a versatile tool that can check non-standard code.[1] The creator and lead developer is Daniel Marjamäki.

Cppcheck is free software under the GNU General Public License.

Features

Cppcheck supports a wide variety of static checks that may not be covered by the compiler itself. These checks are static analysis checks that can be performed at a source code level. The program is directed towards static analysis checks that are rigorous, rather than heuristic in nature.

Some of the checks that are supported include:

As with many analysis programs, there are many unusual cases of programming idioms which may be acceptable in particular target cases, or outside of the programmer's scope for source code correction. A study conducted in March 2009 identified several areas where false positives were found by cppcheck, but did not specify the program version examined.[3] Cppcheck has been identified for use in systems such as CERNs 4DSOFT meta analysis package,[4] for code verification in high energy particle detector readout devices,[5] system monitoring software for radio telescopes[6] as well as in error analysis of large projects, such as OpenOffice.org[7] and the Debian archive.[8]

Development

The project is actively under development[9] and is actively maintained in different distributions.[10][11] It has found valid bugs in a number of popular projects[12] such as the Linux kernel and MPlayer.[13]

Plugins

Plugins for the following IDEs exist[14]

Visual Studio integration

The commercial third-party Add-In Visual Lint by British company Riverblade can be used to integrate CppCheck in Visual Studio.[23] There is also an open source plugin cppcheck-vs-addin[24] available. It is also possible to add Cppcheck as an external tool.[25]

See also

References

  1. ↑ "A Survey of C and C++ Software Tools for Computational Science" (PDF). Science and Technologies Facility Council. Chilbolton, Daresbury, and Rutherford Appleton Laboratories. December 2009. p. 14. Retrieved 14 September 2010.
  2. ↑ http://www.opengroup.org/onlinepubs/9699919799/xrat/V4_xsh_chap03.html
  3. ↑ "Static Code Analysis For Embedded Systems" (PDF).
  4. ↑ "Dissemination and use of knowledge plan (EU Deliverable DNA2.11" (PDF). 2010.
  5. ↑ "Entwurf und Implementierung eines adaptiven, strahlentoleranten eingebetteten Systems am Beispiel eines Read-Out-Controllers (En: Development and implementation of an adaptive, radiation tolerant embedded system for operation of a Read-Out controller)" (PDF). 2010.
  6. ↑ "The Wettzell System Monitoring Concept and First Realizations" (PDF). International VLBI Service for Geodesy & Astrometry. 2010. p. 447.
  7. ↑ "Hunting for vulnerabilities in large software : the OpenOffice suite" (PDF).
  8. ↑ "Introducing the "Debian's Automated Code Analysis" (DACA) project". LWN.net.
  9. ↑ Cppcheck on Github
  10. ↑ Cppcheck on Debian's Package Tracking System
  11. ↑ FreeBSD port
  12. ↑ "List of user reported bugs found by cppcheck".
  13. ↑ "Found Bugs list". SourceForge. Archived from the original on 2013-10-14.
  14. ↑ "SourceForge.net: cppcheck". sourceforge.net.
  15. ↑ "cppcheck plugin for CLion". plugins.jetbrains.com.
  16. ↑ "Cppcheclipse". googlecode.com.
  17. ↑ "Flycheck". github.com.
  18. ↑ "gedit Cppcheck plugin". github.com.
  19. ↑ "Cppcheck Plugin". hudson-ci.org.
  20. ↑ "Cppcheck Plugin". jenkins-ci.org.
  21. ↑ "Sublimelinter plugin". github.com.
  22. ↑ "Yasca". scovetta.com.
  23. ↑ Riverblade. "Visual Lint homepage". Retrieved 11 December 2012.
  24. ↑ VioletGiraffe. "Homepage cppcheck-vs-addin". Retrieved 3 March 2014.
  25. ↑ Srix. "Simple open source static analysis tool for Visual Studio". Archived from the original on 2015-02-10. Retrieved 27 August 2012.

External links

This article is issued from Wikipedia - version of the 11/1/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.