Commit Graph

415 Commits

Author SHA1 Message Date
Daniel Marjamäki c3749625f3
Merge pull request #2688 from jpyllman/fix_chklibfunc
not report locally declared functions as missing configuration of --check-library
2020-06-27 06:53:09 +02:00
orbitcowboy b33326bf51 windows.cfg: Added a regression test for GetSystemInfo that ensure no uninitvar-FP is shown. 2020-06-26 20:45:18 +02:00
Jens Yllman a87686911a one more test updated for the new checkLibraryFunction 2020-06-23 09:06:54 +02:00
Jens Yllman aa380e0de1 fix a test that was suppressed because #9002 2020-06-19 23:04:15 +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
orbitcowboy a3d58a9302 std.cfg: Allow scientific floating point notation for '<valid>'-tags 2020-06-12 08:51:33 +02:00
orbitcowboy e767bb8ff3 std.cfg: Added tests for 'atanh' 2020-06-11 15:13:19 +02:00
orbitcowboy 0fe0e56986 std.cfg: Added tests for 'acosh' 2020-06-11 15:07:35 +02:00
orbitcowboy 4880f30dc3 std.cfg: Added tests for 'aligned_alloc' 2020-06-10 19:33:22 +02:00
Sebastian 5cbed0464c
opencv2.cfg: Add types, macros, functions and memory (de)allocation (#2620)
* opencv2.cfg: Add types, macros, functions and memory (de)allocation

* cfg/cppcheck-cfg.rng: Allow alloc/realloc functions in classes
2020-05-30 17:41:44 +02:00
orbitcowboy 5142c9e9ed wxwidgets.cfg: Fixed containerOutOfBounds-false negatives for wxArrayInt and wxArrayString. These containers have std::vector like implementation 2020-05-23 09:24:01 +02:00
orbitcowboy 184977730c wxwidgets.cfg: Fixed false positive because Cppcheck cfg is not able to handle overloaded functions 2020-05-01 20:12:42 +02:00
Sebastian f0e3f9e79a
gtk.cfg: Fix/enhance Gtk library configuration (g_abort and others) (#2558)
test/CMakeLists.txt: Fix missing INCONCLUSIVE for Gtk configuration test
2020-02-27 13:16:43 +01:00
orbitcowboy a5ca3cb1f0 wxwidgets.cfg: Fixed FP for wxSizer::Add() 2020-02-26 16:10:10 +01:00
Sebastian 8fd17546ad
qt.cfg: #9650: Fix missing configuration for QString.chop() (#2556)
chop() and also remove() change the size of a QString, so they have to
be added in the container configuration accordingly to avoid false
positives.
2020-02-26 10:53:03 +01:00
Sebastian fb36889d29
gtk.cfg: Fix syntax errors and false positives (#2552)
A missing definition for g_assert_cmp*() causes syntax errors if code
like g_assert_cmpint(a, ==, b); is encountered.
The function g_hash_table_iter_replace() does not have to be marked
with leak-ignore since the memory could be freed later if corresponding
functions are present in the GHashTable. Since we can not know if this
is the case we have to assume that the memory is freed to avoid false
positives. The same is true for g_hash_table_insert() and
g_hash_table_replace().
2020-02-26 10:33:23 +01:00
orbitcowboy b32a89924c wxwidgets.cfg: Added <not-bool/>-flag at more function args. 2020-02-25 21:48:15 +01:00
orbitcowboy e9937e3acb wxwidgets.cfg: Fixed recently introduced FP. 2020-02-25 20:23:20 +01:00
orbitcowboy 84d2c86d74 posix.cfg: Added more <not-bool/>-flags. 2020-02-22 14:49:36 +01:00
orbitcowboy e1eb7e04b5 std.cfg: Added <not-bool/>-flags for some functions from <cwctype> 2020-02-22 14:24:14 +01:00
orbitcowboy a62ddc6edd std.cfg: Added <not-bool/>-tag to isblank() function arg. 2020-02-22 09:43:15 +01:00
orbitcowboy be96abc21a std.cfg: Added <not-bool/>-tags to <cctype> function args. 2020-02-22 09:39:21 +01:00
Steven Hoving 26e403893c googletest.cfg; add MATCHER (#2485) 2020-01-12 08:11:58 +01:00
Paul Fultz II 42d44f02a2 Use lifetime analysis for checking mismatching containers (#2456)
* Use lifetimes to check for mismatching containers

* Fix error messages

* Format

* Remove unused variables

* Fix configuration and track iterators through algorithms

* Fix iterator value types in qt config

* Fix library issue with QStringList

* Remove unused functions

* Fix cppcheck errors
2019-12-25 09:32:50 +01:00
orbitcowboy 2ca866f781 wxwidget.cfg: Added support for more interfaces. 2019-12-22 11:11:59 +01:00
Sebastian de4d44ae2f
opencv2.cfg: Add initial OpenCV 2.x API Library Configuration (#2439) 2019-12-10 19:34:30 +01:00
Dmitry-Me 8af2ee968e Fix incorrect usage of "unlikely" hint 2019-11-27 18:08:10 +03:00
Dmitry-Me 45e617f50b Fix -Wint-conversion warning 2019-11-27 18:08:10 +03:00
Dmitry-Me 8f72a714d1 Fix -Wint-conversion warning 2019-11-26 18:03:47 +03:00
Armin Müller 130ebe4b85 Typos found by running "codespell" (#2380) 2019-11-19 20:02:24 +01:00
orbitcowboy 2ff18b76ec test std.cfg: Improved tests for strncpy and strrchr . 2019-11-18 13:53:42 +01:00
orbitcowboy d5d2915873 test std.cfg: Improved tests for strncmp and strncat. 2019-11-18 13:43:49 +01:00
orbitcowboy dbbb7f544a test std.cfg: Improved strlen() tests. 2019-11-14 16:45:27 +01:00
orbitcowboy ea92695e54 test std.cfg: Improved sscanf() tests. 2019-11-14 16:38:30 +01:00
orbitcowboy ade54bef3f test std.cfg: Added better tests. 2019-11-14 10:48:23 +01:00
orbitcowboy dd30f37642 std.cfg: Merged 'wcscmp' and 'strcmp' configurations and added better tests. 2019-11-14 08:43:31 +01:00
orbitcowboy 20e2c513b6 test std.cfg: Added better test cases for toupper() and tolower(). 2019-11-14 08:31:00 +01:00
orbitcowboy 09eaa412b1 std.cfg: Improved cfg for 'mbstowcs' 2019-11-13 16:55:17 +01:00
orbitcowboy aa5c42ffc5 test std.cfg: Addressed comments from 177eed122a (comments) 2019-11-13 15:07:57 +01:00
orbitcowboy 177eed122a std.cfg: Added 'indirect' flag for destination argument of 'mbstrtowc' function. 2019-11-13 14:34:02 +01:00
orbitcowboy 02adb60f08 test std.cfg: Added a regression test for std::vsprintf(). The first argument is allowed to be a null pointer. 2019-11-11 09:29:16 +01:00
orbitcowboy c358688c68 Formatted code. There are no functional changes. [ci skip] 2019-11-07 11:29:37 +01:00
KenPatrickLehrmann 1114dc0536 Enhance handling of assertion from googletest (#2331)
* Enhance handling of assertion from googletest

* Update googletest, and add it to cmake build

* Enhance ASSERT_STR* in googletest.cfg
2019-11-06 21:38:01 +01:00
orbitcowboy f59a2b491d #9455: Added a test case. 2019-11-05 14:00:50 +01:00
Sebastian 8b2903d5ce openssl.cfg: Add OpenSSL library configuration with tests (#2248)
* openssl.cfg: Add OpenSSL library configuration with tests

Reference: https://www.openssl.org/docs/man1.1.1/man3/

* openssl.cfg: Add some configurations for EVP functions

Add alloc/dealloc configuration for EVP_CIPHER_CTX_new and
EVP_CIPHER_CTX_free.
Add configuration for encryption functions that are used in example code
which is added to the tests.
2019-10-31 09:21:08 +01:00
Sebastian 02c0240dcd
Fix #9322: bsd.cfg, gnu.cfg: Fix FP for mmap when argument "fd" is -1 (#2306)
In contrast to POSIX, GNU and BSD allow or even require the argument
"fd" to be set to -1 if MAP_ANONYMOUS or MAP_ANON is specified.
2019-10-30 09:39:50 +01:00
Sebastian 8fb794e731
libsigc++.cfg: Add configuration for library libsigc++ (#2291)
* libsigc++.cfg: Add configuration for library libsigc++

Reference: https://libsigcplusplus.github.io/libsigcplusplus/

* Make code compatible with libsigc++-2.0 instead of 3.0

Since Version 3.0 C++14 is required which is not (fully) supported in
some older GCC versions.
2019-10-26 17:37:14 +02:00
orbitcowboy 24d6794ba6 windows.cfg: Added support for more interfaces. 2019-10-21 10:09:20 +02:00
versat 6cf0aed737 test/cfg/runtests.sh: Remove verbose output (meant for debugging) 2019-10-21 08:53:21 +02:00
versat 094caf31ac std.cfg: Remove redundant configurations for vector::(push|pop)_back()
Add tests in std.cpp to verify that a configuration for the functions
exists.
2019-10-18 12:40:10 +02:00