Commit Graph

7355 Commits

Author SHA1 Message Date
Dmitry-Me 64bdf03986 Remove repeated search, clearer code 2015-10-15 16:48:35 +03:00
PKEuS 46bfa62aad Execute prepareTernaryOpForAST earlier (#7048) 2015-10-15 10:31:54 +02:00
Alexander Mai 600641c4c5 #7043 segmentation fault (invalid code) in Tokenizer::simplifyVarDecl 2015-10-14 20:34:55 +02:00
PKEuS d0cc97a4cf Fixed wrong syntax error (#7045) 2015-10-14 16:01:48 +02:00
Dmitry-Me f54f9a7d3e Explicit continue, better variable name 2015-10-14 15:06:04 +03:00
PKEuS a97f6f973f Support C++14 digit separators (#7042) 2015-10-14 12:00:54 +02:00
Daniel Marjamäki 60f8982999 Fixed #7039 (ValueFlow: bitand calculation '16&15') 2015-10-14 10:44:04 +02:00
Daniel Marjamäki a04e072976 Fixed #7040 (False positive syntaxError False positive syntaxError) 2015-10-13 20:31:17 +02:00
PKEuS 3971f8625f Fixed false positive seekOnAppendedFile if FILE* is reused (#6566) 2015-10-13 15:32:13 +02:00
PKEuS 05b5275110 Improved AST:
- Fixed TODO for ternary operator. Add parantheses between ? and : where necessary as a preparation for createAst()
- Improved AST validation:
-- Better message for binary operator with only one operand
-- Ensure ? has : as second operand (#7035)
2015-10-12 19:21:48 +02:00
Daniel Marjamäki 97326fce13 Fixed #6992 (argument name of function typedef conflicts with local variable name) 2015-10-12 10:15:02 +02:00
Daniel Marjamäki 141dd78b0e Tokenizer: Added a define CPPCHECK2 that can be used to test cppcheck without various simplifications I want to get rid of in the long run 2015-10-12 09:19:35 +02:00
Daniel Marjamäki 7148ad4239 Tokenizer: Fix sloppy syntax error 2015-10-12 08:51:41 +02:00
Daniel Marjamäki df67e0efb6 Tokenizer: Try to hide attributes for non-gcc and non-clang compilers 2015-10-12 08:50:52 +02:00
Daniel Marjamäki 6157fc69ac Tokenizer: Added a simple AST verification 2015-10-12 08:34:12 +02:00
Daniel Marjamäki 8b8870cb5e Added noreturn attributes for methods that throws 2015-10-12 08:33:53 +02:00
Daniel Marjamäki 2c7c6b3e38 CheckIO: Try to use ValueType more 2015-10-11 17:35:54 +02:00
Daniel Marjamäki cba11e623e Use ValueType in astIsIntegral() 2015-10-11 14:11:11 +02:00
Daniel Marjamäki be7bca385d avoid some fixes for noisy signedness warnings 2015-10-11 12:50:46 +02:00
Daniel Marjamäki 40fffddb83 avoid some fixes for noisy signedness warnings 2015-10-11 12:36:23 +02:00
Daniel Marjamäki 0aad8af9ae avoid fix for noisy signedness warning 2015-10-11 12:22:37 +02:00
Daniel Marjamäki ac9cb87e04 ValueType: Handle bit operations, sizeof better. Use ValueType in astIsFloat(). 2015-10-11 12:20:40 +02:00
Daniel Marjamäki 5b082aa799 ValueType: struct member 2015-10-11 10:48:08 +02:00
Daniel Marjamäki 9738cc66eb ValueType: function return type 2015-10-11 08:42:31 +02:00
Daniel Marjamäki cf179f82b6 ValueType: Better handling of wide strings 2015-10-11 08:13:30 +02:00
Daniel Marjamäki 37d9a95ef1 CheckIO: Refactoring. Split out CheckIO::checkFormatString() from CheckIO::checkWrongPrintfScanfArguments(). 2015-10-10 20:08:15 +02:00
Daniel Marjamäki 0849ad4707 ValueType: Better handling of const 2015-10-10 08:32:45 +02:00
Daniel Marjamäki 6545172d8c Revert "Add a dynamic rule enable/disable system"
This reverts commit 231b486e49.

There was regressions reported in tools/generate_and_run_more_tests.sh.
2015-10-09 21:56:19 +02:00
Albert Aribaud 231b486e49 Add a dynamic rule enable/disable system 2015-10-09 19:57:05 +02:00
PKEuS 2eb8492993 Fixed crash on garbage code #7034 2015-10-09 13:49:17 +02:00
PKEuS 7d624f2e21 Fixed crash on garbage code #7033 2015-10-09 13:06:52 +02:00
Daniel Marjamäki 6d256b01b6 CheckIO: Use ValueType::Type::LONGDOUBLE type also 2015-10-08 19:52:24 +02:00
Daniel Marjamäki a500f6f703 Improved handling of 'long double' and address-of in ValueType. Removed Tokenizer::simplifyFloatCasts() to handle float casts better. 2015-10-08 19:50:10 +02:00
PKEuS 3645e3c16b Fixed two TODO unit tests by delaying arraySize simpification until createLink2 is executed 2015-10-08 12:52:28 +02:00
Daniel Marjamäki be72b7413a ValueType: Handling of originalTypeName 2015-10-07 20:24:17 +02:00
Daniel Marjamäki c461b58421 astyle formatting
[ci skip]
2015-10-07 19:50:50 +02:00
Daniel Marjamäki 604a9acb48 ValueType: Handling constness 2015-10-07 19:08:26 +02:00
PKEuS b7f2f826a4 Refactorization: Removed some redundant code 2015-10-07 18:40:04 +02:00
Daniel Marjamäki db31e22316 ValueType: Improved signedness 2015-10-07 18:10:48 +02:00
PKEuS 2e510c8733 Added missing include to valueflow.h 2015-10-07 14:42:10 +02:00
PKEuS 50ed47c725 Fixed crash on garbage code (#7022) 2015-10-07 13:52:06 +02:00
PKEuS b634a76fcb Added CPPCHECKLIB to two clases and reverted 30a942af0b 2015-10-07 13:38:34 +02:00
Daniel Marjamäki f5d9ba9cf3 Rewrote the charvar checker. It now uses valueflow also to limit false negatives. 2015-10-06 17:30:51 +02:00
amai2012 88b3d90505 #7023 segmentation fault (invalid code) in astIsIntegral. Avoid crash, unfortunately there is no syntax error yet detected. 2015-10-06 11:21:31 +02:00
Matthias Krüger e99b4319c9 astutils: remove unused functions isSignedChar and isChar. 2015-10-06 08:27:47 +02:00
Daniel Marjamäki 2034706033 AST: Use AST type in astIsSignedChar 2015-10-06 07:13:41 +02:00
Daniel Marjamäki b77203a277 CheckIO: Handle AST pointer type better 2015-10-05 19:59:15 +02:00
Daniel Marjamäki b9036c2ca8 AST types: Fix for 'long long' handling 2015-10-05 19:20:42 +02:00
Daniel Marjamäki bc8f1b972e CheckIO: Early return 2015-10-05 19:04:29 +02:00
Daniel Marjamäki 8f6bd7fd0d Fixed #7014 (False positive for printf("%c", "hello"[0])) 2015-10-05 10:12:30 +02:00