Daniel Marjamäki
7975ffba21
Fixed #3980 (Variable not assigned a value)
2012-08-25 13:07:33 +02:00
Daniel Marjamäki
f133c9e8ec
Fixed #4020 (false positive: (style) Variable 'dst' is assigned a value that is never used)
2012-08-22 19:47:46 +02:00
PKEuS
c537a86363
Fixed false negative in unused variable checking when class without side effects inherits from another one.
2012-08-20 07:55:39 -07:00
PKEuS
35d94c26d5
Changed creation of SymbolDatabase. Database always created after Tokenizer::tokenize() and Tokenizer::simplifyTokenList() instead of on-demand creation by Tokenizer::getSymbolDatabase.
...
-> With Token::scope() it is possible to access the symboldatabase without having to call getSymbolDatabase(). The change increases safety because it is guaranteed that the database is available in all checks, even if the specific check doesn't call getSymbolDatabase
- Tokenizer::_symbolDatabase does no longer have to be mutable -> Increased const correctness
The change above required two additional changes:
- A bug causing a debug message was fixed in the symboldatabase that became visible in the test suite by the change above.
- Simplify expressions like "struct struct Foo" which might be result of typedef instanciation.
2012-08-12 03:01:24 -07:00
PKEuS
355c1322d6
Small refactorizations in checkunusedvar.cpp:
...
- Token::Match handles nullpointers
- In chained assignments variables are only written (not read) when assigned
- Fixed crash #4033
2012-08-10 03:36:08 -07:00
PKEuS
c11e8cdbfa
Fixed false positive "Variable is not assigned a value" on class types
2012-07-25 00:34:27 -07:00
PKEuS
bb940e4722
Implemented unused variable checking for standard types ( #2851 )
2012-07-24 11:47:29 -07:00
PKEuS
2103811291
Refactorizations in testrunner:
...
- Removed unnecessary space characters
- Removed comments from test cases which are not preprocessed
2012-07-16 05:02:33 -07:00
Daniel Marjamäki
cb7757f650
CheckUnusedVar: dont report false positives for extern variables
2012-06-28 17:22:56 +02:00
Daniel Marjamäki
25b24d149f
Fixed #3910 (False positive: Variable is not assigned a value (pointerArray alias))
2012-06-24 16:54:37 +02:00
Daniel Marjamäki
951da02f89
Reviewed handling of unknown types in C files in checkunusedvar
2012-06-22 15:59:41 +02:00
Daniel Marjamäki
082e6d506b
#3744 (Unexpected unused value warning for char ptr types set in switch)
2012-04-28 15:43:42 +02:00
Ettl Martin
bf0ed17a16
added testcase for ticket #3602
2012-04-27 02:05:45 +02:00
Daniel Marjamäki
d5f6cfcfa8
Tokenizer: Use new setVarId function. Removed the old one.
2012-04-22 11:36:31 +02:00
Daniel Marjamäki
aeac38b673
Tokenizer::setVarIdNew: Removed test case in TestUnusedVar that fails with the new setVarId function. The new setVarId function assumes that 'static int i(a);' is a variable declaration if it's in a executable scope (it is unknown if 'a' is a type or a variable so this assumption could be wrong).
2012-04-22 10:42:55 +02:00
Ettl Martin
2840b19fb3
removed some c++-comments within testcases ( from my last commit ). No functional change.
2012-04-19 10:15:29 +02:00
Ettl Martin
7699d5bf87
#3742 added testcases to ensure it works correctly.
2012-04-19 10:08:51 +02:00
PKEuS
782cd5d228
Fixed #3687 : Don't treat catched variables as local ones.
2012-03-26 21:19:42 +02:00
PKEuS
002389f836
Fixed #3677
...
Added forgotten testcase for #3672
2012-03-21 18:40:32 +01:00
Daniel Marjamäki
385c9d341d
Fixed #3633 (False positive: struct array not assigned a value)
2012-02-26 08:29:02 +01:00
Daniel Marjamäki
bbfae8e3ae
Fixed #3583 (False positive Variable X is assigned a value that is never used)
2012-02-25 12:56:33 +01:00
Daniel Marjamäki
69d03bac34
Fixed #3603 (False Positive: Variable is assigned a value that is never used)
2012-02-19 15:25:46 +01:00
Daniel Marjamäki
9f139cf414
Fixed #3509 (FP: Variable 'itemList' is not assigned a value, when << operator is used)
2012-01-23 08:02:59 +01:00
Edoardo Prezioso
57fcde8090
Fixed ticket #3481 (segmentation fault of cppcheck)
2012-01-09 13:39:02 +01:00
Daniel Marjamäki
304980848f
Fixed #3473 (False positive: variable is assigned value that is never used (used in return statement))
2012-01-08 08:44:18 +01:00
Daniel Marjamäki
70c83d9ca9
Fixed #3467 (False positive: Variable is not assigned a value (new))
2012-01-08 08:31:00 +01:00
Reijo Tomperi
8cae17fda8
Update year to 2012
2012-01-01 01:05:37 +02:00
Daniel Marjamäki
2ae48c7aef
Fixed #3454 (false positive: (style) Variable 'iFaktor' is assigned a value that is never used)
2011-12-30 09:47:15 +01:00
Daniel Marjamäki
fd4bc12ed3
Fixed #3438 (false positive: (style) Variable 'dBuf' is not assigned a value)
2011-12-26 08:12:23 +01:00
PKEuS
6dc2a6e7ab
Refactorized CheckUnusedVar
2011-12-18 20:15:41 +01:00
Daniel Marjamäki
6f8e42a5af
changed the astyle formatting flags
2011-10-13 20:53:06 +02:00
Daniel Marjamäki
9a97fbe022
Fixed #3104 (unread despite modified and used in IF statement)
2011-09-11 08:19:35 +02:00
Daniel Marjamäki
8240422a09
Fixed #3078 (vector::at using int causes false positive)
2011-09-04 20:48:05 +02:00
Robert Reif
477d1e92c9
add new (nothrow) support to CheckUnusedVar::checkFunctionVariableUsage
2011-08-31 06:39:39 -04:00
Robert Reif
2dd93dff75
move unused variable checks from checkother to checkunusedvar
2011-08-19 14:35:25 -04:00
Kimmo Varis
cfcfa3f000
Use "enabled" list for the style checking.
...
Settings-class currently enables style checking via dedicated
boolean attribute. All other CLI's enable-options are handled
through the enable-list. This commit moves style-check enabling
to use the enable-list.
Main advantage is the consistency how options are handled/stored
in the Settings class. Which also unifies using them for the other
code. You need to enable certain type of checks? Use the
addEnabled()-method. You want to check if certain type of checks
are enabled? Use the isEnabled()-method.
2011-08-07 10:28:52 +03:00
Robert Reif
9a4447c835
add support for unused const local variables
2011-07-24 12:09:59 -04:00
Robert Reif
c3c3eb74e8
fix #2929 (Additional Unused variable check)
2011-07-21 18:37:37 -04:00
Robert Reif
270b2b1772
fix #2904 (Memory leak not detected when creating a new class instance)
2011-07-14 19:15:59 -04:00
Robert Reif
b32b2c6d87
add support for checking unused std::string local variables
2011-07-02 19:25:10 -04:00
Robert Reif
301e59cea0
fix false positive for unused local class/struct variable
2011-07-01 08:45:29 -04:00
Robert Reif
18e6509c5d
add support in CheckOther::functionVariableUsage() for checking structures that are declared with struct keyword
2011-07-01 07:42:20 -04:00
Robert Reif
7826b5e22d
add support for detecting unused function variables of type class or struct
2011-06-30 21:58:11 -04:00
Daniel Marjamäki
97d47fa20e
Fixed #2805 (false positive: [NotAssigned1.cpp:5]: (style) Variable 'y' is not assigned a value)
2011-06-08 19:54:01 +02:00
Daniel Marjamäki
144d811e54
Fixed #2780 (false positive: variable p is not assigned a value 'int p[2]; *p = 0;')
2011-05-11 18:58:25 +02:00
Daniel Marjamäki
3629f953f0
Fixed #2770 (False positives (scope can be reduced / variable is assigned value that is never used))
2011-05-06 21:16:01 +02:00
Daniel Marjamäki
5175e4ff3f
Fixed #2535 (false positive: (style) Variable 'A' is not assigned a value)
2011-02-09 19:20:44 +01:00
Pete Johns
098f0bf3e6
Fixed #2526 (Make TODO_ASSERT_EQUALS take three arguments (value, to_be, as_is)?...
...
Removed replaced EXPECTED with...
WANTED (to-be): The future expected value.
CURRENT (as-is): Documenting how cppcheck behaves now.
This removes the need for an ASSERT_EQUALS but enforces the check for every TODO_ASSERT_EQUALS.
2011-01-30 23:20:11 +11:00
Reijo Tomperi
226b605774
Change year 2010 -> 2011 in license texts.
2011-01-09 21:33:36 +02:00
Daniel Marjamäki
92acca3d0c
Fixed #2368 (assigned a value that is never used)
2010-12-27 20:49:07 +01:00
Ettl Martin
ccde32b210
Created to testcase ( #2368 ) for assigned a value that is never used false positive
2010-12-27 15:12:17 +01:00
Daniel Marjamäki
ecad249ae2
Fixed #2346 (False positive: pointer is assigned value that is never used. used here: 'pCol = pCol->GetNext()')
2010-12-25 19:17:53 +01:00
Daniel Marjamäki
0f9415a5fb
Fixed #2330 (unreadVariable error for a fstream object when only extraction operator (>>) is used)
2010-12-21 19:02:00 +01:00
Robert Reif
244974a61a
unused variables: fixed false negatives with the help of the symbol database. ticket: #2317
2010-12-21 08:13:40 +01:00
Daniel Marjamäki
f73cce9eca
Fixed #2317 ((style) Variable is allocated memory that is never used)
2010-12-20 18:31:16 +01:00
Daniel Marjamäki
02892499d2
Fixed #2286 (Variable 'ownKilled' is assigned a value that is never used)
2010-12-19 18:27:31 +01:00
Daniel Marjamäki
b25e6ff24c
Fixed #2279 ((style) struct of union member is never used)
2010-12-05 18:33:53 +01:00
Daniel Marjamäki
93ebdca313
Fixed #2264 (False positive: variable assigned value that is never used)
2010-12-03 18:45:49 +01:00
Daniel Marjamäki
8118e4755a
Fixed #2263 (False positive: variable assigned value that is never used)
2010-12-02 20:08:05 +01:00
Robert Reif
f12c0c7ada
Tokenizer: add assert(_settings) to Tokenizer to insure the tokenizer always has settings. Ticket: #2219
2010-12-01 18:00:55 +01:00
Daniel Marjamäki
d250cb5aa2
Fixed #2206 (False positive: variable is assigned a value that is never used (array initializers))
2010-11-15 17:53:55 +01:00
Daniel Marjamäki
7b3e7f6467
Fixed #2205 (False positive: variable is assigned a value that is never used (assigning to dereferenced casted pointers))
2010-11-15 17:30:07 +01:00
Zachary Blair
36d80d6eaa
Fixed #2058 (Warn for unused variable when only doing malloc/free)
2010-11-14 17:37:36 -08:00
Daniel Marjamäki
19f809c9b4
Unused variables: better handling of '= %var% ++'. Ticket: #2160
2010-11-02 20:01:12 +01:00
Daniel Marjamäki
558899dc74
Variable usage: Fixed false negative that I introduced when simplifying compound assignments
2010-10-31 09:34:25 +01:00
Daniel Marjamäki
23d3fd3a5a
Fixed #2147 (uninitialized variable: false negative for 'x += y;')
2010-10-31 08:47:13 +01:00
Daniel Marjamäki
0afd19c59b
Fixed #2039 (unions not handled properly, false positive about initialization)
2010-09-09 20:15:00 +02:00
Daniel Marjamäki
9415423352
Fixed #2017 (false positive::struct or union member 'Base::m_ui' is never used)
2010-09-04 11:21:34 +02:00
Daniel Marjamäki
8ff1e71b22
Fixed #2004 (False positive in 'variable assigned a value but is never used' check)
2010-08-31 20:58:37 +02:00
Daniel Marjamäki
1d78b5072d
Fixed #1996 (False positive for 'Variable foo is assigned a value that is never used')
2010-08-31 20:33:28 +02:00
Daniel Marjamäki
71453871d4
Fixed #1989 (false positive: Variable 'Aux13' is assigned a value that is never used)
2010-08-28 13:32:43 +02:00
Daniel Marjamäki
83a8879f11
Tokenizer::simplifyInitVar : Refactorings and fixes related to ticket #1989
2010-08-27 22:58:21 +02:00
Robert Reif
4a6070d2af
fix 2 problems related to ticket 1976:
...
1. nested unnamed anonymous structures and unions were not supported.
2. declaration split up in class had bug if proceeded by access specifier.
2010-08-25 20:17:31 +02:00
Daniel Marjamäki
ed4f1164a1
Fixed #1894 (unreadVariable false positive with const references)
2010-08-07 15:53:51 +02:00
Robert Reif
e86e8449f8
Variable usage: better handling of pointer aliasing. Ticket: #1729
2010-07-12 09:50:18 +02:00
Robert Reif
566b4b4beb
Variable usage: fixed false positive reported in #1729
2010-07-08 08:42:34 +02:00
Robert Reif
2d6dfa57e1
Variable usage: Better aliasing support (Ticket #1729 )
2010-07-08 08:00:50 +02:00
Daniel Marjamäki
4ebf4caf66
Variable usage: only warn about variables that have variable id > 0
2010-07-07 08:50:34 +02:00
Daniel Marjamäki
2bb07a55bd
Fixed #1803 (False positive: unused variable: this)
2010-07-07 08:39:18 +02:00
Daniel Marjamäki
a107cd1b59
Fixed #1729 (False positive: variable is assigned a value that is never used (pointer aliasing))
2010-07-07 08:26:24 +02:00
Robert Reif
4668359b51
Fixed #1808 (false positive: uninitialized variable with multiple assignment)
2010-06-29 08:38:24 +02:00
Robert Reif
38f90dae09
Fixed #1813 (false negative: Member variable not assigned a value in operator=)
2010-06-25 07:52:12 +02:00
Robert Reif
2a1edff77f
Fixed #1812 (false negative: functionVariableUsage doesn't support static variables)
2010-06-24 17:00:32 +02:00
Robert Reif
74e48d4bb1
Fixed #1732 (False positive: Variable not assigned a value (pointer to pointer))
2010-06-23 06:54:14 +02:00
Robert Reif
a5b45a7f83
Fixed #1807 (false positive: Variable is not assigned a value (casting function parameters))
2010-06-22 17:04:11 +02:00
Robert Reif
bdd28b47aa
Fixed #1799 (false positive: Variable is assigned a value that is never used)
2010-06-21 18:12:01 +02:00
Robert Reif
81403479bd
Refactoring testunusedvariables. This fixes #1804 .
2010-06-18 07:19:26 +02:00
Robert Reif
ee7ad272d6
variable usage: fix false positives when __attribute__ is used. Ticket: #1792
2010-06-16 18:04:31 +02:00
Robert Reif
7dba21858a
simplify the alias handling in the checking of variable usage. Ticket: #1729
2010-06-16 18:00:21 +02:00
Robert Reif
98ae660260
Fixed #1792 (false positive: Variable 'test' is assigned a value that is never used)
2010-06-14 15:46:57 +02:00
Robert Reif
3d2c28a524
Fixed #1784 (false positive: Variable is not assigned a value)
2010-06-10 07:21:47 +02:00
Robert Reif
00dcec47ac
Variable usage: read variable when using syntax '..=*(p);'
2010-06-08 18:26:14 +02:00
Robert Reif
f37a7ba934
Variable usage: Added TODO testcases for handling pointer alias. Ticket: #1729
2010-06-06 20:37:48 +02:00
Robert Reif
4c4844b722
Fixed #1723 (Variable assigned value which is never used but is thrown)
2010-06-03 07:05:57 +02:00
Daniel Marjamäki
cb43168d81
Fixed #1720 (segmentation fault of cppcheck)
2010-06-02 18:10:32 +02:00
Daniel Marjamäki
a8f38e55dc
Added unit test for ticket #1720
2010-06-01 20:00:43 +02:00
Robert Reif
176b41caa5
Fixed #1709 (char buffer that is only accessed with pointers is marker not assigned)
2010-05-26 19:22:35 +02:00
Robert Reif
048733a15e
false positive: Variable is assigned a value that is never used
2010-05-23 10:41:05 +02:00
Robert Reif
be35b72c7e
Fixed #1660 (false positive: Variable is assigned a value that is never used, when using cast)
2010-05-09 07:15:40 +02:00
Robert Reif
87a54580a8
Added unit test for #5
2010-05-09 07:10:51 +02:00
Daniel Marjamäki
95f3533252
Robert Reif <reif@earthlink.net>
...
refactoring chained assignments
2010-05-05 19:34:03 +02:00
Robert Reif
4c95264d29
Fixed #1647 (False positive: buffer is not assigned value (assigned through alias))
2010-05-05 17:31:07 +02:00
Robert Reif
7ce70777a4
Fixed #1643 (Variable usage (pointer is assigned but never used))
2010-05-04 17:28:03 +02:00
Robert Reif
eb276346c5
Fixed #1639 (False positive: unused variable value (pointer aliasing))
2010-05-04 17:26:09 +02:00
Robert Reif
6eb16e0f16
Fixed #1640 (False negative: Unused value (variable is assigned but never read))
2010-05-01 21:15:14 +02:00
Daniel Marjamäki
dfde9772e2
astyle formatting
2010-05-01 11:54:04 +02:00
Slava Semushin
f50d182750
Fixed #1574 (chain assignments could be simplified)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/1574
2010-05-01 15:28:35 +07:00
Robert Reif
4014bd234f
Unit testing: Improved test coverage for variable usage checking
2010-05-01 09:26:47 +02:00
Robert Reif
1fa1ff8d14
Fixed #1636 (Fix false positive with strncpy termination check)
2010-04-30 21:36:48 +02:00
Robert Reif
5738f34872
Fixed #1622 (False positive: buf is not assigned a value (pointer aliasing))
2010-04-30 18:11:51 +02:00
Robert Reif
70d475f8c2
Fixed #1622 (False positive: buf is not assigned a value (pointer aliasing))
2010-04-29 07:10:50 +02:00
Robert Reif
f0018100e1
Variable usage: Use variable id instead of variable name to identify variable
2010-04-27 05:05:32 +02:00
Daniel Marjamäki
1eafe45c47
Redundant assignment: Added TODO testcase for detecting redundant assignment in inner scope
2010-04-24 12:21:26 +02:00
Daniel Marjamäki
e6f640d816
unit testing: Added TODO test case for unused variables when using pointer aliasing. Related with ticket #1622
2010-04-24 10:35:41 +02:00
Robert Reif
2bdcf3b5b2
variable usage: refactoring the checking
2010-04-24 09:45:03 +02:00
Zachary Blair
c26e619b23
Fixed #855 (Refactoring: move conditions into checks)
2010-04-20 23:38:25 -07:00
Robert Reif
d851b4a3d4
Fixed #1607 (false positive: variable is assigned a value that is never used)
2010-04-17 14:23:29 +02:00
Daniel Marjamäki
6371327487
Unit Testing: Added assert for todo testcase to catch changes.
2010-04-17 12:51:59 +02:00
Daniel Marjamäki
b19113426f
Unused struct member: Fixed false positives
2010-04-17 11:16:05 +02:00
Robert Reif
61b5a21ac9
Fixed #1605 (false positive: uninitialized variable)
2010-04-16 16:25:57 +02:00
Robert Reif
45573ad101
Fixed #1607 (false positive: variable is assigned a value that is never used)
2010-04-16 15:57:09 +02:00
Robert Reif
01aa414f32
Fixed #1253 (improve check: uninitialized variable not found when using reference)
2010-04-15 18:44:52 +02:00
Reijo Tomperi
35d2a27b9c
Update copyright year in all source files
2010-04-13 22:23:17 +03:00
Martin Ettl
3388daadc3
ticket 1253 added testcases and one todo
2010-04-09 23:36:32 +02:00
Daniel Marjamäki
f77dbbb14b
Fixed some false positives for unused struct members
2010-04-09 19:55:41 +02:00
Daniel Marjamäki
0cad22314e
Reverted 'astyle fix'. Those changes are not in sync with my astyle configuration/setup.
2010-04-02 07:30:58 +02:00
Martin Ettl
193aa7d1d3
astyle fix
2010-04-02 02:21:53 +02:00
Daniel Marjamäki
a68d8dbc77
Fixed #1549 (false positive: uninitialized variable)
2010-03-31 20:20:51 +02:00
Robert Reif
62d2845014
Fixed #1492 (false negatives: array index out of bounds)
2010-03-28 15:56:13 +02:00
Daniel Marjamäki
235404077f
Fixed #1501 (false positive: Variable 'n' is assigned a value that is never used)
2010-03-16 19:25:10 +01:00
Daniel Marjamäki
375d2b1fcd
astyle formatting
2010-02-18 19:55:47 +01:00
Daniel Marjamäki
b59d79c303
readded checks for unused variables and unreachable code that were removed in 42c608b6f0
2010-02-18 18:45:13 +01:00
Daniel Marjamäki
09859c1019
refactoring the folder structure
2009-10-25 12:49:06 +01:00
Daniel Marjamäki
cb76061118
unused struct member: bail out when casting
2009-10-17 19:31:14 +02:00
Daniel Marjamäki
2e9f7755ee
Unused struct members: bail out upon casting
2009-10-17 17:36:55 +02:00
Reijo Tomperi
fdde2182b9
Fix GPL comments in all files. ">." was missing from the end.
2009-09-27 18:08:31 +03:00
Reijo Tomperi
8b0e481d46
Refactoring: Rename member functions to follow naming guidelines.
2009-07-05 23:16:43 +03:00
Slava Semushin
52a8368b02
Strip redundant std::string usage from tests.
...
Second round: handle empty strings.
Done by command:
git grep -l ASSERT_EQUALS | xargs sed -i 's|ASSERT_EQUALS(std::string(\(".*"\)),|ASSERT_EQUALS(\1,|'
Should be no functional change.
2009-06-05 07:43:55 +07:00
Reijo Tomperi
58eda6e978
Fix ticket #325 (Replace developer names in source files with AUTHORS file)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/325
2009-05-30 08:48:12 +03:00
Daniel Marjamäki
9f1c3cc535
refactoring the rest of the classes
2009-03-20 18:16:21 +01:00
Reijo Tomperi
fc8f47145a
Copyrights updated
2009-03-01 19:52:33 +00:00
Reijo Tomperi
b211b8cbe8
Fix ticket #84 (unit testing: use "protected" instead of preprocessor)
2009-02-07 20:06:00 +00:00
Daniel Marjamäki
3457b38d7a
errmsg: write severity in the message
2009-01-31 08:33:31 +00:00
Nicolas Le Cam
42c608b6f0
Remove checks that are already covered well by most compilers (Unreachable Code; Assignment in Condition; Unused Variable).
2009-01-21 21:31:47 +00:00
Reijo Tomperi
176dd41306
Fixed Ticket #40 , Check copyright texts in files, now that we have new developers.
2009-01-21 20:04:20 +00:00
Leandro Penz
e930525aa4
functionVariableUsage: no longer SIGSEGVs on unfinished struct. Fixes Ticket #31 .
2009-01-18 19:45:43 +00:00
Daniel Marjamäki
b9b250f4cc
unused var: fixed false positives when using shift operator
2009-01-17 14:32:02 +00:00
Daniel Marjamäki
121c0ee58f
unused variable: reading the value of variable in a for loop.. "for(;a;)" see ticket #18
2009-01-17 11:12:15 +00:00
Leandro Penz
1a14cd527c
functionVariableUsage: support for nested struct/union declaration.
2009-01-14 00:45:44 +00:00
Daniel Marjamäki
980b10bfc9
errmsg: Added 'unsigned division'
2009-01-12 17:12:14 +00:00