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:
OBS User mrdocs 2018-02-19 03:33:22 +00:00 committed by Git OBS Bridge
parent 6a5a5d2aa5
commit 74717428cf
4 changed files with 137 additions and 10 deletions

View File

@ -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
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e02b29d18eaa38bed19e80dcf59b06d450d5e20c30732d6bad64af9ea58d694e
size 1548635

View File

@ -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

View File

@ -1,7 +1,7 @@
#
# 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
# remain the property of their copyright owners, unless otherwise agreed
@ -17,13 +17,13 @@
Name: cppcheck
Version: 1.77
Version: 1.82
Release: 0
Summary: A tool for static C/C++ code analysis
License: GPL-3.0+
Group: Development/Languages/C and C++
Url: http://cppcheck.sourceforge.net/
Source: http://downloads.sourceforge.net/cppcheck/cppcheck-%{version}.tar.bz2
URL: http://cppcheck.sourceforge.net/
Source: https://downloads.sourceforge.net/cppcheck/cppcheck-%{version}.tar.bz2
BuildRequires: docbook-xsl-stylesheets
BuildRequires: gcc-c++
BuildRequires: pcre-devel
@ -103,15 +103,14 @@ install -d %{buildroot}%{_datadir}/%{name}
install -m 0644 cfg/*.cfg %{buildroot}%{_datadir}/%{name}
%files
%defattr(-,root,root)
%doc AUTHORS COPYING
%doc AUTHORS
%license COPYING
%{_bindir}/cppcheck
%{_bindir}/cppcheck-htmlreport
%{_datadir}/%{name}/
%{_mandir}/man1/cppcheck.1*
%files gui
%defattr(-,root,root)
%{_bindir}/cppcheck-gui
%changelog