Lauri Nurmi
996c9244d8
Update copyright year to 2007-2016.
2016-01-01 15:34:45 +02:00
Daniel Marjamäki
9acda09fa2
refactoring. combine 2 if to 1
2015-12-14 20:05:17 +01:00
Albert ARIBAUD (3ADEV)
e7fdb1c825
Fix multiple config dumps
...
With multiple configurations, option --dump only dumps
the last configuration.
Fix it to dump every configuration.
Also update all Python addons so that they can handle
multiple-configuration dumps.
Additionally run autopep8 on addons/*.py.
The results of 'make test' before and after applying
this commit are identical.
2015-12-14 18:20:35 +01:00
Albert ARIBAUD (3ADEV)
58031147b2
Optimize tokenizing
...
Reorganize cppcheck.cpp to separate actual checking from
tokenizing and XML dumping. This implies splitting checkFile()
in three parts, checkRawTokens, checkNormalTokens() and
checkSimplifiedTokens().
2015-12-13 09:29:47 +01:00
Daniel Marjamäki
61da95010c
Removed unused CppCheck::replaceAll()
2015-12-10 13:32:36 +01:00
Daniel Marjamäki
1f16e72b19
Removed --debug-fp. The reduce tool should be used instead.
2015-12-10 10:44:36 +01:00
Daniel Marjamäki
a51df5f00d
Removed unused CppCheck::analyseFile
2015-12-03 08:42:12 +01:00
PKEuS
ac17541ca9
Refactorizations:
...
- Fixed a few more MSVC warnings by using correct types
- Store severity as enum instead of string in Settings::Rule
2015-11-28 12:30:21 +01:00
Daniel Marjamäki
0f9d90d2be
Changed Copyrights. Removed my name.
2015-11-18 20:04:50 +01:00
Miika-Petteri Matikainen
acd8a092f8
Make syntaxError suppressable ( fixes #5917 and #7076 )
...
syntaxErrors were not suppressable, because they were treated as
InternalErrors which were thrown and catched during the checking,
and normal suppression rules were not applied for those.
We fix this by calling the normal reportErr() function that does
suppression matching.
2015-10-28 20:53:35 +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
92b867dd2c
Fixed behaviour of --quiet/-q and its description
2015-07-25 17:55:12 +02:00
Simon Shanks
9910c1fa0c
Fixed #6617 (preprocessor performance improvement)
2015-07-24 13:30:41 +02:00
Alexander Mai
2c73518e29
Fix platform-dependent test result, formatting and crash in whole program analysis
2015-06-28 17:54:48 +02:00
Alexander Mai
d4550c763d
Exit code shall indicate that an internal error (syntax error) has been found. Add some const. Run astyle
2015-05-25 21:15:55 +02:00
Thomas Jarosch
ec21134817
Fix false negatives for local suppressions
...
Introduce a new bool setting jointSuppressionReport
that will be set by the analyseWholeProgram() code path.
When the flag is enabled, unmatched suppressions are
collected after running the final whole program analysis
to prevent false positives for the unusedFunction check.
The check functions in the unit test
for single / multi file suppressions were unified.
2015-01-20 18:47:30 +01:00
Thomas Jarosch
c92d861b1e
Fix typo in "internal error" message
2015-01-12 23:09:17 +01:00
Daniel Marjamäki
228f5960fc
CheckIO: only report warnings when --enable=warning has been used
2015-01-06 15:08:25 +01:00
Daniel Marjamäki
ff11ba9847
Updated copyright year to 2015
2015-01-03 12:14:58 +01:00
Daniel Marjamäki
0b9d80c95d
Refactoring CheckUnusedFunctions so it uses new infrastructure for multifile analysis
2014-12-02 06:41:18 +01:00
Daniel Marjamäki
a002654c47
Reverted refactoring 828417c
for now. It caused a major slowdown in the unused functions checking.
2014-11-24 06:37:08 +01:00
Daniel Marjamäki
828417c934
CheckUnusedFunction: Refactorings to use same infrastructure for whole program analysis as CheckUninitVar and CheckBufferOverrun
2014-11-15 18:44:23 +01:00
Daniel Marjamäki
de7e9223b8
Fixed #6272 (Improve check: multifile checking in checkbufferoverrun)
2014-11-15 10:43:49 +01:00
PKEuS
b48bf1dbad
Fixed GUI bug: file test.cpp is loaded from file if scratchpad is empty.
...
The underlying problem was in lib and is fixed by changing the behaviour of CppCheck::check(). Checking is performed on empty content without attempt to load from file.
2014-10-03 10:40:48 +02:00
PKEuS
a02712cb66
Some small refactorizations:
...
- Removed redundant calls to std::string constructor
- Use default parameters in some places
2014-10-03 10:02:46 +02:00
PKEuS
542cb1cd8e
Reduce RAM usage: Avoid keeping a copy of the preprocessed source files content during checking.
2014-10-02 19:44:17 +02:00
PKEuS
c3ac91eb42
Fixed ID of message about purged configurations.
2014-09-10 20:19:21 +02:00
PKEuS
4940da06c0
Calculate checksum only if necessary ( #6129 )
2014-09-05 11:05:21 +02:00
PKEuS
bf2f76e70c
Detect and purge duplicate configurations by calculating a checksum.
2014-09-02 22:35:52 +02:00
PKEuS
e35329aba3
Fixed reporting of unmatched suppressions for unusedFunction ( #4946 )
2014-09-01 10:13:03 +02:00
PKEuS
a1b7ab277b
Changed handling of unhandled characters:
...
- Don't abort checking (reverts 42140b6488
)
- Modified error message: New Id unhandledCharacter, removed redundant line information, improved message text
2014-08-08 09:49:09 +02:00
Daniel Marjamäki
8db5836e3f
Fixed #5982 (Add xml dump)
2014-07-14 15:51:45 +02:00
PKEuS
0a0f1072c0
Attempt to fix travis and some more VS warnings
2014-06-04 19:18:27 +02:00
PKEuS
d93d7401c6
Moved getSourceFilePath(), isC() and isCPP() from Tokenizer to TokenList
...
Conflicts:
lib/tokenize.cpp
2014-06-04 18:36:25 +02:00
PKEuS
6aa88248ac
Fixed timer name
2014-06-04 18:34:45 +02:00
Daniel Marjamäki
42140b6488
Preprocessor: set error flag when unhandled characters are found so checking can bailout
2014-06-01 11:24:10 +02:00
PKEuS
adf38fcfd0
Further include cleanup
2014-05-24 12:50:04 +02:00
PKEuS
9bfc2b618b
Fixed crashes random crashes in multithreading caused by useless creation of CheckUnusedFunctions instance per thread.
2014-04-13 11:56:38 +02:00
PKEuS
e9411e05ba
Refactorized inefficient usage of std::string and const char[].
2014-04-02 13:56:34 +02:00
PKEuS
7e4081f7f5
Treat syntaxError and cppcheckError as InternalErrors (throw as exception, #4268 )
2014-03-27 13:15:21 +01:00
Lauri Nurmi
70a67eaf85
Change some more 0 literals into nullptr.
2014-02-16 13:38:50 +02:00
Daniel Marjamäki
fb5c2d4b48
use nullptr in lib/checkother.cpp
2014-02-15 08:46:28 +01:00
Daniel Marjamäki
fd3a8a2a18
Update copyright
2014-02-15 07:45:39 +01:00
PKEuS
55f68535b2
Set version to "1.64 dev"/1.63.99. Use version.h in cppcheck.cpp.
2014-01-04 10:41:13 +01:00
Daniel Marjamäki
6515691a47
1.63: Set version numbers
2014-01-04 09:32:37 +01:00
Alexander Mai
ea10a722fc
Fixed #5306 (Implement --showtime=top5)
2014-01-03 10:24:57 +01:00
PKEuS
4f0121ee2f
Splitted simplification out of tokenize()
2013-12-30 17:45:28 +01:00
Daniel Marjamäki
e446a28b3d
Refactoring FileLister and Path so they don't depend on Library
2013-10-31 19:09:01 +01:00
Sam Truscott
6806fd8135
Extended Qt support through Library
2013-10-20 14:09:10 +02:00
PKEuS
4cd2fad2bf
Set version to 1.63 dev
2013-10-13 09:53:56 +02:00
Daniel Marjamäki
21c537e8d7
1.62: Set versions
2013-10-12 12:22:52 +02:00
Daniel Marjamäki
6b260c481c
CppCheck: Don't run preprocessor rules when --check-config is used
2013-08-31 18:38:52 +02:00
Daniel Marjamäki
997c9ce100
Refactor CppCheck::_fileContents to a function parameter
2013-08-31 10:28:21 +02:00
Daniel Marjamäki
e6686dfb5b
Cleanup CppCheck::dependencies()
2013-08-31 10:13:47 +02:00
Daniel Marjamäki
ff71c94f6e
Fixed #4949 (define symbol used in code => 'Analysis failed' message is written.)
2013-08-12 18:12:49 +02:00
PKEuS
219f6546d3
Set version to 1.62 dev
2013-08-03 19:54:39 +02:00
Daniel Marjamäki
2f7fba2087
1.61: Set versions
2013-08-03 08:04:38 +02:00
Daniel Marjamäki
44333f316a
Added terminate() handling to get quicker response when the user wants to terminate
2013-07-24 13:06:59 +02:00
Daniel Marjamäki
8285510996
Rules: Make it possible to write rules that check #define macros
2013-07-12 16:09:00 +02:00
PKEuS
14c3b390a4
Fixed version number
2013-07-04 13:32:45 +02:00
Daniel Marjamäki
15c92384f4
Fixed #4851 (Preprocessor: problem when using #ifndef symbol in the code)
2013-06-15 12:08:18 +02:00
Daniel Marjamäki
47931372ff
astyle formatting
2013-06-12 06:43:52 +02:00
Daniel Marjamäki
6900d4fb76
Travis: Fixed cppcheck style warning
2013-06-09 20:17:26 +02:00
Daniel Marjamäki
66f9e9b16f
Rules: Allow that 'raw' tokens are checked.
2013-06-09 15:50:43 +02:00
Daniel Marjamäki
537166cf47
Rules: Make it possible run a rule on the 'normal' token list
2013-06-09 14:58:56 +02:00
Daniel Marjamki
4e09b06bc1
Fixed #4827 (allow checking multiple configurations when using -D by also using --max-configs or --force)
2013-06-08 16:46:54 +02:00
Daniel Marjamki
c83bd7f00f
1.60.1: Set versions
2013-06-02 13:13:40 +02:00
Daniel Marjamäki
d36d3d5469
1.60: set version
2013-06-01 15:17:07 +02:00
Daniel Marjamäki
a7da65a40b
Fixed #4618 (Unmatched suppression: don't show this information message unless --enable=information or --check-cfg is used)
2013-05-31 15:20:58 +02:00
Daniel Marjamäki
2f1050595d
CppCheck: Added _simplify flag that can be used by clients to disable simplifications
2013-05-11 11:35:04 +02:00
Daniel Marjamäki
b6bcdf2936
Fixed #4520 (segmentation fault of cppcheck (preprocessing))
2013-05-09 18:50:24 +02:00
PKEuS
b180e92b4c
Set version to 1.60 dev
...
Use WiX 3.7
2013-03-30 19:04:01 +01:00
Daniel Marjamäki
c733928505
1.59: Set versions
2013-03-29 18:06:13 +01:00
PKEuS
c62233643a
Set version to 1.59 dev
2013-01-12 17:49:09 +01:00
Daniel Marjamäki
3057078571
1.58: Set versions
2013-01-12 14:49:58 +01:00
Reijo Tomperi
5d5f7085bf
Updating year 2012 -> 2013 to .cpp and .h files and man page.
2013-01-01 18:29:08 +02:00
Daniel Marjamäki
bfb82fe3e1
Cppcheck: Show single 'too many configurations' message if --enable=information hasn't been used and there are too many configurations.
2012-12-26 18:35:49 +01:00
Daniel Marjamäki
9e58714bb1
Cppcheck: Only show 'Too many configurations' and 'Interrupted checking' information messages when information severity is enabled
2012-12-23 08:23:52 +01:00
PKEuS
dc3eba964b
Incremented version to "1.58 dev" (1.57.99)
2012-11-04 15:49:18 +01:00
Daniel Marjamäki
3a44a5ca3c
1.57: Setting version
2012-11-04 13:50:23 +01:00
Daniel Marjamäki
10c11ec9dd
more java/c# cleanup
2012-10-03 19:51:09 +02:00
Daniel Marjamäki
2f7032a0e6
Cppcheck: Removed redundant code.
2012-09-15 16:00:46 +02:00
PKEuS
dcf997007b
Incremented version numbers to 1.57 dev
2012-09-01 13:04:09 +02:00
Daniel Marjamäki
b8db27fcd1
1.56: Set versions
2012-09-01 10:54:15 +02:00
PKEuS
c8e40773f1
Fixed cppcheck messagesa about functions that can be const/static:
...
- Made Tokenizer::getErrorMessages static - Avoids creation of unnecessary instance of Tokenizer
- Changed Tokenizer::removeExceptionSpecifications to common style for simplification functions. In contrast to the comment, this function doesn't call itself recursivly - fixed comment.
- Made Tokenizer::IsScopeNoReturn static.
2012-08-01 12:04:47 -07:00
Daniel Marjamäki
17cf24ed34
Fixed #3643 (Preprocessor: Invalid configuration (macro is used in code))
2012-07-10 20:29:04 +02:00
Edoardo Prezioso
fae40c4782
Change every C version of 'size_t' to C++ 'std::size_t'.
2012-07-09 13:30:18 +02:00
Edoardo Prezioso
3c4ce7b43a
Fixed (for real) the preprocessor.cpp(1166) warning in #2123 .
2012-07-06 13:17:08 +02:00
PKEuS
2de6ea4627
Incremented version to "1.56 dev"
2012-07-02 11:10:07 -07:00
Daniel Marjamäki
2536746d02
1.55: Set version
2012-06-30 18:08:27 +02:00
Kimmo Varis
68c52ddd69
Refactoring information messages.
...
Currently the information severity messages are outputted as error
messages with Severity::Information. This causes constant confusion
as people think it as mildest error severity (and rightfully so).
When it was meant to be for printing messages about the checking
procedure itself (like missing header files etc).
So I'm adding a new function for the ErrorLogger for printing these
informative messages. This makes clear the distinction of errors
found from the code and messages related to the checking itself.
It also makes it easier for clients to handle these separately.
2012-06-19 00:16:20 +03:00
PKEuS
1a6e69a80b
Fix for problem: "Too many #ifdef configurations - cppcheck will only check 12 of 12"
2012-06-13 10:50:50 -07:00
Edoardo Prezioso
eacf74be8d
Changed the order of some structures in order to improve, even if for a bit, their padding.
2012-05-14 20:49:03 +02:00
PKEuS
06a77679d4
Refactorizations:
...
- Added support for pointers in self assignement check
- Removed redundant for loop in checknullpointer.cpp
- Fixed warning about signed/unsigned mismatch in cppcheck.cpp by making Settings::_maxConfig unsigned
2012-05-11 10:38:19 -07:00
PKEuS
11a296cb02
Fixed #2708 : Print message before checking and after checking is interrupted if there are too many preprocessor configurations
...
Removed redundant suppression check because the same check is done inside reportErr again.
2012-05-09 09:54:43 -07:00
PKEuS
db914d7185
Fixed compiler errrors and warnings mentioned in #3783
2012-05-07 06:34:47 -07:00
PKEuS
1a5fbd61d2
Splitted class TokenList from Tokenizer
2012-05-05 09:33:26 -07:00
PKEuS
1c3c94dc67
New simplification: Remove 'extern "C"' from C++ code.
...
Refactorization in cppcheck.cpp: Catch exception as const reference instead of non-const reference.
2012-04-16 16:25:04 +02:00
PKEuS
a420a36606
Removed deprecated cmdline options -s, --style, -a, --all, --auto-dealloc, --test-2-pass
2012-04-15 13:10:41 +02:00
PKEuS
f1692cdefe
Set version to "1.55 dev"
2012-04-15 11:40:14 +02:00
Daniel Marjamäki
3ddbcc7fbe
1.54: updated version numbers
2012-04-15 07:23:26 +02:00
Daniel Marjamäki
c7093ca5d6
Tokenizer: allow that time is measured for certain slow simplifications
2012-04-10 13:45:34 +02:00
PKEuS
772108374e
Removed unused variable CppCheck::_errout.
2012-04-08 14:18:13 +02:00
Simon Martin
3ccdd16b01
Avoid clang warning.
2012-04-07 15:36:45 +02:00
PKEuS
7de545f0fe
Refactorizations:
...
- Added forgotten initialization of Settings::_relativePaths
- Some PCRE-Rules specific code hidden behind HAVE_RULES
- Use initialization list in ErrorLogger::ErrorMessage::ErrorMessage() and CppCheck::CppCheck
- Avoided unnecessary copies of std::strings in cppcheck.cpp
- Moved "// Alert only about unique errors"-code to make it work in debugFalsePositive mode
2012-04-06 18:16:59 +02:00
PKEuS
6643e14d3c
Avoid copying Settings in CppCheckExecutor
2012-04-06 14:19:26 +02:00
Stefan Weil
2ce5b80599
Fix compilation with HAVE_RULES=yes
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-03-01 20:07:00 +01:00
PKEuS
1747813a8b
Added check for invalid pointer casts ( #1255 )
...
Detect sign extension problems when variable is a reference (#3637 )
Refactorizations:
- Tokenizer::getFiles returns a reference instead of a pointer, because its guaranteed that no nullpointer is returned
- Remove signed/unsigned in one step for "%type% signed|unsigned"
- Fixed recently introduced compiler warning in symboldatabase.cpp
2012-02-26 11:56:32 +01:00
PKEuS
9a5f66030c
Improved unused private function check:
...
- Fixed #3628
- Added support for friend
Improved symbol database:
- friend scopes are now set
- Added findScopeByName function
Refactorizations:
- Removed some unnecessary "virtual" keywords
- Removed unnecessary _filename member variable, pass it as argument instead
- Made CppCheck::replaceAll static, since it is independant from a specific CppCheck instance, Pass string to be modified by reference
2012-02-24 20:45:56 +01:00
PKEuS
9f42ce91a1
Refactored STL container usage in CLI.
...
Pathmatcher masks are converted to lowercase only once when instance is created
2012-02-19 17:22:59 +01:00
PKEuS
4b52df675a
Some refactorizations
2012-02-18 14:44:04 +01:00
PKEuS
8ea5df62c4
- Improved support for numbers in code:
...
-- Use MathLib::toLongNumber for conversion in tokenizer (Fix #3610 )
-- Handle octal numbers in tokenizer
- Refactorizations in MathLib::toLongNumber and Settings
2012-02-17 15:47:08 +01:00
Daniel Marjamäki
04e4b5d14d
lib: fix for my previous commit. If there are no dependencies then don't insert dependencies
2012-02-15 08:13:42 +01:00
Daniel Marjamäki
8f3d511871
lib: allow that file dependencies are taken from Cppcheck after a check
2012-02-15 08:08:28 +01:00
Daniel Marjamäki
c33dbb80fb
1.53: Updated version info
2012-02-11 08:17:07 +01:00
Reijo Tomperi
756b8762ab
Catch InternalError by reference instead of creating a copy of it.
2012-01-09 18:30:36 +02:00
Reijo Tomperi
194327048a
Add InternalError and change MathLib to throw it in case of an error.
...
- Previously MathLib errors did not provide a filename, but after this change at least source file name should be printed
and if token is provided, also line number should be printed.
- Change also Token to use InternalError
- Modify Cppcheck-class to catch InternalError instead of Token
- Run dmake to update Makefile
2012-01-08 22:19:44 +02:00
Daniel Marjamäki
de4a64332e
Refactoring: Copy FileLister::acceptFile to Path::acceptFile. Use Path::getFilenameExtension and Path::acceptFile in Tokenizer. Use Path::acceptFile in CppCheck::processFile instead of hardcoded handling.
2012-01-06 17:31:10 +01:00
Daniel Marjamäki
9a102702cb
Refactoring: Disable debug warnings when file extension is neither .c nor .cpp. To somewhat prevent that people fix java/c# specific debug warnings.
2012-01-06 16:08:08 +01:00
Daniel Marjamäki
94d220e370
Refactoring: Made Preprocessor::getcode nonstatic
2012-01-06 08:01:50 +01:00
Reijo Tomperi
8cae17fda8
Update year to 2012
2012-01-01 01:05:37 +02:00
Daniel Marjamäki
93b447f7f6
1.52: Updated version
2011-12-10 12:55:40 +01:00
PKEuS
1bef8d1247
Tokenizer: Code cleanups
2011-12-08 17:42:26 +01:00
Daniel Marjamäki
0dd05e0d56
Fixed #3347 (False positive: unused function (taking address))
2011-11-21 19:12:54 +01:00
Reijo Tomperi
eebd1393ff
"Internal error. Token::Match called with varid 0." didn't work when error was in a header file. Fixed that.
2011-11-21 00:41:26 +02:00
Reijo Tomperi
7d7d68b192
Make --debug-fp work with new exception also.
2011-11-21 00:04:09 +02:00
Reijo Tomperi
91e89380c2
astyle fix
2011-11-20 23:43:55 +02:00
Reijo Tomperi
e0ea4228cd
"Internal error. Token::Match called with varid 0." will now cause check to abort and write a proper error log with filename. Previously filename was empty and format was always xml.
2011-11-20 23:38:37 +02:00
Stefan Weil
785bc3d04b
Optimize handling of --append=<file> option (execution time, memory)
...
Whitespace was removed from the append data for every configuration
and every file: n(configuration) * n(files).
Removing whitespace immediately after the append data was read can
significantly reduce the execution time and memory usage.
It also allows further improvement because copies to the temporary
object appendCode are no longer needed.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2011-11-15 19:27:36 +01:00
Joshua Beck
56561835f8
Add option to set #ifdef configuration check limit
2011-10-18 19:52:55 -05:00
Daniel Marjamäki
6f8e42a5af
changed the astyle formatting flags
2011-10-13 20:53:06 +02:00
Daniel Marjamäki
5c08979920
1.51: Updated versions
2011-10-08 07:45:39 +02:00
Daniel Marjamäki
939504af3c
Cppcheck: allow that 'toomanyconfigs' are suppressed. show these messages by default even though 'information' hasn't been enabled.
2011-08-20 11:20:25 +02:00
Daniel Marjamäki
fe78e28d70
Cppcheck: Don't show information messages about interrupted checking unless --enable=information has been given.
2011-08-19 22:32:57 +02:00
Reijo Tomperi
dd666b7c1b
Add command line option: --debug-fp ... If used, cppcheck will print out the code generating error into output stream.
...
This is ment to be used for debugging false positive errors in Cppcheck.
Current implementation tries two alternatives. Without all headers or with all headers and prints out the option with
less code. In future versions this could try with individual headers or group of header files.
2011-08-16 22:58:27 +03:00
Daniel Marjamäki
3a260822ad
1.50: Updated version
2011-08-14 08:08:37 +02:00
Kimmo Varis
9e2dd553fb
Add "ExtraVersion" version number information.
...
The "ExtraVersion" can be used for things like Git commit Id,
release tag (version control), release date etc. If the string
is empty, nothing is printed.
2011-08-11 17:34:59 +03:00
Kimmo Varis
e86abfdc5f
No unmatched suppressions list in quiet output.
...
When user wants to see only errors printed (--quiet in CLI) we
must obey that. And not print unmatchedSuppressions list.
Ticket: #2895 (Cannot suppress unmatchedSuppression reports)
2011-08-04 12:04:38 +03:00
Daniel Marjamäki
c1138cf7f9
Fixed #2941 (False positive: unused function (individual checking of files))
2011-07-25 13:25:09 +02:00
Daniel Marjamäki
5ea79677a3
Fixed #2924 (Unable to turn on unused function detection from command line)
2011-07-20 11:12:08 +02:00
Daniel Marjamäki
a8cb7b445f
1.49: updated version
2011-06-12 18:24:31 +02:00
Daniel Marjamäki
d998477c69
renamed --check-includes to --check-config
2011-05-02 21:28:33 +02:00
Daniel Marjamäki
8603919b2d
Missing includes - normally just report that there are missing includes. The --check-includes can then be used to check what missing includes there are. Ticket: #2719
2011-05-02 14:58:16 +02:00
Greg Hewgill
6d858b63a1
Report percentage complete based on file size
...
This patch makes the (reasonable) assumption that the total size of all checked
files fits in a 'long' type.
2011-04-26 22:26:23 +12:00
Kimmo Varis
f240574107
Modify the Cppcheck class to check one file at a time.
...
Unify usage and API of CppCheck class. Allow only one file checked
at a time, instead of list of files. Clients can then handle file
lists more naturally and as they see fit. Also clients have better
knowledge of how checking status should be handled.
The single-threaded CLI checking was only one using the file list.
Other clients were giving files (to list) one file at a time.
2011-04-24 19:17:52 +03:00
Daniel Marjamäki
58dbbb0cab
Inconclusive checking: Report inconclusive errors with reportInconclusiveError. It takes the same parameters as reportError.
2011-04-14 18:02:01 +02:00
Daniel Marjamäki
7d6e923bd4
inconclusive: don't report such messages in xml version 1 format. until we decide how they will be reported in xml version 2 format I don't report it.
2011-04-10 21:51:27 +02:00
Daniel Marjamäki
e75acd7476
Release: Updated versions to 1.48
2011-04-09 07:55:07 +02:00
Robert Reif
5cdd635701
run astyle
2011-03-22 19:20:05 -04:00
Ettl Martin
8308fb72e3
fixed performance issues, found by selfcheck with cppcheck.
2011-03-22 23:15:15 +01:00
Greg Hewgill
e2581da30c
Merge branch 'unmatched-suppressions'
2011-02-17 21:46:43 +13:00
Greg Hewgill
a4de6a3455
be sure to list unmatched suppressions only for the currently processed file
2011-02-17 21:46:14 +13:00
Daniel Marjamäki
0ee583e324
Fixed gcc compiler warnings (signedness)
2011-02-16 20:56:02 +01:00
Greg Hewgill
5d74325015
implement unmatchedSuppression information message
2011-02-16 23:02:37 +13:00
Daniel Marjamäki
805773663e
Build: Renamed HAVE_DEPENDENCIES to HAVE_RULES
2011-02-14 19:37:58 +01:00
Daniel Marjamäki
27febb062b
cppcheck: Added HAVE_DEPENDENCIES define. Cppcheck cli can be compiled without dependencies.
2011-02-12 08:06:59 +01:00
Daniel Marjamäki
4a7c56f970
1.47: Updated versions
2011-02-06 12:05:42 +01:00
Raphael Geissert
45e5dc20a2
Try to match custom rules as many times as possible, not just once
2011-02-02 13:27:02 -06:00
Raphael Geissert
15dceed6cd
Remove uneeded indentation
2011-02-02 13:27:01 -06:00
Kimmo Varis
c2de1a8a52
Convert "too many configurations" message to information message.
...
The "too many configurations"-message is currently only printed to the
log. So it won't be seen by users integrating Cppcheck using XML
error file. It is also easily missed in the GUI as it only shows up
in the checking log. Making it a information message it shows up
with the other errors and tells user that file was not completely
checked.
Ticket #2527 (Make "too many configurations" message an error message)
2011-02-01 17:53:30 +02:00
Kimmo Varis
b8b2e3fae9
Move filelister* to cli.
...
Ticket #2445 (Move FileLister classes from LIB to CLI).
2011-01-18 19:58:49 +02:00
Daniel Marjamäki
657c22d23b
cppcheck: output errorlist to stdout
2011-01-16 17:18:09 +01:00
Kimmo Varis
4668e19060
Modify Cppcheck::addFile() only take one file as a parameter.
...
CLI and GUI already do the directory walking for us and we have list
of files to check. So we were duplicating this directory walking.
Practically doing check again for each file if it is a directory.
Which can take some time with large amount of files.
2011-01-13 23:18:04 +02:00
Reijo Tomperi
226b605774
Change year 2010 -> 2011 in license texts.
2011-01-09 21:33:36 +02:00
Daniel Marjamäki
f1f1a21c23
Borland C++: Fixed compiler errors
2010-12-31 10:24:51 +01:00
Daniel Marjamäki
742f5897b9
gcc: fixed compiler warning
2010-12-30 22:13:10 +01:00
Daniel Marjamäki
38e7209d26
Fixed #2373 (Using XML2 in --errorlist output)
2010-12-29 12:43:29 +01:00
Kimmo Varis
ac8eb30d68
Fixed #2309 (cppcheck-suppress issue because of path slash/backslash)
...
Internally we are using forward-slash and only convert to backslash
for Windows output. For suppressing we must use internal
forward-slash format of paths.
2010-12-15 22:39:46 +02:00
Daniel Marjamäki
2d3865a671
Add support for user defined rules
2010-12-12 11:56:22 +01:00
Daniel Marjamäki
b90e514b32
1.46: updated version information
2010-12-12 08:33:05 +01:00
Daniel Marjamäki
af80384ae7
xml2: replace --xml2 with --xmlver=2. Ticket: #2106
2010-12-02 17:32:51 +01:00
Daniel Marjamäki
12c8eeff2c
xml2: Added experimental --xml2 result format. Ticket: #2106
2010-12-01 21:24:17 +01:00
Daniel Marjamäki
ba7a3b376e
Fixed #2167 (Drop linefeeds from error messages)
2010-11-11 19:54:43 +01:00
Daniel Marjamäki
81cac166d6
FileLister: minor cleanup
2010-11-09 19:11:43 +01:00
Kimmo Varis
9627b667a1
Move simplifyPath method from FileLister to Path class.
...
simplifyPath() "fits" better to Path class conceptually. It handles
paths, not lists them. Also this way we get rid of few unneeded
dependencies to FileLister class.
2010-10-29 22:21:27 +03:00
Daniel Marjamäki
5bf2a300d9
1.45: updated version information
2010-10-03 17:05:36 +02:00
Daniel Marjamäki
3f79faac2a
Fixed #2059 (cppcheck gives wrong path in error description)
2010-09-22 19:52:14 +02:00
Robert Reif
aae2986361
Fixed #2042 (#error messages should be displayed when user defines are used)
2010-09-12 21:30:47 +02:00
Kimmo Varis
e800490b50
Add back <stdexcept> as GCC requires it.
...
I removed <stdexcept> after checking it builds with VS 2008. But Dan
pointed out GCC needs that header.
2010-09-06 22:00:56 +03:00
Kimmo Varis
3551ce8b58
Remove unneeded includes.
2010-09-06 21:08:50 +03:00
Kimmo Varis
120b6b9133
Remove unused function.
...
I forgot to remove the function that was used in command line
parsing code.
2010-09-05 11:24:01 +03:00
Kimmo Varis
45eaebe423
Move CLI command line parsing to own class.
2010-09-05 11:17:31 +03:00
Daniel Marjamäki
f490ebcf88
Fixed #1872 (Confused -v switch)
2010-09-03 13:30:49 +02:00
Kimmo Varis
63f1de509c
Merge branch 'master' of github.com:danmar/cppcheck
2010-08-31 23:26:25 +03:00
Daniel Marjamäki
3a8e7b4bf0
Exception safety: Removed the noisy checks and keep the useful checks
2010-08-31 22:22:59 +02:00
Kimmo Varis
d417256c98
Move timer code to own cpp/h files.
2010-08-31 23:18:07 +03:00
Daniel Marjamäki
edec43c913
mention the manual in the --help output
2010-08-29 13:21:35 +02:00
Daniel Marjamäki
d45186d645
Added --debug-warnings that we can use to enable various debug warnings
2010-08-27 20:28:00 +02:00
Daniel Marjamäki
6cb7fefdbf
Added command line option --report-progress. ticket: #1926
2010-08-12 21:03:33 +02:00
Daniel Marjamäki
11ef2c0a06
Refactoring: Cppcheck::reportProgress needs to call _errorLogger::reportProgress. Ticket: #1625
2010-08-08 08:46:47 +02:00
Daniel Marjamäki
050011d287
Fixed #1881 (false positive: The function '...' can be const (nonconst code is hidden inside #if))
2010-08-07 13:08:36 +02:00
Daniel Marjamäki
12217461a2
gcc: fixed some more -Wsign-conversion warnings
2010-08-06 22:37:48 +02:00
Daniel Marjamäki
6346e1aa90
Borland C++: Fixed compiler errors
2010-08-06 17:44:26 +02:00
Daniel Marjamäki
f5823f7747
Visual Studio: Fixed warnings
2010-08-06 17:32:16 +02:00
Daniel Marjamäki
9edecd4a3f
Added ErrorLogger::reportProgress and removed ErrorLogger::ReportProgress. This will make it easier for GUI and other clients to display progress information.
2010-08-03 16:36:21 +02:00
Kimmo Varis
2fa4378338
Astyle cleanup with new Astyle options.
2010-07-31 15:44:08 +03:00
Kimmo Varis
17395b310d
Remove unneeded path separator conversion.
2010-07-26 22:49:47 +03:00
Kimmo Varis
2f8d43984f
Fix path separators for couple of messages.
2010-07-26 22:43:49 +03:00
Daniel Marjamäki
3ad8f98c61
Refactoring: Settings::addSuppression return error message and callers make sure it's reported properly. Ticket: #1839
2010-07-23 23:12:56 +02:00
Daniel Marjamäki
37c959023a
Refactoring: The Settings::addEnabled will return error message instead of throwing it. Ticket: #1866
2010-07-23 13:29:16 +02:00
Kimmo Varis
9b0851ed25
Fixed #1892 (Verbosity setting set to false and not set back to original value)
...
Verbosity was set to false to temporarily reduce printing messages.
But it was not set back to its original value so rest of the
messages that should have been printed for verbose setting
enabled were not printed.
2010-07-21 16:26:59 +03:00
Kimmo Varis
342632a618
Remove './' from begin of paths when printing progress.
2010-07-19 15:05:44 +03:00
Kimmo Varis
5d1a10b0a3
Astyle cleanup.
2010-07-17 17:42:17 +03:00
Kimmo Varis
fa0f6edacf
Rename ErrorMessage::toText() to ErrorMessage::toString().
2010-07-14 18:31:05 +03:00
Daniel Marjamäki
94a8eba989
1.44: updated version information
2010-07-10 11:29:07 +02:00
Daniel Marjamäki
c34c3ee742
Unused functions: Refactoring
2010-07-08 13:01:53 +02:00
Daniel Marjamäki
09e02b9f9f
updated --help output. The --enable is used to enable additional checks.
2010-06-02 21:34:03 +02:00
Daniel Marjamäki
8f76aea6ed
2 pass checking: broke out Cppcheck::analyseFile. To be used for tests
2010-05-21 21:06:11 +02:00
Daniel Marjamäki
75c9355e9a
Added some multipass checking for the uninitialized variables. It is still experimental. You can activate it with the '--test-2-pass' switch. Some more refactorings are needed to make it truly usable, the main thing is to make it thread safe.
2010-05-21 19:35:18 +02:00
Daniel Marjamki
5fe2a56b41
doc: updated docs about -D command line flag
2010-05-16 08:48:03 +02:00
Daniel Marjamki
14b27f97fa
Fixed #1212 (Allow giving used defines in command line)
2010-05-16 07:38:29 +02:00
Daniel Marjamki
d7b117402c
Code cleanup: Removed autodealloc handling
2010-05-16 07:15:31 +02:00
Konrad Windszus
c39f80d361
Ticket #1318 : Make sure error ids are unique
2010-05-13 22:14:29 +02:00
Daniel Marjamäki
cdb6915a5b
cli help: show the flags in alphabetical order
2010-05-08 12:45:38 +02:00
Daniel Marjamäki
cbea8ceed0
Updated version to 1.43
2010-05-08 12:41:06 +02:00
Daniel Marjamäki
3bab5f6bd6
Borland C++: Fixed compiler errors
2010-04-17 07:25:53 +02:00
firewave
43dd749cc6
Fix #1585 (--append doesn't work with TAB formating)
2010-04-15 22:45:38 +02:00
Daniel Marjamäki
c718a7c595
astyle: Update to astyle 1.24
2010-04-15 20:08:51 +02:00
Reijo Tomperi
35d2a27b9c
Update copyright year in all source files
2010-04-13 22:23:17 +03:00
Reijo Tomperi
a33e8f34c5
Disable "Overall time" output when --showtime is not used
2010-04-13 21:27:47 +03:00
Daniel Marjamäki
a7903c3385
dos2unix
2010-04-13 19:25:08 +02:00
firewave
89cdb088d6
More --showtime updates:
...
- removed "average"
- added number of results, average processing time and overall time to non-"file" output
2010-04-13 11:23:11 +02:00
Oliver Stoeneberg
f992ac7da7
showtime: refactoring and improving. Added summary/file/top5/average options.
2010-04-12 22:13:42 +02:00
Oliver Stoeneberg
cd859a59f2
Fixed #1591 (Patch to increase --showtime resolution)
2010-04-12 19:41:02 +02:00
Reijo Tomperi
9a4cbe0540
Changed CppCheck::parseFromArgs() to return boolean value and reportOut() in case of error.
...
It used to throw exception and return error message with the exception.
2010-04-11 22:53:21 +03:00
Daniel Marjamäki
96ba41b009
Cppcheck Help: Removed information about --auto-dealloc because it is not relevant at the moment.
2010-04-10 15:05:59 +02:00
Daniel Marjamäki
2d41e31cdd
Cppcheck: Deprecated the command line options -a, --all and --enable=possibleError
2010-04-10 14:54:49 +02:00
Martin Ettl
f6a526c8c8
reduced -Wshadow warnings from gcc-4.4
2010-04-08 22:56:34 +02:00
Reijo Tomperi
6db663f6de
Fix #1322 (Add cppcheckError and unusedFunction to --errorlist, give out internal errors in xml)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/1322
2010-04-04 23:55:28 +03:00
Reijo Tomperi
be598757a1
Fix segmentation fault when calling with --errorlist and add a testcase for it.
2010-04-03 22:53:06 +03:00
Daniel Marjamäki
0cad22314e
Reverted 'astyle fix'. Those changes are not in sync with my astyle configuration/setup.
2010-04-02 07:30:58 +02:00
Martin Ettl
193aa7d1d3
astyle fix
2010-04-02 02:21:53 +02:00
Kimmo Varis
d1bbcf1734
Implement Win32 FileLister as separate class.
...
Improve the system used to have separate versions of code of FileLister for
Win32 and Linux. New idea is to have Base FileLister class implementing
common code and then derived classes for Win32 and Linux specific code.
FileLister is not anymore a static class. Instead we use singleton of
derived class.
2010-03-11 21:58:59 +02:00
Daniel Marjamäki
0f43ce4743
updated version to 1.42
2010-03-09 19:05:28 +01:00
Daniel Marjamäki
071aefbb58
1.41: Set version in files
2010-03-07 16:25:37 +01:00
Kimmo Varis
d064d38d35
Fix comment.
2010-02-26 13:21:27 +02:00
Daniel Marjamäki
ebf36c1150
Fixed #824 (Exit code of cppcheck)
2010-02-06 19:47:08 +01:00
Daniel Marjamäki
15b4abd6d3
killerbot: Fixed #1314 (specify the files to check in 1 input file)
2010-01-27 21:43:01 +01:00
Reijo Tomperi
7817d5b142
Fix #1279 (Change error message: Invalid number of character ({). Can't process file.)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/1279
2010-01-23 23:18:11 +02:00
Daniel Marjamäki
53d036fadf
Added Cppcheck::terminate function that will terminate the checking ASAP
2010-01-18 20:23:50 +01:00
Daniel Marjamäki
5595a17e41
Updated version to 1.40
2010-01-17 13:52:28 +01:00
Daniel Marjamäki
0a8ca1f160
Fixed #1271 (SIGSEGV on malformed source (macro stub + fundef))
2010-01-16 13:56:57 +01:00
Daniel Marjamäki
f797794601
fixed cppcheck warning
2009-12-31 13:34:43 +01:00
Daniel Marjamäki
6fd74dce47
exitcode suppressions. Partly fixes #1113
2009-12-28 11:26:52 +01:00
Daniel Marjamäki
1a25e40180
Robert Reif: fix cppcheck post increment warning
2009-12-25 15:19:36 +01:00
Daniel Marjamäki
4419f4a342
Robert Reif: fix a style warning
2009-12-23 12:16:02 +01:00
Daniel Marjamäki
bbc63b6b5b
twistedwave: Fixed #1055 (Support for inline suppressions)
2009-12-06 19:38:53 +01:00
Daniel Marjamäki
d94bc4c89f
version 1.39
2009-12-06 13:34:51 +01:00
Daniel Marjamäki
42093911d6
updated help about --enable
2009-12-05 20:08:52 +01:00