cppcheck / News: Recent posts

cppcheck-1.44

Interface:
* command line: a -D command was added
* GUI: minor updates

New checks:
* (style) Redundant assignment (missing break in a switch block)
* (style) Empty catch blocks
* (error) Usage of iterator pointing to invalid memory after reserve
* (error) Detect common realloc-mistake that can cause memory leaks.

Improved checks:
* Memory leaks
* Buffer overruns
* Mismatching allocation / deallocation
* Bad iterators
* Uninitialized variables
* Null pointer dereference
* Unused variable

Posted by Daniel Marjamäki 2010-07-10

cppcheck-1.43

This release has many fixes and enhancements.

We deprecated the inconclusive checks. The "possible error" and "possible style" are not available anymore. From now on we will only work on fully conclusive checks.

Command line:
* Since we removed all inconclusive results, the "--all", "-a" and "--auto-dealloc" are deprecated. These flags can still be given but they don't have any effect.... read more

Posted by Daniel Marjamäki 2010-05-08

cppcheck-1.42

Another hotfix release. This is more properly made than 1.41-2. With proper tagging and updating of all version numbers. But it has the same hotfix as 1.41-2

Posted by Daniel Marjamäki 2010-03-09

cppcheck-1.41-2

A hotfix release

Posted by Daniel Marjamäki 2010-03-09

cppcheck-1.41

This release has many bug fixes and minor improvements.

Command line:
* You can now specify files to check through a file instead of through command line

New checks:
* simple checking of function constness
* readded check for unused variable
* duplicate typedefs
* STL: suspicious condition when checking result of find

Core improvements:
* rewrote a few error messages, to make them easier to understand
* better handling of pointer aliasing
* improved handling of templates
* various improvements in the leaks checking
* many improvements in the enum handling
* improved handling of typedefs
* more checking for suspicious pointer arithmetic... read more

Posted by Daniel Marjamäki 2010-03-07

Cppcheck-1.40

Cppcheck-1.40 was released today

New checks:
* new style check: assignment operator does not return *this
* new style check: passing negative size to memset, etc
* new performance check: use empty() instead of checking size() against zero

Rewritten checks:
* rewrote the checking for null pointers
* rewrote the checking for uninitialized variables

Improved checks:
* improved the checking for invalid usage of auto variables
* improved the checking for leaks
* fixed a few checks so they don't bail out when finding an error - the checking continues and more errors may be detected.
* rewrote various error messages to make them easier to understand... read more

Posted by Daniel Marjamäki 2010-01-17

cppcheck-1.40 delayed

Cppcheck-1.40 will not be released tomorrow as planned.

It will probably be released next weekend instead, on January 17th.

The reason for the delay is to allow us to make more improvements.

Posted by Daniel Marjamäki 2010-01-09

cppcheck-1.39

Cppcheck 1.39 was released today.

Many fixes, refactorings and improvements.

New features:
* new flag --enable that you'll use to enable various checks. The --all and --style are deprecated
* check for uninitialized variable
* check for exception safety problems
* more checking of STL iterators

Posted by Daniel Marjamäki 2009-12-06

cppcheck-1.39 delay

cppcheck-1.39 was planned to be released today.

But it is delayed. It will instead be released on december 6th.

Posted by Daniel Marjamäki 2009-11-29

cppcheck-1.37 (bug fixes)

quick release to fix a few bad bugs.

Posted by Daniel Marjamäki 2009-09-22

cppcheck-1.36

Version 1.36 has been released. This new version have many bug fixes for false positives, segmentation faults, etc. We have made many improvements to the handling of C/C++ code which means the checks is stronger.

Posted by Daniel Marjamäki 2009-09-20

cppcheck-1.36

Version 1.36 has been released. This new version have many bug fixes for false positives, segmentation faults, etc. We have made many improvements to the handling of C/C++ code which means the checks is stronger.

Posted by Daniel Marjamäki 2009-09-20

cppcheck-1.35

cppcheck-1.35 has been released.

Changed output:
* Renamed the severity "all" to "possible error"
* Renamed the severity "all style" to "possible style"
* Removed the severity "security"

New checks:
* invalid deallocation
* memory leaks for struct members
* Using postincrement when preincrement would be better

Improved checks:
* dereferencing null pointers
* resource leaks
* c-style pointer cast
* buffer overrun
* dereferencing iterator after using erase... read more

Posted by Daniel Marjamäki 2009-08-16

cppcheck-1.33

The biggest news is that we now have a GUI.
It is Qt based and should therefore build on any platform.
For Windows users the GUI is available in the installation program.

We have also made many improvements in the checking.

Posted by Daniel Marjamäki 2009-06-07

cppcheck-1.32

New checks:
* STL: iterators and pointers are invalidated after erase
* STL: iterators may be invalidated by push_back and push_front when using vectors
* STL: range checking iterators with <

Fixed bugs:
* Fixed many false positives
* Fixed bugs in the handling of templates

Posted by Daniel Marjamäki 2009-05-10

100 found bugs

More than 100 real bugs have been discovered by cppcheck in various open source projects (22 bugs were discovered in the Linux Kernel).
All these bugs have been reported and are now fixed.

Cppcheck is an open source tool for statically checking C and C++ code for coding mistakes.
Cppcheck is under rapid development, constantly adding new checks while keeping the amount of false positives low.
Noise ratio is so low that a single person can easily check for example the Linux kernel with it in one night.... read more

Posted by Daniel Marjamäki 2009-04-24

cppcheck-1.31

Finally cppcheck-1.31 has been released.

We planned to release it on april 5th but there was a 1 week delay.

The release notes:
- Bug fix: Fix some false positives
- Bug fix: Fix invalid line numbers in error messages.
- Bug fix: Uninitialized variable checking was improved.
- Bug fix: All checks are more accurate due to several bug fixes in core functionality.
- Bug fix: "Unused function" error message output was fixed.
- Bug fix: Headers within header files where sometimes searched from wrong relative path.
- Bug fix: Better handling of floating point arithmetics.
- Improvement: Some new memory leaks are now detected.
- Improvement: Implemented support for template functions.
- Improvement: Implemented primitive support for namespaces.
- Improvement: Changed "####### There is a bug in preprocessor.cpp" error into more informative and skip only one file, instead of terminating program.
- Improvement: buffer overrun with dynamic memory (e.g. new char[10])
- New check: auto variable address
- New check: "The size argument is given as a char constant"
- New check: Division by zero

Posted by Daniel Marjamäki 2009-04-12

cppcheck-1.30

A few bugs were discovered in 1.29 that we wanted to fix and release immediately.
* Segmentation fault
* Compiler error

Other fixes/enhancements:
* suppress errors about memory leaks for classes that are automaticly deallocated (through "--auto-dealloc")
* Added option for controlling exit value (through "--error-exitcode")
* Added command line option "--version"
* better handling of __asm code blocks
* fixed false positives about unused private functions
* fixed false positives about memory leaks
* fixed wrong line numbers in error messages

Posted by Daniel Marjamäki 2009-03-08

cppcheck-1.30 is coming soon

We will release 1.30 soon, probably on sunday evening.

It contains bug fixes that we want to release quickly (segmentation faults & compiler errors).

Posted by Daniel Marjamäki 2009-03-06

Cppcheck moves to git

Cppcheck has now moved from svn to git.

Latest version can be found in the git
git clone git://github.com/danmar/cppcheck.git

Github homepage:
http://github.com/danmar/cppcheck/

Posted by Reijo Tomperi 2009-03-05

cppcheck-1.29

cppcheck-1.29 has been released. We fixed 50 tickets (27 defects and 23 enhancements).

Posted by Daniel Marjamäki 2009-03-02

cppcheck-1.28

There has been various fixes and improvements.

Command line:
* Now you can specify extra include directories through "-I"
* Preliminary xml output through --xml-results. This will be improved further.
* The return value of cppcheck is 0 only if no errors are found. When errors are found EXIT_FAILURE is returned.
* Added support for .C and .c++ files

New checks:
* sprintf - using overlapping data in input and output
* usage of a freed pointer
* freeing a pointer that has already been freed
* string pointer arithmetic: .. = "abc" + 'd'; => .. = "abc" + (int)'d';
* mktemp can be dangerous... read more

Posted by Daniel Marjamäki 2009-02-01

Cppcheck moves to Track and phpBB

We have moved all open feature requests and bug requests to new track ( https://apps.sourceforge.net/trac/cppcheck/report/1 ). If you have any bug reports, feature requests or you would like to submit patches, please use the track.

Forums are moved to phpBB, but old posts are not transferred: http://apps.sourceforge.net/phpbb/cppcheck/

Posted by Reijo Tomperi 2009-01-17

cppcheck-1.27

Version 1.27 has now been released.

A new C++ check was added that detects when a base class has a non-virtual destructor

The command line options have changed.
* --recursive was removed
* --errorsonly was renamed to --quiet
* --force was added

Improvements in the core functionality that makes the checks more accurate.

Many small updates in the memory leak checking.

Posted by Daniel Marjamäki 2008-12-30

c++check 1.26

Version 1.26 was released today

It has many fixes, making the checking both more sensitive and more accurate.

In short:

* Major restructuring and refactoring were made by Aggro

* Buffer overruns: moved recursive checking to "--all" because there were false positives

* Buffer overruns: fixed false positive (get pointer to data beyond array is not wrong)

* Memory leaks: Recursive checking * Memory leaks: Fixed a number of issues in the tracker... read more

Posted by Daniel Marjamäki 2008-11-30