Commit Graph

1296 Commits

Author SHA1 Message Date
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 () 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. () 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(). ()
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. ()
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
Sebastian 9efb720a98
std.cfg: Add missing argument directions as far as possible. ()
I added all argument directions i know or where i was able to find
information without too much effort. When in doubt i looked at the
Microsoft SAL annotations and used similar configurations when this
made sense.
2019-03-05 13:45:41 +01:00
Sebastian 0934577dda
Library configuration: function argument direction fixes and enhancements ()
* std.cfg: Add further argument directions (in, out, inout).

* testlibrary.cpp: Add test for function argument direction configuration.

* std.cfg: runastyle and add some more direction configurations.

* library.h: Add documentation for function argument direction enum.

* Do not use "direction" library information for pointer arguments.

Also fix further unmatched uninitvar messages in std configuration
tests.

* std.cfg: Add more argument direction configurations.

* test/cfg/std.c: Add test for argument direction configuration.

* astutils.cpp: Only ignore pointer arguments for out/inout arguments.

* library.h: Use suggested documentation for argument direction enum.
2019-03-04 22:57:40 +01:00
versat 0498b9ec34 opgengl.cfg: Introduce OpenGL library configuration file.
Prepare donate-cpu.py to detect OpenGL library usage but comment it
out for now.
2019-03-04 14:10:06 +01:00
orbitcowboy a4b127f6a8 wxwidgets.cfg: Added more directions-attributes. 2019-03-04 12:11:18 +01:00
orbitcowboy 782958d814 wxwidgets.cfg: Added more directions-attributes. 2019-03-04 10:53:25 +01:00
orbitcowboy 391ed97717 gtk.cfg: Added support for more macros. 2019-03-04 10:43:21 +01:00
orbitcowboy f723c6b191 wxwidgets.cfg: Added more directions-attributes. 2019-03-04 10:32:35 +01:00
orbitcowboy 794d72d776 wxwidgets.cfg: Added more directions-attributes. 2019-03-04 10:26:37 +01:00
orbitcowboy 9c7eff5b69 wxwidgets.cfg: Added more directions-attributes. 2019-03-03 18:42:17 +01:00
orbitcowboy a9658607d7 qt.cfg: Added support for some QTC_ASSERT()-macros. This fixes a bunch of 'unknownMacros'-warnings from daca@home. 2019-03-03 18:42:02 +01:00
orbitcowboy 8c6f1ca24f wxwidgets.cfg: Started to add 'direction'-attributes. 2019-03-03 18:03:18 +01:00
orbitcowboy 7d266e688c gtk.cfg: Added support for more interfaces. 2019-03-03 17:42:58 +01:00
orbitcowboy f66dde018d gtk.cfg: Added support for GTK_DIALOG-macro. 2019-03-03 17:28:05 +01:00
orbitcowboy 915280beec gtk.cfg: Added support for GTK_LABEL-macro. 2019-03-03 17:25:49 +01:00
orbitcowboy 68f4243c89 gtk.cfg: Added support for GTK_TREE_VIEW-macro. 2019-03-03 17:22:35 +01:00
Sebastian 9a5fcddb5d
Library configuration: Enable configuring the direction of arguments. ()
This enhances the library configuration so the direction of function
arguments can be specified (in, out, inout).
isVariableChangedByFunctionCall() uses this information now to avoid
guessing.
2019-03-01 15:47:08 +01:00
orbitcowboy aa4265978c std.cfg: Added support for std::list::remove(). 2019-03-01 15:10:36 +01:00
orbitcowboy 16e3a0ada6 std.cfg: Added support for std::shuffle() and std::random_shuffle(). 2019-03-01 15:05:10 +01:00
versat 24739dc5f2 gtk.cfg: Add support for g_message() and similar printf like functions.
g_error() is special because it never returns.
2019-03-01 11:20:28 +01:00
orbitcowboy 9348a627e0 std.cfg: Added support for more interfaces. 2019-03-01 09:28:46 +01:00
orbitcowboy 360823203f windows.cfg: Ensure the return value is taken into account for memory (re)-allocation functions. 2019-03-01 08:58:53 +01:00
orbitcowboy 2fad53e4f8 std.cfg: Enusre the return value of realloc()-functions is taken into account. 2019-03-01 08:57:59 +01:00
orbitcowboy 910adb0076 wxwidgets.cfg: Added support for more interfaces. 2019-02-28 23:46:17 +01:00
orbitcowboy fa59cb91cb gnu.cfg: Added <use-retval/> to xrealloc() configuration. 2019-02-28 23:45:51 +01:00
orbitcowboy c0bec7ef69 wxwidgets.cfg: Added support for wxDC::DrawEllipse(). 2019-02-28 23:21:46 +01:00
orbitcowboy f70e01b2b1 std.cfg: Added (experimental) support for MIN/MAX-macros. In case it turnes out this causes unexpected side effects, they can be easily removed. 2019-02-28 23:03:38 +01:00
orbitcowboy b222ff14be gnu.cfg: Added support fo xexit(). 2019-02-28 22:55:17 +01:00
orbitcowboy 80e31755da gnu.cfg: Added support for xrealloc(). 2019-02-28 22:48:39 +01:00
orbitcowboy 43daaca19c gnu.cfg: Added support for xstrdup(). 2019-02-28 22:46:16 +01:00
orbitcowboy e6d36913c8 gnu.cfg: Added support for xmalloc() and xcalloc(). Reference: https://gcc.gnu.org/onlinedocs/libiberty/Functions.html 2019-02-28 22:36:52 +01:00
Sebastian 71b1b2dd76
std.cfg: Add support for std::vector::assign(). ()
Reference:
https://en.cppreference.com/w/cpp/container/vector/assign
2019-02-28 18:43:54 +01:00
versat 7ccf4b9a0d qt.cfg: Add support for some QTimer functions.
Reference:
https://doc.qt.io/qt-5/qtimer.html
2019-02-28 16:07:11 +01:00
versat f6c3749015 gtk.cfg: Add support for g_alloca() and g_newa().
References:
https://developer.gnome.org/glib/stable/glib-Memory-Allocation.html#g-alloca
https://github.com/GNOME/glib/blob/master/glib/galloca.h
2019-02-28 15:29:37 +01:00
Martin Ettl fe402498e1 qt.cfg: Added support for Q_DECLARE_PUBLIC()-macro. 2019-02-27 15:38:31 +01:00
Martin Ettl 17c1733b0e gnu.cfg: Added support for asprintf() and vasprintf(). There is a FN with memory leak detection regarding pointer args, which is already mentioned in . A comment has been added. 2019-02-27 15:17:34 +01:00
Thomas Niederberger 084c7c284e Add missing Qt macros ()
Add two Qt macros that were missing
2019-02-27 15:11:34 +01:00
Sebastian 2a45d390f3
gtk.cfg: Add support for gtk_label_new(), enhance gtk_label_get(). ()
References:
https://developer.gnome.org/gtk3/stable/GtkLabel.html#gtk-label-new
https://developer.gnome.org/gtk2/stable/GtkLabel.html#gtk-label-get
Found by daca@home.
2019-02-27 12:56:21 +01:00
Sebastian 13b37631a6
std.cfg: Add support for std::vector::swap() and std::swap() ()
References:
https://en.cppreference.com/w/cpp/container/vector/swap
https://en.cppreference.com/w/cpp/algorithm/swap
2019-02-26 18:21:17 +01:00
Sebastian d7e219043a
Library configuration validation: Enhance relaxng file (arg elements) ()
Make sure that the elements of function->arg contain no duplicates.
Except for 'minsize' which can be specified zero to many times.
2019-02-26 14:00:54 +01:00
Sebastian 61f911d39a
qt.cfg: Add Q_DECLARE_TR_FUNCTIONS() and others ()
Add unknownMacro Q_DECLARE_TR_FUNCTIONS found via daca@home.
Add function QCoreApplication::translate() and macro
QT_DECLARE_DEPRECATED_TR_FUNCTIONS() the unknownMacro depends on.
Reference:
https://doc.qt.io/qt-5/qcoreapplication.html#Q_DECLARE_TR_FUNCTIONS
https://doc.qt.io/qt-5/qcoreapplication.html#translate
2019-02-26 13:39:37 +01:00
orbitcowboy 4e6d4e4ddd wxwidgets.cfg: Added support for more interfaces. 2019-02-25 16:38:52 +01:00
orbitcowboy 86e3ce7a47 wxwidgets.cfg: Added support for more interfaces. 2019-02-25 16:31:16 +01:00
Andreas Bacher 587474e3b0 qt.cfg: Add support for further qtest macros & add definition for macros Q_ASSERT, Q_ASSERT_X ()
Thanks!
2019-02-25 14:07:57 +01:00
Daniel Marjamäki 09d505219c qt.cfg: add implementations for macros to avoid unreadVariable FPs 2019-02-24 20:58:07 +01:00
Daniel Marjamäki 56d68d1aae googletest.cfg: added simple macro implementations 2019-02-24 20:52:51 +01:00
orbitcowboy d218fa5919 std.cfg: Added support for more interfaces. 2019-02-24 18:43:07 +01:00
orbitcowboy 406b29548a std.cfg: Added support for more interfaces. 2019-02-24 18:35:02 +01:00
Andreas Bacher 6760958e67 itions of QCOMPARE, QVERIFY & QVERIFY2, this are qtest macros not asserts ()
* qt.cfg: Changed definitions of QCOMPARE, QVERIFY & QVERIFY2, this are qtest macros not asserts

* qt.cfg: Add support for further qtest macros
2019-02-24 16:44:48 +01:00