18612 Commits

Author SHA1 Message Date
rikardfalkeborn
c9f768a915 donate_cpu: use https url (#1429)
Avoids git printing a warning about redirecting to https every time
the clone command is issued. The warning was:

    warning: redirecting to https://github.com/danmar/cppcheck.git/
2018-10-17 06:14:06 +02:00
Matthias Krüger
df32b0fb05 travis: reenable llvm and clang checks 2018-10-16 22:01:52 +02:00
Daniel Marjamäki
1245a036f7 Add check for shadow variables 2018-10-16 20:17:27 +02:00
rikardfalkeborn
f1074ea1ab Fix false positive: Invalid string argument with pointer to pointer (#1427)
If the address is taken inside an array, the address is not of a single
character, so do not warn about this.
2018-10-16 06:54:25 +02:00
IOBYTE
290563b964 Fix specialized template regression. (#1425)
* Fix specialized template regression.

Only check for instantiation of template being processed rather than
count of all instantiations.

* Add 2 more tests.
2018-10-15 19:35:26 +02:00
Daniel Marjamäki
f72847530e Donate CPU: make server more robust when latest results are missing 2018-10-15 11:01:51 +02:00
orbitcowboy
a6e8270474
insecureCmdLineArgs: Fixed false negatives in case arguments are const. (#1419)
* insecureCmdLineArgs: Fixed false negatives in case arguments are const.

* Formatted the code, there are functional changes.

* Simplified matching as suggested by Daniel.
2018-10-15 10:05:43 +02:00
rikardfalkeborn
613dc19b68 #4241: Check for address of single character passed as string (#1381)
* #4241: Check for address of single character passed as string

Add a check that address of a single character is not passed as argument
to argument marked as strings (using strz). The check does not warn if
the address of a character with known value '\0'.

Since ValueFlow currently does not handle global constants (see #7597),
do not warn if the variable is global to avoid FPs when the address of
a global variable assigned to '\0' is passed to a function expecting a
string.

Remove comment in docs saying strz is unused.

* Change asdf to Hello world

* Add test of address to first element in string

* Add error reporting function to getErrorMessages

* Fix strings in test
2018-10-14 18:49:34 +02:00
IOBYTE
0a30768b59 Fixed #8693 (Template specialization: Constructor detected as normal … (#1418)
* Fixed #8693 (Template specialization: Constructor detected as normal function (functionStatic error))

Refactor template simplifier to remove the existing full specialization
function expandSpecialized and allow full specializations to use the
existing function expandTemplate.  The function expandTemplate was
modified to either expand the template like it originally did by copying
it or to modify the template in place.  Both instantiated and
uninstantiated full specializations are modified in place.  This also
fixes #8692 and probably other related tickets as well.

The function simplifyTemplates now tries twice to simplify templates so
more templates can be simplified.  We should try as many times as
necessary to find all possible templates.  We can't do that now because
uninstantiated templates are left unchanged.  It is relatively straight
forward to have the new code also expand in place uninstantiated
templates with their symbolic types but namespaces are not handled
properly (ticket #8671) and it would introduce regressions.

* Fix travis warnings.
2018-10-14 16:57:07 +02:00
Daniel Marjamäki
12c81ac0bf Remove deprecated daca scripts 2018-10-14 16:42:49 +02:00
Daniel Marjamäki
441d50df25 donate-cpu: use 1.85 as base version 2018-10-14 16:31:13 +02:00
Daniel Marjamäki
35f3d29093 Makefile: Restore debug mode 2018-10-14 15:14:48 +02:00
Daniel Marjamäki
e22243ae0d Makefile: Set release mode 1.85 2018-10-14 14:56:51 +02:00
Daniel Marjamäki
fa15dcd41a Add author Alexander Gushchin 2018-10-14 09:31:20 +02:00
Daniel Marjamäki
e11aa60386 Add one more author 2018-10-13 19:30:10 +02:00
Daniel Marjamäki
895772711a 1.85: Set version 2018-10-13 18:55:19 +02:00
Daniel Marjamäki
27fa33a9e7 Updated AUTHORS file 2018-10-13 18:52:44 +02:00
Daniel Marjamäki
140b0b5ae9 astyle formatting
[ci skip]
2018-10-13 18:42:09 +02:00
Jes Ramsing
5328caa6fa Added documentation for --suppress-xml (#1420)
* Added documentation for --suppress-xml

* Bad copy place job "--suppress-xml" not "--suppressions-list"

* Fixed indentation to use . instead of tab
2018-10-13 18:41:12 +02:00
amai2012
9306027987 Update runastyle (#1421)
Try to format cppcheck.1.xml via xmllint as suggested in https://github.com/danmar/cppcheck/pull/1420
2018-10-13 18:39:37 +02:00
Paul Fultz II
9cf092657c Skip some ast errors to avoid regressions (#1422)
* Skip some ast errors to avoid regressions

* Use simpleMatch

* Skip operator functions

* Add a test for issue 8788
2018-10-13 18:38:44 +02:00
Daniel Marjamäki
7833ade128 Updated copyright year 2018-10-13 18:20:31 +02:00
Daniel Marjamäki
f9157f2aeb lupdate gui.pro 2018-10-13 18:17:43 +02:00
PKEuS
8f32811b80 Updated german translation 2018-10-13 09:31:02 +02:00
Daniel Marjamäki
936c627307 Fix --doc output. * must be escaped. 2018-10-11 13:59:21 +02:00
Daniel Marjamäki
7eb5ebe17e Fixed #7887 (User function 'search' is wrongly mixed with std function) 2018-10-10 17:35:53 +02:00
Daniel Marjamäki
c048bd45f6 Refactor test code 2018-10-10 14:35:58 +02:00
Daniel Marjamäki
25cbfe27cf Partial fix for #7887, Improved tokenizer simplification of 'using namespace std;' - do not simplify user functions 2018-10-10 14:28:53 +02:00
Daniel Marjamäki
f6f4116389 bump simplecpp 2018-10-09 21:17:38 +02:00
Daniel Marjamäki
053b0d1654 STL: enable inconclusive warnings with --inconclusive 2018-10-09 20:10:43 +02:00
alex
babafd75e3 Added support for -U option to the GUI. 2018-10-09 15:05:05 +02:00
Sebastian
cf44964f20
qt.cfg: Define "qreal" as "double" (#1416)
By default "qreal" is a typedef for "double".
Reference: https://doc.qt.io/qt-5/qtglobal.html#qreal-typedef
2018-10-09 14:52:09 +02:00
IOBYTE
24f2e288d5 Make --debug alias --debug-normal for backwards compatibility. (#1414) 2018-10-09 14:47:50 +02:00
rikardfalkeborn
75caf8e4de Fix #8230: FP unknown evaluation order on comma expression in while clause (#1415)
The while part of a do-while loop looks almost like a function call, so
extend the check for function calls to ignore while-statements.

Note that there was only an FP when checking c-code, since the check is
disabled for c++-code. Therefore, make sure the test cases are run on a
c-file.
2018-10-09 14:44:01 +02:00
Daniel Marjamäki
20121b34d8 Fixed #7718 (False positive: out of bounds of already resized std::string) 2018-10-09 06:53:26 +02:00
Daniel Marjamäki
aa58f41e6d Fixed #7152 (False positive for redundantAssignment after calling a lambda function) 2018-10-08 21:07:21 +02:00
PKEuS
86a1b84b0c Fixed handling of macros with known value defined in header file in configuration splitting (#8404)
Added proper unit test for configuration validation to ensure that it actually works when cppcheck is executed
2018-10-08 16:38:47 +02:00
orbitcowboy
c312bbad78 Fixed a typo. There are no functional changes intended. 2018-10-08 13:58:21 +02:00
Daniel Marjamäki
c3e6e7c338 Fixed #8664 (setVarId: Wrongly set varid for lambda argument) 2018-10-07 20:40:59 +02:00
Daniel Marjamäki
f961324d45 Fixed #8735 (FP oppositeInnerCondition - regression) 2018-10-07 18:30:29 +02:00
Daniel Marjamäki
d9e1cc957b Fixed #8704 (false postive: MISRA rule 5.2) 2018-10-07 17:19:40 +02:00
Daniel Marjamäki
39df519af9 cve test suite: Add a download script 2018-10-06 11:36:54 +02:00
orbitcowboy
54c5d09ed3 test:std.cpp: Removed duplicate include <csetjmp>. 2018-10-06 00:23:14 +02:00
Carlo Marcelo Arenas Belon
d66c92edc3 Remove unused parameters for CheckOther::oppositeExpressionError (#1412) 2018-10-05 08:36:49 +02:00
Paul Fultz II
26a8435d76 Use knownConditionTrueFalse when is duplicate expression is true or false (#1410) 2018-10-05 06:00:24 +02:00
Paul Fultz II
e170a45230 Enable followVar for opposite expressions (#1404)
Enable followVar for opposite expressions
2018-10-04 21:17:47 +02:00
Daniel Marjamäki
e9ddf4ddeb cve-test-suite: tweak cve-2018-6836 test 2018-10-04 18:14:54 +02:00
Daniel Marjamäki
d5ac00e1d4 cve test suite: Added more test cases 2018-10-04 18:07:11 +02:00
Daniel Marjamäki
ec1de1f905 cve-test-suite: added readme.txt with my motivation for adding this folder 2018-10-04 17:56:33 +02:00
Daniel Marjamäki
72e6bbaa26 Add a test-suite based on CVE vulnerabilities 2018-10-04 17:24:39 +02:00