Accepting request 577725 from home:alois:branches:devel:tools
- Update to version 1.82 Bug fixes: * Better handling of namespaces * Fixed false positives * Fixed parsing of compile databases * Fixed parsing of visual studio projects Enhancements * New check; Detect mistakes when there are multiple strcmp() in condition Example: if (strcmp(password,"A")==0 || strcmp(password,"B")==0 || strcmp(password,"C")) There is a missing '==0', and therefore this condition is always true except when password is "C". * New check; pointer calculation result can't be NULL unless there is overflow Example: someType **list_p = ...; if ((list_p + 1) == NULL) The result for '(list_p + 1)' can't be NULL unless there is overflow (UB). * New check; public interface of classes should be safe - detect possible division by zero Example: class Fred { public: void setValue(int mul, int div) { value = mul / div; // <- unsafe } ... This check does not consider how Fred::setValue() is really called. If you agree that the public interface of classes should always be safe; it should be allowed to call all public methods with arbitrary arguments, then this checker will be useful. * Fixed a few false negatives * More information in the cfg files version 1.81 CPPCHECK: * New warning: Check if condition after an early return is overlapping and therefore always false. * Improved knowledge about C/C++ standard, windows, posix, wxwidgets, gnu * Better handling of Visual Studio projects GUI: * Compile: Qt5 is now needed to build the GUI * Compile: New qmake flag HAVE_QCHART * Project: You can now run cppcheck-addons * Project: We have integrated clang-tidy * Results view: Reload last results (if cppcheck build dir is used) when GUI is started * Results view: Tag the warnings with custom keywords (bug/todo/not important/etc..) * Results view: Shows when warning first appeared (since date) * Results view: Suppress warnings through right-click menu * Statistics: Added charts (shown if Qt charts module is enabled during build) version 1.80 Checking improvements: * Added platform for Atmel AVR 8 bit microcontrollers (avr8) * Better 'callstacks' in cppcheck messages * Improved gnu.cfg, posix.cfg, wxwidgets.cfg and std.cfg, added motif.cfg * Various improvements to AST, ValueFlow analysis and template parsing Command line changes: * Deprecated command line argument *-append has been removed * New command line argument *-plist-output to create .plist files * New command line argument *-output-file to print output to file directly * Check OpenCL files (.cl) GUI: * Support export of statistics to PDF * Several small usability improvements * Additionally, lots of false positives and bugs have been fixed and several existing checks have been improved. version 1.79 General changes: * C++ code in C files is rejected now (use *-language=c++ to enforce checking the code as C++) * Write function access type to XML dump Checking improvements: * Improved configuration extraction in preprocessor * Improved accuracy of AST * Improved template parsing * Improved support for (STL) containers in SymbolDatabase * Improved support for C++11's 'auto' type * Experimental support for uninitialized variables in ValueFlow analysis * Added qt.cfg and sfml.cfg, improved several existing .cfg files GUI: * Use CFGDIR macro * Additionally, lots of false positives and bugs have been fixed and several existing checks have been improved. version 1.78 General changes: * Reduced memory usage by up to 10% by reducing size of token list New checks: * Mismatching argument names between function declaration and definition * Detect classes which have a copy constructor but no copy operator and vice versa Checking improvements: * Improved matching of overloaded functions * Improved ValueType analysis, especially related to allocations with "new" and C++11's "auto" * Improved support for C++11 brace initialization * Improved ValueFlow analysis * Improved template parsing * Improved detection of memory leaks * Improved nullpointer checking when nullptr and NULL are used * Detect array out of bounds across compilation units * Extended windows.cfg, posix.cfg and std.cfg * Additionally, lots of false positives and bugs have been fixed and several existing checks have been improved. OBS-URL: https://build.opensuse.org/request/show/577725 OBS-URL: https://build.opensuse.org/package/show/devel:tools/cppcheck?expand=0&rev=51
This commit is contained in:
parent
6a5a5d2aa5
commit
74717428cf
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:1980ffe5c9c24bb6dea24514d42be3aa49d6ba7cc26c448b3543611fe8ba2619
|
|
||||||
size 1188453
|
|
3
cppcheck-1.82.tar.bz2
Normal file
3
cppcheck-1.82.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e02b29d18eaa38bed19e80dcf59b06d450d5e20c30732d6bad64af9ea58d694e
|
||||||
|
size 1548635
|
128
cppcheck.changes
128
cppcheck.changes
@ -1,3 +1,131 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Feb 18 10:40:07 UTC 2018 - aloisio@gmx.com
|
||||||
|
|
||||||
|
- Update to version 1.82
|
||||||
|
Bug fixes:
|
||||||
|
* Better handling of namespaces
|
||||||
|
* Fixed false positives
|
||||||
|
* Fixed parsing of compile databases
|
||||||
|
* Fixed parsing of visual studio projects
|
||||||
|
Enhancements
|
||||||
|
* New check; Detect mistakes when there are multiple strcmp() in
|
||||||
|
condition
|
||||||
|
Example:
|
||||||
|
if (strcmp(password,"A")==0 || strcmp(password,"B")==0 || strcmp(password,"C"))
|
||||||
|
There is a missing '==0', and therefore this condition is
|
||||||
|
always true except when password is "C".
|
||||||
|
* New check; pointer calculation result can't be NULL unless
|
||||||
|
there is overflow
|
||||||
|
Example:
|
||||||
|
someType **list_p = ...;
|
||||||
|
if ((list_p + 1) == NULL)
|
||||||
|
The result for '(list_p + 1)' can't be NULL unless there is
|
||||||
|
overflow (UB).
|
||||||
|
* New check; public interface of classes should be safe - detect
|
||||||
|
possible division by zero
|
||||||
|
Example:
|
||||||
|
class Fred {
|
||||||
|
public:
|
||||||
|
void setValue(int mul, int div) {
|
||||||
|
value = mul / div; // <- unsafe
|
||||||
|
}
|
||||||
|
...
|
||||||
|
This check does not consider how Fred::setValue() is really
|
||||||
|
called.
|
||||||
|
If you agree that the public interface of classes should
|
||||||
|
always be safe; it should be allowed to call all public
|
||||||
|
methods with arbitrary arguments, then this checker will be
|
||||||
|
useful.
|
||||||
|
* Fixed a few false negatives
|
||||||
|
* More information in the cfg files
|
||||||
|
|
||||||
|
version 1.81
|
||||||
|
CPPCHECK:
|
||||||
|
* New warning: Check if condition after an early return is
|
||||||
|
overlapping and therefore always false.
|
||||||
|
* Improved knowledge about C/C++ standard, windows, posix,
|
||||||
|
wxwidgets, gnu
|
||||||
|
* Better handling of Visual Studio projects
|
||||||
|
GUI:
|
||||||
|
* Compile: Qt5 is now needed to build the GUI
|
||||||
|
* Compile: New qmake flag HAVE_QCHART
|
||||||
|
* Project: You can now run cppcheck-addons
|
||||||
|
* Project: We have integrated clang-tidy
|
||||||
|
* Results view: Reload last results (if cppcheck build dir is
|
||||||
|
used) when GUI is started
|
||||||
|
* Results view: Tag the warnings with custom keywords
|
||||||
|
(bug/todo/not important/etc..)
|
||||||
|
* Results view: Shows when warning first appeared (since date)
|
||||||
|
* Results view: Suppress warnings through right-click menu
|
||||||
|
* Statistics: Added charts (shown if Qt charts module is enabled
|
||||||
|
during build)
|
||||||
|
|
||||||
|
version 1.80
|
||||||
|
Checking improvements:
|
||||||
|
* Added platform for Atmel AVR 8 bit microcontrollers (avr8)
|
||||||
|
* Better 'callstacks' in cppcheck messages
|
||||||
|
* Improved gnu.cfg, posix.cfg, wxwidgets.cfg and std.cfg, added
|
||||||
|
motif.cfg
|
||||||
|
* Various improvements to AST, ValueFlow analysis and template
|
||||||
|
parsing
|
||||||
|
Command line changes:
|
||||||
|
* Deprecated command line argument *-append has been removed
|
||||||
|
* New command line argument *-plist-output to create .plist
|
||||||
|
files
|
||||||
|
* New command line argument *-output-file to print output to
|
||||||
|
file directly
|
||||||
|
* Check OpenCL files (.cl)
|
||||||
|
GUI:
|
||||||
|
* Support export of statistics to PDF
|
||||||
|
* Several small usability improvements
|
||||||
|
|
||||||
|
* Additionally, lots of false positives and bugs have been fixed
|
||||||
|
and several existing checks have been improved.
|
||||||
|
|
||||||
|
version 1.79
|
||||||
|
General changes:
|
||||||
|
* C++ code in C files is rejected now (use *-language=c++ to
|
||||||
|
enforce checking the code as C++)
|
||||||
|
* Write function access type to XML dump
|
||||||
|
Checking improvements:
|
||||||
|
* Improved configuration extraction in preprocessor
|
||||||
|
* Improved accuracy of AST
|
||||||
|
* Improved template parsing
|
||||||
|
* Improved support for (STL) containers in SymbolDatabase
|
||||||
|
* Improved support for C++11's 'auto' type
|
||||||
|
* Experimental support for uninitialized variables in ValueFlow
|
||||||
|
analysis
|
||||||
|
* Added qt.cfg and sfml.cfg, improved several existing .cfg files
|
||||||
|
GUI:
|
||||||
|
* Use CFGDIR macro
|
||||||
|
|
||||||
|
* Additionally, lots of false positives and bugs have been fixed
|
||||||
|
and several existing checks have been improved.
|
||||||
|
|
||||||
|
version 1.78
|
||||||
|
General changes:
|
||||||
|
* Reduced memory usage by up to 10% by reducing size of token
|
||||||
|
list
|
||||||
|
New checks:
|
||||||
|
* Mismatching argument names between function declaration and
|
||||||
|
definition
|
||||||
|
* Detect classes which have a copy constructor but no copy
|
||||||
|
operator and vice versa
|
||||||
|
Checking improvements:
|
||||||
|
* Improved matching of overloaded functions
|
||||||
|
* Improved ValueType analysis, especially related to allocations
|
||||||
|
with "new" and C++11's "auto"
|
||||||
|
* Improved support for C++11 brace initialization
|
||||||
|
* Improved ValueFlow analysis
|
||||||
|
* Improved template parsing
|
||||||
|
* Improved detection of memory leaks
|
||||||
|
* Improved nullpointer checking when nullptr and NULL are used
|
||||||
|
* Detect array out of bounds across compilation units
|
||||||
|
* Extended windows.cfg, posix.cfg and std.cfg
|
||||||
|
|
||||||
|
* Additionally, lots of false positives and bugs have been fixed
|
||||||
|
and several existing checks have been improved.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Mar 21 10:28:21 UTC 2017 - mpluskal@suse.com
|
Tue Mar 21 10:28:21 UTC 2017 - mpluskal@suse.com
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package cppcheck
|
# spec file for package cppcheck
|
||||||
#
|
#
|
||||||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -17,13 +17,13 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: cppcheck
|
Name: cppcheck
|
||||||
Version: 1.77
|
Version: 1.82
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: A tool for static C/C++ code analysis
|
Summary: A tool for static C/C++ code analysis
|
||||||
License: GPL-3.0+
|
License: GPL-3.0+
|
||||||
Group: Development/Languages/C and C++
|
Group: Development/Languages/C and C++
|
||||||
Url: http://cppcheck.sourceforge.net/
|
URL: http://cppcheck.sourceforge.net/
|
||||||
Source: http://downloads.sourceforge.net/cppcheck/cppcheck-%{version}.tar.bz2
|
Source: https://downloads.sourceforge.net/cppcheck/cppcheck-%{version}.tar.bz2
|
||||||
BuildRequires: docbook-xsl-stylesheets
|
BuildRequires: docbook-xsl-stylesheets
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
BuildRequires: pcre-devel
|
BuildRequires: pcre-devel
|
||||||
@ -103,15 +103,14 @@ install -d %{buildroot}%{_datadir}/%{name}
|
|||||||
install -m 0644 cfg/*.cfg %{buildroot}%{_datadir}/%{name}
|
install -m 0644 cfg/*.cfg %{buildroot}%{_datadir}/%{name}
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%doc AUTHORS
|
||||||
%doc AUTHORS COPYING
|
%license COPYING
|
||||||
%{_bindir}/cppcheck
|
%{_bindir}/cppcheck
|
||||||
%{_bindir}/cppcheck-htmlreport
|
%{_bindir}/cppcheck-htmlreport
|
||||||
%{_datadir}/%{name}/
|
%{_datadir}/%{name}/
|
||||||
%{_mandir}/man1/cppcheck.1*
|
%{_mandir}/man1/cppcheck.1*
|
||||||
|
|
||||||
%files gui
|
%files gui
|
||||||
%defattr(-,root,root)
|
|
||||||
%{_bindir}/cppcheck-gui
|
%{_bindir}/cppcheck-gui
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
Loading…
Reference in New Issue
Block a user