46
I Use This!
Very High Activity

News

Analyzed about 8 hours ago. based on code collected about 11 hours ago.
Posted almost 11 years ago by Daniel Marjamäki
Cppcheck 1.60.1 has been released. A bug in compiled patterns was fixed.
Posted almost 11 years ago by Daniel Marjamäki
new checks: * dereference iterator and then checking it in condition: 'if (std::isalpha(*i) && i != str.end()) { }' * calling pure virtual function from constructor/destructor * assert() condition calls function with side effects improved ... [More] checking: * improved struct member leaks checking * improved handling of variable initialisation in 'reassignment of variable (first assignment is redundant)' check * better 'Prefer prefix ++/-- operators' checking for iterators * handle more complicated patterns in checkIncorrectStringCompare Lots of false positives and bugs have been fixed. [Less]
Posted about 11 years ago by [email protected] (Daniel Marjamäki)
cppcheck-1.59 has been releasedCommandline/Settings changes: * New option to enable warnings but not style messages: --enable=warning * Cppcheck used to skip includes where the header filename is enclosed in <>. You can now include these ... [More] headers also by using -I. It is still not required to include these headers so feel free to try it and then include the headers that give you the best results. The biggest problem with including many headers is that analysis gets slow.New checks: * New POSIX checks: pipe() buffer size, redundant calls of set/get user id, too big value passed to usleep(), buffer overflow when using write() * Storing getc() return value in char variable and comparing to EOF. * Detect redundant bitand operations * Find suspicious equality comparisons like: if(a == 0) a == 1; * Warn about using malloc() for classes containing virtual methods, std::-objects or constructors * Portability check that warns when using NULL as argument to variadic function. It has undefined behaviour on some implementations.Improvements: * Improved lookup for functions and types * Switched to TinyXml2 as XML library * Improved checking for uninitialized struct members, variable scopes that can be reduced and unused functionsGUI: * Remember last path in open file dialog * Added command line parameter to open a results file * Bug in statistic calculation fixedAdditionally, lots of false positives and bugs have been fixed and several existing checks have been improved. [Less]
Posted about 11 years ago by Daniel Marjamäki
cppcheck-1.59 has been released Commandline/Settings changes: * New option to enable warnings but not style messages: --enable=warning * Cppcheck used to skip includes where the header filename is enclosed in <>. You can now include these ... [More] headers also by using -I. It is still not required to include these headers so feel free to try it and then include the headers that give you the best results. The biggest problem with including many headers is that analysis gets slow. New checks: * New POSIX checks: pipe() buffer size, redundant calls of set/get user id, too big value passed to usleep(), buffer overflow when using write() * Storing getc() return value in char variable and comparing to EOF. * Detect redundant bitand operations * Find suspicious equality comparisons like: if(a == 0) a == 1; * Warn about using malloc() for classes containing virtual methods, std::-objects or constructors * Portability check that warns when using NULL as argument to variadic function. It has undefined behaviour on some implementations. Improvements: * Improved lookup for functions and types * Switched to TinyXml2 as XML library * Improved checking for uninitialized struct members, variable scopes that can be reduced and unused functions GUI: * Remember last path in open file dialog * Added command line parameter to open a results file * Bug in statistic calculation fixed Additionally, lots of false positives and bugs have been fixed and several existing checks have been improved. [Less]
Posted over 11 years ago by [email protected] (Daniel Marjam&#195;&#164;ki)
Cppcheck-1.58 has been released.Commandline/Settings changes:- Added --include to the cppcheck command line client. This forces inclusion of the given file. This can for instance be used instead of --append and will then allow you to use #define etc ... [More] also.- The threads handling has been improved. Using -jN now works in windows also.Improvements:- NULL pointers: Improved checking of default function argument values.For those who compile Cppcheck: you can improve the speed by using compiled patterns.When compiling with the Makefile, use "SRCDIR=build".When compiling with VS you have to manually use the python script to generate the code.Please ask in the chat if you have questions.Additionally, lots of false positives have been fixed. [Less]
Posted over 11 years ago by Daniel Marjamäki
Cppcheck-1.58 has been released. Commandline/Settings changes: - Added --include to the cppcheck command line client. This forces inclusion of the given file. This can for instance be used instead of --append and will then allow you to use #define ... [More] etc also. - The threads handling has been improved. Using -jN now works in windows also. Improvements: - NULL pointers: Improved checking of default function argument values. For those who compile Cppcheck: you can improve the speed by using compiled patterns. When compiling with the Makefile, use "SRCDIR=build". When compiling with VS you have to manually use the python script to generate the code. Please ask in the chat if you have questions. Additionally, lots of false positives have been fixed. [Less]
Posted over 11 years ago by Daniel Marjamäki
Cppcheck-1.57 has been released Commandline/Settings changes: * Support for Java and C# code has been removed. * New option --language= (alias: -x=) to enforce treating code as a specific language Improvements: * Support GCC binary number syntax ... [More] (0b...) * Fixed search order for include paths * Several error messages have been improved to be more understandable and consistent * Rewrote enum parsing * Simplification of well-known math.h functions * Check for variable being assigned a value never used handles now also reassignments * Fixed several false negatives in buffer overrun check * Detect more inadequate comparisons of boolean variables * Better detection of mismatching and assignments and comparisons with bitwise operations New checks: * Check for variables being reassigned a value before the old one has been used * Detect missing copy constructors when class allocates memory * Check for pointer copying when class allocates memory * Detect freeing invalid address GUI: * Added Scratchpad feature * Message Ids can be copied to clipboard (context menu) * Message Ids can optionally be displayed in detailed view and as additional column * Fixed detection of Applications Installer (Windows only) and build environment: * Allow selecting features to install * Cppcheck core is built into .dll and shared between GUI, CLI and testrunner * Increased compression of installer * Switched back to VS10 (from MinGW) * Updated to TinyXML 2.6.2, PCRE 8.31 and Qt 4.8.3 [Less]
Posted over 11 years ago by [email protected] (Daniel Marjam&#195;&#164;ki)
Cppcheck-1.57 has been releasedCommandline/Settings changes: * Support for Java and C# code has been removed. * New option --language= (alias: -x=) to enforce treating code as a specific language Improvements: * Support GCC binary number syntax ... [More] (0b...) * Fixed search order for include paths * Several error messages have been improved to be more understandable and consistent * Rewrote enum parsing * Simplification of well-known math.h functions * Check for variable being assigned a value never used handles now also reassignments * Fixed several false negatives in buffer overrun check * Detect more inadequate comparisons of boolean variables * Better detection of mismatching and assignments and comparisons with bitwise operations New checks: * Check for variables being reassigned a value before the old one has been used * Detect missing copy constructors when class allocates memory * Check for pointer copying when class allocates memory * Detect freeing invalid address GUI: * Added Scratchpad feature * Message Ids can be copied to clipboard (context menu) * Message Ids can optionally be displayed in detailed view and as additional column * Fixed detection of Applications Installer (Windows only) and build environment: * Allow selecting features to install * Cppcheck core is built into .dll and shared between GUI, CLI and testrunner * Increased compression of installer * Switched back to VS10 (from MinGW) * Updated to TinyXML 2.6.2, PCRE 8.31 and Qt 4.8.3 [Less]
Posted over 11 years ago by [email protected] (Daniel Marjam&#195;&#164;ki)
Cppcheck-1.56 has been released.Commandline/Settings changes:- Code is considered to be C++11 or C11 compatible by default, added new standards to --std= option: c89, c11, c++03- '--inconclusive' has been made "official" and shown in help ... [More] dialogImprovements:- Uninstanciated templates are no longer removed from token list- Support 'using namespace std;' - 'std ::' added to C++ standard library types when 'using namespace std;' is found- Several error messages have been improved to be more understandable and consistent- Checking of preprocessor configurations that are considered invalid, because the macro used in #if is also used in the code, is now skipped.New checks:- Detect incomplete array fill with memcpy/memset/memmove (inconclusive check)- Detect ineffective statememts like '*foo++;'- Check for negative right operand passed to shift operator- Detect comparison of char* variable with string literal- Check for return value of std::remove() and container.empty() being used- Detect member functions that can be declared static- Detect const variables that can be made a const referenceGUI:- Korean translation addedAdditionally, lots of false positives have been fixed and several existing checks have been improved. [Less]
Posted over 11 years ago by Daniel Marjamäki
Cppcheck-1.56 has been released. Commandline/Settings changes: - Code is considered to be C++11 or C11 compatible by default, added new standards to --std= option: c89, c11, c++03 - '--inconclusive' has been made "official" and shown in help dialog ... [More] Improvements: - Uninstanciated templates are no longer removed from token list - Support 'using namespace std;' - 'std ::' added to C++ standard library types when 'using namespace std;' is found - Several error messages have been improved to be more understandable and consistent - Checking of preprocessor configurations that are considered invalid, because the macro used in #if is also used in the code, is now skipped. New checks: - Detect incomplete array fill with memcpy/memset/memmove (inconclusive check) - Detect ineffective statememts like '*foo++;' - Check for negative right operand passed to shift operator - Detect comparison of char* variable with string literal - Check for return value of std::remove() and container.empty() being used - Detect member functions that can be declared static - Detect const variables that can be made a const reference GUI: - Korean translation added Additionally, lots of false positives have been fixed and several existing checks have been improved. [Less]