Daniel Marjamäki
|
e784901303
|
Fixed #6971 (False positive duplicateExpressionTernary - cast ignored)
|
2016-08-01 21:53:43 +02:00 |
Daniel Marjamäki
|
695b1f0ef3
|
Fixed #5692 (Preprocessor: ifdef symbol used indirectly in code leads to 'analysis failed')
|
2016-08-01 20:09:41 +02:00 |
PKEuS
|
da34883770
|
Improved message invalidscanf: Removed misleading example from verbose message
|
2016-08-01 18:42:27 +02:00 |
Dmitry-Me
|
b3877a8ba0
|
Cleanup variable names
* fix typo
* use camelCase instead of underscore
|
2016-08-01 14:33:56 +03:00 |
Daniel Marjamäki
|
1c51fbce7a
|
astyle formatting
[ci skip]
|
2016-08-01 13:01:01 +02:00 |
Daniel Marjamäki
|
095b2f73f7
|
Library: look for cfg files in more paths, include exepath even if CFGDIR is used.
|
2016-08-01 12:58:33 +02:00 |
Daniel Marjamäki
|
09b6568ea2
|
Fixed #7646 (podtypes do not get proper valuetype)
|
2016-07-31 19:47:34 +02:00 |
Daniel Marjamäki
|
8d89eefff9
|
Merge pull request #815 from boos/cwe-mapping-8
CWE mapping of invalidscanf, invalidScanfArgType_s, invalidScanfArgType_int, invalidScanfArgType_float, invalidPrintfArgType_s, invalidPrintfArgType_n, invalidPrintfArgType_p, invalidPrintfArgType_int, invalidPrintfArgType_uint, invalidPrintfArgType_sint, invalidPrintfArgType_float, wrongPrintfScanfParameterPositionError
|
2016-07-31 14:14:48 +02:00 |
Daniel Marjamäki
|
b6246ecc55
|
bump simplecpp and update Preprocessor to handle new simplecpp::Output enum constants
|
2016-07-31 12:10:30 +02:00 |
Roberto Martelloni
|
9ab4057ddc
|
CWE mapping of invalidscanf, invalidScanfArgType_s, invalidScanfArgType_int, invalidScanfArgType_float, invalidPrintfArgType_s, invalidPrintfArgType_n, invalidPrintfArgType_p, invalidPrintfArgType_int, invalidPrintfArgType_uint, invalidPrintfArgType_sint, invalidPrintfArgType_float, wrongPrintfScanfParameterPositionError
|
2016-07-31 10:49:36 +01:00 |
Daniel Marjamäki
|
66d0d7a0ad
|
Fixed #7553 (False positive with 1.74 'returning an integer in a function with pointer return type' when no integer is used)
|
2016-07-29 21:53:58 +02:00 |
Daniel Marjamäki
|
5611a71820
|
Fixed #7543 (False positive boolean result used in bitwise operation)
|
2016-07-29 18:46:43 +02:00 |
Daniel Marjamäki
|
89be630156
|
Fixed #7543 (False positive boolean result used in bitwise operation)
|
2016-07-29 17:24:22 +02:00 |
Daniel Marjamäki
|
a65ae3ce2e
|
Token: Allow dollar sign in identifiers
|
2016-07-29 13:42:11 +02:00 |
Daniel Marjamäki
|
5546f052ef
|
Preprocessor: the simplecpp begin() and end() has been renamed
|
2016-07-29 08:51:57 +02:00 |
PKEuS
|
452ecc7ceb
|
Improved check: Detect passedByValue even for arguments that are not declared as "const"
|
2016-07-28 19:37:10 +02:00 |
Daniel Marjamäki
|
0777ecd071
|
Fixed #7640 (Preprocessor::getConfigs: -U is not honored)
|
2016-07-28 19:22:59 +02:00 |
Daniel Marjamäki
|
57951a2681
|
one more fix for rules
|
2016-07-28 15:35:41 +02:00 |
Daniel Marjamäki
|
1a4ef60e7c
|
Fixed #7639 (rule support partially broken since simplecpp was introduced)
|
2016-07-28 13:40:52 +02:00 |
PKEuS
|
3f4fe8f578
|
Refactorized CheckBufferOverrun:
- Removed redundant code
- Apply non-simplified checking in test suite
|
2016-07-27 17:28:43 +02:00 |
PKEuS
|
13c11b8c1d
|
Fixed compilation with HAVE_RULES
|
2016-07-26 17:10:05 +02:00 |
PKEuS
|
eafed235a6
|
Attempt to fix build on Unix systems, ran AStyle.
|
2016-07-26 16:50:32 +02:00 |
PKEuS
|
9a6569fde1
|
Always set ErrorMessage::file0 to ensure that the source file that cppcheck is checking when an error occurs can be identified
Removed unused function and unused includes from preprocessor.h/cpp
|
2016-07-26 16:28:40 +02:00 |
Dmitry-Me
|
560e7d618d
|
Get rid of "magic" patterns set
* magic should match "knownPatterns" but it didn't
* two identical sets are of no use
|
2016-07-26 16:42:17 +03:00 |
Daniel Marjamäki
|
71f62950ed
|
Tokenizer::findGarbageCode: Make it less picky about 'UNKNOWN_MACRO if ..'
|
2016-07-26 14:35:11 +02:00 |
PKEuS
|
fc1603eb9b
|
MathLib, ValueType: Support integer suffix "i64"
|
2016-07-26 13:19:53 +02:00 |
Daniel Marjamäki
|
7ff9545b10
|
Fixed #7637 (FP syntax error assignment in switch)
|
2016-07-26 12:15:55 +02:00 |
Daniel Marjamäki
|
fd19ab4ed1
|
fix garbage code handling
|
2016-07-26 08:50:00 +02:00 |
Dmitry-Me
|
2b31afe2ab
|
Variable name consistent with surroundings
|
2016-07-26 09:46:50 +03:00 |
Daniel Marjamäki
|
383b815cca
|
Tokenizer: refactoring garbage code handling
|
2016-07-26 08:16:10 +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 |
Dmitry-Me
|
64360d291d
|
Variable name consistent with surroundings
|
2016-07-25 17:04:18 +03:00 |
Daniel Marjamäki
|
2feb86a6af
|
Preprocessor: set platform info
|
2016-07-25 14:52:23 +02:00 |
Daniel Marjamäki
|
90faa80590
|
Preprocessor: Cleanup unused functions
|
2016-07-25 14:29:02 +02:00 |
Daniel Marjamäki
|
7ef02a7469
|
Cleanup Tokenizer
|
2016-07-25 12:12:11 +02:00 |
Daniel Marjamäki
|
adf16fae8b
|
Remove handling of ##, __FILE__, __LINE__ from tokenizer
|
2016-07-25 07:58:03 +02:00 |
Daniel Marjamäki
|
0767284ca1
|
Fixed #7630 (FP: dead store, modifying array, index var modified)
|
2016-07-25 07:35:33 +02:00 |
Daniel Marjamäki
|
cd3818088f
|
Remove unused function Tokenizer::tokenizeCondition
|
2016-07-24 14:37:43 +02:00 |
Daniel Marjamäki
|
e9fef003ac
|
Preprocessor: refactoring directives, they are now only set once for each file
|
2016-07-24 14:02:21 +02:00 |
Daniel Marjamäki
|
48fc19b34c
|
Remove unused function Preprocessor::preprocessCleanupDirectives()
|
2016-07-24 12:51:52 +02:00 |
PKEuS
|
2e2800f5bd
|
Fixed several MSVC warnings
|
2016-07-24 12:36:36 +02:00 |
PKEuS
|
f44d9d5c9b
|
Optimizations in CheckInternal:
- Run checks only on executable scopes
- Simplified patterns
|
2016-07-24 12:05:58 +02:00 |
Daniel Marjamäki
|
f931c0cf2b
|
Preprocessor::getConfigs: Handle invalid #else better
|
2016-07-23 14:40:01 +02:00 |
Daniel Marjamäki
|
ed4a47de45
|
Tokenizer: Improve syntax checking of switch,if,while
|
2016-07-22 16:54:24 +02:00 |
Dmitry-Me
|
224e55780e
|
Add const where const access is enough
|
2016-07-22 15:35:07 +03:00 |
PKEuS
|
12e3cf584c
|
Visual Studio solution:
- Fixed include paths
- Export simplecpp to cppcheck-core.dll
- Added /Zc:rvalueCast
|
2016-07-21 20:38:58 +02:00 |
Daniel Marjamäki
|
99307846cf
|
Preprocessor: simplecpp optimisations
|
2016-07-21 19:42:26 +02:00 |
Daniel Marjamäki
|
79ac409c7d
|
Preprocessor: Refactoring Preprocessor::getConfigs()
|
2016-07-21 19:11:49 +02:00 |
Daniel Marjamäki
|
b2f1b95e38
|
Bump simplecpp. Preprocessor: Warn about missing includes
|
2016-07-21 12:47:00 +02:00 |
Daniel Marjamäki
|
9899e81f2e
|
handle inline suppressions in included files
|
2016-07-21 07:57:23 +02:00 |
Daniel Marjamäki
|
e16f0e500c
|
Preprocessor: Parse comments and then remove them
|
2016-07-21 07:48:17 +02:00 |
Daniel Marjamäki
|
8a1936d5c9
|
update AdditionalIncludeDirectories in vcxproj files
|
2016-07-20 22:17:23 +02:00 |
Daniel Marjamäki
|
4ceba79f7f
|
Replace std::to_string, to hopefully make appveyor happier
|
2016-07-20 20:43:32 +02:00 |
Daniel Marjamäki
|
f1839ebfaf
|
Preprocessor: Fix crashes for invalid code
|
2016-07-20 20:39:03 +02:00 |
Daniel Marjamäki
|
03d2829fb9
|
Merge simplecpp branch
|
2016-07-20 12:21:00 +02:00 |
Daniel Marjamäki
|
a68da1a725
|
ValueType: Set valuetype for sizeof argument
|
2016-07-20 09:39:48 +02:00 |
Daniel Marjamäki
|
3eef225b36
|
Revert preprocessor fix for struct tag macros. There are performance problems.
|
2016-07-19 18:59:58 +02:00 |
Matthias Krüger
|
18d5a7317e
|
fix travis; fix [lib/preprocessor.cpp:2772]: (style) The scope of the variable 'noprescan' can be reduced.
|
2016-07-19 17:28:31 +02:00 |
Mavik
|
3e86c7b637
|
Fixed #5700 (Defect: False positives due to failure to expand struct tag macros)
|
2016-07-19 16:52:53 +02:00 |
Daniel Marjamäki
|
9bda97975a
|
Fixed #7037 (32bit (-m32): testsuite fails)
|
2016-07-19 12:14:55 +02:00 |
Daniel Marjamäki
|
83b982064d
|
Fixed #7579 (varid not set properly in 'int b[] = { m * a[0] };')
|
2016-07-18 15:27:08 +02:00 |
Daniel Marjamäki
|
f55040a987
|
Fix segfault when there is no ast generated in lambda function
|
2016-07-18 14:08:44 +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 |
Daniel Marjamäki
|
b9443771fb
|
cleanup tests
|
2016-07-18 10:42:03 +02:00 |
Daniel Marjamäki
|
4f051bf9dd
|
Fixed #7599 (valueFlowAST: handle && and || better)
|
2016-07-17 21:51:20 +02:00 |
Daniel Marjamäki
|
0162f33d3f
|
CheckSizeof: allow division with sizeof(char) when byte count is expected.
|
2016-07-17 19:19:15 +02:00 |
Daniel Marjamäki
|
45ee29d5dc
|
Fixed #7604 (simplifyCalculation: expression '0 && x[2]' is not simplified properly)
|
2016-07-17 15:52:53 +02:00 |
PKEuS
|
801fd8f96a
|
Support trailing return types (C++11)
|
2016-07-17 15:47:50 +02:00 |
Daniel Marjamäki
|
91e38f3eb9
|
Fixed #7582 (false positive: Division by result of sizeof(). strncpy() expects a size in bytes)
|
2016-07-17 15:22:14 +02:00 |
PKEuS
|
7a183779e2
|
CheckOther::checkMemsetZeroBytes(): Support wmemset()
|
2016-07-16 21:53:25 +02:00 |
Daniel Marjamäki
|
b8ca9fc844
|
Tokenizer: alternative tokens for and,or,etc. context sensitive for both c and c++.
|
2016-07-16 21:29:56 +02:00 |
Daniel Marjamäki
|
920ac5a3f6
|
astyle formatting
[ci skip]
|
2016-07-16 21:21:24 +02:00 |
Daniel Marjamäki
|
6e3d5dc0d1
|
Fixed #7580 (False positive when using logical operator keywords 'and', 'or')
|
2016-07-16 20:21:31 +02:00 |
amai2012
|
920b402d35
|
Merge pull request #813 from boos/cwe-mapping-7
CWE mapping of incorrectStringCompare, literalWithCharPtrCompare, charLiteralWithCharPtrCompare, incorrectStringBooleanError, staticStringCompare, stringCompare, signConversion, unusedFunction, unusedVariable
|
2016-07-16 13:10:22 +02:00 |
Roberto Martelloni
|
25525e38a7
|
CWE mapping of incorrectStringCompare, literalWithCharPtrCompare, charLiteralWithCharPtrCompare, incorrectStringBooleanError, staticStringCompare, stringCompare, signConversion, unusedFunction, unusedVariable
|
2016-07-16 10:07:06 +01:00 |
PKEuS
|
0afecd8fee
|
Do not simplify name "CALLBACK" away on non-windows platforms (#7554)
|
2016-07-16 10:43:28 +02:00 |
Robert Reif
|
768c26805c
|
Fixed false positive: %Ld in format string (no. 1) requires 'long long' but the argument type is 'long long' (#7601).
|
2016-07-16 10:33:46 +02:00 |
Alexander Mai
|
e495bfb960
|
Use proper tokenizer variable
|
2016-07-10 22:24:28 +02:00 |
PKEuS
|
f869f7ebde
|
Fixed false positive reademptycontainer when end() is called (#7560)
|
2016-07-10 10:48:21 +02:00 |
Simon Martin
|
bae81fba05
|
Silent clang -Wshadow warning. (#812)
Add an optional extended description…
|
2016-07-09 19:07:58 +02:00 |
Alexander Mai
|
4eef5642c9
|
Avoid null pointer access in CheckBufferOverrun::runSimplifiedChecks
|
2016-07-09 19:00:59 +02:00 |
PKEuS
|
ded8d80b23
|
Library: Support arguments with default value. Fixed default value handling for <container> tags broken in last commit.
|
2016-07-09 12:44:17 +02:00 |
PKEuS
|
b5d3ecb942
|
Updated TinyXML, make use of second argument of XMLElement::Attribute()
|
2016-07-09 11:56:07 +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 |
PKEuS
|
a808549af0
|
Support lambdas in simplifyCompoundAssignment (#7571)
|
2016-07-08 20:10:33 +02:00 |
Roberto Martelloni
|
87372ccd58
|
CWE mapping of sizeofForArrayParameter, sizeofForPointer, sizeofDivisionMemfunc, sizeofwithnumericparameter, sizeofsizeof, sizeofCalculation, sizeofVoid, sizeofDereferencedVoidPointer, arithOperationsOnVoidPointer (#810)
|
2016-07-08 09:06:55 +02:00 |
Daniel Marjamäki
|
a87b4368cb
|
Revert "Preprocessor: Start replacing our Preprocessor code with simplecpp"
This reverts commit 9820783b60 .
There was Travis errors I'll need to look more at.
|
2016-07-07 23:45:42 +02:00 |
Daniel Marjamäki
|
9820783b60
|
Preprocessor: Start replacing our Preprocessor code with simplecpp
|
2016-07-07 22:58:56 +02:00 |
PKEuS
|
644a216394
|
Fixed two false positives related to char arrays initialized by a literal:
- Run check for writing to string literals on non-simplified token list (#7283)
- Run buffer overrun checking for string literals on non-simplified token list (https://sourceforge.net/p/cppcheck/discussion/general/thread/2c33dfc5/)
|
2016-07-07 19:38:15 +02:00 |
PKEuS
|
3bdcf68990
|
Fixed false positive in CheckUnusedVar::checkFunctionVariableUsage(): Bailout when break; is encountered
See also: https://sourceforge.net/p/cppcheck/discussion/general/thread/1c169dc5/
|
2016-07-07 18:27:31 +02:00 |
Simon Martin
|
40eacb19b1
|
Ticket #7565: Handle numbers with several C++14 integer separators.
|
2016-07-01 23:24:28 +02:00 |
umanamente
|
0f11007c19
|
Fixed #7083 (false positive: typedef and initialization with strings)
|
2016-06-21 22:42:46 +02:00 |
PKEuS
|
dde6f5eaea
|
Do not warn about alloca() in C89 mode (#7558)
|
2016-06-20 09:30:41 +02:00 |
PKEuS
|
721bc32b2d
|
Fixed crash in CheckVaarg::va_list_usage() (#7559)
|
2016-06-20 09:24:23 +02:00 |
Bartlomiej Grzeskowiak
|
a5cfa2b12c
|
- #7522 and #7428 revisited. ((a&7)>7U) is always false and ((X|7)>=6) is correct (X can be negative).
|
2016-06-17 12:12:53 +02:00 |
Daniel Marjamäki
|
d1f06ff47c
|
Fixed #7175 (False positive performance warning (buffer overwritten before its old content has been used))
|
2016-06-13 15:46:43 +02:00 |
PKEuS
|
53e2cabdbb
|
Properly support "break" in CheckVaarg::va_list_usage() (#7533)
Ran AStyle
|
2016-06-07 19:28:32 +02:00 |