21711 Commits

Author SHA1 Message Date
Dmitry-Me
4a8ced29c4 Fix typo 2019-12-16 18:10:40 +03:00
Paul Fultz II
ad352daa08 Fix issue 9535: Syntax Error: AST broken, 'if' doesn't have two operands. (#2450) 2019-12-16 12:17:01 +01:00
orbitcowboy
890d11ccf2 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:50:17 +01:00
orbitcowboy
2c052fdf60 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:46:24 +01:00
orbitcowboy
ba2a58ea89 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:42:56 +01:00
orbitcowboy
b9bb159314 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:38:13 +01:00
orbitcowboy
0fd1cd7170 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:35:55 +01:00
orbitcowboy
ed803622d2 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:29:00 +01:00
orbitcowboy
48fb878a35 wxWidgets.cfg: Added support for more interfaces. 2019-12-16 11:20:59 +01:00
Daniel Marjamäki
a241be0ecc Fixed #9434 (False positive: Out of bounds access when using const pointer) 2019-12-15 20:10:28 +01:00
Georgy Komarov
88a3b4c685 addons: Fix __repr__ methods (#2448)
This commit fixes __repr__ methods introduced in d538315268dd84440ddb6dc482672df095e19258. Fields that recursively links to other cppcheckdata objects was removed to avoid max recursion depth crash on printing.
2019-12-15 19:46:54 +01:00
Georgy Komarov
c46e44e39e misra.py: R14.2: Verify for loop counter modification (#2409)
* misra.py: R14.2: Verify for counter modification

Add additional check to detect modification of loop counter in loop
body. Related issue: https://trac.cppcheck.net/ticket/9490

Add small fix that treat all assignment operators defined in N1750
6.5.16 as has side affects. This will affects rules 13.1, 13.3, 13.5
and allow to catch some false negatives.

* Add tests for fixed FPs for R13.{1,5,6}

* fix

* use isAssignmentOp from cppcheck data

* remove unused set

* handle case with empty body or syntax error

* add test with outer variable

* Fix FP in nested loops, add tests

* Fix FP on outer variables

* Fixup false positives for not loop counters
2019-12-15 18:23:12 +01:00
Georgy Komarov
f87cd9818c misra.py: Fix false negative for rule 10.1 (#2449)
This will close Trac 9489.
2019-12-15 18:10:22 +01:00
Daniel Marjamäki
36f369473e isPointerDeref: Return false for function declarations 2019-12-15 16:36:46 +01:00
Daniel Marjamäki
aee9519d21 testsuite: Add x-flow tests 2019-12-15 13:57:27 +01:00
Daniel Marjamäki
f614d32d6a Fixed #9519 (Syntax error on valid C++ 'enum {} (a)') 2019-12-15 08:40:04 +01:00
Daniel Marjamäki
bcfc5924fa Fixed #9532 (False positive: Out of bounds access in expression 'v[0]' because 'v' is empty.) 2019-12-14 19:04:19 +01:00
Daniel Marjamäki
5e07528af5 Fixed #9505 (MISRA 20.7 check suggests code change that leads to invalid code) 2019-12-14 16:31:41 +01:00
Daniel Marjamäki
267bdc0f5f Manual: -i and --project 2019-12-14 13:05:05 +01:00
Paul Fultz II
06752d75a5 Fix issue 9485: knownConditionTrueFalse false positive with integer constants (#2447)
* Fix issue 9485: knownConditionTrueFalse false positive with integer constants

* Formatting
2019-12-14 09:15:00 +01:00
orbitcowboy
538679a47e wxwidgets.cfg: Added support for more interfaces. 2019-12-13 14:44:57 +01:00
orbitcowboy
9da0f6116a wxwidgets.cfg: Added support for more interfaces. 2019-12-13 14:41:18 +01:00
orbitcowboy
537830cfc7 wxwidgets.cfg: Added support for more interfaces. 2019-12-13 14:37:28 +01:00
orbitcowboy
6fa42d6a9d wxwidgets.cfg: Added support for more interfaces. 2019-12-13 14:33:45 +01:00
orbitcowboy
f6a5efa9eb wxwidgets.cfg: Added support for more interfaces. 2019-12-13 14:28:33 +01:00
orbitcowboy
48f594c938 wxwidgets.cfg: Added support for more interfaces. 2019-12-13 13:56:22 +01:00
IOBYTE
0e4efea530 fix #9539 (Syntax error for valid C++14 code) (#2446) 2019-12-12 20:50:20 +01:00
Rikard Falkeborn
eb6203cee3 test-my-pr: Allow work_path to be relative (#2444)
Previously, calling test-my-pr with a relative work-path resulted in a
crash when trying to create the result file (due to the change of
current working directory).
2019-12-12 16:43:40 +01:00
Rikard Falkeborn
3ff4d83e6d donate_cpu_lib: Fix python 3 crash if fail to get package (#2445)
* donate_cpu_lib: Fix python 3 crash if fail to get package

Decoding a string is not allowed in python 3 (in python 2 it works).
If fetching the package fails, assign an empty byte string instead to
avoid crashing.

* Initialize package instead
2019-12-12 15:04:25 +01:00
RobkeBaer
370196a14c Fix extern c typedef syntax error (#2438)
* Fix extern c typedef syntax error

* Fix extraWhiteSpaceError

* Move test from testgarbage to testtokenize
2019-12-12 13:51:14 +01:00
orbitcowboy
965784dd19 wxwidgets.cfg: Removed not needed '<use-reval/>'-tags. 2019-12-12 11:22:12 +01:00
orbitcowboy
ec4fe0683f wxwidgets.cfg: Validate first arg of wxString::Right() and wxString::Left(). 2019-12-12 10:16:21 +01:00
Dmitry-Me
064795a705 Remove duplicate test
This partially reverts commit 047418dda13bf7c7df9788435b316450259bbd9e
2019-12-11 19:17:59 +03:00
orbitcowboy
b0b8b2608a wxwidgets.cfg: Added support for more interfaces 2019-12-11 15:06:50 +01:00
orbitcowboy
f89adef1c1 Running astyle [ci skip] 2019-12-11 15:01:21 +01:00
orbitcowboy
2e8f0b99f0 wxwidgets.cfg: Added support for more interfaces 2019-12-11 15:01:00 +01:00
Sebastian
6f2879a59b
errorlogger.cpp: Handle empty file-name like "*" (unmatchedSuppression) (#2440)
Using "--suppress=unmatchedSuppression" did not suppress the error-id in
all files, one needed to specify "*" as file-name. This commit also
allows empty file-names to suppress "unmatchedSuppression", not only "*"
or the exact file-name.
The manual uses the following example for suppressions specified in a
file:
// suppress all uninitvar errors in all files
uninitvar

This example suggests that no "*" has to be used to get suppression in
all files. I think that the command line parameter should work in the
same way.
2019-12-11 09:07:18 +01:00
Paul Fultz II
ad2f71338c Fix issue 9525: Syntax Error: AST broken, 'if' doesn't have two operands inside lambda (#2433)
* Fix issue 9525: Syntax Error: AST broken, 'if' doesn't have two operands inside lambda

* Fix incorrect matchers
2019-12-10 21:21:07 +01:00
Sebastian
de4d44ae2f
opencv2.cfg: Add initial OpenCV 2.x API Library Configuration (#2439) 2019-12-10 19:34:30 +01:00
Francesc Elies
40aefa1ba4 [windows] cannot run test-misra (binary not found) (#2441)
set PYTHONPATH=addons
    python -m pytest addons/test/test-misra.py
2019-12-10 18:32:41 +01:00
Rikard Falkeborn
1c92170179 ValueFlow: Remove unused argument (#2442) 2019-12-10 17:48:27 +01:00
Sebastian
95696ead23
Catch preprocessor errors possibly issued during loading files (#2430)
* Also catch preprocessor errors possibly issued during loading files

Currently only errors that are issued during preprocessing are caught.

* Bump simplecpp, implement suggestions

Use return value checking instead of catching an exception for calling
Preprocessor::loadFiles().
Handle new enum value simplecpp::Output::EXPLICIT_INCLUDE_NOT_FOUND
where the corresponding enum is used in Cppcheck.

* Use "noloc" location if an explicit include can not be opened
2019-12-09 19:16:55 +01:00
Francesc Elies
d538315268 [python] classes are missing __repr__ methods (#2437)
* [python] classes don't have a __repr__ method

* [python] removes unused import
2019-12-09 19:08:45 +01:00
Francesc Elies
cbd9713006 [cli] help misses --suppress-xml description (#2436) 2019-12-09 19:01:15 +01:00
orbitcowboy
0507b1a2b6 wxwidgets.cfg: Cleanup from previous commit. 2019-12-09 13:44:23 +01:00
orbitcowboy
7368904afa wxwidgets.cfg: Added more interfaces. 2019-12-09 13:28:02 +01:00
orbitcowboy
4800f86e55 wxwidgets.cfg: Added support for 'wxFileName::FileExists' 2019-12-09 10:06:34 +01:00
orbitcowboy
4306a176cc wxwidgets.cfg: Added support for more interfaces. 2019-12-09 09:49:54 +01:00
orbitcowboy
8c4dcc9633 wxwidgets.cfg: Added support for more interfaces. 2019-12-09 09:19:39 +01:00
Paul Fultz II
4aa6385a97 Regression test for 9106: False positive duplicateCondition for struct member (#2434) 2019-12-09 06:51:58 +01:00