Commit Graph

239 Commits

Author SHA1 Message Date
Daniel Marjamäki 208a4a4548 Check unused templates by default 2020-11-23 18:29:08 +01:00
Daniel Marjamäki f6e7a66f42 TestConstructors: Unremove a test case 2020-11-22 18:17:40 +01:00
Daniel Marjamäki 2cd8ea83a7 Fixed (unused template not removed properly by default) 2020-11-22 16:43:36 +01:00
Daniel Marjamäki d5b64d9c3a Clarify inconclusive uninitMemberVar warning in copy constructors, it's in general a good idea to copy all the data. 2020-08-05 13:57:40 +02:00
Daniel Marjamäki 37245a8179 Update copyright year 2020-06-13 16:37:12 +02:00
Daniel Marjamäki 9eda399323 Less strict unknownMacro 2020-05-17 19:12:16 +02:00
Daniel Marjamäki c04e25e936 Revert " Detecting uninited member variables with default ctor ()"
This reverts commit 08bc369296.
2019-10-09 08:17:47 +02:00
Daniel Marjamäki 47e9504083 astyle formatting
[ci skip]
2019-10-08 19:33:32 +02:00
blacktea 08bc369296 Detecting uninited member variables with default ctor () 2019-10-08 19:33:07 +02:00
Daniel Marjamäki 742c437953 Fixed (Unknown macro is not reported and then Cppcheck is silent about issues) 2019-09-13 13:05:48 +02:00
Rikard Falkeborn 06337cedf5 Run more tests on full token list ()
Since all checks are run on the full token list and not the simplified
one, run the tests on the full token list as well.
2019-07-22 10:26:55 +02:00
Daniel Marjamäki cf79830afd Revert "Remove bailout. It hides lots of warnings for real code to avoid FP in unused templates."
This reverts commit 2a4be5ae1c.

When I look at daca@home now there are still lots of false negatives. So this bailout did not cause as much false negatives as I thought.
2019-06-19 22:29:00 +02:00
Daniel Marjamäki 2a4be5ae1c Remove bailout. It hides lots of warnings for real code to avoid FP in unused templates. 2019-06-16 19:01:45 +02:00
Paul Fultz II cf3515ee61 Fix issue 7372: False positive uninitMemberVar - on template specialization
This fixes the issue by skipping diagnostics when the symbols are incomplete in the constructor.
2019-05-17 20:24:41 +02:00
Daniel Marjamäki 57c6628732 Revert 'Cleaning up unsimplified templates'. This fix caused problems. 2019-05-16 21:11:04 +02:00
Daniel Marjamäki d58d4273f9 Cleaning up unsimplified templates 2019-05-11 13:00:03 +02:00
Daniel Marjamäki bd7790fd8c Update copyright year 2019-02-09 07:24:06 +01:00
Daniel Marjamäki 4457faa26b Fixed (Array in-class initialization for private member considered uninitialized) 2019-02-02 18:34:41 +01:00
Daniel Marjamäki 9d8f798aca Fixed (false postive: (style) The class 'x' does not have a constructor although it has private member variables.) 2019-02-02 18:25:26 +01:00
Daniel Marjamäki 8dd641b8be Use OVERRIDE in test 2019-01-12 15:45:25 +01:00
Daniel Marjamäki 8509159d1a Uninitialized Member variable: Fixed FP when delegate constructor is used 2019-01-10 20:13:37 +01:00
practicalswift 0a1b3a9d6f Fix typos () 2019-01-06 17:15:57 +01:00
IOBYTE c966f31183 Fixed (friend class and non-empty constructor: Uninitialized members not reported) () 2018-11-06 06:44:08 +01:00
Daniel Marjamäki ab08801dc4 Remove header tests from testconstructors, because they were invalid (using preprocessor directive)
The checker does not care if it's a header or source file. So I guess these tests were added to test
some parsing problem. Nowadays, #line is removed by simplecpp::preprocess, but there is no proper
testing for it in simplecpp.. I will add some testing for #line asap.
2018-10-26 07:03:15 +02:00
Daniel Marjamäki 60ac463a79 CheckClass: Restore a few warnings about member initialization of classes 2018-06-29 22:54:12 +02:00
Daniel Marjamäki 61c56eda44 Tweak the CheckClass::constructors() check 2018-06-27 14:02:57 +02:00
IOBYTE 7681bbf227 Fixed (false positive: enum initialized using class member initializer syntax in struct in struct) () 2018-05-30 15:40:16 +02:00
IOBYTE 8320be203d Fixed (Incorrect diagnostics when using delegating consturctor with default values) () 2018-05-22 06:42:37 +02:00
IOBYTE 42ed5a6b98 Fixed (Delegating contructor warns for unintialized variables) ()
* Fixed  (Delegating contructor warns for unintialized variables)

* Replace Token::Match with isStandardType
2018-05-20 22:58:05 +02:00
IOBYTE ce50df8047 Fix override warnings. () 2018-05-15 16:37:40 +02:00
Daniel Marjamäki 31148fdfed Fixed (Clarify warning: noConstructor) 2018-05-01 15:50:03 +02:00
Daniel Marjamäki e492932f19 Improve check: Variable is not initialized in private constructor (C++11 or later) 2018-04-02 15:26:15 +02:00
Daniel Marjamäki 7e4dba6a7e Updated copyright year 2018-03-31 20:59:09 +02:00
IOBYTE 4710d80a40 Fix (FP: typedef array throws off parser) ()
* Fix  (FP: typedef array throws off parser)

* Fix travis build.
2018-01-24 09:51:22 +01:00
Daniel Marjamäki c4caee6b18 Updated copyright year 2018-01-14 15:37:52 +01:00
Daniel Marjamäki 526d8b76a6 Fixed (FP uninitMemberVar: Handle method call in middle of statement) 2017-11-11 21:28:24 +01:00
Hinterwaeldlers 8aa568f085 Corrected noexcept constructor delegating handling () 2017-09-02 22:54:23 +02:00
Steve Browne b58562fc7d Added test cases for catching when assignment comes after an operator, compound assignment, or comparison for ticket and fixed the tests. 2017-05-28 16:00:06 +02:00
Ayaz Salikhov 28aa939d69 iwyu - include what you use 2017-05-27 04:33:47 +02:00
Simon Martin ee05fe7d77 Ticket : Don't generate invalid syntax for out of line template class constructors during instantiation. 2017-04-09 16:12:59 +02:00
Daniel Marjamäki 5b377ea2e4 Fixed (segmentation fault, invalid last token) 2016-11-20 14:15:51 +01:00
Harald Scheidl 0de47f709e Fixed (false positive: member variable is not initialized in the constructor) 2016-10-26 10:39:53 +02:00
Simon Martin dc61b6342d Ticket : Treat "memset(&this->member, ..." as member initialization. 2016-10-01 13:46:58 +02:00
Daniel Marjamäki 50352c8d69 Fixed (Don't warn about missing ctor for class inside union) 2016-05-25 19:05:16 +02:00
PKEuS 5d9f275ff8 Fixed false positive uninitMemberVar with member function of template () 2016-01-30 20:18:13 +01:00
Lauri Nurmi 996c9244d8 Update copyright year to 2007-2016. 2016-01-01 15:34:45 +02:00
Alexander Mai 98f2cd021e SymbolDatabase::validate() should be run in debug mode and print debug messages. In turn correct some test examples with invalid code. 2015-12-06 08:14:04 +01:00
Daniel Marjamäki 0f9d90d2be Changed Copyrights. Removed my name. 2015-11-18 20:04:50 +01:00
PKEuS db342ea910 Handle alias variables in CheckClass::initializeVarList() () 2015-11-09 21:02:06 +01:00
PKEuS 3a5cef8a7e Refactorization: Improved usage of Settings instances in test suite 2015-10-07 18:40:03 +02:00
Daniel Marjamäki d88dc3ed3e Reverted 00c54df07c (don't remove enum declarations) because it caused unexpected false positives 2015-09-06 18:37:22 +02:00
Daniel Marjamäki 00c54df07c Tokenizer: Don't remove enum declarations 2015-09-06 17:44:49 +02:00
Simon Martin b4b636b6a2 Ticket : Properly handle arrays of pointers in CheckClass::constructors. 2015-08-29 13:11:00 +02:00
Simon Martin 101cebbde1 Ticket : Properly handle arrays of pointers in CheckClass::constructors. 2015-08-28 23:06:39 +02:00
Simon Martin 6fb19b02d0 Properly differentiate arrays of pointers and pointers to arrays. 2015-08-25 21:19:19 +02:00
Robert Reif 4e693f1620 Fixed 2015-07-22 13:57:51 +02:00
Simon Martin 25aff001e0 Ticket : Fixed pattern detecting C++ 11 delegated constructors. 2015-05-10 11:27:47 +02:00
Frank Zingsheim 1f5265c1bd Fixed ([False Positive] Variable not initialized in the constructor) 2015-04-06 19:47:21 +02:00
Robert Reif c02acea5bf Fixed (false positive: (style) The class 'A' does not have a constructor.) 2015-04-04 11:33:25 +02:00
PKEuS bc5132e0ac Refactorization: Moved declaration of errout, ... to testsuite.h, uniformized style 2015-03-11 22:54:43 +01:00
PKEuS 3274a00b82 Moved some more tests to testgarbage.cpp 2015-01-21 10:04:46 +01:00
Robert Reif 68bb197bcb Destructor detected as constructor resulting in false variable not initialized warnings 2015-01-12 06:11:22 +01:00
Daniel Marjamäki ff11ba9847 Updated copyright year to 2015 2015-01-03 12:14:58 +01:00
Daniel Marjamäki 051d42ae6b astyle formatting 2014-11-20 14:20:09 +01:00
orbitcowboy f5d804f71a running astyle 2014-11-20 10:13:03 +01:00
Robert Reif d12f14844a Fixed (False Positive: Member variable 'Fred::i' is not initialized in the constructor) 2014-11-20 06:18:29 +01:00
Robert Reif c5e15950df Fixed (SymbolDatabase: Wrong function() is set for token) 2014-11-17 16:04:44 +01:00
Frank Zingsheim 41a54fceba Fixed false positives about uninitialized member variables if variable has a default value () 2014-10-16 21:57:43 +02:00
Frank Zingsheim 3923618b8d Fixed (Missing varid for multiple braced initialized variables)
-> Fixed broken code in unit tests
2014-10-16 20:46:57 +02:00
Frank Zingsheim 9dd3bce98b Fixed : non-static member initializer causes false positive 2014-10-16 09:11:09 +02:00
Frank Zingsheim 11867e3210 Fixed (non-static member initializer causes false positive (function call; initializer)) 2014-10-12 15:06:07 +02:00
PKEuS 38af865560 Fixed false positive: Member variable not initialized in the constructor with array and (*this) () 2014-09-29 16:49:20 +02:00
PKEuS 8130fda4ae Implemented support for C++11 uniform initialization in several checks. 2014-08-05 16:11:42 +02:00
PKEuS d3501e77a8 Moved several tests from testclass.cpp to testconstructors.cpp, fixes test failure introduced recently. 2014-08-05 12:19:52 +02:00
Daniel Marjamäki 049d68ae7d AST: Fixed bad syntax tree for 'if (x()[0]==1);' 2014-04-05 08:03:24 +02:00
Alexander Mai 173a2e9ea2 fix crash within CheckClass::initializeVarList() 2014-04-04 22:13:51 +02:00
Daniel Marjamäki 2a0716449f Fixed (C++0x11 default values for class fields and missing constructor) 2014-03-24 06:15:51 +01:00
Robert Reif d1eb04c539 Fixed (Member variable not initialized in public delegate constructor) 2014-03-12 05:48:13 +01:00
Daniel Marjamäki fd3a8a2a18 Update copyright 2014-02-15 07:45:39 +01:00
Alexander Mai 5539e9ea0f Fixed (False positive: warning (uninitMemberVar): Member variable 'ToDoubleArray::mfNaN' is not initialized in the constructor. (modified example)) 2014-01-01 18:34:39 +01:00
PKEuS 4f0121ee2f Splitted simplification out of tokenize() 2013-12-30 17:45:28 +01:00
Daniel Marjamäki 92305ed1f9 Fixed (False positive: warning (uninitMemberVar): Member variable 'ToDoubleArray::mfNaN' is not initialized in the constructor.) 2013-12-15 14:07:29 +01:00
PKEuS a9a5dc0354 Updated to AStyle 2.03, require this version 2013-08-07 16:27:37 +02:00
Lucas Manuel Rodriguez d177c8fd03 Fixed (False positive: (warning) Member variable 'Foo::m_state' is not initialized in the constructor.) 2013-07-08 06:38:33 +02:00
Daniel Marjamäki eac4ebf185 astyle formatting 2013-06-14 07:22:46 +02:00
Robert Reif 870d29944b Fixed (false positive: Member variable 'A::sz' is not initialized in the constructor) 2013-06-14 06:32:26 +02:00
Daniel Marjamäki 1936eb8676 astyle formatting 2013-05-21 16:59:58 +02:00
Robert Reif 2c8360c607 Fixed (uninitMemberVar not found when constructor contains default parameters) 2013-05-18 18:33:24 +02:00
PKEuS 8e4f99884b Removed more duplicate unit tests 2013-04-13 00:49:00 -07:00
Frank Zingsheim 54e7c8f6a2 Implemented support for move constructors:
Adapt code to Function::eMoveConstructor
introduced in commit eb2962792f
2013-04-10 21:57:22 +02:00
Ettl Martin 1b9c1c03fa unittests: removed not needed '\n' at the end of testcases. 2013-03-20 15:36:16 +01:00
Ettl Martin 54d398c7dd unittests: removed not needed '\n' at the end of testcases. 2013-03-19 09:18:58 +01:00
Robert Reif 25c36b56fa CheckClass: made warnings about uninitialized members in default constructors inconclusive. Ticket: 2013-03-09 09:20:48 +01:00
PKEuS 66a3555897 Implement initial support for Types in Symboldatabase:
- For each class/struct/union, a Type instance is added to SymbolDatabase::typeList.
- A scope is no longer created for declared but not defined types

Fixed name detection for classes when they are declared like this: "class ::Foo::Sub {..."
2013-03-05 04:33:38 -08:00
PKEuS d78c06dc3f Replaced _settings->isEnabled("style") by _settings->isEnabled("warning") wherever warnings are issued 2013-03-03 02:41:59 -08:00
Daniel Marjamäki 94da3bd57f Fixed (False positive (style): noexcept for constructors) 2013-02-28 06:38:57 +01:00
Robert Reif 509061afff Fixed (False positive: Uninitialized variable in constructor (1.58)) 2013-02-27 06:59:04 +01:00
Robert Reif e6915e7a78 Fixed (non-static member initializer causes false positive) 2013-02-18 06:33:53 +01:00
Robert Reif c5ee083c82 Fixed (false positive 'noConstructor' in 1.57) 2013-02-15 06:44:07 +01:00
Robert Reif 5de26bfeb9 Fixed (noConstructor false positives introduced in cppcheck 1.58) 2013-02-13 06:00:04 +01:00