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