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
orbitcowboy
0b39fedd45
avr.cfg: Added support for more functions.
2014-06-26 11:35:28 +02:00
PKEuS
e13de2681e
SymbolDatabase: 'const' can't be the name of a variable - fix use after free #5882
2014-06-26 09:19:57 +02:00
PKEuS
e80104327a
AST: Fixed detection of operator new/delete - don't hang when C code is checked as C++ ( #5910 )
2014-06-26 09:19:57 +02:00
Daniel Marjamäki
5fc3e37842
Merge pull request #347 from toralf/timer
...
Timer
2014-06-26 05:45:08 +02:00
Toralf Förster
c1d8d1b26a
tools/times.sh: exit if prereq were not met
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:55:51 +02:00
Toralf Förster
4b135b935d
tools/times.sh: use always long-opts
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:49:47 +02:00
Toralf Förster
fa18adea6f
tools/times.sh: prefer a loop over repeating the same command
...
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:48:56 +02:00
Toralf Förster
da017d6888
tools/times.sh: adapt comment to the actual loops
...
left over from #ea9f0718
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-25 22:46:31 +02:00
PKEuS
b20f87faf2
Optimized Tokenizer::simplifyPlatformTypes() once more: Another 3% improvement on Windows.
...
-> All Token::Match strings are uppercase, so check Token::isUpperCaseName() to avoid comparisons with very slow long Token::Match strings (idea from amai)
Removed duplicate Token::Match call in symboldatabase.cpp
2014-06-25 20:42:59 +02:00
PKEuS
360fd4a565
Speedup Tokenizer::simplifyMathFunctions() and Tokenizer::simplifyPlatformTypes()
...
-> Speedup on entire checking time (TortoiseSVN code) by 3% (MSVC12, x64, not matchcompiled). Probably only measurable when checking code with Windows platform.
2014-06-25 17:00:59 +02:00
Daniel Marjamäki
5af96c2dd8
Fixed #5947 (valueFlowForward: forward conditions not handled properly)
2014-06-25 16:00:56 +02:00
orbitcowboy
d19b6f181d
Extended std.cfg, posix.cfg and avr.cfg
2014-06-25 15:09:03 +02:00
orbitcowboy
c7310c0ab0
std.cfg: Added support for more functions.
2014-06-25 14:27:01 +02:00
orbitcowboy
95c49ec5dc
Extended std.cfg about more missing functions. Moved POSIX functions to posix.cfg. Extended posix.cfg about more memory allocating functions.
2014-06-25 12:00:24 +02:00
Daniel Marjamäki
0023dec567
runastyle: don't strip trailing spaces in cfg files. After a 'runastyle;git commit;git push', I get changes if I run runastyle again.
...
[ci skip]
2014-06-25 06:20:04 +02:00
Daniel Marjamäki
c77786a745
valueFlowAfterCondition: wrong analysis for floats
2014-06-25 06:17:44 +02:00
PKEuS
ac4e727da7
Removed redundant code (replaced by libaries, should fix #5934 ).
2014-06-24 21:57:19 +02:00
PKEuS
3a89e5d65f
Fixed cppcheck warnings introduced by previous commit
2014-06-24 19:51:47 +02:00
Daniel Marjamäki
54aede9086
Fixed #5941 (ValueFlow: Wrong value in subfunction under ?)
2014-06-24 19:30:46 +02:00
PKEuS
1b5d127373
Cache results for TokenList::isC() and TokenList::isCPP() to avoid redundant calls to Path::isCPP()/isC(), which perform slow string operations (conversion to lowercase, substring, comparisons)
...
-> Speedup of 2% on self-checking cppcheck-core (MSVC12, x64, not matchcompiled)
2014-06-24 17:42:39 +02:00
orbitcowboy
731180b7dd
std.cfg: Added support for qsort and improved stro* functions.
2014-06-24 14:16:54 +02:00
Daniel Marjamäki
933832095d
Merge pull request #345 from toralf/html
...
cppcheck-htmlreport: print the cppcheck version in every footer
2014-06-24 07:11:59 +02:00
Toralf Förster
ee10def962
Merge branch 'html' of https://github.com/toralf/cppcheck into html
2014-06-23 19:14:28 +02:00
Toralf Förster
91fa452020
cppcheck-htmlreport: print the cppcheck version in every footer
...
missed in 2d4bae0
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-23 19:13:17 +02:00
Toralf Förster
824a1fbd5b
cppcheck-htmlreport: print the cppcheck version in every footer
...
missed in 2d4bae0
Signed-off-by: Toralf Förster <toralf.foerster@gmx.de>
2014-06-23 19:07:58 +02:00
PKEuS
2d54bace1b
Improved performance of CheckBufferOverrun::checkScope() ( #5944 ):
...
-> Speedup by 40% (MSVC12, x64, not matchcompiled) on the file attached to the ticket
2014-06-23 19:06:59 +02:00
Daniel Marjamäki
1ae6531c4c
Fixed #5923 (false positive: (error) Resource leak: fp (static file pointer))
2014-06-23 16:05:28 +02:00
orbitcowboy
0a17473962
std.cfg: Added support for bsearch.
2014-06-23 14:43:56 +02:00
orbitcowboy
f90445e947
Extended std.cfg and avr.cfg about more functions.
2014-06-23 14:15:47 +02:00
orbitcowboy
f57e875351
Astyle run; Extended std.cfg and avr.cfg about a few more functions.
2014-06-23 11:59:14 +02:00
Daniel Marjamäki
ae81b09b58
Refactoring: Move isScopeNoReturn implementation to library and reuse it both in ValueFlow and Tokenizer
2014-06-22 19:13:15 +02:00
Daniel Marjamäki
c19fc08a68
Merge pull request #344 from matthiaskrgr/travis_O
...
travis: change build optimization level back to -O2 (from -O3) as discussed
2014-06-22 19:10:52 +02:00
Matthias Krüger
b4630e03ab
travis: change build optimization level back to -O2 (from -O3) as discussed in
...
59077b06f9
2014-06-22 13:56:06 +02:00
Daniel Marjamäki
f78cbda2db
Refactoring: Removed CheckNullPointer::nullPointerByCheckAndDeRef and implemented needed analysis in ValueFlow instead.
2014-06-22 10:02:14 +02:00
XhmikosR
8d796519d9
Update .gitignore.
...
Remove accidentally added file.
[ci skip]
2014-06-21 19:56:26 +03:00
XhmikosR
88f8349a45
Clean up .gitignore and remove the currently unneeded .gitattributes file.
...
[ci skip]
2014-06-21 19:47:59 +03:00
Daniel Marjamäki
3e8cf81dbf
htdocs: removed files, they have been moved to the repo cppcheck-htdocs
2014-06-21 18:00:32 +02:00
Daniel Marjamäki
717b9f970f
htdocs: change link to trac
2014-06-21 17:29:00 +02:00
Martin Ettl
be51637c1c
avr.cfg: Added support for some stdio.h macros.
2014-06-20 09:49:06 +02:00
Daniel Marjamäki
ef81bc363a
ValueFlow: analysis in condition.
2014-06-19 17:29:41 +02:00
Daniel Marjamäki
dec251ac44
ValueFlow: Refactoring. Use utility function isVariableChanged.
2014-06-19 05:41:19 +02:00
Martin Ettl
e8f0da845b
avr.cfg: Removed NAN definition.
2014-06-18 05:38:05 +02:00
Martin Ettl
2ee0723ad4
avr.cfg: Added macros of stdint.h.
2014-06-18 05:34:31 +02:00
Martin Ettl
156300b2bf
avr.cfg: Added accidently commented out define.
2014-06-18 05:20:33 +02:00
Martin Ettl
f0099905e9
avr.cfg: Added more defines.
2014-06-18 05:18:48 +02:00
Toralf Förster
d3a71916aa
htmlreport: Use source_encoding to open XML files
2014-06-18 22:13:26 +02:00
PKEuS
a703f643f9
Merge pull request #342 from matthiaskrgr/travis_working
...
Travis working
2014-06-18 21:08:30 +02:00
Daniel Marjamäki
84581817f6
ValueFlow: Improved valueFlowForward. RHS in assignment.
2014-06-18 21:07:01 +02:00