Commit Graph

1032 Commits

Author SHA1 Message Date
orbitcowboy be3a96929f wxwidgets.cfg: Added support for more functions from various classes. 2018-11-28 17:01:27 +01:00
orbitcowboy 4c57f0d33c std.cfg: Improved support for std::lower_bound() and std::upper_bound(). 2018-11-27 13:55:06 +01:00
orbitcowboy ef77452444 windows.cfg: Added support for _putenv() and _wputenv(). 2018-11-27 13:36:39 +01:00
orbitcowboy 18c234e277 windows.cfg: Add support for _getche() and _getwche(). 2018-11-26 14:34:40 +01:00
orbitcowboy e18c846ed9 windows.cfg: Added support for _gettch() and _getch(). 2018-11-26 13:53:13 +01:00
Daniel Marjamäki 5e727f92a0 googletest: add TEST_P 2018-11-23 18:55:05 +01:00
orbitcowboy ef05be2600 wxwidgets.cfg: Fixed FP due to overlaoded function wxSizer::Add(). 2018-11-23 09:49:08 +01:00
orbitcowboy 428d0147bc wxwidgets.cfg: Added support for wxSizer::Add(). 2018-11-22 14:04:22 +01:00
orbitcowboy d6c85118a7 wxwidgets.cfg: Improved support for some wxStaticText member functions. 2018-11-22 13:47:17 +01:00
orbitcowboy 2b9bdc52d7 wxwidgets.cfg: Added support for wxWindow::Close() and derived classes. 2018-11-22 13:31:09 +01:00
Daniel Marjamäki ff3fd80b46 googletest.cfg: Fix file format 2018-11-21 10:20:05 +01:00
Daniel Marjamäki 9d8e5e36eb Added a few TODO comments 2018-11-20 22:57:01 +01:00
Daniel Marjamäki 36a84c5406 add googletest.cfg 2018-11-20 18:47:27 +01:00
orbitcowboy b4aa04db41 std.cfg: Added returnValue calculation for isless(), islessgreater() etc. 2018-11-20 16:58:33 +01:00
orbitcowboy a722ba4f89 std.cfg: Improved return value configuration for std::min() and std::max(). 2018-11-20 16:07:16 +01:00
orbitcowboy 58b3d75b62 std.cfg: Added invalidFunctionArg cfg for strchr(). 2018-11-20 08:32:54 +01:00
yurii.putin 2aecd30cd8 Change cfg
Add some function (posix_memalign, reallocarray,aligned_alloc,valloc) to cfg. Add attribute format-str to some function.
2018-11-19 18:23:00 +01:00
orbitcowboy df1c23f826 zlib.cfg: Added zlib.cfg (ref. https://www.zlib.net/manual.html ) 2018-11-05 17:25:02 +01:00
orbitcowboy ba28cbe0ff gnu.cfg: Replaced '__builtin_memset' definition with macro definition, since it is equal to 'memset' from std.cfg. 2018-10-30 15:37:20 +01:00
orbitcowboy b998dcb5aa gnu.cfg: Added support for '__builtin_memset'. 2018-10-27 18:25:05 +02:00
Sebastian cf44964f20
qt.cfg: Define "qreal" as "double" (#1416)
By default "qreal" is a typedef for "double".
Reference: https://doc.qt.io/qt-5/qtglobal.html#qreal-typedef
2018-10-09 14:52:09 +02:00
orbitcowboy 879803c90f gnu.cfg: Fixed FP (nullpointer) when third parameter of epoll_ctl is set to NULL. 2018-09-25 09:07:49 +02:00
orbitcowboy eee6cf20ff wxwidgets.cfg: Added support for some wxObject functions. 2018-09-21 09:06:37 +02:00
orbitcowboy b16eb32df6 wxwidgets.cfg: Added support for wxUIActionSimulator functions. 2018-09-17 17:17:13 +02:00
Daniel Marjamäki 142f921d52 remove <pure/> from strtok. It has an internal state. This fixes FPs. 2018-09-08 12:08:09 +02:00
Sebastian 78715d3eff
bsd.cfg: Add arc4random* functions with tests. (#1344)
Reference: https://www.freebsd.org/cgi/man.cgi?query=arc4random
2018-08-16 21:37:40 +02:00
orbitcowboy 576418e17d wxwidgets.cfg: Added support for wxString::Strip(). 2018-08-10 13:15:14 +02:00
Sebastian fc7aab220e
posix.cfg: Add some pthread_attr_* functions. (#1331)
References:
http://pubs.opengroup.org/onlinepubs/7908799/xsh/pthread_attr_setstacksize.html
http://pubs.opengroup.org/onlinepubs/7908799/xsh/pthread_attr_setguardsize.html
2018-08-08 12:22:09 +02:00
orbitcowboy c9b91c24dc wxwidgets.cfg: Added support for wxGrid::GetCellEditor(). 2018-07-31 09:11:01 +02:00
Sebastian f862cf603f
posix.cfg: Add some pthread_mutex_* functions. (#1320)
References:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_init.html
http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_mutex_lock.html
2018-07-21 17:52:12 +02:00
rikardfalkeborn 30a8d953e3 Move sqrt{,f,l} argument checks to cfg file (#1313) 2018-07-20 20:56:39 +02:00
Sebastian 4ef452132c
posix.cfg,gnu.cfg: Add (get|set)hostname functions. (#1315)
Reference for POSIX gethostname:
http://pubs.opengroup.org/onlinepubs/9699919799/functions/gethostname.html
Reference for sethostname:
http://man7.org/linux/man-pages/man2/gethostname.2.html
2018-07-18 09:40:06 +02:00
rikardfalkeborn 491ee577c6 Support floats in valid config (#1297)
* Add tests for invalid ranges

* Refactor loadLibErrors

This reduces the amount of code slightly and will simplify adding
more tests.

* Handle empty valid field

Before this change, the sequence <valid></valid> in a config file would
result in a segmentation fault. Now an empty field results in the error
message:

cppcheck: Failed to load library configuration file 'mycfg.cfg'. Bad attribute value '""'

* Add support for valid for floating point arguments

Previously, it was not possible to add valid ranges to floating point
arguments since it only handled integers. This made ranges not work well
for floating point arguments since arguments were cast to integers
before the ranges were handled.

Fix this by using doubles instead of integers if the argument is a float.
Add some tests for this and make sure errors are printed with enough
precision (somewhat arbitrarily chosen).

Note that it is still only possible to add integer ranges (i.e. -1:1).

* Add support for floats in configuration valid range

Now that it is possible to handle decimal arguments, there is no reason
to not allow non-integer ranges. Take care to not allow broken
configurations.

* Move check to within if-clause

* Move asin{,f,l} and acos{,f,l} input checks to config file
2018-07-15 22:47:56 +02:00
versat 086a005a9f microsoft_sal.cfg: Remove redundant define. 2018-07-11 14:03:00 +02:00
Mischa Aster Alff 5f2dc0a036 Fix Microsoft SAL cfg macro definitions that used - instead of _ for variable names (#1301) 2018-07-09 16:19:29 +02:00
Sebastian c74ec34da8 windows.cfg: Add _TCHAR platform type. (#1291)
_TCHAR is simply the same as TCHAR. Defined in tchar.h.
More information about it:
https://social.msdn.microsoft.com/Forums/vstudio/en-US/0073fa7b-5cf5-469c-978f-2961f9d4ecb2/tchar-vs-tchar?forum=vcgeneral
2018-06-20 10:25:39 +02:00
orbitcowboy 5ad1b2bdd1 windows.cfg: Added some error codes from WinInet.h: Error codes Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/aa385465(v=vs.85).aspx. 2018-06-13 15:33:26 +02:00
orbitcowboy 77d4601fee windows.cfg: Added System Error Codes (0-15999) Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/ms681384(v=vs.85).aspx 2018-06-13 15:20:39 +02:00
orbitcowboy e029fe016a windows.cfg: Added constants from Winerror.h: COM Error Codes (VOLMGR, BCD, VHD, SDIAG) Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/dd542650(v=vs.85).aspx 2018-06-13 10:16:05 +02:00
orbitcowboy efe652f034 windows.cfg: Added constants from Winerror.h: COM Error Codes (FWP, WS, NDIS, HyperV) Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/dd542649(v=vs.85).aspx 2018-06-13 10:11:13 +02:00
orbitcowboy 3383fc6938 windows.cfg: Added Winerror.h: COM Error Codes (Security and Setup) Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/dd542646(v=vs.85).aspx 2018-06-13 09:55:11 +02:00
orbitcowboy 284da2f72e windows.cfg: Added more constants from Winerror.h: COM Error Codes (STG, RPC) Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/dd542645(v=vs.85).aspx 2018-06-13 09:40:08 +02:00
orbitcowboy c1668ff294 windows.cfg: Added more COM error constants. 2018-06-13 08:44:29 +02:00
orbitcowboy 4d99300339 windows.cfg: Added COM Error Codes (WPN, MBN, P2P, Bluetooth) from https://msdn.microsoft.com/en-us/library/windows/desktop/hh404142(v=vs.85).aspx 2018-06-12 15:39:08 +02:00
orbitcowboy 8354a75f66 windows.cfg: Added COM Error Codes (UI, Audio, DirectX, Codec) from Winerror.h. Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/hh404141(v=vs.85).aspx 2018-06-12 15:27:05 +02:00
orbitcowboy 4a81f6be9a windows.cfg: Added support for some constants from PortableDevice.h. Ref.: https://msdn.microsoft.com/en-us/library/windows/desktop/dd319335(v=vs.85).aspx 2018-06-12 11:29:51 +02:00
orbitcowboy d9f9bdda73 windows.cfg: CreatePen() removed not required <leak-ignore/>-tag. 2018-06-08 17:04:09 +02:00
orbitcowboy 64ce5dfece windows.cfg: Added support for CreatePen(). 2018-06-08 15:57:11 +02:00
Sebastian f129d8bd6b
bsd.cfg: Add strlcpy(), fix fts_children() (#1284) 2018-06-08 15:42:49 +02:00
orbitcowboy 335cb480bf posix.cfg: Added support for locale_t 2018-06-08 14:43:20 +02:00
orbitcowboy d10788164a windows.cfg: Added support for _locale_t 2018-06-08 14:41:56 +02:00
orbitcowboy 7bb806c22b windows.cfg: Added support for CLSTX constants which are defined at https://msdn.microsoft.com/en-us/library/windows/desktop/ms693716(v=vs.85).aspx. 2018-06-08 14:33:13 +02:00
orbitcowboy cb2880e7c1 windows.cfg: Added support for _mbsncpy_s_l() and _mbsncpy_s(). 2018-06-07 15:35:00 +02:00
orbitcowboy c31503557d windows.cfg: Added support for _wcsncpy_s_l(). 2018-06-07 15:24:26 +02:00
orbitcowboy 8472779c00 std.cfg: Added support for wcsncpy_s(). 2018-06-07 11:57:03 +02:00
orbitcowboy cc0f3f6cec Formatted code, there are no functional changes [ci skip]. 2018-06-06 11:15:47 +02:00
amai2012 3619aece02 Add support for umask functions 2018-06-06 10:59:34 +02:00
Sebastian ae5da13f3a
qt.cfg: Add obsolete functions with warning and one alternative one. (#1277)
For qInstallMsgHandler there is an alternative function qInstallMessageHandler. Both are added.
For qsrand and qrand there is only a hint that the class QRandomGenerator should be used instead.
Reference: https://doc.qt.io/qt-5/qtglobal-obsolete.html
2018-06-05 21:10:35 +02:00
orbitcowboy 74b18d7fd9 windows.cfg: Added support for _strncpy_s_l(). 2018-06-04 16:58:09 +02:00
orbitcowboy fe8cab1749 Removed platform specifc constants from previous commit. 2018-06-01 12:07:46 +02:00
orbitcowboy 34372aaf00 std.cfg: Added some floating point constants from <math.h>. 2018-06-01 11:45:05 +02:00
Daniel Marjamäki f326021a75 std.cfg: strncpy_s wrongly had <not-uninit/> in first argument 2018-05-31 07:03:07 +02:00
orbitcowboy c7993c38b5 bsd.cfg: Added support for strlcat(). 2018-05-30 16:47:00 +02:00
orbitcowboy 39feb150c0 std.cfg and windows.cfg: Added support for wcscat_s() and _tcscat_s(). 2018-05-30 16:25:09 +02:00
orbitcowboy ef82477d11 std.cfg: Do not take the return value of std::locale::global() into account. 2018-05-30 16:04:40 +02:00
orbitcowboy d06eb3eb8f std.cfg: Added support for strcat_s() (since C11). 2018-05-30 14:30:26 +02:00
orbitcowboy 53c53db312 windows.cfg: Added support for _mbscat_s(). 2018-05-28 21:52:44 +02:00
orbitcowboy 601b3f888d windows.cfg: Added more COM Error codes (Generic) Ref: https://msdn.microsoft.com/en-us/library/windows/desktop/dd542643(v=vs.85).aspx. 2018-05-28 21:34:12 +02:00
orbitcowboy 0f1eb0a9b2 windows.cfg: Added missing COM macros, defined at https://msdn.microsoft.com/en-us/library/windows/desktop/dd542715(v=vs.85).aspx. 2018-05-28 15:35:40 +02:00
orbitcowboy 4414bb0f1e windows.cfg: Added support for some error codes. Ref. https://msdn.microsoft.com/en-us/library/windows/desktop/dd542643(v=vs.85).aspx. 2018-05-28 10:21:36 +02:00
orbitcowboy 75e28e46c5 windows.cfg: Added support for _mbscat(). 2018-05-28 10:08:11 +02:00
versat 10292c1202 microsoft_sal.cfg: Add the missing Advanced Annotations
Reference: https://msdn.microsoft.com/en-us/library/windows/desktop/aa383701(v=vs.85).aspx (Advanced Annotations are near the bottom)
2018-05-25 14:26:32 +02:00
orbitcowboy 3407f3e932 windows.cfg: Added test cases for CreateThread(). 2018-05-25 11:50:12 +02:00
versat 6a5bf33b0d microsoft_sal.cfg: Add RPC SAL Annotations from rpcsal.h 2018-05-25 10:28:58 +02:00
orbitcowboy d7c8c46c10 test std.cfg: Improved testing for strcat() and wcscat(). 2018-05-25 08:36:47 +02:00
orbitcowboy c07abdd382 windows.cfg: Added more constants from Rpcdce.h. 2018-05-24 16:00:06 +02:00
orbitcowboy 18b452111f windows.cfg: Added constants from Rpcdce.h. 2018-05-24 15:54:01 +02:00
orbitcowboy df8a5966bb windows.cfg: Added constant definitions from AccCtrl.h 2018-05-24 15:49:28 +02:00
orbitcowboy 792d5a7cf4 windows.cfg: Added missing COM macros, defined at https://msdn.microsoft.com/en-us/library/windows/desktop/dd542715(v=vs.85).aspx. 2018-05-24 15:27:40 +02:00
Sebastian 8b94bfaf0a
windows.cfg: Add macros SUCCEEDED() and FAILED(). (#1264)
Somehow the opposite inner condition is not detected when macros are used. I created this ticket: https://trac.cppcheck.net/ticket/8596
2018-05-24 14:52:32 +02:00
Sebastian aa3722feea
windows.cfg: Add lstrlen() configuration and tests. (#1239)
Reference: https://msdn.microsoft.com/en-us/library/windows/desktop/ms647492(v=vs.85).aspx
2018-05-17 15:43:01 +02:00
orbitcowboy 3ad8fa5288 windows.cfg: Improved support for more types. 2018-05-16 16:26:40 +02:00
Sebastian 748f50cf85
windows.cfg: Add 32/64 bit time related functions and types. (#1236)
Fix declaration comments for _localtime32_s() and _localtime64_s().
Add functions _time32 and _time64, and types __time32_t and __time64_t.
References: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/localtime-s-localtime32-s-localtime64-s
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/time-time32-time64
2018-05-16 12:42:50 +02:00
Sebastian fdc98e5665
std.cfg: Add rsize_t and errno_t configurations. (#1229) 2018-05-16 10:12:37 +02:00
orbitcowboy 4e38627a3d windows.cfg: Improved support for Windows types (ref. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751(v=vs.85).aspx ). 2018-05-16 09:16:12 +02:00
orbitcowboy 98e64e76f7 windows.cfg: Improved support for Windows types (ref. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751(v=vs.85).aspx ). 2018-05-16 00:23:58 +02:00
orbitcowboy 3e3a8af267 windows.cfg: Improved support for Windows types (ref. https://msdn.microsoft.com/en-us/library/windows/desktop/aa383751(v=vs.85).aspx ). 2018-05-16 00:09:45 +02:00
orbitcowboy d0089fe305 windows.cfg: Added missing PFLOAT definition. 2018-05-15 09:43:28 +02:00
Sebastian 50aa3620da
posix.cfg: Add minsize to readlink[at] function configurations (#1216) 2018-05-09 18:20:45 +02:00
Sebastian 90bc8b7404
posix.cfg: Add not-bool to last arguments where appropriate. (#1204)
Add not-bool function argument configuration where appropriate to catch errors like this: df4ca5fb72
2018-05-08 09:30:08 +02:00
Sebastian 0a95fb4b70
qt.cfg: Add some QStandardItem[Model] functions (#1200) 2018-05-02 21:03:55 +02:00
Sebastian 6208ee4af1 std.cfg: Add asctime_s function configuration with tests (#1191)
* std.cfg: Add asctime_s function configuration with tests

* std.cfg: Remove redundant/not needed not-bool attributes.
2018-04-27 23:51:16 +02:00
orbitcowboy eb922a140a wxwidgets.cfg: Added support for wxOVERRIDE. 2018-04-27 23:18:34 +02:00
Sebastian 4b104c4576
std.cfg: Add some missing C++11 declarations comments and not-bool attributes (#1183) 2018-04-25 08:54:36 +02:00
Sebastian 038064436d std.cfg: Fix minsize configuration for vsprintf (#1188)
minsize with argvalue for arg 2 which is a char pointer makes no sense.
Changing it to minsize with strlen for arg 2 results in false positives
(and i think false negatives too).
In std.c a test with a valid vsprintf usage is added that would result
in a FP when minsize with strlen for arg 2 would be used.
2018-04-25 02:52:19 +02:00
Sebastian 40c42f2de7
qt.cfg: Add some functions used in the GUI, remove redundant const (#1189) 2018-04-24 16:37:55 +02:00
Sebastian 86d54c63c6
qt.cfg: Add more QString:: methods, fix errors. (#1185)
Additionally fix QString::sprintf() and QString::asprintf()
configurations.

Fix typo in quin[i]tptr.

Add warning for QString::sprintf and QString::vsprintf.
These functions are obsolete since Qt5, see
https://doc.qt.io/qt-5/qstring-obsolete.html
2018-04-24 12:23:23 +02:00
Sebastian b53c4b2032 std.cfg: Add std::vector function configurations and tests (#1180) 2018-04-19 16:41:25 +02:00
versat 3a52f217d3 microsoft_sal.cfg: Add some missing annotations 2018-04-13 11:39:26 +02:00
Sebastian 9e623b15b1
windows.cfg: Add SetFilePointer() function configuration (#1167) 2018-04-12 16:09:11 +02:00
Sebastian 26e22a9f5c
qt.cfg: Add/Enhance Qt macros and functions (#1164)
Qt macro Q_D() is disabled for now until ticket 8479 gets fixed.
2018-04-12 13:40:02 +02:00
Sebastian c39a3e3f1c
windows string macros: Handle _T, _TEXT and TEXT internally, add tests (#1163)
Remove TEXT() macro from windows.cfg and handle it internally where it
can be correctly simplified (Ansi vs. Unicode).
Also add handling of _TEXT() macro which is just a synonym for _T().
Add tests to verify correct function and macro simplification.
2018-04-12 08:52:31 +02:00
Sebastian a36dad918a std.cfg: Add std::make_pair() (#1165) 2018-04-11 19:16:55 +02:00
orbitcowboy ef62207ada std.cfg: Added more tests for some std::vector functions. 2018-04-11 17:21:26 +02:00
versat 8aa71d62a0 Revert "windows.cfg: Add macros _TEXT() and _T() (#1161)"
This reverts commit 9db64ca934.
2018-04-11 08:37:15 +02:00
Sebastian 3fc53eb122 std.cfg: Add std::[w]string::compare() with tests (#1162) 2018-04-10 21:07:39 +02:00
Sebastian 9db64ca934
windows.cfg: Add macros _TEXT() and _T() (#1161) 2018-04-10 18:39:59 +02:00
orbitcowboy 270635eb1f wxwidgets.cfg: Improved support for wxString to number conversion functions. 2018-04-07 20:27:02 +02:00
orbitcowboy 6e21d5ab84 wxwidgets.cfg: Added support for wxAtoi, wxAtol and wxAtof. 2018-04-04 21:29:55 +02:00
orbitcowboy d7072136dc wxwidgets.cfg: Added support for wxMenuBar::Append(). 2018-03-31 13:34:40 +02:00
orbitcowboy 43aac4696e wxwidgets.cfg: Added support for more functions. 2018-03-31 13:23:12 +02:00
Sebastian 3c5777fbc6
windows library: Add config for some Local* functions (#1139)
Add configuration and tests for LocalAlloc, LocalFree and some other
Local* functions.
LocalReAlloc is currently not configured as an alloc/dealloc function
(like realloc is not configured in std.cfg), i am not sure how to
correctly configure it.
2018-03-29 20:47:22 +02:00
Sebastian bbb43155bf
qt.cfg: Fix false positives for function disconnect (#1137)
There is no problem with a null pointer as third argument. 0 is used as
wildcard and stands for all receivers for example.
2018-03-27 15:54:24 +02:00
orbitcowboy 98b4c5689f wxwidgets.cfg: Improved support for more wxWidgets macros. 2018-03-27 14:24:59 +02:00
Sebastian d3284d5d54 std.cfg: Add strncpy_s and strncat_s (#1136) 2018-03-26 18:38:26 +02:00
orbitcowboy db045c2bf6 wxwidgets.cfg: wxBEGIN_EVENT_TABLE: Added 'void' to functions without arguments. 2018-03-26 16:07:10 +02:00
orbitcowboy 22291d2262 wxwidgets.cfg: Improved support for BEGIN_EVENT_TABLE and END_EVENT_TABLE-macros. 2018-03-26 16:02:48 +02:00
orbitcowboy 3b935af90e wxwidgets.cfg: Added support for wxDECLARE_EVENT_TABLE. 2018-03-26 10:28:12 +02:00
Sebastian 670267f3d1 std.cfg: Smaller enhancements and fixes (#1133)
Add missing returnValue types where appropriate and fixed a few wrong
ones.
Add some missing function names (mostly where the "std::" version of the
function is missing).
Add documentation for some functions where it is missing.
Remove functions that do not exist in the standard: std::array::clear,
std::vector::push_front.
2018-03-23 22:58:20 +01:00
Sebastian e38ec41ded
windows.cfg: Add some commonly used macros (#1127) 2018-03-22 08:31:50 +01:00
amai2012 e8cccf842f Correct attributes for swab() 2018-03-20 11:40:50 +01:00
Daniel Marjamäki 7048f012a8 astyle formatting
[ci skip]
2018-03-19 20:33:36 +01:00
Daniel Marjamäki 7202787435 posix: remove function 'remove' that is also configured in std.cfg 2018-03-19 20:04:58 +01:00
Sebastian 8cff60b461
windows.cfg: Add missing documentation and returnValue types (#1125)
Additionally a few minor issues were fixed.
2018-03-19 16:18:48 +01:00
Daniel Marjamäki 6b00ca33bd posix.cfg: Removed rename function as this is configured in std.cfg 2018-03-19 15:29:47 +01:00
amai2012 113f1efd72 Add configuration for swab() and sync() 2018-03-19 13:12:16 +01:00
Daniel Marjamäki 6e66150feb posix.cfg: update configuration for rename 2018-03-19 11:51:19 +01:00
Paul Fultz II 4ef445e228 Add const to empty and size functions (#1124) 2018-03-19 09:58:22 +01:00
Daniel Marjamäki 7d0b5f7c8d std.cfg: allow std::string::find() argument '\0' 2018-03-19 09:43:15 +01:00
Sebastian 65c85cbb53
Windows library: Add intrinsics __noop and __nop (#1119) 2018-03-15 12:31:20 +01:00
Sebastian ed3cd2929e
Windows library: Enhance functions, add tests (#1117)
Enhance *Equal/*Compare/*Copy/*Move/*Zero/*Fill memory functions to
catch buffer access out of bounds errors and ignored return values.
Replaced some function configuration by according defines as it is done
in windows to avoid redundant (and error prone) configurations.
2018-03-14 15:01:37 +01:00
Sebastian af4181f4d1
Qt library: Add missing podtype information (#1115)
The type qintptr was missing.
qlonglong, qulonglong and uchar have known sizes, so the sizes can be
specified.
2018-03-13 12:54:17 +01:00
Sebastian 7ba9ab7e4c Gtk library: Add configuration to avoid syntax error, add test file (#1109)
Add configuration for G_UNLIKELY and G_LIKELY to avoid syntax errors
when these macros are used as condition without enclosing brackets.
Add test file to verify Gtk library configuration. Syntax check for the
test file is only done when Gtk+2.0 or Gtk+3.0 is found and working.
Tested on Cygwin and on Ubuntu 16.04.
2018-03-10 11:22:10 +01:00
Sebastian c63cda4439
Qt library: Add missing comments and attributes and fixed some configurations (#1110) 2018-03-09 20:19:59 +01:00
Sebastian 152fc83bf0
Qt library: Add some function configurations (#1105) 2018-03-07 15:24:36 +01:00
orbitcowboy d637d414e1
wxwidgets.cfg: Fixed wrong function names. 2018-03-05 13:49:12 +01:00
orbitcowboy e824301cb5
wxwidgets.cfg: Fixed wrong function name. 2018-03-05 13:43:27 +01:00
orbitcowboy 402ca256be wxwidgets.cfg: Added support for wxGrid::SetCellTextColour. 2018-03-05 13:12:24 +01:00
orbitcowboy c31c54f1a4 wxwidgets.cfg: Improved support to for some wxSizerItem functions. 2018-03-05 00:25:47 +01:00
Martin Ettl 5bdab9e85a wxwidgets.cfg: Improved support for some wxString functions. 2018-02-26 13:57:24 +01:00
Martin Ettl 6af8aa63f6 windows.cfg: Improved support for _tolower()/_toupper() functions. 2018-02-25 16:38:29 +01:00
Martin Ettl 1df0ac15a3 windows.cfg: Added support for _toupper() and _tolower(). 2018-02-25 13:30:12 +01:00
Sebastian 51fce24d95 std.cfg: Add offsetof configuration (#1097) 2018-02-23 18:49:52 +01:00
Sebastian 346704b2e2
windows library: Mainly add socket functions, some other stuff and tests. (#1095)
Add Windows Socket 2 type/function configuration. There are still many
(microsoft specific) socket functions that are not yet configured.
Add configuration for GetUserName(), GetWindowText() and _fileno().
On Windows __wchar_t is a synonym for wchar_t, so an according define is
added.
2018-02-23 12:51:37 +01:00
Sebastian 1d14919649
wxwidgets: Fix syntax checking errors and warning (#1093)
wxDebugContext is only defined if wxUSE_DEBUG_CONTEXT is 1, so otherwise
just skip it for syntax checking because it will fail.
Change wxT to wxT_2 and add wxT_2 to the config to remove a warning
during syntax check and be more compatible with newer/older wxwidgets
versions.
Be more precise when replacing function like macros, fix redundant macro
definition for "_".
2018-02-21 12:20:56 +01:00
orbitcowboy 2ce8a3fc95 wxwidgets.cfg: Improved support for some deprecated functions. 2018-02-20 23:34:01 +01:00
orbitcowboy 2ab347606a std.cfg: Improved support for some std::ofstream functions. 2018-02-20 22:36:45 +01:00
orbitcowboy 31399e556b std.cfg: Improved configuration for ptrdiff_t. 2018-02-20 01:00:12 +01:00
orbitcowboy 2defdb7d4c wxwidgets.cfg: Added more deprecated functions. 2018-02-14 09:53:40 +01:00
Sebastian 6a3dc6ad45
Qt library: Add some function configurations (#1086) 2018-02-12 08:36:50 +01:00
orbitcowboy 8ef56972da wxwidgets.cfg: Added more deprecated-functions. 2018-02-11 16:58:39 +01:00
Sebastian 9eb6d38c06 std library: Add tests for wide character string functions, fix config (#1085)
Add equivalent tests for the wide character string functions like they
are already done for the normal string functions.
Fixed some issues with the configuration of the wide character string
functions that arised through the tests and were already fixed for the
normal string functions.
2018-02-09 21:17:01 +01:00
Daniel Marjamäki 7b3898f0f4 astyle formatting
[ci skip]
2018-02-08 21:58:43 +01:00
orbitcowboy dccf96cb7b wxwidgets.cfg: Added more deprecated functions. 2018-02-07 13:33:15 +01:00
orbitcowboy dea662891a wxwidgets.cfg: Added some functions from the deprecated wxWidets-list (http://docs.wxwidgets.org/trunk/deprecated.html). 2018-02-07 11:40:42 +01:00
Sebastian 14e45f9dcb
wxwidgets library: Fix/Enhance cfg, add test file (#1082)
Add test file for wxwidgets configuration, fix found issues and enhance
the cfg a bit:
Fix declarations in comments for wxLog* functions.
Merge the two wxTextFile::Create overloaded function configurations into
one that works for both now.
Removed use-retval attribute from wxBoxSizer::AddSpacer and
wxButton::SetDefault configuration since the functions have side effects
and there is no need to use the return value.
Add some function configurations, the macro _(str) and POD wxLogLevel.
2018-02-06 15:33:45 +01:00
Sebastian 80c2074ea7
cppcheck-cfg.rng: Allow return value by reference (#1077) 2018-02-06 08:33:20 +01:00
orbitcowboy ff3c0993ac std.cfg: Fixed FP for wcsxfrm(), mentioned in #6306. 2018-02-05 22:13:08 +01:00
Sebastian 2e5d7a8391 Fix #8381: false positives for swprintf_ and stprintf_s (#1080)
This fixes false positives because of wrong configuration in
windows.cfg.
Add tests in testio.cpp and test/cfg/windows.cpp to avoid regression.
2018-02-03 05:10:52 +01:00
Sebastian c235930539
windows library: Add function configurations with tests (#1079)
Add function configurations with tests for:
GetLocalTime, GetSystemTime, GetLastError, SetLastError,
AllocateAndInitializeSid, FreeSid, HeapAlloc, HeapReAlloc, HeapFree,
HeapSize, HeapValidate and GetProcessHeap.
test/cfg/runtests.sh: Enable --inconclusive for the windows tests to
avoid some issues in the future.
2018-02-02 11:28:54 +01:00
Sebastian 1ad22ae231 windows library: Add strlwr/strupr configuration, fixing tests (#1076)
Add configuration for the deprecated strlwr/strupr functions with
according warning.
test/cfg/windows.cpp: Added tests for strlwr and strupr. Moved function
call that does not return (FreeLibraryAndExitThread) to the end of the
function to fix analysis that was silently aborted at that point
(reported as issue #8378).
2018-01-31 17:43:19 +01:00
Sebastian 7b02b45a76 posix library: Add strtok tests (#1069)
* posix library: Add strtok tests

In the posix library there is the same configuration for strtok but a
warning is added.

* posix.cfg: Remove redundant configuration for strtok, add comment.
2018-01-31 10:58:30 +01:00
Sebastian c62abee07a
windows library: Add _malloca/_freea and _alloca configuration with tests (#1071) 2018-01-30 16:40:38 +01:00
Sebastian 4b5e4f989a std config: Remove misspelled function "strbprk" (#1065)
Remove misspelled function configuration "strbprk" (also from the
tests). The correct function "strpbrk" is already configured and tested.
2018-01-29 17:28:44 +01:00
Sebastian 30b9391461
windows library: Enhance Event function configuration, add tests (#1064) 2018-01-29 14:08:56 +01:00
Sebastian 6b5805041b std.cfg: Fixed remaining functions found to be redundant (#1055)
[std::]strtoimax and [std::]strtoumax:
They were nearly completely duplicates, i removed the ones with
less/missing configuration.
std::basic_string::empty:
It was found to be redundant because very likely someone forgot to
change "empty" to "clear" when copy&pasting the function names. The
empty function in all these clear functions makes no sense, and the
clear function also was missing.
std::queue::empty and std::array:empty:
They were both twice in the same function name list.
std::string::size, std::wstring::size:
They were already configured with many other size functions above.
std::basic_string::size:
This entry was twice in the same function name list directly one after
another. Very likely one of them should be the length function, which
does simply the same but was missing in the std.cfg.
2018-01-24 15:31:55 +01:00
Sebastian 26ff750848 windows.cfg: Add Mutex function configurations (#1051) 2018-01-24 09:50:05 +01:00
Sebastian d46cd46d0f windows.cfg: Add _countof macro configuration (#1047)
By telling cppcheck about the Microsoft Windows _countof() macro it is
now able to detect out of bounds array accesses like this:
wchar_t buf[10];
for(size_t i = 0; i <= (_countof(buf)); ++i) {
buf[i] = L'\0'; // (error) Array 'buf[10]' accessed at index 10, which
is out of bounds.
}
2018-01-23 15:45:06 +01:00
Sebastian a4deca3c98 posix.cfg: Remove redundant entries (#1049)
I carefully removed the duplicate/redundant entries with less/missing
configuration, so no information is lost.
2018-01-22 17:21:07 +01:00
Sebastian 4dbeffd615 std.cfg: Fix redundant function names (#1050)
This fixes some more redundant function configurations. Seems like they
are the result of copy & paste errors.
2018-01-22 17:18:36 +01:00
Sebastian b78d714037 posix.cfg: access(): Removed redundant configuration, added tests (#1048)
I intentionally removed the second access() configuraion because it was
missing the use-retval attribute. But calling access() without using the
return value is absolutely senseless.
I added tests to posix.c to verify the correct configuration of
access().
2018-01-22 14:54:14 +01:00
Sebastian de7aa8f513 Fix #7504: posix: open() was twice in configuration file (#1032)
* Fix #7504: posix: open() was twice in configuration file

This fixes ticket #7504: Problems with the open function were not always
detected because the open function was twice in posix.cfg and only the
second configuration was used by cppcheck. Like suggested now only
one configuration is used and the third parameter has a default value
and is thereby optional.
use-retval has been removed to avoid duplicate warnings because the
alloc/dealloc configuration already warns about unused retval.
According tests to verify that open is configured
correctly now have been added to test/cfg/posix.c.

* posix.cfg: open(): Add TODO for use-retval configuration
2018-01-18 13:56:36 +01:00
Sebastian d08709d10f windows.cfg: Add Semaphore function configuration (#1038) 2018-01-18 03:39:15 +01:00
Sebastian b5b84d1737 gnu.cfg Remove redundant function and resource configurations (#1036)
The epoll_* function and resource configurations somehow where added
twice.
This removes all duplicates (they have the same
attributes/configuration).
2018-01-16 17:13:15 +01:00
Sebastian 5e74012e81 windows.cfg: Fix redundant function configurations (#1035)
Detected some errors when checking for redundant function
configurations:
The functions that receive an additional argument "locale" have the
suffix "_l".
Sadly the MSDN shows wrong declarations that are missing the "_l", i
guess this caused the wrong names (I have reported it to Microsoft, but
do not expect that this is fixed soon).

The function configuration for GetModuleHandle* existed twice, i have
merged them, and it looks sane for me now.
2018-01-16 15:43:36 +01:00
Sebastian 2e2f8a00d6 posix.cfg: Fix getprotobynumber configuration (#1034)
It seems to be a copy & paste error.
The comment, the return value, the warn entry and the rest of the
configuration suggest that this must be the getprotobynumber function
configuration and not the getservbyport configuration which would be
redundant as it is configured a bit later.
2018-01-16 10:46:30 +01:00
Sebastian 6bd524baaf std.cfg: Fix copy&paste error or typo (#1033)
* Fixed copy&paste error or typo

It should be std::sinf here. std::sinl is described directly in the next function description and does not make sense here because of the return type.

* std.cfg: Fix another copy&paste error or typo

It should be std::tanf here.
2018-01-16 08:36:04 +01:00
Sebastian d0bbd0535f windows.cfg: Add lstrcat configuration (#1028)
On the MSDN there is a prominent warning to not use this function, so i
decided to add a warn entry. See
https://msdn.microsoft.com/de-de/library/windows/desktop/ms647487(v=vs.85).aspx
for details.
2018-01-12 21:41:23 +01:00
Sebastian dc1c60f97f windows.cfg: Add CRITICAL_SECTION handling functions. (#1023)
* windows.cfg: Add CRITICAL_SECTION handling functions.

* windows.cfg: Add missing function InitializeCriticalSectionEx

* windows.cfg: Fix missing not-uninit entry for DeleteCriticalSection.
2018-01-11 14:31:38 +01:00
Sebastian dc0bcce3c2 windows.cfg: Add *Event functions configuration (#1025) 2018-01-10 15:38:02 +01:00
versat 70fcf5af87 Fix windows.cfg: GetProcAddress needs use-retval
While it was good to remove use-retval from the LoadLibrary* functions,
it is still needed for GetProcAddress. A call of GetProcAddress without
using the return value does not make sense.
2018-01-05 17:22:33 +01:00
versat a1cc44eb21 windows.cfg: Add Load/FreeLibrary() functions 2018-01-05 11:22:36 +01:00
orbitcowboy a01c6c95eb std.cfg: Added missing non-namespace configuration for stoi()-like functions. 2017-12-15 21:42:39 +01:00
orbitcowboy c799206c73 windows.cfg: Fixed FN for some strncpy functions. 2017-12-14 15:43:15 +01:00
orbitcowboy d63897ff21 posix.cfg: Added support for stpncpy(). 2017-12-08 21:36:54 +01:00
orbitcowboy cdeb7fb25f posix.cfg: Added support for wcpncpy. 2017-12-08 21:28:48 +01:00
orbitcowboy b14146b853 std.cfg: Improved configuration of wcsncpy. 2017-12-08 21:21:26 +01:00
orbitcowboy 928727534a posix.cfg: Improved configuration for bcopy(): Warn for potential buffer access out of bounds issues. 2017-12-08 14:53:14 +01:00
orbitcowboy 77c43f2d24 #8293: Applied fix from versat. 2017-12-08 09:33:54 +01:00
Sebastian 27151f5014 MS SAL config: add more defines for annotations (#1006)
Add annotations which are not so well documented, but could be/are used
in custom code.
2017-11-29 08:25:43 +01:00
Sebastian e9815bd523 windows.cfg: Add Sleep and SleepEx (#1007)
Add configuration for Sleep and SleepEx on Windows.
Not sure how to implement that the functions do not return when the first parameter is INFINITE.
2017-11-29 08:22:13 +01:00
Marcel Raad 8b6c14aa48
windows.cfg: fix GetPrivateProfileString nullPointer FP
The first three arguments can be NULL.
Reference: https://msdn.microsoft.com/en-us/library/windows/desktop/ms724353.aspx
2017-11-23 11:05:49 +01:00
Daniel Marjamäki 1e870762a3 std.cfg: open/save with GUI 2017-11-12 15:17:58 +01:00
Daniel Marjamäki 1699775c3c std.cfg: Save from GUI 2017-11-12 15:11:37 +01:00
Daniel Marjamäki 511d14a051 astyle
[ci skip]
2017-11-05 17:56:24 +01:00
Daniel Marjamäki 4d8f069907 Renamed pro c sql to embedded sql 2017-11-03 21:04:12 +01:00
Daniel Marjamäki 4f6f1e20dd Hide Pro*C SQL simplification. Use pro_c_sql.cfg library file if this is wanted. 2017-11-03 13:02:29 +01:00
pmisik 9c8b0c2c90 Workaround for syntax error on Microsoft specific __pragma keyword (#982)
__pragma is Microsoft specific keyword equivalent to C99 _Pragma operator
https://msdn.microsoft.com/en-us/library/d9x1s805.aspx
https://gcc.gnu.org/onlinedocs/cpp/Pragmas.html
http://clang.llvm.org/docs/UsersManual.html#controlling-diagnostics-via-pragmas

It seems cppcheck does not support _Pragma at the moment.

This change will fix syntax error on code that looks like this:

 #define MY_DEPRECATED_ENUM(X) X __pragma(deprecated(X))
enum myEnum
{
    myEnum_1 = 1,
    MY_DEPRECATED_ENUM(myEnum_2) = 2,
    myEnum_3,
    myEnum_4,
};
int main()
{
    myEnum a = myEnum_3;
    printf("%d", a);
    return 0;
}

This change was fiscussed here: https://sourceforge.net/p/cppcheck/discussion/general/thread/1808a46b/
2017-10-25 14:40:00 +02:00
orbitcowboy b73d4ce62e wxwidgets.cfg: There is no need to use the return value from wxMenu::Append(). 2017-10-20 11:01:37 +02:00
orbitcowboy 589ce19822 Added support for std::ios::clear. 2017-10-18 14:16:36 +02:00
orbitcowboy f1e5f64690 wxwidgets.cfg: Added support for wxMenu:Append(). 2017-10-17 10:59:23 +02:00
orbitcowboy 51eb4ffe9b std.cfg: Added support for std::string::reserve(). 2017-10-15 11:22:42 +02:00
orbitcowboy a886f4f649 std.cfg: Added support for std::string::erase(). 2017-10-15 11:17:17 +02:00
orbitcowboy db787369b9 #8243: Changed order of includes. Moved mathlib include at first place. 2017-10-14 16:30:10 +02:00
Daniel Marjamäki 81beb47e5c std.cfg: Added std::...::insert configurations 2017-10-13 15:39:08 +02:00
orbitcowboy 3c96924c56 std.cfg: Improved support for std::string::resize(). 2017-10-13 10:22:59 +02:00
orbitcowboy 43de937a4e Removed not needed <use-retval/> from std::string::resize(). 2017-10-13 10:15:53 +02:00
orbitcowboy 8160cc2fc6 std.cfg: Improved support for find, std::string functions. 2017-10-13 09:58:23 +02:00
orbitcowboy 3eb84fa980 std.cfg: Warn when parameters of std::swap() are not initialized. 2017-10-11 15:54:49 +02:00
orbitcowboy dc2aff42a8 std.cfg: Added support for std::string::rfind(). 2017-10-11 15:50:59 +02:00
orbitcowboy 5bc61e35a0 std.cfg: Added support for std::swap. 2017-10-11 13:12:00 +02:00
Daniel Marjamäki 29a0dfc152 std.cfg: add configuration for std::string::find_first_of and std::string::find_last_of 2017-10-11 08:33:12 +02:00
Daniel Marjamäki 247810a186 qt.cfg: split configuration for QSettings::setValue and QSettings::value 2017-10-11 08:30:10 +02:00
Daniel Marjamäki 7f9571c4e6 std: added std find methods 2017-10-10 22:15:56 +02:00
Daniel Marjamäki 4009f11475 qt: Add configurations for QSettings::setValue, QSettings::value 2017-10-10 22:05:00 +02:00
Daniel Marjamäki 917317ad3d cppcheck-lib.cfg: fix invalid XML 2017-10-10 11:27:54 +02:00
Daniel Marjamäki 4afa8ef9d7 cppcheck-lib.cfg: Added cfg file for internal use 2017-10-10 11:25:30 +02:00
orbitcowboy ee6e4c3ccd std.cfg: Fixed FP in std::string:swap(). 2017-10-07 00:49:09 +02:00
orbitcowboy c978e66936 std.cfg: Added support for std::string:swap(). 2017-10-07 00:46:34 +02:00
orbitcowboy 702a213175 std.cfg: Added support for std::vector::at(). 2017-10-06 17:02:25 +02:00
orbitcowboy 4b4796a35f std.cfg: Added support for std::string::push_back(). 2017-10-06 16:51:10 +02:00
orbitcowboy 91202c47e6 windows.cfg: Added more returnValue-types. 2017-10-05 11:55:27 +02:00
orbitcowboy cbc95c5662 gnu.cfg: Added more returnValue-types. 2017-10-05 11:45:46 +02:00
orbitcowboy 1a4c25243c posix.cfg: Added more returnValue-types. 2017-10-05 11:38:11 +02:00
orbitcowboy beb9223b6f std.cfg: Added more returnValue-types. 2017-10-05 10:23:48 +02:00
orbitcowboy f3d5e526d0 std.cfg: Added more returnValue-types. 2017-10-05 09:58:12 +02:00
orbitcowboy 0d888ba82d std.cfg: Added more return value types. 2017-10-03 09:39:43 +02:00
orbitcowboy c133e1d6f3 std.cfg: Added more returnValue-types. 2017-10-02 19:15:38 +02:00
orbitcowboy e9b4cbbd87 std.cfg: Added more returnValue-types. 2017-10-02 17:01:10 +02:00
Alexander Mai 8d4c2d3145 Fix typo 2017-09-26 20:59:23 +02:00
orbitcowboy 9647793af9 wxwidgets.cfg: Added support for some wxStaticBoxSizer functions. 2017-09-21 14:47:24 +02:00
orbitcowboy 7e6aeb6394 wxwidgets.cfg: Added support for some wxBoxSizer functions. 2017-09-21 14:37:42 +02:00
orbitcowboy fbb5c3b942 wxwidgets.cfg: Added support for some wxSpinCtrlDouble functions. 2017-09-21 11:29:59 +02:00
orbitcowboy c0f92b2409 posix.cfg: Added support for tcsendbreak. 2017-09-19 21:25:19 +02:00
orbitcowboy 7a56cfbb66 windows.cfg: Added support for more functions. 2017-09-19 21:17:15 +02:00
orbitcowboy c4e2ca2996 posix.cfg: Added support of ioctl. 2017-09-19 21:12:03 +02:00
orbitcowboy 6d69845737 posix.cfg: Added support for some <termios.h>-functions. 2017-09-19 15:10:37 +02:00
Daniel Marjamäki b9b47809f9 Fixed #8197 (iscast: '(b)&1' is not a cast) 2017-09-08 22:52:16 +02:00
orbitcowboy 7e92535b59 std.cfg: Improved support for std::ios std::ios_base std::ofstream and std::ostream functions. 2017-09-08 16:43:40 +02:00
orbitcowboy 27be75b224 std.cfg: Improved support for returnValue types for some math functions. 2017-09-05 16:27:02 +02:00
orbitcowboy 94c1809f26 std.cfg: Improved support for returnValue types for some math functions. 2017-09-05 16:01:33 +02:00
orbitcowboy 095e435031 wxwidgets.cfg: Added support for some wxTextFile functions. 2017-09-04 14:52:10 +02:00
orbitcowboy 4734301bef wxwidgets.cfg: Added more #defines from wx/defs.h 2017-08-29 19:51:15 +02:00
orbitcowboy 35b94a1810 wxwidgets.cfg: Improved support for some wxWidgets #defines. 2017-08-29 01:13:54 +02:00
Alexander Mai dcc962ec37 Add configuration file for BSD os family 2017-08-28 22:48:39 +02:00
Daniel Marjamäki 0496e29910 astyle formatting
[ci skip]
2017-08-15 11:27:49 +02:00
orbitcowboy 06c798a81a Cleanup comments. There are no functional changes. 2017-08-11 16:58:21 +02:00
orbitcowboy b28b7712c1 wxwidgets.cfg: Added support for some wxColour functions. 2017-08-11 16:42:43 +02:00
orbitcowboy cf32e565c2 wxwidgets.cfg: Added support for some wxButton-functions. 2017-08-08 17:00:29 +02:00
orbitcowboy fb925069a5 wxwidgets.cfg: Added <use-retval/>-flag for getter-functions. 2017-08-07 16:58:19 +02:00