Daniel Marjamäki
|
f3c0461001
|
ValueType: handling scoped types in 'new ...'
|
2017-03-05 10:24:51 +01:00 |
Daniel Marjamäki
|
e0dd0a82ed
|
ValueType: refactor and improve handling of 'new ...'
|
2017-03-05 10:02:47 +01:00 |
Robert Reif
|
e02b2c4483
|
ValueType: handle new nothrow
|
2017-03-05 02:13:00 +01:00 |
Daniel Marjamäki
|
115ea08544
|
ValueType: Allow that type is library-container
|
2017-03-05 02:09:52 +01:00 |
Daniel Marjamäki
|
c832b2f40b
|
ValueType: Fixed bug
|
2017-03-05 01:39:56 +01:00 |
Daniel Marjamäki
|
920398615d
|
ValueType: handle scoped types in parsedecl
|
2017-03-05 01:21:02 +01:00 |
Daniel Marjamäki
|
2f2ac46243
|
Replaced hardcoding for char16_t and char32_t with configuration
|
2017-03-04 16:30:42 +01:00 |
Daniel Marjamäki
|
12fe4a8b3e
|
Fixed #7885 (ValueType: Wrong type for large hexvalue (platform=win32A))
|
2017-03-04 14:19:14 +01:00 |
Daniel Marjamäki
|
ecc59859e1
|
Don't simplify _Bool in TokenList
|
2017-03-04 11:13:28 +01:00 |
Daniel Marjamäki
|
45c5860ca4
|
Fixed #7926 (Memory Leak with auto not detected)
|
2017-03-02 22:24:26 +01:00 |
Daniel Marjamäki
|
995d875cb2
|
SymbolDatabase: Refactoring
|
2017-03-01 18:09:50 +01:00 |
Daniel Marjamäki
|
51b5f1c286
|
Fixed #7931 (crash: SymbolDatabase: Variable::setFlag)
|
2017-03-01 17:13:22 +01:00 |
PKEuS
|
7eee6af4ce
|
Fixed broken condition
|
2017-03-01 11:42:14 +01:00 |
PKEuS
|
2f0db369f0
|
Refactorization: Avoid construction of empty strings by using emptyString
|
2017-03-01 10:50:50 +01:00 |
PKEuS
|
d501e488ca
|
Refactorization: Reordered conditions in Scope::findFunction()
|
2017-03-01 10:27:01 +01:00 |
PKEuS
|
85768f1829
|
SymbolDatabase: Overload matching with boolean literals as argument and with arbitrary null-pointers
|
2017-02-28 22:43:47 +01:00 |
PKEuS
|
942644fde6
|
SymbolDatabase: Overload matching with character literals as argument
|
2017-02-28 22:08:41 +01:00 |
Daniel Marjamäki
|
beaf29c158
|
SymbolDatabase: Update some properties for auto variables
|
2017-02-27 23:04:25 +01:00 |
Daniel Marjamäki
|
994f6b684d
|
ValueType: initial handling of new
|
2017-02-27 20:57:28 +01:00 |
PKEuS
|
900d05d9dd
|
Optimization: Do not attempt to find a matching function for if, for, while, etc.
|
2017-02-27 10:35:47 +01:00 |
Daniel Marjamäki
|
7ecd5db8fb
|
ValueType: Handle auto in range for loop
|
2017-02-27 02:09:33 +01:00 |
Daniel Marjamäki
|
2da360eec5
|
ValueType: Handle 'auto *p = ..'
|
2017-02-26 22:43:10 +01:00 |
Daniel Marjamäki
|
dad455c0dd
|
ValueType: Handle 'auto'. First fix for #4345
|
2017-02-26 20:02:57 +01:00 |
PKEuS
|
c1d8fd7f13
|
SymbolDatabase: Better handling of pointers in findFunction(), supporting const pointers and std::string overloads
|
2017-02-26 11:36:04 +01:00 |
PKEuS
|
4a27376694
|
SymbolDatabase: Implement two-stage fallback mechanism for matching function overloads, increasing matching accuracy
|
2017-02-25 23:12:00 +01:00 |
PKEuS
|
3f1e2b4270
|
More conservative fallback for function overload matching
|
2017-02-24 20:56:47 +01:00 |
PKEuS
|
4e28d40bf0
|
Fixed matching long long overload to function call f(0)
|
2017-02-24 20:33:52 +01:00 |
Robert Reif
|
8e0f1ec788
|
Fixed #7909 (Crash in CheckMemoryLeakInClass)
|
2017-02-20 23:09:35 +01:00 |
Matthias Krüger
|
6f1e7e897d
|
simplify if(tok && Token::{simple,}Match) to if(Token::{simple,}Match).
|
2017-02-06 15:37:12 +01:00 |
Daniel Marjamäki
|
7bdd001a5f
|
SymbolDatabase: Removed redundant 'else'
|
2017-01-09 22:48:05 +01:00 |
Simon Martin
|
bd92ddd386
|
Ticket #7850: Properly handle C functions called "class".
|
2017-01-06 21:16:28 +01:00 |
Robert Reif
|
4123b457d7
|
Fixed #7441 (SymbolDatabase: No scope when function return type not specified)
|
2017-01-06 11:53:17 +01:00 |
Daniel Marjamäki
|
a184d5d421
|
SymbolDatabase: Refactoring
|
2017-01-01 11:34:05 +01:00 |
Daniel Marjamäki
|
4558701c08
|
varid: don't generate varid and symboldatabase variable for function call parameter
|
2016-12-18 20:16:38 +01:00 |
Daniel Marjamäki
|
17aaecbd6b
|
ValueFlow: Improved handling of sizeof
|
2016-12-18 14:03:48 +01:00 |
PKEuS
|
cfac3b457d
|
Several small refactorizations
|
2016-12-06 22:12:02 +01:00 |
PKEuS
|
6e8ac13325
|
Refactorization:
- Optimized std::string usage
- Replaced list by vector
- Moved iterator into loop head
- Ran AStyle
|
2016-12-05 17:45:34 +01:00 |
Daniel Marjamäki
|
c12cb69cc2
|
ValueType: Handle function pointers
|
2016-12-04 16:02:50 +01:00 |
PKEuS
|
36d12d7866
|
SymbolDatabase: Function::retDef should not point at "static" or "extern"
|
2016-11-28 17:23:39 +01:00 |
Matthias Krüger
|
b3ace258ab
|
there is no need to have "if(tok && Token::Match(tok,..." since Token::Match checks "tok" by itselfs already.
|
2016-11-26 17:22:30 +01:00 |
Frank Zingsheim
|
c8ff96fe8f
|
Fixed #6180 (Usage of variable after std::move or std::forward)
|
2016-11-20 15:14:49 +01:00 |
Daniel Marjamäki
|
1235815ae9
|
SymbolDatabase: refactoring condition
|
2016-11-18 22:01:15 +01:00 |
Daniel Marjamäki
|
2f27a0c8f6
|
Revert "SymbolDatabase: refactoring condition"
I don't see why, but this did not work well on appveyor.
This reverts commit 5d7a4d51ad .
|
2016-11-17 22:53:03 +01:00 |
Daniel Marjamäki
|
79fc332511
|
Fixed #7810 (SymbolDatabase: method with redundant scope info)
|
2016-11-17 22:45:50 +01:00 |
Daniel Marjamäki
|
5d7a4d51ad
|
SymbolDatabase: refactoring condition
|
2016-11-17 22:20:01 +01:00 |
Daniel Marjamäki
|
0e9810b7f6
|
CheckStl: validation of iterators returned from functions
|
2016-11-01 14:08:42 +01:00 |
Daniel Marjamäki
|
f973a9a9d5
|
SymbolDatabase: Refactoring handling of library-function return type
|
2016-10-23 23:20:36 +02:00 |
Daniel Marjamäki
|
c8f831b70d
|
Library: Allow that type of function return is specified. Fixes #7668.
|
2016-10-23 23:04:15 +02:00 |
Robert Reif
|
f25d205999
|
Fixed #7767 (SymbolDatabase: function not analysed when unknown macros are in front of function definition)
|
2016-10-22 22:29:18 +02:00 |
Daniel Marjamäki
|
c70987b727
|
ValueType: fix type of integer literals
|
2016-10-16 11:36:22 +02:00 |
Robert Reif
|
bf7ef56ef5
|
Fixed #7713 (False positive: %hhu in format string (no. 1) requires 'unsigned char' but the argument type is 'signed int'.)
|
2016-08-26 19:47:36 +02:00 |
Frank Zingsheim
|
8c8a534117
|
SymbolDatabase: stronger type matching
|
2016-08-21 16:11:23 +02:00 |
Robert Reif
|
1dd1f6dd6a
|
Fixed #7673 ((debug) Executable scope 'foo' with unknown function.)
|
2016-08-20 17:56:48 +02:00 |
Daniel Marjamäki
|
8a66535399
|
Fixed #7694 (ValueType: 1.23L)
|
2016-08-20 08:44:53 +02:00 |
Robert Reif
|
b56c765a45
|
Fixed #7703 ((debug) Executable scope 'foo' with unknown function.)
|
2016-08-20 07:43:15 +02:00 |
Robert Reif
|
1e999e0cfe
|
Fixed #7697 ((debug) Executable scope 'B' with unknown function.)
|
2016-08-19 19:06:15 +02:00 |
Robert Reif
|
73e1378af8
|
Fixed #7661 (False positive: Function parameter 'e' should be passed by reference.)
|
2016-08-13 21:25:57 +02:00 |
Robert Reif
|
fc1a755100
|
Fixed #7666 (Executable scope with unknown function.)
|
2016-08-09 14:02:06 +02:00 |
Robert Reif
|
cdfe92b753
|
Fixed #7657 (False positive: Function parameter 'c' should be passed by reference.)
|
2016-08-06 10:27:00 +02:00 |
Robert Reif
|
55b3f0bf38
|
Fixed #752 (SymbolDatabase: Does not match function if redundant keywords mismatch (C++))
|
2016-08-04 09:06:32 +02:00 |
Dmitry-Me
|
7f30108f1d
|
Descriptive variable name
|
2016-08-03 18:15:08 +03:00 |
Robert Reif
|
b40edca62f
|
Fixed #7387 (SymbolDatabase: Wrong overloaded function is picked)
|
2016-08-02 23:34:11 +02:00 |
Robert Reif
|
b9030bcfcd
|
Fixed #7650 (SymbolDatabase: Wrong Token::type(), enum and class with same name)
|
2016-08-02 23:30:46 +02:00 |
Robert Reif
|
b44f448acc
|
Fixed #7649 (SymbolDatabase: Wrong overloaded function is picked for char and wchar_t)
|
2016-08-02 18:54:01 +02:00 |
Robert Reif
|
612e83d5af
|
SymbolDatabase: Small fix
|
2016-08-02 14:31:07 +02:00 |
Robert Reif
|
891e21b478
|
Fixed #7458 (SymbolDatabase: Wrong overloaded function is picked)
|
2016-08-02 08:58:11 +02:00 |
Daniel Marjamäki
|
09b6568ea2
|
Fixed #7646 (podtypes do not get proper valuetype)
|
2016-07-31 19:47:34 +02:00 |
PKEuS
|
fc1603eb9b
|
MathLib, ValueType: Support integer suffix "i64"
|
2016-07-26 13:19:53 +02:00 |
Matthias Krüger
|
6fd8edd6e5
|
Symboldatabase::sizeOfType: fix crash; fixes #7615
|
2016-07-26 01:18:47 +02:00 |
PKEuS
|
045116f797
|
Optimized SymbolDatabase::findVariableType().
|
2016-07-25 18:33:22 +02:00 |
PKEuS
|
2e2800f5bd
|
Fixed several MSVC warnings
|
2016-07-24 12:36:36 +02:00 |
Daniel Marjamäki
|
a68da1a725
|
ValueType: Set valuetype for sizeof argument
|
2016-07-20 09:39:48 +02:00 |
Daniel Marjamäki
|
0ddeac0429
|
refactor (use ast) and improve CheckOther::checkRedundantAssignment (warn about global variables unless they are volatile, handle arrays in lhs better)
|
2016-07-18 12:43:23 +02:00 |
PKEuS
|
801fd8f96a
|
Support trailing return types (C++11)
|
2016-07-17 15:47:50 +02:00 |
Robert Reif
|
c1594bedbb
|
Fixed creation of SymbolDatabase for some template code (#7594)
|
2016-07-09 09:22:52 +02:00 |
PKEuS
|
44a19b527e
|
Use ValueFlow and SymbolDatabase to detect buffer overflows with new and malloc, improving support for enums (#7576)
|
2016-07-08 20:53:08 +02:00 |
Robert Reif
|
eca805ba3b
|
ValueFlow: Fixed constant folding of sizeof(enum) and sizeof(enumerator) (#7564)
|
2016-07-08 20:39:34 +02:00 |
Robert Reif
|
583b340034
|
enum: set the return type of derived class functions returning enums defined in a base class.
|
2016-06-05 14:08:33 +02:00 |
Robert Reif
|
f4dd43a71a
|
Fixed #7523 (Scope::findEnumerator(): does not find enum constant from other enum type)
|
2016-05-29 14:45:45 +02:00 |
Daniel Marjamäki
|
2417f72c5e
|
Silence Travis
|
2016-05-26 18:31:52 +02:00 |
Daniel Marjamäki
|
54be403f64
|
Fixed #7026 (Cppcheck does not recognizes the use of a variabile inside lambda function)
|
2016-05-26 18:07:56 +02:00 |
Daniel Marjamäki
|
38741868b5
|
Fixed #3989 (false positive: memory leak (inline function))
|
2016-05-26 17:42:27 +02:00 |
Daniel Marjamäki
|
8b088a472f
|
SymbolDatabase: Refactoring
|
2016-05-26 12:04:18 +02:00 |
Daniel Marjamäki
|
f45233682e
|
SymbolDatabase: Code cleanup
|
2016-05-26 12:00:03 +02:00 |
Robert Reif
|
66cacde3db
|
Fixed #7513 (value flow of array dimension with enum doesn't always work)
|
2016-05-26 11:25:50 +02:00 |
PKEuS
|
c7b3836379
|
Small refactorizations:
- Optimized performance of several functions by adding pre-checks
- Simplified some code
- Fixed VS warning in testsymboldatabase.cpp
|
2016-05-25 15:30:49 +02:00 |
Daniel Marjamäki
|
ae97f53244
|
Fixed #6184 (ValueType: overloaded < operator)
|
2016-05-25 13:56:36 +02:00 |
Matthias Krüger
|
0556edd151
|
fix #7505 (crash on invalid code)
|
2016-05-25 13:14:34 +02:00 |
Daniel Marjamäki
|
684966f674
|
Fixed #7509 (ValueType: wrong type for container element - std::array)
|
2016-05-24 09:07:38 +02:00 |
Daniel Marjamäki
|
397480f929
|
Fixed #7376 (ValueType: wrong type for container element)
|
2016-05-23 18:53:59 +02:00 |
Daniel Marjamäki
|
b7b92b2140
|
Fixed #6674 (false positive 'unusedPrivateFunction' - calling virtual function in subclass)
|
2016-05-21 20:07:35 +02:00 |
Daniel Marjamäki
|
7591a57587
|
Removed redundant valuetype debug output
|
2016-05-14 20:11:57 +02:00 |
Robert Reif
|
5631c765a7
|
SymbolDatabase: better handling when array size is given with expression involving enum constants.
|
2016-05-13 11:40:19 +02:00 |
Robert Reif
|
97bbb7da0d
|
Fixed #7476 (SymbolDatabase: Wrong data with single ; in line)
|
2016-05-12 11:35:02 +02:00 |
Daniel Marjamäki
|
8a13b5cd83
|
Fix Cppcheck warning
|
2016-05-09 13:08:00 +02:00 |
Daniel Marjamäki
|
9c8922541e
|
Avoid C++11 for-range to make AppVeyor happy
|
2016-05-09 13:05:08 +02:00 |
Robert Reif
|
381fa53ec6
|
SymbolDatabase: better handling of enum values
|
2016-05-09 12:40:56 +02:00 |
Daniel Marjamäki
|
eac3660f46
|
ValueType: Changed type info for enums to 'signed int', that is what checks wants to see mostly.
|
2016-05-09 11:11:13 +02:00 |
Daniel Marjamäki
|
e99a9b4742
|
SymbolDatabase: Fix cleanup (avoid dead pointers)
|
2016-05-08 18:34:23 +02:00 |
Daniel Marjamäki
|
7edb1bc2e2
|
Fixed #7484 (ValueType: crash with --debug --verbose)
|
2016-05-08 17:43:34 +02:00 |
Daniel Marjamäki
|
e355e4ac78
|
ValueType: Refactoring
|
2016-05-08 17:42:53 +02:00 |
Daniel Marjamäki
|
803b4d4cf8
|
ValueType: Better handling of nested types
|
2016-05-08 14:55:10 +02:00 |
Daniel Marjamäki
|
636e97c272
|
ValueType: Improved debug output for nested types
|
2016-05-08 13:15:20 +02:00 |
Daniel Marjamäki
|
f0953c6916
|
ValueType: better handling of nonstandard types
|
2016-05-08 11:55:25 +02:00 |
Daniel Marjamäki
|
be90080976
|
Fixed #7481 (False positive AssignmentAddressToInteger - pointer to enum)
|
2016-05-07 19:51:37 +02:00 |
PKEuS
|
3366a74bb0
|
Refactorized CheckCondition::clarifyCondition():
- Reimplemented parts of the check based on ValueType
- Merged two loops
Fixed some type conversion messages
|
2016-05-06 15:22:45 +02:00 |
PKEuS
|
0bf85f9aa5
|
ValueType: Support integers defined in libraries (#7394)
|
2016-05-04 15:39:56 +02:00 |
PKEuS
|
6c3f0a7bb8
|
SymbolDatabase: Properly detect lambdas with return type (#7473)
|
2016-05-04 14:10:09 +02:00 |
amai2012
|
a54ec615f3
|
Run astyle
|
2016-04-25 11:12:35 +02:00 |
amai2012
|
479f00030e
|
Restore compatibility with current C++ language set specification (VS2010)
|
2016-04-24 23:02:56 +02:00 |
Daniel Marjamäki
|
0635ceb42a
|
Replaced C++11 auto keyword
|
2016-04-23 09:18:28 +02:00 |
Robert Reif
|
ee2be81fae
|
enums: Fix false negatives caused by new enum handling
|
2016-04-22 20:26:58 +02:00 |
Daniel Marjamäki
|
dc2a92263a
|
Fixed #7426 (RFC: time to replace simplifyEnum?)
|
2016-04-22 06:02:54 +02:00 |
Robert Reif
|
47634a0ada
|
Fixed #7420 ((debug) Executable scope 'foo' with unknown function.)
|
2016-03-22 14:10:20 +01:00 |
Daniel Marjamäki
|
4e4873772d
|
Fixed #7395 (ValueType: Result type of assignment operators)
|
2016-03-21 19:51:09 +01:00 |
Daniel Marjamäki
|
d964825c9f
|
ValueType: Add debug output that is shown when --verbose is used
|
2016-02-15 16:18:24 +01:00 |
PKEuS
|
0847d3d19a
|
ValueType related bugfixes:
- ptrdiff_t is SIGNED
- Detect pointers to unknown types as pointers
- Do not identify bool* as boolean (#7381)
|
2016-02-05 20:29:17 +01:00 |
PKEuS
|
618ea498e9
|
ValueType: Support logical operators
|
2016-02-05 15:15:13 +01:00 |
PKEuS
|
35317695d4
|
ValueType: Fixed handling of constness
|
2016-02-05 13:31:31 +01:00 |
PKEuS
|
792835cd9a
|
ValueType: Support ++/--.
|
2016-02-05 12:06:44 +01:00 |
PKEuS
|
2b179dc836
|
ValueType: Properly support ternary operator with pointers (#7378)
|
2016-02-05 09:59:48 +01:00 |
PKEuS
|
3b7948fb4e
|
ValueType: Support ternary operator
|
2016-02-04 21:20:05 +01:00 |
PKEuS
|
a9f52aec04
|
ValueType: Support unary arithmetical/bit operators
|
2016-02-04 21:03:54 +01:00 |
PKEuS
|
cae19cadd3
|
ValueType: Added support for static member variables and simplified code
|
2016-02-04 20:49:13 +01:00 |
Alexander Mai
|
d3546ea410
|
#7321 segmentation fault in valueFlowSwitchVariableScope::isVariableDeclaration
|
2016-02-03 22:49:57 +01:00 |
Alexander Mai
|
cfe9c01bf8
|
#7257 segmentation fault in valueFlowSwitchVariable (invalid code). Correct SymbolDatabase::validateVariables() so it does not complain about function arguments for function without body
|
2016-02-03 21:52:02 +01:00 |
Alexander Mai
|
d45f5c94cb
|
Add (disabled) function in SymbolDatabase to check variable list (e.g. find variables w/o scope). Fix some doxygen warnings.
|
2016-02-03 17:08:46 +01:00 |
PKEuS
|
841f17776b
|
Set ValueType for assignment operators, detect division by zero for %= and /= again (#7322)
|
2016-02-02 17:17:55 +01:00 |
PKEuS
|
d19b5031fa
|
Refactorization: Removed unused function.
|
2016-02-02 11:46:42 +01:00 |
Daniel Marjamäki
|
988918c9bc
|
ValueType: Use signed as default sign for short/int/long/longlong
|
2016-01-31 14:34:26 +01:00 |
Daniel Marjamäki
|
0e89620212
|
Fixed #4698 (False positive: Uninitialized member variable warning with confusing namespaces)
|
2016-01-30 14:04:48 +01:00 |
Daniel Marjamäki
|
3d0338e9f9
|
Fixed #7212 (incorrectly adding function argument with no name)
|
2016-01-23 09:48:21 +01:00 |
Daniel Marjamäki
|
f64930b7f5
|
Fixed #7343 (SymbolDatabase: handling of override)
|
2016-01-22 19:22:24 +01:00 |
Daniel Marjamäki
|
a014920280
|
Fixed #7260 (ValueType: in C++ the result of 'sint >> unknowntype' has unknown type)
|
2016-01-07 10:46:19 +01:00 |
Daniel Marjamäki
|
58e28cb00e
|
ValueType: Better handling of unsigned unknown types
|
2016-01-05 19:47:11 +01:00 |
Daniel Marjamäki
|
1db9cf4d09
|
SymbolDatabase: Add '#include <cctype>' for std::isalpha
|
2016-01-04 14:20:07 +01:00 |
Daniel Marjamäki
|
8dccbfefcf
|
ValueType: handle lowercase number suffix, for instance '0ll'
|
2016-01-03 13:34:47 +01:00 |
Daniel Marjamäki
|
4ff7fa3f3b
|
SymbolDatabase,Tokenizer: Refactor handling of noexcept
|
2016-01-03 08:36:00 +01:00 |
Daniel Marjamäki
|
be8fc0f89f
|
SymbolDatabase: Better handling of default and delete when reusing Tokenizer::isFunctionHead()
|
2016-01-03 00:01:29 +01:00 |
Daniel Marjamäki
|
66e047ee7d
|
Refactoring SymbolDatabase. Reuse Tokenizer::isFunctionHead().
|
2016-01-02 23:49:06 +01:00 |
Daniel Marjamäki
|
746d024e3d
|
SymbolDatabase: Fix Token::Match pattern
|
2016-01-02 20:00:18 +01:00 |
Robert Reif
|
db6dfa2d22
|
Fixed #7195 (crash: valueFlowSwitchVariable())
|
2016-01-02 18:53:51 +01:00 |
Daniel Marjamäki
|
95009a4630
|
Merge pull request #745 from lanurmi/2016_ad
Update copyright year to 2007-2016.
|
2016-01-01 22:57:19 +01:00 |
Daniel Marjamäki
|
416861b530
|
ValueType: only use default signedness for char/short/int/long/longlong
|
2016-01-01 20:03:31 +01:00 |
Daniel Marjamäki
|
b457ceef0e
|
Settings: Added defaultSign
|
2016-01-01 17:33:59 +01:00 |
Daniel Marjamäki
|
2f26195b23
|
Fixed #7248 (crash in ValueType::str())
|
2016-01-01 15:13:50 +01:00 |
Lauri Nurmi
|
996c9244d8
|
Update copyright year to 2007-2016.
|
2016-01-01 15:34:45 +02:00 |
Daniel Marjamäki
|
e69e952c46
|
Fixed #7245 (ValueType: Wrong result type for 'sint << uint')
|
2015-12-31 20:18:35 +01:00 |
Daniel Marjamäki
|
fdcab8f1bb
|
ValueType: better handling of struct member
|
2015-12-30 11:36:46 +01:00 |
Daniel Marjamäki
|
c5c386ceb8
|
ValueType: Handle void pointers
|
2015-12-29 19:58:51 +01:00 |