Daniel Marjamäki
|
ffc707246b
|
ValueFlow: Better handling of Known/Possible values after conditional unknown function call
|
2015-07-21 17:56:40 +02:00 |
PKEuS
|
7f6b6e43b1
|
Support strings in CheckStl::mismatchingContainers() (#6839)
|
2015-07-21 14:13:26 +02:00 |
PKEuS
|
a3eb725c3f
|
Support C++03-style of declaring a copy ctor as deleted (#6585)
|
2015-07-21 13:46:50 +02:00 |
amai2012
|
e8ac4d8e87
|
#6847 segmentation fault (invalid code) in Token::multiCompare. Fix and simple refactoring in Tokenizer
|
2015-07-21 13:40:50 +02:00 |
PKEuS
|
bdd53b4142
|
Fixed false positive #6717
|
2015-07-21 12:13:59 +02:00 |
PKEuS
|
dd9cb929bf
|
Refactorization in Preprocessor: Support beginning/end of file in removeSpaceNearNL(), avoid string copying when calling replaceIfDefined()
|
2015-07-21 12:13:58 +02:00 |
Daniel Marjamäki
|
8a72bb8aa8
|
AST: Fixed AST for struct initialisation
|
2015-07-21 11:40:42 +02:00 |
PKEuS
|
149d11d9ad
|
Improved handling of inline assembly (#6813):
- Add ; after asm {} block if required
- Fixed inline suppressions
|
2015-07-20 23:09:54 +02:00 |
PKEuS
|
a0890ecd2c
|
Fixed false positive: Do not print useClosedFile on arrays (#6823)
|
2015-07-20 22:40:19 +02:00 |
PKEuS
|
c987a99ac8
|
Fixed hang on garbage code (#6824)
|
2015-07-20 22:33:32 +02:00 |
Daniel Marjamäki
|
749bb34deb
|
Fixed #6830 (ValueFlow: value of switch-variable inside switch)
|
2015-07-20 19:45:38 +02:00 |
Alexander Mai
|
defee734f5
|
#6846 segmentation fault (invalid code) in CheckClass::hasAssignSelf
|
2015-07-20 19:04:34 +02:00 |
Daniel Marjamäki
|
c0880c8d79
|
ValueFlow: Values that are assigned in switch are possible after switch
|
2015-07-20 09:36:56 +02:00 |
Frank Zingsheim
|
8416be4d9d
|
#6345 Tokenizer::simplifyTypedef() adds redundant 'typename' to declaration
|
2015-07-20 07:55:22 +02:00 |
amai2012
|
af9b67562b
|
Merge pull request #626 from simartin/ticket_6648
Ticket #6648: Properly handle variables that have been deallocated and whose _address_ is taken after
|
2015-07-19 18:04:47 +02:00 |
Simon Martin
|
fa94f2e0f4
|
Ticket #6648: Properly handle variables that have been deallocated and whose _address_ is taken after in CheckLeakAutoVar.
|
2015-07-19 17:37:50 +02:00 |
Alexander Mai
|
8b97f04de4
|
Try to address some Coverity issues. Add TODO testcase for #5783. Introduce TODO_ASSERT macro.
|
2015-07-19 15:03:35 +02:00 |
orbitcowboy
|
f1f46611d6
|
Merge pull request #624 from simartin/ticket_6601_template_parameters
Added unit test involving function reference for TemplateSimplifier::templateParameters
|
2015-07-19 09:02:43 +02:00 |
Simon Martin
|
d218b95349
|
Ticket #5776: Since the fix is in Tokenizer, it makes more sense to have a Tokenizer unit test.
|
2015-07-19 00:10:47 +02:00 |
Simon Martin
|
d1d51c5bb7
|
Added unit test involving function reference for TemplateSimplifier::templateParameters.
|
2015-07-18 23:56:55 +02:00 |
Daniel Marjamäki
|
ce7e879460
|
ValueFlow: isVariableChanged() should return true when variable is changed by passing its address to subfunction
|
2015-07-18 15:35:39 +02:00 |
Daniel Marjamäki
|
5aa0b284dc
|
ValueFlow: Evaluate more calculations when operands have known values
|
2015-07-18 15:03:57 +02:00 |
Simon Martin
|
1f73d71542
|
Ticket #5776: Simplify (&a)->b into a.b
|
2015-07-17 23:27:35 +02:00 |
Simon Martin
|
af1b0cfddf
|
Ticket #6835: Don't get confused by parentheses while detecting template parameter default values.
|
2015-07-17 21:30:34 +02:00 |
Daniel Marjamäki
|
25d9ebedd8
|
ValueFlow: fixed known/possible value of static variable
|
2015-07-17 20:48:37 +02:00 |
Daniel Marjamäki
|
f1e410a878
|
ValueFlow: value that is changed in do while loop must be possible instead of known.
|
2015-07-17 20:30:34 +02:00 |
Daniel Marjamäki
|
cb04dfbd37
|
Fixed #4842 (condition is always true (variable is assigned constant value and then used in condition))
|
2015-07-17 15:30:23 +02:00 |
Daniel Marjamäki
|
61cf224f32
|
ValueFlow: Make known loop value possible
|
2015-07-17 10:24:24 +02:00 |
Daniel Marjamäki
|
3d5781743c
|
ValueFlow: Restore handling of not
|
2015-07-16 21:17:44 +02:00 |
Daniel Marjamäki
|
15a8e4d2df
|
Temporarily revert "Fixed #4842 (condition is always true (variable is assigned constant value and then used in condition))"
This reverts commit a3fbad50cb .
The ValueFlow must be updated before this can be re-added.
|
2015-07-16 21:10:46 +02:00 |
Daniel Marjamäki
|
09efe140fe
|
ValueFlow: Change value to 'Possible' after conditional assignment in inner loop
|
2015-07-16 21:08:32 +02:00 |
Daniel Marjamäki
|
38214b6907
|
ValueFlow: function arguments only has 'possible' values
|
2015-07-16 20:49:14 +02:00 |
Daniel Marjamäki
|
a3fbad50cb
|
Fixed #4842 (condition is always true (variable is assigned constant value and then used in condition))
|
2015-07-16 20:17:57 +02:00 |
Daniel Marjamäki
|
88491267d6
|
ValueFlow: Added Value::valueKind that says if value is known or possible
|
2015-07-16 17:33:16 +02:00 |
orbitcowboy
|
48fed95942
|
Fixed wrong test case in testother: mathfunctionCall_atan2().
|
2015-07-16 10:55:58 +02:00 |
orbitcowboy
|
1d910bc3bc
|
#6313: Added test case for oppositeInnerCondition.
|
2015-07-16 08:44:38 +02:00 |
Alexander Mai
|
d45aa6170b
|
Minor refactoring in Tokenizer: Optimize for C code and use nullptr instead of 0
|
2015-07-16 00:29:48 +02:00 |
Simon Martin
|
2d8993319c
|
Ticket #6810: Avoid infinite loop upon invalid typed enum declaration.
|
2015-07-15 21:39:15 +02:00 |
Daniel Marjamäki
|
b821e996e1
|
MathLib: Add TEST_MATHLIB_VALUE that is used to test MathLib::value
|
2015-07-15 17:36:41 +02:00 |
orbitcowboy
|
dda5e46d1d
|
Fixed typo in comment. No functional changes.
|
2015-07-15 15:29:35 +02:00 |
Alexander Mai
|
b604d63dd8
|
#6726 cppcheck hangs with 100% CPU load (invalidcode) inside Token::astOperand2(). #6840 egmentation fault (invalid code) in Token::astOperand2. Improve stability on invalid code
|
2015-07-15 15:19:48 +02:00 |
Alexander Mai
|
b30d9ffe98
|
#6838 cppcheck hangs on some strange input code. Token::astOperand1/2 throw internal error on garbage code instead of creating endless recursion in AST
|
2015-07-14 21:07:10 +02:00 |
Daniel Marjamäki
|
cf53074fd9
|
astyle formatting
|
2015-07-14 18:09:28 +02:00 |
Antti Tuppurainen
|
a75872a15e
|
Fix uniform init in out-of-class ctor-initer
|
2015-07-14 18:09:07 +02:00 |
Daniel Marjamäki
|
405a1fba11
|
ValueFlow: set values for false/true
|
2015-07-14 18:02:26 +02:00 |
Martin Ettl
|
027bdd3370
|
Reverted cebc105856 .
|
2015-07-13 21:31:24 +02:00 |
Daniel Marjamäki
|
1a872a2c9f
|
Fixed #6019 (false negative: Expression is always true/false '!(v!=10) && !(v!=20)')
|
2015-07-13 20:53:49 +02:00 |
orbitcowboy
|
08d6c244ee
|
Running astyle.
|
2015-07-13 16:50:48 +02:00 |
orbitcowboy
|
cebc105856
|
Changed test case from recent commit into a TODO test case. Since it is a FP.
|
2015-07-13 16:50:23 +02:00 |
orbitcowboy
|
d042151b62
|
Checkother:selfAssignment: Improved test coverage.
|
2015-07-13 16:39:21 +02:00 |
Daniel Marjamäki
|
7ccd30362c
|
Fixed #6826 (False positive: ValueFlow conditional value used in condition)
|
2015-07-12 19:35:47 +02:00 |
Daniel Marjamäki
|
b8e77c8005
|
valueflow: fix for ?:. the condition result is not a result of the ?.
|
2015-07-04 11:17:38 +02:00 |
Daniel Marjamäki
|
fef251ac76
|
negative array size: fixed noise when array is not vla
|
2015-07-04 09:42:42 +02:00 |
Daniel Marjamäki
|
7e1ddea653
|
One more fix for #6811 (ValueFlow: result of ?:)
|
2015-07-02 20:52:04 +02:00 |
Daniel Marjamäki
|
c751039612
|
Fixed #6811 (ValueFlow: result of ?:)
|
2015-07-02 20:11:27 +02:00 |
Daniel Marjamäki
|
14044bf60b
|
testrunner: revert changes to avoid compiler warnings
|
2015-07-01 19:15:27 +02:00 |
amai2012
|
4a1695c879
|
#6807 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. #6808 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Throw InternalError on garbage code
|
2015-07-01 16:31:49 +02:00 |
Alexander Mai
|
6e03e7dca2
|
Remove some code checking for invalid class hierarchy which got obsolete since 480a5672b0 . Run astyle
|
2015-07-01 07:50:13 +02:00 |
amai2012
|
480a5672b0
|
#6298 stack overflow in Scope::findFunctionInBase (endless recursion). Fix handling of circular class hierarchy
|
2015-07-01 00:04:01 +02:00 |
amai2012
|
108b035af2
|
Adjust two checks which have different results on Windows/Visual Studio than on Linux: one succeeds already, another fails. Analysis/fix is under development. Temporary repair allows to detect further regressions.
|
2015-06-30 21:21:26 +02:00 |
amai2012
|
1604e751e5
|
Fix some compiler warnings which got introduced recently
|
2015-06-30 20:11:51 +02:00 |
amai2012
|
99dfd55d0c
|
#6804 segmentation fault (invalid code) in Token::getValueTokenDeadPointer. Fix null pointer access
TestGarbage: Increase coverage by running all code snippets as C as well as C++ code. (inspired by #6800)
|
2015-06-30 19:40:22 +02:00 |
amai2012
|
c0b91662ba
|
#6803 segmentation fault (invalid code) in Token::findClosingBracket.
|
2015-06-30 12:16:55 +02:00 |
Alexander Mai
|
d7aa65c1fc
|
#6800 segmentation fault (invalid code) in SymbolDatabase::SymbolDatabase. Fix null pointer access for invalid C code
|
2015-06-29 19:56:02 +02:00 |
Alexander Mai
|
0b225fa02f
|
2nd attempt to fix crash in CheckUnusedFunctions::check. CheckBufferOverrun::checkBufferAllocatedWithStrlen: Don't check for 'new' in C code.
|
2015-06-28 18:34:09 +02:00 |
Alexander Mai
|
2c73518e29
|
Fix platform-dependent test result, formatting and crash in whole program analysis
|
2015-06-28 17:54:48 +02:00 |
amai2012
|
4a47b8b3ae
|
Refactoring: Better distinguish between C and C++ in a few checks.
|
2015-06-28 16:49:16 +02:00 |
Alexander Mai
|
56e90f95d9
|
Corrections for non-Microsoft compilers
|
2015-06-28 12:34:08 +02:00 |
amai2012
|
649a89d308
|
Refactoring: Expose some previously local functions to public and add Tokenizer as argument to distinguish between C and C++ code (e.g. in isSameExpression).
Refactoring: Improve type-safety for TestFixture::assertEquals to allow tests with types which were not handled correctly (e.g. unsigned long long)
|
2015-06-28 12:08:36 +02:00 |
Alexander Mai
|
e75662aaf1
|
#6792 segmentation fault (invalid code) in TemplateSimplifier::templateParameters. Avoid null pointer access
|
2015-06-25 20:48:05 +02:00 |
amai2012
|
ac1f0301c0
|
#6791 segmentation fault (invalid code) in TokenList::createAst. Fix null pointer access
|
2015-06-25 08:57:09 +02:00 |
Alexander Mai
|
c047fae53b
|
#6790 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Fix null pointer access
|
2015-06-25 07:47:40 +02:00 |
Alexander Mai
|
56b826e3bf
|
#6732, #6762. Enable tests for garbage code. Related bug has been fixed before
|
2015-06-24 21:03:02 +02:00 |
Alexander Mai
|
8946fcd960
|
#6772 segmentation fault (invalid code) in Tokenizer::setVarId. Add another validate() call to Tokenizer::simplifyTokenList1. Small refactoring to Tokenizer: mark many methods as private.
|
2015-06-24 20:47:04 +02:00 |
Alexander Mai
|
6ba9c21fb9
|
#6786 segmentation fault (invalid code) in Tokenizer::simplifyRedundantParentheses. Small refactoring for Tokenizer::simplifyTokenList2() including additional calls to validate() - which prevents heap corruption on invalid code
|
2015-06-24 20:22:28 +02:00 |
amai2012
|
9fedc9bd74
|
#6788 segmentation fault (invalid code) in Tokenizer::simplifyVarDecl. Fix null pointer access
|
2015-06-24 16:54:23 +02:00 |
Alexander Mai
|
f806d945a1
|
Refactoring: Allow TemplateSimplifier to throw InternalErrors by itself.
|
2015-06-23 20:53:57 +02:00 |
amai2012
|
69f91ac187
|
#6785 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Avoid null pointer access
|
2015-06-23 17:59:01 +02:00 |
Alexander Mai
|
07bcc7157b
|
#6784 segmentation fault (invalid code) in Tokenizer::simplifyTypedef. Avoid null pointer access
|
2015-06-22 20:43:26 +02:00 |
amai2012
|
99524b1f59
|
#6780 segmentation fault (invalid code) in Token::multiCompare. Simple fix in CheckOther
|
2015-06-22 11:12:46 +02:00 |
Alexander Mai
|
b6858622eb
|
#6779 internal error: division overflow. Previous error handling (see #4520) was too restrictive.
|
2015-06-20 23:15:35 +02:00 |
Simon Martin
|
7481fbb028
|
Fixed #6506 (Properly detect calls to the deallocating free() function)
|
2015-06-20 21:00:54 +02:00 |
Daniel Marjamäki
|
1d49334398
|
Fixed #6662 (False positive assignIfError (assignment in while condition))
|
2015-06-20 16:23:16 +02:00 |
Alexander Mai
|
272cc55ab8
|
#5309 False positive: redundantCondition - comparing large integer values (unsigned long long). Testcase added, issue got fixed before.
|
2015-06-20 12:18:24 +02:00 |
Daniel Marjamäki
|
63f39ea48f
|
Change unusedScopedObject severity from error to style. The checker does not determine that there is ub or wrong behaviour.
|
2015-06-20 11:22:15 +02:00 |
Simon Martin
|
cba0583045
|
Ticket #6536: Properly handle variables whose name is that of an allocation function.
|
2015-06-19 23:48:40 +02:00 |
Daniel Marjamäki
|
af4a4663e2
|
Fixed #6764 (False positive redundantCondition - !(i>1) is not i<1)
|
2015-06-19 19:49:05 +02:00 |
Daniel Marjamäki
|
02df692b0b
|
Fixed #4760 (false negative: (error) usage of uninitialized variable (struct member))
|
2015-06-19 18:21:46 +02:00 |
Alexander Mai
|
712919a691
|
#6431 Invalid XML created - Invalid encoding of string literal. Partial fix: ensure the short message string is also processed to avoid problems with non-terminated string.
|
2015-06-18 21:16:25 +02:00 |
Alexander Mai
|
13c1c2c035
|
Refactoring (use const std::set for strings). Omit some matching for C++ stuff within C code.
|
2015-06-17 22:28:15 +02:00 |
Daniel Marjamäki
|
a884362817
|
Fixed #6752 (wrong AST when there is lambda function)
|
2015-06-17 19:32:44 +02:00 |
orbitcowboy
|
06e818f89d
|
Running astyle, no functional change.
|
2015-06-17 09:09:23 +02:00 |
amai2012
|
33d7631ee3
|
Fix another Borlad-specific test by setting Windows platform type
Refactoring: make CheckIO::ArgumentInfo aware of language (C vs. C++) to perform some optimizations
|
2015-06-16 23:11:34 +02:00 |
amai2012
|
a8db00b4bf
|
Repair test which had to be adjusted after previous changeset.
Refactoring: Add some const
|
2015-06-16 22:45:33 +02:00 |
amai2012
|
e32257db0a
|
Add new test file: testtokenlist.cpp to testrunner
|
2015-06-16 20:30:09 +02:00 |
Martin Ettl
|
9b14ab15eb
|
MathLib::intsuffix: Added support for LLU and LU suffixes.
|
2015-06-16 19:12:18 +02:00 |
Daniel Marjamäki
|
2cc23b4bb3
|
MathLib: Try to keep type suffix in constant calculations
|
2015-06-15 19:01:56 +02:00 |
Alexander Mai
|
a5a835b1e0
|
#6771 segmentation fault (invalid code) in SymbolDatabase::SymbolDatabase
|
2015-06-14 22:18:28 +02:00 |
Daniel Marjamäki
|
1e1ba6b4a9
|
Fixed #6574 (False positive oppositeInnerCondition - unknown variable)
|
2015-06-14 20:06:05 +02:00 |
Alexander Mai
|
70ba6c4340
|
#6767 False positive: memory leak when variable name is 'new'. Fix handling of new in C code. Move some tests for TokenList to new testtokenlist.cpp
|
2015-06-14 15:49:49 +02:00 |