Commit Graph

19565 Commits

Author SHA1 Message Date
versat 8e11dc5b41 gtk.cfg: Add support for G_TYPE_CHECK_INSTANCE_CAST() macro 2019-02-18 11:37:19 +01:00
Sebastian 8a9f97b5c8
donate-cpu-server.py: Verify compared Cppcheck version (#1673)
Ignore normal results (not fast or info) where the diff was made against the wrong OLD_VERSION. This avoids unwanted results when some client still analyzes an old package but the OLD_VERSION in the server script is changed for example.
Results missing the Cppcheck version info completely are also ignored.
Tested locally with correct and wrong version numbers.
2019-02-18 10:13:18 +01:00
Kamil Dudka 2908593cf6 checkautovariables: eliminate false positives on assignment of &ptr->item (#1667)
Even if `ptr` is a local variable, the object `ptr->item` might be not.
So taking address of `ptr->item` is definitely not unsafe in general.

This commit fixes false positives triggered by commit
1.85-249-gf42648fe2 on the following code of sssd:

https://github.com/SSSD/sssd/blob/d409df33/src/sbus/request/sbus_request.c#L359
2019-02-18 09:35:07 +01:00
orbitcowboy 0284705551 wxwidgets.cfg: Added support for more interfaces. 2019-02-17 23:45:26 +01:00
orbitcowboy 831670c355 posix.cfg: Improved support for more macros and constants. 2019-02-17 23:35:34 +01:00
orbitcowboy 5135cbeecd std.cfg: Added support for std::multiset::insert(). 2019-02-17 23:15:46 +01:00
orbitcowboy 3aa131470b std.cfg: Added support for std::vector::erase(). 2019-02-17 23:10:17 +01:00
orbitcowboy af4f3af851 std.cfg: Added support for std::fill(). 2019-02-17 22:58:30 +01:00
orbitcowboy c28abe7e35 std.cfg: Added support for std::map::insert(). 2019-02-17 22:50:18 +01:00
orbitcowboy 1df9c80e81 std.cfg: Added support for std::move(). 2019-02-17 22:45:45 +01:00
orbitcowboy 8820580cf6 boost.cfg: Improved support for more test macros. 2019-02-17 22:36:36 +01:00
orbitcowboy b886590cc9 boost.cfg: Improved support for more test macros. 2019-02-17 21:14:03 +01:00
orbitcowboy 4e42f83bc8 boost.cfg: Fixed some 'unknownMacro'-warnings from daca@home. 2019-02-17 20:52:54 +01:00
amai2012 c6a9d9cf15 Initial support for CppUnit 2019-02-17 20:16:01 +01:00
amai2012 8c80c5d620 Fix typo 2019-02-17 17:50:27 +01:00
amai2012 b34fe35191 Add more interfaces 2019-02-17 17:03:40 +01:00
versat 6f57b9abfa gtk.cfg: Add some GTK_*() instance cast macros
SOME GTK_*() macros most often reported as missing by daca@home are added.
2019-02-17 16:41:19 +01:00
orbitcowboy 6b1e324df0 wxwidgets.cfg: Added support for more interfaces. 2019-02-17 14:13:37 +01:00
orbitcowboy 3bef07f32f wxwidgets.cfg: Added support for more interfaces. 2019-02-17 14:09:13 +01:00
orbitcowboy 70e5fa359f wxwidgets.cfg: Added support for more interfaces. 2019-02-17 12:02:28 +01:00
orbitcowboy 5aee070515 wxwidgets.cfg: Added support for more interfaces. 2019-02-17 11:58:52 +01:00
orbitcowboy 6323d8d6b5 wxwidgets.cfg: Added support for more interfaces. 2019-02-17 11:53:30 +01:00
Sebastian ff16995b26
triage: Implement Clang-Tidy and Clazy hints (#1674)
These are mainly readability and optimization changes.
2019-02-16 17:52:36 +01:00
orbitcowboy 7629923b65 std.cfg: Attempt make travis happy. 2019-02-16 08:24:53 +01:00
amai2012 ac0d39a164 Add parentheses to G_OBJECT 2019-02-16 00:19:00 +01:00
amai2012 e3083ade52 Define G_OBBECJT(obj). It's #2 on daca@home checkLibraryFunction report currently 2019-02-15 21:50:32 +01:00
Sebastian d1deff7c02 threadexecutor.h: Disable THREADING_MODEL_FORK for Cygwin (trac 8973) (#1670)
The fork implementation in Cygwin seems to be not very reliable.
See also the Cygwin documentation here: https://cygwin.com/faq/faq.html#faq.using.fixing-fork-failures
More details in the ticket https://trac.cppcheck.net/ticket/8973
2019-02-15 21:47:33 +01:00
orbitcowboy 437e171d0d std.cfg: Added partial support for std::transform(). 2019-02-15 20:56:44 +01:00
orbitcowboy 23b771c5c8 std.cfg: Added partial support for std::sort(). 2019-02-15 20:45:46 +01:00
Paul Fultz II cf1ad5087a Extend constStatement checker
This reworks constStatement to find more issues. It catches issue [8827](https://trac.cppcheck.net/ticket/8827):

```cpp
extern void foo(int,const char*,int);
void f(int value)
{
        foo(42,"test",42),(value&42);
}
```

It also catches from issue [8451](https://trac.cppcheck.net/ticket/8451):

```cpp
void f1(int x) {
    1;
    (1);
    (char)1;
    ((char)1);
    !x;
    (!x);
    ~x;
}
```

And also:

```cpp
void f(int x) {
    x;
}
```

The other examples are not caught due to incomplete AST.
2019-02-15 13:31:40 +01:00
rikardfalkeborn dc4e7cef88 Run simplifyPlatformTypes on library return types (#1672)
Add a call to simplifyPlatformTypes() in
SymbolDatabase::setValueTypeInTokenList() to simplify return types of
library configured functions. This fixes the FN in #8141. Regression
tests are added, both for the original issue and another FN in the comments.

In order to do that, move simplifyPlatformTypes() to TokenList from Tokenizer.
This is a pure refactoring and does not change any behaviour. The code was
literally copy-pasted from one file to another and in two places
'list.front()' was changed to 'front()'.

When adding the call to simplifyPlatformTypes(), the original type of
v.size() where v is a container is changed from 'size_t' to 'std::size_t'.
Tests are updated accordingly. It can be noted that if v is declared as
'class fred : public std::vector<int> {} v', the original type of 'v.size()'
is still 'size_t' and not 'std::size_t'.
2019-02-15 13:29:52 +01:00
orbitcowboy fc84227668 wxwidgets.cfg: Added support for more interfaces. 2019-02-15 09:33:17 +01:00
versat 4dae640e8c gtk.cfg: Add type conversion macros
Reference:
https://developer.gnome.org/glib/stable/glib-Type-Conversion-Macros.html
daca@home found that they are missing.
2019-02-15 08:44:21 +01:00
orbitcowboy a6fa13b25f wxwidgets.cfg: Added support for more interfaces. 2019-02-15 00:25:49 +01:00
IOBYTE 8bd5b3eccf Fixed #8962 ("(debug) Unknown type 'T'" with template typename parame… (#1671)
* Fixed #8962 ("(debug) Unknown type 'T'" with template typename parameter)

Only simple one parameter template functions with one function parameter
are supported.

* Added TODO test case for FIXME.
2019-02-14 11:48:59 +01:00
orbitcowboy e28367b268 wxwidgets.cfg: Added support for more interfaces. 2019-02-14 08:21:38 +01:00
versat ed25ae3acb gtk.cfg: Add some configurations often reported as missing by daca@home
Add two g_assert*(), g_signal_connect_data(), some g_signal_connect*() functions and macros and g_strdup_printf().
2019-02-13 15:35:46 +01:00
orbitcowboy 59433229a0 wxwidgets.cfg: Added support for more interfaces. 2019-02-13 12:32:20 +01:00
orbitcowboy d7e66c1165 wxwidgets.cfg: Added support for more interfaces. 2019-02-13 12:17:43 +01:00
orbitcowboy 8b977f885a wxwidgets.cfg: Added support for wxDataViewTreeCtrl::SetFont(). 2019-02-13 10:28:57 +01:00
orbitcowboy d30e86d69c wxwidgets.cfg: Added support for wxDC:DrawPoint(). 2019-02-13 09:05:38 +01:00
orbitcowboy 103ec5b5a1 std.cfg: Added support for std::wifstream::seekg(). 2019-02-13 08:52:45 +01:00
orbitcowboy 7b5c010c31 windows.cfg: Added support for more interfaces. 2019-02-13 08:10:50 +01:00
orbitcowboy 81dab88413 std.cfg: Fixed wrong configuration from std::vector::pop_back(). 2019-02-13 08:04:11 +01:00
orbitcowboy 40398c6c90 std.cfg: Added support for std::vector::pop_back() and std::vector::push_back (). 2019-02-12 18:52:18 +01:00
orbitcowboy f5edc221f8 windows.cfg: Added support for MAKEINTRESOURCE-macros. 2019-02-12 13:05:41 +01:00
versat fe6ea282d3 qt.cfg: Add support for QT_TR_NOOP* and QT_TRANSLATE_NOOP* macros
Reference:
https://doc.qt.io/qt-5/i18n-source-translation.html#using-qt-tr-noop-and-qt-translate-noop-in-c
2019-02-12 10:21:56 +01:00
versat a41e663cd1 Donate CPU: Optimize `list` and `dict` initialization
Initialization with `[]` and `{}` is faster than with `list()` and `dict()`.
Details:
https://stackoverflow.com/questions/30216000/why-is-faster-than-list
2019-02-12 09:47:57 +01:00
IOBYTE 9dc5dbe1ab Fixed #8976 (Crash on `using mystring = std::string;`) (#1663)
* Fixed #8976 (Crash on `using mystring = std::string;`)

* templateSimplifier: move test case to correct file.
2019-02-12 09:39:01 +01:00
Carlo Marcelo Arenas Belón 03c9477028 settings: -Wreorder fix (#1664)
otherwise showing (with Apple LLVM version 10.0.0):

  lib/settings.cpp:34:7: warning: field 'jointSuppressionReport' will be
      initialized after field 'maxCtuDepth' [-Wreorder]
      jointSuppressionReport(false),
2019-02-12 09:07:59 +01:00