Commit Graph

1944 Commits

Author SHA1 Message Date
orbitcowboy 5c1526513a wxwidgets.cfg: Added missing EVT_-macros from wxSplitterEvents, found by daca@home. 2019-09-13 20:57:05 +02:00
orbitcowboy 34d0b98176 wxwidgets.cfg: Added missing EVT_-macros from wxMenu-class, found by daca@home. 2019-09-13 20:55:05 +02:00
orbitcowboy 968aa73bb7 wxwidgets.cfg: Added missing EVT_-macros from wxTreeEvent-class, found by daca@home. 2019-09-13 20:52:15 +02:00
orbitcowboy df51e481e9 wxwidgets.cfg: Added support for EVT_SYS_COLOUR_CHANGED(), found by daca@home. 2019-09-13 20:46:05 +02:00
orbitcowboy 7a4cda70b6 qt.cfg: Added support for QTEST_GUILESS_MAIN() and QTEST_APPLESS_MAIN() macros, found by daca@home. 2019-09-13 20:42:31 +02:00
orbitcowboy 563d2d6725 wxwidgets.cfg: Added support for some unknown macros, found by daca@home in 3depict_0.0.21.orig.tar.gz 2019-09-13 20:34:12 +02:00
orbitcowboy aadbc5e1a8 mfc.cfg: Added MFC configuration, taken from https://trac.cppcheck.net/attachment/ticket/9354/MFC.cfg. 2019-09-13 19:51:17 +02:00
versat 89e0911c9c gtk.cfg: Add/fix some g_slist_*() functions
Reference:
https://developer.gnome.org/glib/stable/glib-Singly-Linked-Lists.html
https://github.com/GNOME/glib/blob/master/glib/gslist.h
2019-09-13 16:06:41 +02:00
versat f9d29a4ab9 qt.cfg: Add macro QStringLiteral()
Use the fallback value that always works. This should be fine for static
analyzers.
References:
https://doc.qt.io/qt-5/qstring.html#QStringLiteral
https://www.qt.io/blog/2014/06/13/qt-weekly-13-qstringliteral
https://woboq.com/blog/qstringliteral.html
2019-09-13 13:46:34 +02:00
Sebastian 246ba265ff
qt.cfg: Add/enhance missing configuration for functions of QString (#2174) 2019-09-13 12:19:21 +02:00
versat d870e4d555 qt.cfg: Add configuration for QString::resize() 2019-09-12 15:32:55 +02:00
orbitcowboy 55e8691bee wxwidgets.cfg: Added support for wxDC::CopyAttributes(). 2019-09-11 09:22:21 +02:00
orbitcowboy da29a1f56b gnu/bsd.cfg: Cleanup redundant configuration for timercmp() and add more tests. 2019-09-10 11:51:47 +02:00
versat 7737a448cf Fix #9345 FP wrongPrintfScanfArgNum for vasprintf
Configuration "<formatstr/>" for function is wrong, for the argument it
is fine.
2019-09-09 15:02:55 +02:00
orbitcowboy aed5e17867 #9323, #9331: Moved configuration and tests to gnu and bsd. 2019-09-08 19:17:15 +02:00
orbitcowboy bb54e455ce wxwidgets.cfg: Fixed typo from previous commit. 2019-09-07 12:16:54 +02:00
orbitcowboy 74907ade18 wxwidgets.cfg: Added support for more wxImage members 2019-09-07 12:10:38 +02:00
orbitcowboy e21dca293a wxwidgets.cfg: Added support for wxImage::Rotate(). 2019-09-07 12:06:09 +02:00
orbitcowboy 9890df11df posix.cfg: Added support for some functions from <sys/time.h>. 2019-09-07 10:52:30 +02:00
orbitcowboy 12c851d9a8 posix.cfg: Fixed #9323, #9331 by adding timercmp() configuration. 2019-09-07 10:42:09 +02:00
orbitcowboy d774359f68 posix.cfg: Improved configuration for dlopen() and dlclose(). Ensure the return value is taken into account for dlopen() and leak-ignore flag is not present for dlopen() and dlclose(). 2019-09-06 15:25:54 +02:00
Sebastian 32dad3f44a
posix.cfg: Fix vsyslog() configuration (#2150)
Add tests to make sure no false positives are reported.
Found the issue via daca@home
2019-09-06 10:16:11 +02:00
versat e7ea748805 lua.cfg: Add more lua_push*() function configurations 2019-09-05 14:43:35 +02:00
versat 9b9e9a4cf4 qt.cfg: Add configurations for functions of class QSettings
Reference: https://doc.qt.io/qt-5/qsettings.html
2019-09-05 13:49:18 +02:00
versat 1faf932206 qt.cfg: Add configurations for functions of class QDateTime
Reference: https://doc.qt.io/qt-5/qdatetime.html
2019-09-03 12:50:29 +02:00
orbitcowboy 4a4d99b126 wxwidgets.cfg: Added support for more interfaces. 2019-09-02 16:09:31 +02:00
PKEuS 9864c8577f std.cfg: Added std::time_t and std::clock_t 2019-09-02 15:30:55 +02:00
orbitcowboy 76d8254df9 wxwidgets.cfg: Added support for more wxVariant functions. 2019-09-02 11:22:00 +02:00
versat efa3311d91 gtk.cfg: Fix some more functions with partly missing configuration 2019-09-02 10:30:07 +02:00
orbitcowboy 7c502819af wxwidgets.cfg: Added support for wxVariant getters. 2019-09-02 09:57:01 +02:00
orbitcowboy 27a1d26c91 wxwidgets.cfg: Added support for wxVariant::IsNull(). 2019-09-02 09:48:24 +02:00
Sebastian a501f65c8c
libcurl.cfg: Add library configuration for libcurl (#2120)
Add curl_easy_*() functions and deprecated functions with warnings.
Add tests and prepare donate-cpu.py
Reference: https://curl.haxx.se/libcurl/c/
2019-08-29 15:11:59 +02:00
Sebastian 8782a5f5e4
lua.cfg: Add Lua C API library configuration with tests (#2119) 2019-08-29 11:38:21 +02:00
versat 99ba01b1c6 gtk.cfg: Fix incomplete configuration for g_set_error*()
Reference:
https://developer.gnome.org/glib/stable/glib-Error-Reporting.html#g-set-error
2019-08-28 09:05:50 +02:00
versat c1c54d2e26 gtk.cfg: Enhance some gtk_signal_* functions
Add deprecation warnings and missing configurations for some of the
gtk_signal_* functions.
References:
https://developer.gnome.org/gtk2/stable/gtk2-Signals.html
https://developer.gimp.org/api/2.0/gtk/gtk-Signals.html
2019-08-28 08:30:09 +02:00
versat 9d653705b0 gtk.cfg: Add some missing information about functions
daca@home complained that there is no "noreturn" configuration for these
functions likely because the number of arguments did not match.
2019-08-27 15:14:51 +02:00
orbitcowboy 1994cbbb9c std.cfg: Improved configuration for mbrlen() and extended test cases. 2019-08-27 08:18:19 +02:00
amai2012 a209c5b37a Correct config for mbrlen() 2019-08-26 21:25:50 +02:00
orbitcowboy 2b41297bff wxwidgets.cfg: Partly revert commit c8b7b40cd7 2019-08-26 08:15:48 +02:00
orbitcowboy de0d1b40b3 wxwidgets.cfg: Remove duplicate configuration. 2019-08-25 15:57:38 +02:00
orbitcowboy c8b7b40cd7 wxwidgets.cfg: Improved support for wxString member functions. 2019-08-25 15:54:50 +02:00
Sebastian f25dcd5cda
python.cfg: Add Py_CLEAR(), and add initial test file (#2110) 2019-08-24 10:17:23 +02:00
Sebastian c8868adb20
sdl.cfg: Enhance SDL library configuration (types, macros, functions, ...) (#2111) 2019-08-23 19:14:25 +02:00
Sebastian 7f50642090
wxwidgets.cfg: Add container configuration for wxString (#2109) 2019-08-23 19:10:49 +02:00
versat 0e15fd3140 python.cfg: Add some missing PyErr_*() functions 2019-08-23 10:16:01 +02:00
versat 56bd9b742f gtk.cfg: Add configuration for function g_signal_new()
https://developer.gnome.org/gobject/stable/gobject-Signals.html#g-signal-new
Found by daca@home
2019-08-21 13:13:12 +02:00
Sebastian 2c673bd380
qt.cfg: Add container configuration for QStack (inherits from QVector) (#2102) 2019-08-20 20:37:52 +02:00
Sebastian a2a874dbd5
gtk.cfg: Add/enhance function configurations and tests. (#2101)
Add/enhance:
g_once_init_enter(), g_once_init_leave() and g_signal_emit_by_name()
2019-08-20 15:00:30 +02:00
Sebastian 26dfee58f8
qt.cfg: Add QLinkedList container configuration and some tests. (#2099) 2019-08-20 07:09:43 +02:00
Sebastian bca875e80d
qt.cfg: Fix QList::at and QStringList::at configuration (#2100)
Return values are different for these functions.
2019-08-19 18:23:34 +02:00
Sebastian 544bedc6ee
qt.cfg: Add QByteArray container configuration (similar to QString) (#2088)
Reference: https://doc.qt.io/qt-5/qbytearray.html
2019-08-15 16:14:17 +02:00
versat 178568f41f qt.cfg: Add some more global functions 2019-08-15 13:22:28 +02:00
Sebastian 81edb23c16
qt.cfg: Fix and enhance Qt container configuration (#2055)
-Add iterator end patterns
-Add/fix size and access functions
-Remove marking QList and QStringList as std-like strings
-QStringList configuration now inherits from QList like it is actually the case
-Add tests
2019-08-15 10:23:05 +02:00
orbitcowboy 290791f54f windows.cfg: Added support for more constants from https://docs.microsoft.com/en-us/windows/console/char-info-str 2019-08-09 14:46:47 +02:00
orbitcowboy 21dc69e3d1 windows.cfg: Added support for functions from https://docs.microsoft.com/en-us/windows/win32/api/versionhelpers/. 2019-08-08 10:51:05 +02:00
orbitcowboy 27cc58db43 windows.cfg: Added missing <pure/>-tag to GetSysColour(). 2019-08-08 08:13:29 +02:00
orbitcowboy 2df7ce21bf windows.cfg: Added support for GetSysColor(). 2019-08-07 17:05:54 +02:00
orbitcowboy 9133707d4a windows.cfg: Added support for more constants 2019-08-07 16:56:56 +02:00
orbitcowboy 24431419f4 wxwidgets.cfg: Added support for more interfaces. 2019-08-03 19:58:40 +02:00
orbitcowboy b4aec4e39d wxwidgets.cfg: Added support for more interfaces. 2019-08-03 19:53:55 +02:00
versat 7ee36489f1 gnu.cfg: Add configuration for __builtin_memcpy()
In case there is something like `#define memcpy __builtin_memcpy` in the
code our define for __builtin_memcpy does not work.
So the configuration for __builtin_memcpy is added as a fallback.
2019-08-02 13:17:39 +02:00
versat 2519a1aed5 gnu.cfg: Add more __builtin_* functions and some tests
Most of them were detected by daca@home
2019-08-02 12:27:46 +02:00
orbitcowboy c1773225e7 boost.cfg: Added support for some math macros 2019-08-02 12:01:52 +02:00
orbitcowboy 48b9d61d49 python.cfg: Added support for some macros found by daca@home. 2019-08-02 08:13:38 +02:00
Sebastian 5390588cda
gnu.cfg: Add xfree() (#2051)
It is hard to find good references, one that describes it a bit can
be found here:
https://manpages.ubuntu.com/manpages/bionic/man3/xmalloc.3pub.html

xfree() can be used instead of free().
A check, to verify that a memory leak is found if the memory allocated
via xmalloc() is not freed, has also been added.
2019-08-02 07:41:32 +02:00
versat 7965ac5858 gtk.cfg: Add/fix more function configurations
daca@home reported a missing noreturn configuration for most of these
functions.
2019-08-01 15:05:42 +02:00
versat 64b4ed5b13 gtk.cfg: Add/fix function configurations
daca@home reported a missing noreturn configuration for most of these
functions.
2019-08-01 13:44:53 +02:00
orbitcowboy 4704b1d331 gtk.cfg: Added support for more macros, found by daca@home. 2019-08-01 10:12:31 +02:00
versat 6995d40c14 qt.cfg: Add configuration for deprecated function QString::find() 2019-08-01 09:43:24 +02:00
Sebastian 549452b7b9
qt.cfg: Add container and function configurations for QVector (#2052)
Reference: https://doc.qt.io/qt-5/qvector.html
2019-07-31 13:58:55 +02:00
orbitcowboy a9bdf99e07 std.cfg: Added *experimental* support for math constants liken M_PI. These are *NOT* standard, but they are supported by GCC/Clang and VS. 2019-07-31 11:11:01 +02:00
orbitcowboy 2e11fbbfd6 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 15:11:50 +02:00
orbitcowboy c91b4e74e3 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 15:04:32 +02:00
orbitcowboy dd9bcd4d38 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 14:54:55 +02:00
orbitcowboy fc49099793 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 14:51:11 +02:00
orbitcowboy b3d4e14a39 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 14:47:32 +02:00
orbitcowboy 3d08b7fe98 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 14:43:02 +02:00
orbitcowboy bb7c8eebbc wxwidgets.cfg: Added support for more interfaces. 2019-07-30 09:44:33 +02:00
orbitcowboy 4fdbc6d172 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 09:39:52 +02:00
orbitcowboy f340d30d42 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 09:32:20 +02:00
orbitcowboy af86a58f5e wxwidgets.cfg: Added support for more interfaces. 2019-07-30 09:29:43 +02:00
orbitcowboy 290b4fb1d2 wxwidgets.cfg: Added support for more interfaces. 2019-07-30 09:23:22 +02:00
orbitcowboy ba97e3844f wxwidgets.cfg: Added support for more interfaces. 2019-07-29 19:24:15 +02:00
Sebastian 4e6a228b97
qt.cfg: Add obsolete functions qStableSort() and qSwap() (#2050) 2019-07-29 18:58:31 +02:00
Sebastian 2a3567cb44
std.cfg: Add std::string::copy() and std::wstring::copy() (#2041)
Reference:
https://en.cppreference.com/w/cpp/string/basic_string/copy
http://www.cplusplus.com/reference/string/string/copy/
2019-07-29 18:57:50 +02:00
Sebastian cce061fe95
qt.cfg: Add functions of class QDomElement (#2049)
Most were found by daca@home
2019-07-29 16:57:16 +02:00
ChristophStrehle f7f60a8da6 Variable number of arguments for boost test suite macros (#2043)
The macros defined in unit_test_suite.hpp have a variable
number of arguments if BOOST_PP_VARIADICS is defined.

See:
https://github.com/boostorg/test/blob/develop/include/boost/test/unit_test_suite.hpp
2019-07-28 09:23:27 +02:00
versat 22f8080d1d qt.cfg: Add some functions of class QLabel 2019-07-26 15:59:47 +02:00
versat cdb0e8322c qt.cfg: Add qSort() and some functions of class QAction 2019-07-26 14:56:32 +02:00
versat 1f71fe15d6 opengl.cfg: Add functions glGetString() and glGetStringi() 2019-07-26 09:04:01 +02:00
Sebastian dcc2599121
std.cfg: Add `<pure/>` to std::min() and std::max() (#2037) 2019-07-26 07:51:26 +02:00
Sebastian 2d5f3ae3b4
std.cfg: Add std::next() and std::prev() (#2022)
Reference:
https://en.cppreference.com/w/cpp/iterator/next
https://en.cppreference.com/w/cpp/iterator/prev
2019-07-25 12:40:15 +02:00
orbitcowboy b3e9724c06 wxwidgets.cfg: Added support for more interfaces. 2019-07-25 10:07:17 +02:00
orbitcowboy 9ea75bc7fe wxwidgets.cfg: missing const-flag 2019-07-25 09:47:27 +02:00
orbitcowboy 46072f7ed5 windows.cfg: Added support for FindResource(). 2019-07-25 09:46:40 +02:00
orbitcowboy 8ca54d9d2b wxwidgets.cfg: Added support for wxPGProperty::GetCellRenderer(). 2019-07-25 09:46:10 +02:00
versat f29e88a8a5 opengl.cfg: Add glLoadMatrix() and glUseProgram() 2019-07-24 15:19:52 +02:00
Daniel Marjamäki 2da75d5af4 Split up Cppcheck attribute. low and high values can be specified separately and they can be used for variables also. 2019-07-24 15:08:26 +02:00
versat 0041733bd6 opengl.cfg: Add more function configurations.
Some were reported by daca@home
2019-07-24 14:48:09 +02:00
Sebastian d185607122
std.cfg: Fix function configuration for std::back_inserter (#2023)
Reference: https://en.cppreference.com/w/cpp/iterator/back_inserter
2019-07-24 12:44:56 +02:00
orbitcowboy 2be981d68d wxwidgets.cfg: Remove wrong '<pure/>-tag. 2019-07-24 11:43:21 +02:00
orbitcowboy 377f6f29b5 wxwidgets.cfg: Added support for more functions from wxGCDC. 2019-07-24 11:33:02 +02:00
orbitcowboy 4fc15b3eb2 wxwidgets.cfg: Added support for more functions from wxGrid. 2019-07-24 11:30:35 +02:00
orbitcowboy 39bbe03974 wxwidgets.cfg: Added support for wxImage::AddHandler(). 2019-07-24 11:24:36 +02:00
orbitcowboy c2cf7b3f03 wxwidgets.cfg: Added support for members of wxLayoutAlgorithm-class. 2019-07-24 11:09:54 +02:00
orbitcowboy 3c1041a091 wxwidgets.cfg: Added support for wxDC::DrawEllipticArc(). 2019-07-24 11:00:55 +02:00
orbitcowboy b912c56fa0 wxwidgets.cfg: Added support for wxDC::DrawSpline(). 2019-07-24 10:54:19 +02:00
Sebastian 3e5f07b3fb
qt.cfg: Add/enhance functions of class QString (#2027)
Some were reported missing by daca@home.
2019-07-23 19:55:55 +02:00
Sebastian 4986b02566
qt.cfg: Add functions of class QRegExp (#2017)
This class is also used by the Cppcheck GUI.
Reference: https://doc.qt.io/qt-5/qregexp.html
2019-07-22 12:53:58 +02:00
amai2012 2915376c4f Remove attribute use-retval from std::rotate 2019-07-19 20:33:15 +02:00
Sebastian f50cd2330c
std.cfg: Add some more std::<container>::swap() functions (#2018) 2019-07-19 10:00:14 +02:00
Sebastian 9c8c539549
qt.cfg: Add some functions of class QXmlStreamAttributes (#2016)
This class is also used by the Cppcheck GUI.
2019-07-18 12:38:42 +02:00
Sebastian 512c1b12c6
qt.cfg: Add some functions of class QXmlStreamWriter (#2010)
This class is also used by the Cppcheck GUI.
2019-07-18 06:30:53 +02:00
Sebastian a997a30824
cppcheck-lib.cfg: Enhance Cppcheck library configuration (#2009) 2019-07-17 20:05:13 +02:00
Daniel Marjamäki 7b48fb6b32 Revert "cfg: Add python macros to fix daca crashes"
This reverts commit 760586dd0a.
2019-07-16 16:52:48 +02:00
orbitcowboy d17ab72e3c wxwidgets.cfg: Added support for wxGrid::XYToCell(). 2019-07-16 16:49:42 +02:00
versat ab227cbf6e sqlite3.cfg: Add more functions reported as missing by daca@home 2019-07-16 16:21:05 +02:00
versat 8e00f4ddfb sqlite3.cfg: Add some functions reported as missing by daca@home 2019-07-16 14:59:33 +02:00
Sebastian 820ffdeee8
gtk.cfg: Add some macros and functions reported as missing by daca@home (#2005) 2019-07-16 13:42:01 +02:00
orbitcowboy 2ae5ac7dc2 windows.cfg: Removed TEXT()-macro since it is handled internally. 2019-07-16 13:40:41 +02:00
Daniel Marjamäki 760586dd0a cfg: Add python macros to fix daca crashes 2019-07-16 13:30:59 +02:00
orbitcowboy 1f7fdb229a windows.cfg: Added support for GetFullPathName(). Reference: https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-getfullpathnamea 2019-07-16 13:23:39 +02:00
orbitcowboy f2e70f9236 wxwidgets.cfg: Added support for wxFile::ReadAll(). 2019-07-16 13:14:20 +02:00
orbitcowboy 29983aac0c windows.cfg: Added support for more platform types and some macros defined in winnt.h 2019-07-16 13:10:04 +02:00
Rikard Falkeborn e19068504d Configure xrealloc and adjust gnu memory functions (#2003)
Remove <noreturn> tag, since the functions do not return unless there
was no error.
2019-07-16 08:12:21 +02:00
amai2012 63fa4afa7a GetModuleFileName might be useful w/o return code 2019-07-16 06:07:31 +02:00
Rikard Falkeborn dcc375ca64 Update gtk memory functions (#2000)
* Improve configuration of g_try_realloc and g_try_realloc_n
* Mark g_realloc and similar functions as realloc functions
* Remove g_new, g_new0, etc as <alloc> functions, these are defined as
  macros and handled as the functions they're expanded to.
* Add tests. TODO tests will be resolved by using the library
  configuration in the checker.
2019-07-15 14:51:58 +02:00
Sebastian b242817565
qt.cfg: Add functions of class QMap (#1985)
Reference:
https://doc.qt.io/qt-5/qmap.html
2019-07-12 18:06:05 +02:00
versat f47fc84825 opengl.cfg: Add glColor* functions 2019-07-12 14:34:15 +02:00
versat aaecd300de gtk.cfg: Add some gtk_widget_* functions
Found by daca@home (checkLibraryNoReturn)
2019-07-12 13:58:39 +02:00
versat f7e1a12c6f gtk.cfg: Fix g_object_new configuration, argument 2 can be NULL
It is valid to use NULL as second argument and thus do not specify any
properties for this object.
2019-07-12 12:37:02 +02:00
versat 2f1d828b0c gtk.cfg: Add more g_object_* functions
Found by daca@home
2019-07-12 12:10:45 +02:00
Daniel Marjamäki 68cc7516a1 Annotations: Add annotation __cppcheck_in_range__(low,high) 2019-07-12 11:09:54 +02:00
versat d223d73cdb opengl.cfg: Add glTexCoord* functions 2019-07-12 09:42:40 +02:00
orbitcowboy d81aa4caf8 windows.cfg: Added support for GetModuleFileName(). 2019-07-12 09:11:31 +02:00
versat a67abb5fa2 opengl.cfg: Add glNormal3* functions
Found by daca@home
2019-07-12 08:44:23 +02:00
versat d4d9bb4830 qt.cfg: Add some global Qt functions
Found by daca@home
2019-07-11 16:20:22 +02:00
Daniel Marjamäki 783f7f1648 Rename safeValues to unknownValues 2019-07-11 16:05:48 +02:00
versat 30f49b2fbd qt.cfg: Add functions of classes QTest and QHash
References:
https://doc.qt.io/qt-5/qtest.html
https://doc.qt.io/qt-5/qhash.html

Most of the functions were found missing by daca@home.
2019-07-11 15:32:48 +02:00
versat d880830efc qt.cfg: Add functions of QPainter class
Reference:
https://doc.qt.io/qt-5/qpainter.html

Most of the function configurations were found missing by daca@home
2019-07-11 14:53:38 +02:00
Sebastian f239d4675b
gtk.cfg: Add g_object_set() (#1981)
Reference:
https://developer.gnome.org/gobject/stable/gobject-The-Base-Object-Type.html#g-object-set
2019-07-11 13:13:08 +02:00
Sebastian a4bcb7e0fb
qt.cfg: Add functions of class QDate (#1979)
Reference:
https://doc.qt.io/qt-5/qdate.html

Found by daca@home
2019-07-11 09:47:33 +02:00
Sebastian e49b098a86
std.cfg: Add mem_fn() (#1976)
std.cfg: Add mem_fn()

Reference:
https://en.cppreference.com/w/cpp/utility/functional/mem_fn
2019-07-11 08:26:24 +02:00
Daniel Marjamäki 05d35b063d Function return: Extra check of safe function return values 2019-07-10 20:00:21 +02:00
Sebastian 1cb90f925e
gtk.cfg: Add gtk_box_new(), gtk_hbox_new() and gtk_vbox_new() (#1975)
References:
https://developer.gnome.org/gtk3/stable/GtkBox.html#gtk-box-new
https://developer.gnome.org/gtk3/stable/GtkHBox.html#gtk-hbox-new
https://developer.gnome.org/gtk3/stable/GtkVBox.html#gtk-vbox-new

Found by daca@home
2019-07-10 11:28:54 +02:00
IOBYTE a05dfc9150 fix daca codeblocks crash (#1968)
* fix daca codeblocks crash

* fix the cause of the missing scope
2019-07-09 16:04:22 +02:00
Sebastian b2c747cff6
qt.cfg: Add "addWidget()" for classes Q(V|H|)BoxLayout and QGridLayout. (#1972)
Found by daca@home
2019-07-09 12:38:41 +02:00
Sebastian db43dcd601
posix.cfg: Add `<use-retval/>` to pthread_mutex_trylock (#1959)
Ignoring the return value of pthread_mutex_trylock is always a bug.
There is no other way to check if the mutex is locked or not after the
call.
2019-07-07 12:57:02 +02:00
Sebastian a9a70f25ad
sqlite3.cfg: Add more function configurations (#1957)
Some were found missing by daca@home
2019-07-05 15:45:21 +02:00
Rikard Falkeborn 839fcddd8a Fix #6115 (Add support to realloc to cfg files) (#1953)
* Allow to configure realloc like functions

* memleakonrealloc: Bring back tests.

The old memleak checker was removed, and the tests for it was removed in
commit 9765a2dfab. This also removed the
tests for memleakOnRealloc. Bring back those tests, somewhat modified
since the checker no longer checks for memory leaks.

* Add realloc to mem leak check

* Add tests of realloc buffer size

* Configure realloc functions

* Add test of freopen

* Allow to configure which element is realloc argument

* Fix wrong close in test

cppcheck now warns for this

* Update manual

* Update docs

* Rename alloc/dalloc/realloc functions

Naming the member function realloc caused problems on appveyor. Rename
the alloc and dealloc functions as well for consistency.

* Change comparisson order

* Remove variable and use function call directly

* Create temporary variable to simplify

* Throw mismatchError on mismatching allocation/reallocation

* Refactor to separate function

* Fix potential nullptr dereference

As pointed out by cppcheck.
2019-07-05 12:44:52 +02:00
orbitcowboy afce191db1 wxwidgets.cfg: Simplified macro 2019-07-05 11:06:29 +02:00
orbitcowboy df16e69725 wxwidgets.cfg: Added support for more macros from wx/event.h 2019-07-05 11:03:41 +02:00
orbitcowboy 6588c90b26 wxwidgets.cfg: Added support for more macros from wx/event.h 2019-07-05 11:00:59 +02:00
orbitcowboy 26038244a3 wxwidgets.cfg: Added support for more macros from wx/event.h 2019-07-05 10:54:46 +02:00
Sebastian c45dff1e1d
openmp.cfg: Add library configuration for OpenMP (#1956)
See https://www.openmp.org/
2019-07-05 03:00:52 +02:00
Rikard Falkeborn 60a213e6a5 Fix #9047 (c-style casts before malloc) (#1930)
* Fix #9047 (c-style casts before malloc)

Note that there are still no warnings for c++-style casts

* Fix memleak check with casts of assignments in if-statements

* Fix possible null pointer dereference

As pointed out by cppcheck.

* Add check of astOperand2 when removing casts

This is similar to how it is done in other checks.
2019-07-03 08:39:44 +02:00
Sebastian 6ba3b2703a
posix.cfg: Add setsockopt() and getsockopt() (#1944)
Found by daca@home
2019-07-02 15:14:31 +02:00
Rikard Falkeborn b530b3dfff Remove <noreturn> from g_malloc and friends (#1942)
From the Gnome Developer documentation
(https://developer.gnome.org/glib/stable/glib-Memory-Allocation.html):

    If any call to allocate memory using functions g_new(), g_new0(),
    g_renew(), g_malloc(), g_malloc0(), g_malloc0_n(), g_realloc(), and
    g_realloc_n() fails, the application is terminated. This also means
    that there is no need to check if the call succeeded. On the other
    hand, g_try_...() family of functions returns NULL on failure that
    can be used as a check for unsuccessful memory allocation. The
    application is not terminated in this case.

g_new(), g_new0() and g_renew() are defines using g_malloc(),
g_malloc0() and g_realloc() respectively, so there is no need to change
those.
2019-07-02 11:51:28 +02:00
orbitcowboy cca1a6aa2e wxwidgets.cfg: Added support for more interfaces. 2019-07-02 08:48:32 +02:00
orbitcowboy 78bf217354 windows.cfg: Added support for more contants. Reference: https://docs.microsoft.com/de-de/windows/win32/api/minwinbase/ns-minwinbase-debug_event 2019-07-02 08:43:10 +02:00
orbitcowboy 399da228da windows.cfg: Added support for more constants. 2019-07-01 17:17:59 +02:00
Sebastian 389df97352
gtk.cfg: Add/improve g_ascii_*() functions (#1927)
* gtk.cfg: Add/improve g_ascii_*() functions

Found via daca@home

* gtk.cfg: Add `<const/>` where applicable (forgotten in last commit)

* gtk.cfg: Add `<valid>0:255</valid>` for `gchar` ASCII value arguments
2019-06-30 21:16:45 +02:00
orbitcowboy b07cc09fa9 wxwidgets.cfg: Added support for more interfaces. 2019-06-30 14:20:54 +02:00
Daniel Marjamäki c2144d73b3 windows.cfg: SetClipboardData takes the data so the configuration should not say <leak-ignore>/ (https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-setclipboarddata) 2019-06-28 17:30:05 +02:00
Sebastian d745dcc0eb
gtk.cfg: Add g_error_*() functions (#1922) 2019-06-25 19:19:10 +02:00
Sebastian a437a22460
windows.cfg: Add GetDlgItem() (#1921)
Reference:
https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-getdlgitem
2019-06-25 15:31:42 +02:00
orbitcowboy bb802c0c63 windows.cfg: Added support for constants from 'RpcDce.h: Impersonation Level Constants'. 2019-06-20 15:40:39 +02:00
orbitcowboy 3b3e7fd382 windows.cfg: Added support for _itoa_s()-functions. 2019-06-20 15:25:05 +02:00
orbitcowboy 952a4becf6 std.cfg: Added return type to itoa(). 2019-06-20 15:24:35 +02:00
Sebastian 1a4854d93d
windows.cfg: Add macros STDMETHODIMP[_] and STDMETHODCALLTYPE (#1908) 2019-06-20 00:44:43 +02:00
orbitcowboy a5185c7005 wxwidgets.cfg: Added support form ore interfaces. 2019-06-19 15:33:28 +02:00
orbitcowboy fa20c1671b wxwidgets.cfg: Added support for wxButton::Bind(). 2019-06-19 14:58:54 +02:00
orbitcowboy 067a70ec03 wxwidgets.cfg: Restrict input parameters. No negative status bar field is allowed. 2019-06-19 13:40:39 +02:00
orbitcowboy aecd4ed765 wxwidgets.cfg: Added support for more interfaces. 2019-06-19 13:25:20 +02:00
orbitcowboy e8703036c3 wxwidgets.cfg: Added support for more interfaces. 2019-06-19 13:14:52 +02:00
orbitcowboy 46745e2054 nspr.cfg: Added documentation. 2019-06-16 13:34:00 +02:00
orbitcowboy 9d34ff6fb9 nspr.cfg: Added (limited) support for some macros from Netscape Portable Runtime (NSPR) library. Reference: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR 2019-06-16 13:32:03 +02:00
orbitcowboy 4939e0c308 wxwidgets.cfg: Added support for more interfaces. 2019-06-10 21:11:28 +02:00
orbitcowboy 87e7b57170 wxwidgets.cfg: Added support for more interfaces. 2019-06-10 12:06:06 +02:00
orbitcowboy 2caea15056 wxwidgets.cfg: Added support for more interfaces. 2019-06-09 14:44:06 +02:00
orbitcowboy 1e53cf0397 std.cfg: Added support for std::stringstream::str() 2019-06-07 21:07:22 +02:00
orbitcowboy 92d8b9d68f std.cfg: Added support for std::ofstream::write(). 2019-06-07 21:02:16 +02:00
orbitcowboy 89d4cefa96 std.cfg: Added support for std::distance() and std::set::count(). 2019-06-07 20:57:26 +02:00
orbitcowboy a6e681f71e std.cfg: Added support for std::rotate() and std::rotate_copy(). 2019-06-06 15:04:00 +02:00
orbitcowboy 2b816d09fb std.cfg: Added support for std::min_element() and std::max_element(). 2019-06-06 14:55:37 +02:00
orbitcowboy 9a163e59bf std.cfg: Added support for std::ostream::put() and std::stringstream::put(). 2019-06-06 14:45:51 +02:00
orbitcowboy 080ba9004c std.cfg: Attempt to add (partial) support for std::istringstream::get. 2019-06-05 13:54:38 +02:00
orbitcowboy 0b726d5738 std.cfg: Attempt to add (partial) support for std::istream::get(). 2019-06-05 13:53:01 +02:00
orbitcowboy de15a3de5f windows.cfg: Added support for more constants from <winnt.h>. 2019-06-05 10:42:48 +02:00
orbitcowboy c8850cc132 windows.cfg: Simplified some constants. There are no functional chnanges intended. 2019-06-05 10:15:10 +02:00
orbitcowboy c73d3930cc std.cfg: Added support for more interfaces. 2019-06-04 17:01:30 +02:00
orbitcowboy da3dc168cd std.cfg: Added support for more interfaces. 2019-06-04 16:44:14 +02:00
orbitcowboy 613defbf39 std.cfg: Added support for std::ostream::write() and std::fstream::write(). 2019-06-04 09:02:25 +02:00
orbitcowboy b2fbea3406 wxwidgets.cfg: Added support for more constants from <wx/defs.h> 2019-06-03 21:20:26 +02:00
orbitcowboy f8b79e5187 wxwidgets.cfg: Added support for more event table macros. 2019-06-03 20:58:16 +02:00
orbitcowboy e2878783c5 wxwidgets.cfg: Added support for constants from <wx/dir.h> 2019-06-03 16:43:46 +02:00
orbitcowboy 08b2669a4c wxwidgets.cfg: Added support for more interfaces. 2019-06-03 13:23:34 +02:00
orbitcowboy a44ea9f2ed windows.cfg: Added support for more interfaces. 2019-06-02 13:44:30 +02:00
orbitcowboy 9a41b51a04 gnu.cfg: Added support for isascii_l(), which is a GNU-extension. 2019-05-31 11:24:41 +02:00
orbitcowboy 608ea2f250 posix.cfg: Cleanup not required arg. 2019-05-31 11:24:04 +02:00
orbitcowboy 76738692f2 posix.cfg: Added support for isascii(). 2019-05-31 11:21:50 +02:00
orbitcowboy c13e17ed71 Revert "posix.cfg: Added support for more interfaces."
This reverts commit e596bd63f8.
2019-05-31 11:18:11 +02:00
orbitcowboy e596bd63f8 posix.cfg: Added support for more interfaces. 2019-05-31 11:15:43 +02:00
orbitcowboy ec2278c717 posix.cfg: Added support for more interfaces. 2019-05-31 11:06:25 +02:00
orbitcowboy e0b1eee4af wxwidgets.cfg: Added support for more interfaces. 2019-05-31 10:37:36 +02:00
orbitcowboy a27c88f99b wxwidgets.cfg: Added support for more interfaces. 2019-05-30 17:27:57 +02:00
orbitcowboy 221e96e473 wxwidgets.cfg: Added support for more interfaces. 2019-05-30 17:14:33 +02:00
orbitcowboy 368fa4f54f wxwidgets.cfg: Added support for more interfaces. 2019-05-30 14:57:43 +02:00
orbitcowboy 67c2d90887 wxwidgets.cfg: Added support for more interfaces. 2019-05-30 14:46:42 +02:00
orbitcowboy 16e36d66f9 wxwidgets.cfg: Added support for more interfaces. 2019-05-30 14:41:42 +02:00
orbitcowboy 774556dc10 wxwidgets.cfg: Added support for wxStaticBitmap::SetBackgroundColour(). 2019-05-28 10:52:46 +02:00
orbitcowboy 0b903d12fc wxwidgets.cfg: Added support for more interfaces. 2019-05-28 10:46:34 +02:00
orbitcowboy 6a6e42f3eb wxwidgets.cfg: Added support for more interfaces. 2019-05-28 10:38:32 +02:00
orbitcowboy 197cade317 wxwidgets.cfg: Added (partial) support for wxString::append(). 2019-05-28 09:03:16 +02:00
orbitcowboy cf89f40e32 wxwidgets.cfg: Added support for more interfaces. 2019-05-28 08:58:26 +02:00
orbitcowboy 66e8ec90de wxwidgets.cfg: Added support for wxWindow::ClientToScreen(). 2019-05-28 08:50:38 +02:00
orbitcowboy 02d307a231 posix.cfg: Added partial support for scandir() and a TODO comment. 2019-05-25 23:32:28 +02:00
orbitcowboy 8f2a84ec6c posix.cfg: Added support for telldir(). 2019-05-25 22:49:01 +02:00
orbitcowboy e9aaa5edfa posix.cfg: Added support for more interfaces. 2019-05-22 09:33:44 +02:00
orbitcowboy fbf98b421a posix.cfg: Removed invalid argument checks from functions that accept 'AT_FDCWD', which set to -100 on some systems. 2019-05-21 21:09:16 +02:00
orbitcowboy ed2aa52bbf posix.cfg: Fixed duplicate name 'fstat' -> 'fstatat'. 2019-05-21 16:25:53 +02:00
orbitcowboy 8c0e4a2fc7 posix.cfg: Removed the validation range option from the first parameter of fstatat(). Reference: https://pubs.opengroup.org/onlinepubs/9699919799/functions/fstatat.html 2019-05-21 16:23:41 +02:00
orbitcowboy e63b3a44d8 posix.cfg: Added support for fstatat(). 2019-05-21 15:21:48 +02:00
orbitcowboy 03b4447350 posix.cfg: Added support for flockfile(), funlockfile() and trylockfile(). 2019-05-18 11:29:30 +02:00
orbitcowboy 570969be08 posix.cfg: Added support for lockf(). 2019-05-18 11:07:43 +02:00
orbitcowboy e85e722fb4 posix.cfg: Added support for fchownat(). 2019-05-18 10:59:40 +02:00
orbitcowboy 62c4199bcd posix.cfg: Added support for fchmodat(). 2019-05-18 10:54:17 +02:00
orbitcowboy c0c9f33323 posix.cfg: Added support for mkdirat(). 2019-05-18 10:46:17 +02:00
orbitcowboy d0606844b7 posix.cfg: Added support for umask(). 2019-05-17 15:52:27 +02:00
Daniel Marjamäki e80181d35a astyle formatting
[ci skip]
2019-05-17 09:32:14 +02:00
orbitcowboy 0469111750 gnu.cfg: Improved configuration for mkostemp(), mkstemps() and mkostemps(). 2019-05-16 16:02:05 +02:00
orbitcowboy 719eb25ba9 posix.cfg: Improved configuration for 'mkstemp()' and added test cases to ensure resource leaks are caught. 2019-05-16 15:53:22 +02:00
orbitcowboy fd416eadce wxwidgets.cfg: Added support for more interfaces. 2019-05-13 16:51:34 +02:00
orbitcowboy 9567076845 wxwidgets.cfg: Added support for more interfaces. 2019-05-10 08:54:58 +02:00
Sebastian aa837075a5 wxwidgets.cfg: Add smart pointers from wxWidgets (#1828) 2019-05-09 20:04:39 +02:00
orbitcowboy 6b2db79af9 wxwidgets.cfg: Added support for more interfaces. 2019-05-09 15:31:49 +02:00
orbitcowboy 03d7c82019 wxwidgets.cfg: Added support for more interfaces. 2019-05-05 14:37:26 +02:00
orbitcowboy 961f5c173b wxwidgets.cfg: Added support for more interfaces. 2019-05-05 14:28:22 +02:00
orbitcowboy d0d671761a wxwidgets.cfg: Added support for more interfaces. 2019-05-04 17:46:17 +02:00
orbitcowboy a439b5dcc6 wxwidgets.cfg: Added support for wxArtProvider::GetBitmap() 2019-05-03 23:39:16 +02:00
orbitcowboy de830d90c8 wxwidgets.cfg: Added support for wxMenuItem::SetBitmap() 2019-05-03 23:35:41 +02:00
orbitcowboy 49d1383ff4 wxwidgets.cfg: Added support for wxString::CmpNoCase() 2019-05-03 23:31:15 +02:00
orbitcowboy 456f1c60c4 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 23:29:21 +02:00
orbitcowboy 92be62a6eb gnu.cfg: Ensure the return value of pipe2() is taken into account. 2019-05-03 22:15:46 +02:00
orbitcowboy cda25d7205 posix.cfg: Ensure the return value of pipe() is taken into account. 2019-05-03 22:15:30 +02:00
orbitcowboy 90c6ea53ef posix.cfg: Added support for socketpair(). 2019-05-03 20:52:10 +02:00
Sebastian 96a7c19b91
qt.cfg: Add smart pointers from Qt (#1819) 2019-05-03 13:21:49 +02:00
orbitcowboy bf358408d9 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 11:57:24 +02:00
orbitcowboy deedd7493c wxwidgets.cfg: Added support for more interfaces. 2019-05-03 11:54:24 +02:00
orbitcowboy 6a281b90b4 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 11:40:49 +02:00
orbitcowboy 8b157a7b9c wxwidgets.cfg: Added support for more interfaces. 2019-05-03 11:31:57 +02:00
orbitcowboy 93e963bac5 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 11:28:30 +02:00
orbitcowboy 1c896fc7f7 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 10:10:58 +02:00
orbitcowboy 0a3fdd3981 wxwidgets.cfg: Added support for more interfaces. 2019-05-03 10:03:06 +02:00
orbitcowboy 2635e7d073 wxwidgets.cfg: Added support for more interfaces. 2019-05-02 16:20:37 +02:00
orbitcowboy 9bd007520b wxwidgets.cfg: Added support for wxStandardPaths::MSWGetShellDir(). 2019-05-02 11:34:15 +02:00
orbitcowboy b81390c098 wxwidgets.cfg: Added support for wxCONCAT(), wxSTRINGIZE_T() and wxSTRINGSIZE() macros. 2019-05-02 11:30:30 +02:00
Paul Fultz II 091f4bcf8d Add check for unnecessary search before insertion
This will warn for cases where searching in an associative container happens before insertion, like this:

```cpp
void f1(std::set<unsigned>& s, unsigned x) {
    if (s.find(x) == s.end()) {
        s.insert(x);
    }
}

void f2(std::map<unsigned, unsigned>& m, unsigned x) {
    if (m.find(x) == m.end()) {
        m.emplace(x, 1);
    } else {
        m[x] = 1;
    }
}
```

In the case of the map it could be written as `m[x] = 1` as it will create the key if it doesnt exist, so the extra search is not necessary.

I have this marked as `performance` as it is mostly concerning performance, but there could be a copy-paste error possibly, although I dont think thats common.
2019-05-02 11:04:23 +02:00
orbitcowboy 76cc8ccde2 posix.cfg: Added directions for some interfaces. 2019-05-01 19:57:10 +02:00
orbitcowboy 953895278b posix.cfg: Improved configuration fo fileno(). 2019-05-01 13:58:54 +02:00
orbitcowboy d36fcbd945 posix.cfg: Added support for dirfd(). 2019-05-01 13:54:23 +02:00
orbitcowboy c8dce14303 wxwidgets.cfg: Added support for more interfaces. 2019-04-27 18:36:48 +02:00
amai2012 b5ee9d97ef Move some signal constants from posix.cfg to std.cfg. Add some more interfaces to posix.cfg 2019-04-26 19:26:04 +02:00
orbitcowboy d724f86e01 gnu.cfg: Added support for tee(). Reference: http://man7.org/linux/man-pages/man2/tee.2.html 2019-04-26 17:55:47 +02:00
orbitcowboy 3ca2db062c wxwidgets.cfg: Added support for wxRect::Contains(). 2019-04-26 17:46:09 +02:00
orbitcowboy 322ef3ebb3 wxwidgets.cfg: Fixed wrong function name. 2019-04-26 17:43:19 +02:00
orbitcowboy 754e5f6529 wxwidgets.cfg: Added support for more interfaces. 2019-04-26 17:41:08 +02:00
orbitcowboy 7d0bb0dc29 posix.cfg: Improved validation of file descriptors. 2019-04-26 16:58:21 +02:00
orbitcowboy 2dd42b867f gnu.cfg: Added support for dup3(). Reference: http://man7.org/linux/man-pages/man2/dup2.2.html 2019-04-26 16:57:43 +02:00
orbitcowboy 2d7323c65f posix.cfg: Added support for sendfile(). 2019-04-26 16:47:49 +02:00
orbitcowboy c693e8969d gnu.cfg: Added support for more interfaces. 2019-04-26 16:39:04 +02:00
Sebastian 53357f2f31
boost.cfg: Add configuration for Boosts smart pointers (#1811) 2019-04-26 12:41:44 +02:00
orbitcowboy bc7e835524 posix.cfg: Added support for ttyname_r(). 2019-04-26 10:24:10 +02:00
orbitcowboy 6d681a0959 posix.cfg: Issue a warning in case a function accepting a file descriptor is called with a negative value. 2019-04-26 10:16:29 +02:00
orbitcowboy f288e18c2c posix.cfg: Added support for more interfaces. 2019-04-26 09:48:38 +02:00
orbitcowboy 254cdd3b19 windows.cfg: Issue a warning in case _close() is called with a negative file descriptor. 2019-04-26 09:26:25 +02:00
orbitcowboy c0b533c452 gnu.cfg: Warn for socket/file-descriptors having negatives values. 2019-04-25 17:07:44 +02:00
orbitcowboy c4fb56e550 posix.cfg: Warn for socket/file-descriptors having negatives values. 2019-04-25 17:04:30 +02:00
orbitcowboy 4a91b7ec77 Merge branch 'master' of https://github.com/danmar/cppcheck 2019-04-25 16:58:47 +02:00
orbitcowboy df49b56a6f posix.cfg: Added support for openat(). Reference: http://man7.org/linux/man-pages/man2/openat.2.html 2019-04-25 16:56:22 +02:00
amai2012 9692c3dde7 Add macros from signal.h 2019-04-25 12:17:26 +02:00
Daniel Marjamäki 87a3d2caa1 std.cfg: Add auto_ptr and weak_ptr configs 2019-04-24 14:21:26 +02:00
Daniel Marjamäki 2513c1499b Library: Added <smart-pointer> element 2019-04-24 13:06:58 +02:00
orbitcowboy 751902da86 posix.cfg: Added more 'direction'-attributes. 2019-04-21 12:34:44 +02:00
orbitcowboy 45a3f679b4 posix.cfg: Improved configuration for close(). Issue a warning in case close is called with a file pointer having a negative value. 2019-04-21 12:28:17 +02:00
amai2012 2788d9f7d2 Correct two recently added macros 2019-04-19 15:43:17 +02:00
amai2012 cfe11acf82 Supply BE() and ASSERT() macros 2019-04-19 12:10:42 +02:00
versat 206488c0ea gtk.cfg: Add some g_list_*() function / macro configurations.
Found missing by daca@home.
2019-04-18 10:49:02 +02:00
versat 5579ea3338 motif.cfg: Add configuration for XFree() 2019-04-16 11:22:08 +02:00
orbitcowboy 2105247934 wxwidgets.cfg: Added support for wxPropertyGridManager::Enable(). 2019-04-12 13:49:12 +02:00
orbitcowboy a46136de91 wxwidgets.cfg: Added wxPathFormat constants. 2019-04-08 13:27:34 +02:00
orbitcowboy f6136c513a wxwidgets.cfg: Added support for wxFileName::GetPathSeparator(). 2019-04-08 11:47:09 +02:00
orbitcowboy 501cea7e01 wxwidgets.cfg: Fixed wrong configuration for wxString::Mid() 2019-04-05 09:31:48 +02:00
orbitcowboy 1b9b5168d0 daca.cfg: Turned macros into functions to avoid problems with macros like 'MIN(a,b,c)'. 2019-04-05 09:28:15 +02:00
orbitcowboy 45a7038fbb wxwidgets.cfg: Added supprot for more interfaces 2019-04-05 09:27:23 +02:00
orbitcowboy b0168066dc Added daca.cfg. 2019-04-05 09:05:31 +02:00
orbitcowboy 3d765eacaf wxwidgets.cfg: Added support for more interfaces. 2019-04-05 08:44:06 +02:00
orbitcowboy 0590cebaac wxwidgets.cfg: Added support for more interfaces. 2019-04-05 08:27:24 +02:00
versat e0e262ae25 gnu.cfg: Use function configuration for `_()` instead of define.
There can be preprocessor issues if the macro is used slightly different
or preprocessor conditions are used inside the string argument.
So now a function configuration with very few assumptions is used.
It is assumed that the function does return and has one parameter.
The same configuration is added for N_() since it works similar.
2019-04-03 16:02:55 +02:00
orbitcowboy 7ac3bf5fd8 std.cfg: Removed MIN/MAX macros since they cause problems with http://cppcheck.osuosl.org:8000/amap-align 2019-04-03 09:11:48 +02:00
Daniel Marjamäki b88cc7c19d Fix std.cfg 2019-04-01 20:28:31 +02:00
Daniel Marjamäki 761f18c75c Fixed #8988 (False positive: using memset on struct) 2019-04-01 19:32:03 +02:00
versat 974f01ce59 gtk.cfg: Add / improve g_str*() functions and add GTK_SIGNAL_FUNC(). 2019-04-01 16:15:32 +02:00
versat 9d8b965270 gtk.cfg: Add / improve g_string_*() function configurations.
daca@home reported missing configurations for most of them.
2019-04-01 15:33:27 +02:00
versat 5134fefb52 gnu.cfg: Add support for bswap*() macros. 2019-04-01 14:25:59 +02:00
versat 7832d69edf windows.cfg: Add *LANGID() macros. 2019-04-01 13:58:56 +02:00
orbitcowboy ea7cba8bc0 windows.cfg: Added support for GetCommState(). 2019-04-01 13:22:24 +02:00
orbitcowboy 0feb27e9b3 wxwidgets.cfg: Added support for wxPGProperty::SetChoices(). 2019-04-01 13:19:49 +02:00
orbitcowboy 5c5f8e7db3 wxwidgets.cfg: Added support for wxPropertyGridInterface::SetPropertyHelpString(). 2019-04-01 13:15:47 +02:00
orbitcowboy e98ddb6cc5 gnu.cfg: Added support for pipe2(). 2019-03-30 15:50:18 +01:00
orbitcowboy a3b7524c84 posix.cfg: Added minsize attribute to pipe(). 2019-03-30 15:49:52 +01:00
Sebastian 74babafb21
windows.cfg: Add buffer-size attribute to HeapAlloc(). (#1770) 2019-03-30 08:07:44 +01:00
orbitcowboy 51b0ab0e77 wxwidgets.cfg: Removed redundant defines. 2019-03-29 14:42:39 +01:00
orbitcowboy 5c01f3e6eb wxwidgets.cfg: Added support for some defines from <wx/property.h> 2019-03-29 13:41:54 +01:00
orbitcowboy 682069d512 wxwidgets.cfg: Added support for more interfaces. 2019-03-29 10:23:01 +01:00
orbitcowboy 132b679693 wxwidgets.cfg: Added support for more interfaces. 2019-03-29 10:16:17 +01:00
orbitcowboy 2a540215b7 wxwidgets.cfg: Added support for more interfaces. 2019-03-29 10:05:25 +01:00
orbitcowboy eadf33c911 windows.cfg: Added support for GetCommMask(). Reference: https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-getcommmask 2019-03-29 09:41:56 +01:00
orbitcowboy a6d40f6323 windows.cfg: Added support for FlushFileBuffers(). Reference: https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-flushfilebuffers 2019-03-29 09:35:36 +01:00
orbitcowboy 0beb78e6ed windows.cfg: Added support for PurgeCom(). Reference: https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-purgecomm 2019-03-29 09:31:06 +01:00
orbitcowboy 7dea4bae89 windows.cfg: Added 'File Attribute Constants' from https://docs.microsoft.com/en-us/windows/desktop/fileio/file-attribute-constants 2019-03-29 09:25:39 +01:00
orbitcowboy dea07b2033 windows.cfg: Added support for SetupComm(). Reference https://docs.microsoft.com/en-us/windows/desktop/api/winbase/nf-winbase-setupcomm 2019-03-29 09:15:58 +01:00
versat 3917a14c99 sqlite3.cfg: Add more allocation and function configurations. 2019-03-28 10:42:11 +01:00
versat b2803f56b4 sqlite3.cfg: Add defines for SQLite constants. 2019-03-28 08:23:32 +01:00
Sebastian 6976d5c6e2
gtk.cfg: Add support for g_new() and similar macros. (#1760)
Also add / improve corresponding function configurations and some tests.
2019-03-26 10:45:06 +01:00
versat c6cf61e704 windows.cfg: Add direction attributes for remaining functions. 2019-03-25 12:44:10 +01:00
orbitcowboy 9bfe7d74c0 windows.cfg: Fixed FP for invalidFunctionArg in second argument of _getcwd(). Reference: https://docs.microsoft.com/en-us/previous-versions/sf98bd4y(v%3Dvs.140) 2019-03-25 09:07:02 +01:00
Sebastian 8efa106d2a
windows.cfg: Add direction attributes; fix and enhance configurations. (#1750) 2019-03-22 19:50:27 +01:00
versat e8d5838424 windows.cfg: Remove buffer-size for HeapAlloc(); travis problems.
There is an internal error somewhere in the tests for the Heap*
functions. Removing the attribute maybe makes travis happy again for
now. The problem should get fixed though.
2019-03-22 16:19:51 +01:00
versat 0d14bdac22 windows.cfg: Add "buffer-size" attributes, fix allocation configuration.
Memory allocated with `_aligned_*malloc*()` must be freed with
`_aligned_free*()`. Using `free()` is illegal.
See
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/aligned-malloc
for details.
Also add tests for some of the changed functions.
2019-03-22 13:11:03 +01:00
versat 7c09b0cfe0 gnu.cfg: Add "buffer-size" attribute and tests for xcalloc(). 2019-03-21 10:44:18 +01:00
versat 316475f79f std.cfg: Add "buffer-size" attribute and tests for aligned_alloc(). 2019-03-21 09:25:42 +01:00
Daniel Marjamäki 55433fce40 Library: added bufferSize parameters 2019-03-20 19:26:57 +01:00
versat 0372c9cde6 gtk.cfg: Add buffer-size attribute to `alloc` entries. 2019-03-20 16:30:28 +01:00
versat e8c2ea5db2 qt.cfg: Add support for QApplication::translate(). 2019-03-20 16:27:15 +01:00
versat 45b1c717ae gtk.cfg: Add support for g_object_(get|set)_data[_full](). 2019-03-20 16:10:18 +01:00
versat b6953a46d7 qt.cfg: Fixes, enhancements and adding argument directions. 2019-03-20 14:33:29 +01:00
Sebastian 432c04281a
Libraries: Move valloc() from std.cfg to posix.cfg. (#1743)
Move valloc() to posix.cfg since it is a legacy POSIX function and not
part of the standard (not even commonly used). It is not available in
msvc (Visual Studio).
2019-03-20 14:10:36 +01:00
Daniel Marjamäki 14528bcf25 Library: allowed values for the buffer-size attribute: malloc/calloc/strdup 2019-03-20 06:46:55 +01:00
versat 9b6b94336c gnu.cfg: Add buffer-size to xmalloc; add some __builtin_*() functions. 2019-03-19 15:24:02 +01:00
versat bb7888e70b gnu.cfg: Add support for pvalloc() and __builtin_alloca(). 2019-03-18 11:44:35 +01:00
versat 992e1293b7 ruby.cfg: Configure rb_raise() as `noreturn` function.
rb_raise() exits the function and returns to the ruby script.
Used for example to exit a function if arguments are not valid.
2019-03-18 10:04:29 +01:00
Sebastian 19e9e42dd7
Library: Enhance minsize configuration and allow simple values. (#1736)
Some POSIX and Windows functions require buffers of at least some
specific size. This is now possible to configure via for example this
minsize configuration: `<minsize type="value" value="26"/>`.
The range for valid buffer size values is 1 to LLONG_MAX
(9223372036854775807)
2019-03-17 14:22:26 +01:00
Daniel Marjamäki 18668a52b9 Library: Added buffer-size attribute for <alloc> 2019-03-17 10:55:15 +01:00
versat 0cb45b1f42 gtk.cfg: Add more macros and some functions used in the macros. 2019-03-15 14:51:45 +01:00
versat 6f7612de03 boost.cfg: Add argument directions; some fixes; rearrange and document.
- Remove redundant function configurations for the same function since
it is not (yet) possible to configure overloaded functions. Instead mark
the optional arguments with `default="0"` so the configuration works
with a different number of arguments.
- Add documentation to boost.cfg (links and function declarations).
- Rearranged configurations so functions, defines, ... are together now.
- Add `direction` for function arguments where applicable.
- Add some tests to boost.cpp.
2019-03-15 11:13:08 +01:00
Sebastian 08d41ab8af
Load std.cfg before all other libraries (#1740)
- CLI: Save the libraries that should be loaded to a list and load them
after the std.cfg has been loaded.
- GUI: Load std.cfg (and windows.cfg / posix.cfg when applicable) before
setting other options and loading the other libraries.
In the project-file-dialog the std.cfg is searched first. If some
other library fails to load is is retried with first loading std.cfg.
- boost.cfg: Enable containers that depend on std containers.
2019-03-15 06:59:37 +01:00
versat 7911684399 Run astyle [ci skip]. 2019-03-14 09:58:55 +01:00
versat 3d02c10fde gnu.cfg: Further fixes, enhancements and adding argument directions. 2019-03-14 09:26:27 +01:00
Sebastian Held e9f25bed3f qt.cfg: add logging macro definition (#1738) 2019-03-14 06:14:51 +01:00
versat d5c5feafb2 gnu.cfg: Fixes, enhancements and adding argument directions. 2019-03-13 16:17:16 +01:00
versat 11ee9c6b90 zlib.cfg: Fixes, enhancements and adding argument directions. 2019-03-13 15:03:11 +01:00
Sebastian 1230357146
Library: Add initial configuration with tests for SQLite3 library. (#1737) 2019-03-13 13:57:40 +01:00
orbitcowboy fd2a0f22a7 wxwidgets.cfg: Added support for more interfaces. 2019-03-13 13:41:54 +01:00
orbitcowboy 5a72d834ac wxwidgets.cfg: Added support for more interfaces. 2019-03-13 11:47:13 +01:00
orbitcowboy d0b2dd0b93 wxwidgets.cfg: Added support for more interfaces. 2019-03-12 16:43:50 +01:00
orbitcowboy 46e8c63897 wxwidgets.cfg: Added support for more interfaces. 2019-03-12 16:40:42 +01:00
orbitcowboy 948ee4668d wxwidgets.cfg: Added support for more interfaces. 2019-03-12 16:17:23 +01:00
versat 0a57b76c79 opengl.cfg: Fix size of 64 bit types. 2019-03-12 16:09:08 +01:00
versat 1b74bca973 posix.cfg: Further fixes/enhancements; adding more argument directions. 2019-03-12 13:35:06 +01:00
versat 12941721d2 posix.cfg: Further fixes/enhancements; adding more argument directions. 2019-03-12 11:41:10 +01:00
orbitcowboy 9047751de0 wxwidgets.cfg: Added support for more interfaces. 2019-03-12 11:39:18 +01:00
orbitcowboy 3b9fb54104 wxwidgets.cfg: Added support for wxPropertyGridManager::ShowHeader(). 2019-03-12 09:23:34 +01:00
versat bb6874e4c1 posix.cfg: sched_*() functions: Enhance and add argument directions. 2019-03-12 09:17:43 +01:00
orbitcowboy 2535979f76 wxwidgets.cfg: Added support for more interfaces. 2019-03-12 08:52:12 +01:00
orbitcowboy 1657439b18 wxwidgets.cfg: Added support for more interfaces. 2019-03-11 16:33:35 +01:00
orbitcowboy 00d90d94fe wxwidgets.cfg: Added support for more interfaces. 2019-03-11 16:04:43 +01:00
orbitcowboy 2814814af3 wxwidgets.cfg: Added support for more interfaces. 2019-03-11 16:00:45 +01:00
orbitcowboy 28ba142714 wxwidgets.cfg: Added support for more interfaces. 2019-03-11 15:55:25 +01:00
versat f21c3b13f1 posix.cfg: Further fixes/enhancements; adding more argument directions 2019-03-11 15:40:53 +01:00
orbitcowboy f449e75214 std.cfg: Added support for std::getline(). 2019-03-11 15:32:15 +01:00
versat 33e3ce232a posix.cfg: Fixes, enhancements and adding more argument directions.
Add `<use-retval/>` to htonl(), htons(), ntohl(), ntohs(), inet_addr()
and inet_ntoa().
Enhance argument configurations of message queue functions (mq_*()).
2019-03-11 14:11:47 +01:00
versat 7b958e788d posix.cfg: Fixes and adding more argument directions.
Fixes: The "length" argument of mmap*() and munmap() calls must be
greater than 0.
2019-03-11 11:20:07 +01:00
orbitcowboy b9d2a1291c wxwidgets.cfg: Added support for more interfaces. 2019-03-10 15:37:35 +01:00
orbitcowboy 2f6a4c3885 wxwidgets.cfg: Added support for more interfaces. 2019-03-10 15:25:25 +01:00
orbitcowboy f0d167c328 wxwidgets.cfg: Added support for more interfaces. 2019-03-10 15:18:01 +01:00
orbitcowboy 620e912bfa wxwidgets.cfg: Added support for more interfaces. 2019-03-10 15:13:45 +01:00
orbitcowboy 7dec499219 wxwidgets.cfg: Added support for more interfaces. 2019-03-10 15:11:10 +01:00
orbitcowboy 8fa4b4b7ee wxwidgets.cfg: Added support for more interfaces. 2019-03-10 14:59:39 +01:00
orbitcowboy 5426a984b3 windows.cfg: Removed TEXT()-macro support since it is already handled internally by Cppcheck. A corresponding comment was added into the configuration file. 2019-03-10 14:09:48 +01:00
orbitcowboy 279aef4456 wxwidgets.cfg: Added support for more interfaces. 2019-03-09 12:21:10 +01:00
orbitcowboy 91394c4a48 wxwidgets.cfg: Added support for more interfaces. 2019-03-09 12:19:34 +01:00
orbitcowboy f0f2d1833d windows.cfg: Added support for TEXT()-macro. Ref.: https://docs.microsoft.com/en-us/windows/desktop/api/winnt/nf-winnt-text 2019-03-09 12:07:12 +01:00
orbitcowboy 17033976f5 wxwidgets.cfg: Added support for more interfaces. 2019-03-08 18:10:38 +01:00
orbitcowboy 8bb7a899bd wxwidgets.cfg: Added support for more interfaces. 2019-03-08 18:06:09 +01:00
orbitcowboy e6a00b4dd5 wxwidgets.cfg: Added support for more interfaces. 2019-03-08 17:57:50 +01:00
orbitcowboy 6aef4a16e6 windows.cfg: Fixed wrong arg number in recv(). 2019-03-08 13:04:39 +01:00
orbitcowboy ecff903b4f wxwidgets.cfg: Added support for more interfaces. 2019-03-07 07:57:21 +01:00
orbitcowboy 7a47230983 wxwidgets.cfg: Added support for more interfaces. 2019-03-07 07:53:43 +01:00
orbitcowboy 63368d41bb wxwidgets.cfg: Added support for more interfaces. 2019-03-07 00:55:10 +01:00
Sebastian 0bab9d778b
std.cfg: Fix wprintf(), add comment to swprintf(). (#1729)
wprintf(): The format string must be initialized. So add `<not-uninit/>`
swprintf(): `<formatstr/>` should not be used because Microsoft uses the
same function with a different order of the arguments. Add comment to
document this in the library configuration also. See ticket
https://trac.cppcheck.net/ticket/4790
2019-03-06 21:13:48 +01:00
Sebastian 1fe1fc7008
gnu.cfg: Add support for non-GNU _(string) macro. (#1726)
As can be read here:
https://www.gnu.org/software/gettext//manual/html_node/Mark-Keywords.html
The _(str) macro is typically defined for a project to abbreviate the
gettext(str) call. Although this is not part of GNU it would enhance the
analysis. Cppcheck often does not know what _() is. In daca@home it is
reported thousands of times as a function without configuration.
2019-03-06 10:57:59 +01:00
versat ecba3db9cc posix.cfg: Start specifying direction for arguments to functions.
There are still many functions with arguments that need a direction
specified.
2019-03-06 10:08:46 +01:00
orbitcowboy b7c40d972b boost.cfg: Fixed typo in macro. 2019-03-05 19:00:13 +01:00
orbitcowboy 2ddba8f352 boost.cfg: Added support for BOOST_LOG_ATTRIBUTE_KEYWORD-macro. 2019-03-05 18:53:34 +01:00
orbitcowboy 8c0ab16863 std.cfg: Added support for more interfaces. 2019-03-05 18:13:42 +01:00
orbitcowboy 49937570b2 wxwidgets.cfg: Added more directions-attributes. 2019-03-05 17:45:29 +01:00
versat df73f7f355 std.cfg, windows.cfg: Move strcpy_s from windows.cfg to std.cfg.
strcpy_s belongs to the standard so it must be in std.cfg instead of
windows.cfg.
Configuration for strcpy_s has been improved and tests were added.
Found by daca@home
2019-03-05 15:33:16 +01:00
versat 0ae24b950f std.cfg: Add support for snprintf_s().
sprintf_s works very similar but it is already configured in the
windows library. Configuring sprintf_s in std.cfg leads to conflicts in
the windows configuration tests.
Found by daca@home
2019-03-05 14:44:33 +01:00
versat ce818631ab std.cfg: Add support for ctime_s(). 2019-03-05 13:57:52 +01:00