Commit Graph

22772 Commits

Author SHA1 Message Date
Daniel Marjamäki 5497e8ed67 ExprEngine; Improved handling of stream read 2020-06-21 20:05:26 +02:00
Daniel Marjamäki 11e2b5ea14 Bug hunting; Timeout 2020-06-21 18:28:07 +02:00
Daniel Marjamäki 65498b5e9a Bug hunting; Fixed hang when there is recursion 2020-06-21 15:16:05 +02:00
Daniel Marjamäki 8ec5605bac
Merge pull request #2689 from Ken-Patrick/9769
9769: Improve value flow for ternary operator
2020-06-21 13:04:43 +02:00
Daniel Marjamäki ff445f9ca2 Bug hunting; Make cve.py happy again 2020-06-21 08:50:27 +02:00
Daniel Marjamäki f270ca1909 ExprEngine; Better handling of function calls 2020-06-20 23:00:39 +02:00
Ken-Patrick Lehrmann 5a3789a23f 9769: Improve value flow for ternary operator
In some cases, the condition of the ternary operator is assigned a known
value after the two possible results, and in such cases, we would not
take the opportunity to assign a value to the ternary operator (and to
the other parents in the ast).
This patch adds this capability.
2020-06-20 10:29:28 +02:00
Daniel Marjamäki 6743971112
Merge pull request #2690 from Ken-Patrick/bughunting_vcxproj
Try to fix compilation with cppcheck.vcxproj
2020-06-20 09:52:00 +02:00
Ken-Patrick Lehrmann 7065c5598b Try to fix compilation with cppcheck.vcxproj 2020-06-20 09:47:35 +02:00
orbitcowboy fae5d869e4 wxwidgets.cfg: Added support for more interfaces 2020-06-20 00:20:09 +02:00
orbitcowboy 55efa5b858 wxwidgets.cfg: Added support for more interfaces 2020-06-19 23:41:53 +02:00
Daniel Marjamäki af45148e58 ExprEngine; Refactor and improve code. Add tests for increments. 2020-06-19 20:40:20 +02:00
Daniel Marjamäki 06aeac75dc Bug hunting; Fix false negatives 2020-06-19 18:38:02 +02:00
Daniel Marjamäki b4443aa5a0 Suppress exceptRethrowCopy false positive 2020-06-19 18:15:04 +02:00
Daniel Marjamäki 8653c4b3a9 ExprEngine; Fix uninitialized value FP in subfunction when argument is passed by value 2020-06-19 18:05:56 +02:00
Daniel Marjamäki 6ec15b6d7b ExprEngine; Simple handling of increment/decrement 2020-06-19 17:35:35 +02:00
Daniel Marjamäki a5a3738df4 Fixed cve.py 2020-06-19 17:13:35 +02:00
orbitcowboy f60e805798 Running astyle [ci skip] 2020-06-19 16:36:09 +02:00
orbitcowboy 4c8c590b4b wxwidgets.cfg: Cleanup event table macros 2020-06-19 16:35:39 +02:00
Daniel Marjamäki c62e345340 Fix Cppcheck warning 2020-06-19 14:11:49 +02:00
Daniel Marjamäki f516bde744 ExprEngine; Fix TODO assertion 2020-06-19 14:05:19 +02:00
Daniel Marjamäki ab663feea8 Add testbughuntingchecks.cpp 2020-06-19 13:38:56 +02:00
Daniel Marjamäki d0ac583b97 Add 'bughuntingchecks' 2020-06-19 13:16:48 +02:00
Daniel Marjamäki cbe038e694 ExprEngine: execute functions in same TU 2020-06-19 10:27:59 +02:00
orbitcowboy 4acc63ac48 wxwidgets.cfg: Added support for more insterfaces 2020-06-19 07:59:17 +02:00
orbitcowboy 879fa9c18e wxwidgets.cfg: Added support for more insterfaces 2020-06-18 21:14:33 +02:00
orbitcowboy 30f1558f1c wxwidgets.cfg: Added support for more insterfaces 2020-06-18 21:10:48 +02:00
orbitcowboy 567ee92c20 wxwidgets.cfg: Added support for more interfaces 2020-06-18 17:14:07 +02:00
orbitcowboy d77c9cc9ff wxwidgets.cfg: Added support for more constants 2020-06-18 17:02:30 +02:00
orbitcowboy ae7f1843ab wxwidgets.cfg: Added support for more constants 2020-06-18 16:59:57 +02:00
orbitcowboy 2ac3892a14 wxwidgets.cfg: Added support for more constants 2020-06-18 16:58:57 +02:00
orbitcowboy f06956c8ae wxwidgets.cfg: Added support for more constants 2020-06-18 16:57:15 +02:00
Daniel Marjamäki d3df68e376 Updated bug hunting test 2020-06-18 14:31:51 +02:00
Daniel Marjamäki 542158d0f4 Bug hunting; checking uninitialized struct member 2020-06-18 13:49:11 +02:00
Daniel Marjamäki 6756587ac9 astyle formatting
[ci skip]
2020-06-18 12:05:24 +02:00
orbitcowboy bf4a6bc09a wxwidgets.cfg: Added support for more constants 2020-06-18 09:58:20 +02:00
Daniel Marjamäki 3f8218af1b Removed CheckClass::operatorEq: does not 'belong' 2020-06-17 20:35:43 +02:00
Daniel Marjamäki 97de6d2e5f
Merge pull request #2686 from Ken-Patrick/boost_throw
Better handle noreturn or throwing functions in valueflow
2020-06-17 20:25:31 +02:00
Ken-Patrick Lehrmann c297ed8204 Better handle noreturn or throwing functions in valueflow
Teaching cppcheck about `BOOST_THROW_EXCEPTION` and
`boost::throw_exception`, and using noreturn information from libraries
in value flow.

This fixes false positive nullPointerRedundantCheck with the following
code:
```
void throwexception(int * buf)
{
    if (!buf)
        boost::throw_exception(std::bad_alloc());
    *buf = 0;
}
```
2020-06-17 19:06:14 +02:00
Daniel Marjamäki fe4657f218 Tweaked cppunit.cfg 2020-06-17 13:10:30 +02:00
Daniel Marjamäki 51a6af299f
Merge pull request #2683 from Ken-Patrick/cast_expandTemplate
Fix handling of c++ casts in template expansion
2020-06-17 09:21:01 +02:00
Daniel Marjamäki 94f92f00fe
Merge pull request #2684 from firewave/precompiled
use precompiled headers if CMake supports it
2020-06-17 07:53:51 +02:00
Daniel Marjamäki d26593321d Fixed Visual Studio compile error 2020-06-16 22:56:01 +02:00
Daniel Marjamäki 4947a3b7ab Bug hunting; review and improve handling of multi dimensional arrays 2020-06-16 22:50:45 +02:00
firewave a49d60f0b3 use precompiled headers if CMake supports it 2020-06-16 19:56:53 +02:00
Ken-Patrick Lehrmann 5c1a2db434 Fix handling of c++ casts in template expansion
Cast were not expanded properly: the `<` was not taken into account in
typeindentlevel, so we would then miss a `>`, resulting in syntaxError.
2020-06-16 19:36:04 +02:00
Daniel Marjamäki d984d84450
Merge pull request #2681 from firewave/py
donate_cpu_lib.py: fixed Python error
2020-06-16 02:40:45 +02:00
Daniel Marjamäki 6faad9cd90 Bug hunting; better handling when assigning multidimensional array in for loop 2020-06-15 22:42:45 +02:00
firewave fa7e687853 donate_cpu_lib.py: fixed Python error 2020-06-15 22:12:22 +02:00
Daniel Marjamäki b36c85d8fd Rename VerifyException to BugHuntingException 2020-06-15 22:07:32 +02:00