Daniel Marjamäki
0fd334911a
Fixed #5257 (Check memcpy size for string literals)
2014-07-06 08:41:39 +02:00
Daniel Marjamäki
53aa2f5982
astyle formatting
...
[ci skip]
2014-07-06 07:16:28 +02:00
amai2012
77095e2b05
Add some more functions to posix.cfg which allow to enable TestBufferOverrun::buffer_overrun_1_posix_functions
...
Fix some compiler warnings on MSVC
2014-07-05 22:47:10 +02:00
Daniel Marjamäki
a3acc3241e
Library: Added <minsize> element used for buffer overrun checking
2014-07-05 20:31:43 +02:00
Alexander Mai
88890a851c
Fix compiler warning (and minor cleanup).
2014-07-05 12:10:23 +02:00
Daniel Marjamäki
4ee9b3781f
Merge pull request #356 from Dmitry-Me/simplifyCodeWithTempVariables
...
Use temp variables to simplify code.
2014-07-05 00:50:13 +02:00
Dmitry-Me
4f21b31004
Use temp variables to simplify code.
2014-07-04 10:56:43 +04:00
Daniel Marjamäki
51396e52aa
Merge pull request #353 from Dmitry-Me/breakLoopEarlyInsteadOfContinuingBitwiseAnd
...
Break the loop once the result can no longer change.
2014-07-03 06:54:00 +02:00
Daniel Marjamäki
d40b77dce2
Removed special 'else if' handling. this is redundant since these are simplified.
2014-07-02 16:16:19 +02:00
PKEuS
719304a8fc
Added internal check for || and | inside Token::Match patterns.
2014-07-02 15:51:18 +02:00
PKEuS
62d07878d7
Fixed two issues in matchcompiler:
...
- Use correct findmatch or findsimplematch for verification
- Print failing pattern also for findmatch/findsimplematch
2014-07-02 15:25:54 +02:00
PKEuS
b4f0869a71
Reduced Token::Match complexity, better support for complex patterns
2014-07-02 15:25:41 +02:00
PKEuS
817d32f791
Fixed and cleaned up Token::Match engine
2014-07-02 15:25:19 +02:00
Dmitry-Me
b38e43ebae
Negation not needed anymore.
2014-07-02 11:12:39 +04:00
Zachary D. Blair
f6523e384b
Fixed 4979 (Doesn't allow any ordering of int modifiers)
2014-07-01 23:59:04 -07:00
PKEuS
3d0ebe196b
Several improvements to CheckUnusedVar::checkFunctionVariableUsage_iterateScopes():
...
- Use AST in some places
- Fixed misusage of Token::isStandardType (fixes false negative)
- Removed some redundant conditions
2014-07-02 00:18:40 +02:00
PKEuS
220f7503ce
Fixed wrong configuration of itoa in std.cfg
2014-07-01 19:25:26 +02:00
Daniel Marjamäki
5e9e90b1c1
Fixed Token::Match pattern. In x|y|.. patterns, all %cmd% should be placed before plain-text operands.
2014-07-01 15:55:29 +02:00
Dmitry-Me
454dd0a736
Break the loop once the result can no longer change.
2014-07-01 17:16:45 +04:00
Daniel Marjamäki
b7d7633b97
ValueFlow: Improved analysis after switch
2014-06-30 17:56:42 +02:00
PKEuS
ec59f1d9df
matchcompiler.py: Check Token::type() before comparing Token::str() against "||" or "|"
2014-06-30 14:04:18 +02:00
PKEuS
78f0a47170
matchcompiler.py: Show pattern that caused the InternalError
2014-06-30 14:04:18 +02:00
amai2012
6b5f34df4b
ix compiler warning on Windows 64bit
2014-06-30 12:48:42 +02:00
Daniel Marjamäki
f1762f9ed6
Fixed #5939 (fp: Possible null pointer dereference, after check against NULL in for loop)
2014-06-30 07:26:48 +02:00
Daniel Marjamäki
df799f97c5
valueFlowBefore: better analysis of conditional assignment
2014-06-30 00:02:49 +02:00
Daniel Marjamäki
cdf081dbd5
astyle formatting
...
[ci skip]
2014-06-29 22:53:52 +02:00
amai2012
df988dfff3
Fix cppcheck warning in previous changeset
...
Signed-off-by: amai2012 <amai@users.sf.net>
2014-06-29 19:12:59 +02:00
amai2012
e60ee4ad3b
Print callstack in SEH on Windows
2014-06-29 18:57:48 +02:00
Daniel Marjamäki
4f43e4f9aa
Fixed #5959 (ValueFlow: return value from subfunction)
2014-06-29 18:04:38 +02:00
Daniel Marjamäki
893996d182
Fixed #5937 (ValueFlow: wrong analysis of calculations with different variable operands)
2014-06-29 10:57:39 +02:00
Daniel Marjamäki
1bcb22e4a4
ci.py: run daca2 in alphabetical order again
2014-06-28 20:11:46 +02:00
Daniel Marjamäki
41baffdda1
Fixed #5850 (Wrong Message on self assignment)
2014-06-28 15:26:22 +02:00
Alexander Mai
4d6c17818d
Try to fix configuration of un*x signal handling and backtrace support
2014-06-28 14:05:18 +02:00
Daniel Marjamäki
ab08883332
Merge pull request #351 from simartin/ticket_5952
...
Ticket #5952 : Simplify redundant parentheses in pointer variable declarations
2014-06-28 12:20:27 +02:00
amai2012
e124983e11
Improve error message for Windows SEH adding more details if available
2014-06-28 12:14:00 +02:00
Daniel Marjamäki
9eaadc81e2
Fixed #5861 (valueFlowSubFunction: fp for float value)
2014-06-28 12:04:20 +02:00
Daniel Marjamäki
46479ced7e
Library: Handle FIlE_NOT_FOUND better
2014-06-28 10:22:35 +02:00
Daniel Marjamäki
6f2c8a8236
Fixed #5931 (arrayIndexOutOfBoundsCond id reported instead of arrayIndexOutOfBounds)
2014-06-28 10:09:53 +02:00
Simon Martin
7b942650c2
Ticket #5952 : Simplify redundant parentheses in pointer variable declarations.
2014-06-28 09:36:51 +02:00
Daniel Marjamäki
660f8c720d
Merge pull request #350 from lasergnu/stacktrace
...
Many platforms don't support backtraces. Fix compile for Solaris platform
2014-06-28 07:34:01 +02:00
Jay Sigbrandt
51fdf3f14f
Simplify defines.
2014-06-27 08:03:05 +02:00
Daniel Marjamäki
6c8558c112
CheckBufferOverrun: Removed old for-loop handling. This is handled through ValueFlow from now on.
2014-06-27 06:46:42 +02:00
Alexander Mai
b6a40fceb7
Fix some compiler warnings
2014-06-26 20:34:07 +02:00
Daniel Marjamäki
036b2f8ccf
CheckBufferOverrun: Added bufferOverrun2 that is based on ValueFlow/SymbolDatabase/Ast from the start. Replaced some old checking.
2014-06-26 17:36:20 +02:00
Daniel Marjamäki
72992c7973
AST: fixed ast for '++i;'
2014-06-26 17:31:57 +02:00
orbitcowboy
ff9a39d1f6
avr.cfg and posix.cfg: Added support for more functions.
2014-06-26 16:22:49 +02:00
PKEuS
7ea7ee0005
Store Token::_originalName on heap, since it is only used for a small amount of Tokens (reduce memory usage of TokenList by ~12% (x64))
2014-06-26 11:51:02 +02:00
PKEuS
ec1bd420a7
Refactorizations optimizing std::string usage:
...
1) Added global static const std::string emptyString; object:
-> Replaces some static variables in functions which might be not threadsafe
-> Avoids constructor call (std::string::string(""))
-> Even functions that return an empty string in some branches can return by reference now.
Added to config.h to ensure that it is available everywhere
2) Added overloads for TestFixture::assertEquals for the most common use cases:
-> Moves conversion from const char[] to std::string into a function, reducing code duplication in binary.
2014-06-26 11:51:02 +02:00
PKEuS
feefa4c626
Speedup checking large amounts of arrays ( #5615 ) by avoiding Token::Match calls in CheckBufferOverrun::checkScope(2).
...
-> Decreased entire checking time on a subset of the attached file by 66% (MSVC12, x64, non-matchcompiled)
2014-06-26 11:51:02 +02:00
Jay Sigbrandt
e7210521ac
Many platforms don't support backtraces. Fix compile for Solaris platform.
...
This change was tested with Solaris 10 on X86 and SPARC.
More information on Unix Backtrace Support
- http://www.gnu.org/software/libc/manual/html_node/Backtraces.html
It is not supported on the following platforms:
- https://www.gnu.org/software/gnulib/manual/html_node/execinfo_002eh.html
Mac OS X 10.3,
FreeBSD 6.0,
NetBSD 5.0,
OpenBSD 3.8,
Minix 3.1.8,
AIX 5.1,
HP-UX 11,
IRIX 6.5,
OSF/1 5.1,
Solaris 10,
Cygwin,
mingw,
MSVC 9,
Interix 3.5,
BeOS.
2014-06-26 11:41:16 +02:00