cppcheck/test
Oliver Stöneberg aa7629d969
aligned and optimized unique error handling (#5280)
The handling in `CppCheck::reportErr()` and `Executor::hasToLog()` was
slightly different. I hope this can somehow be shared after the executor
reworking.

We were also using a very inappropriate container for the error list
which caused a lot of overhead.

`-D__GNUC__ --debug-warnings --template=daca2 --check-library -j2
../test/testsymboldatabase.cpp`

Clang 15
main process  `284,218,587` -> `175,691,241`
worker process `9,123,697,183` -> `8,951,903,360`
2023-12-17 21:59:06 +01:00
..
cfg Add tests for #8399/#10646/#10833 (#5743) 2023-12-09 00:36:55 +01:00
cli Revert "Fixed #12071 (suppressing critical error, no indication to user that analysis of file fails) (#5771)" (#5775) 2023-12-17 19:13:14 +01:00
CMakeLists.txt test/CMakeLists.txt: updated the test fixture costs (#5565) 2023-10-21 09:15:22 +02:00
fixture.cpp testrunner: make sure that more redirects/outputs are actually being consumed (#5721) 2023-12-06 22:01:00 +01:00
fixture.h testrunner: make sure that more redirects/outputs are actually being consumed (#5721) 2023-12-06 22:01:00 +01:00
helpers.cpp fixed tests by adjusting results for `picojson` update (#5729) 2023-12-05 20:39:26 +01:00
helpers.h aligned and optimized unique error handling (#5280) 2023-12-17 21:59:06 +01:00
main.cpp extracted single job execution into `SingleExecutor` / improved testing / do not unconditionally apply colors to output (#4882) 2023-04-08 18:06:38 +02:00
options.cpp fixed "Redundant dereferencing and tasking address expression" Rider warnings (#5563) 2023-10-16 14:09:03 +02:00
options.h Update Copyrights 2022-08-28 14:22:12 +02:00
precompiled.h cleaned up includes based on `include-what-you-use` (#4599) 2023-03-02 21:50:14 +01:00
redirect.h testrunner: make sure all redirected output is being consumed / some cleanups (#5714) 2023-12-01 20:56:30 +01:00
test64bit.cpp Fix #12159 FP CastAddressToIntegerAtReturn with std::future (#5634) 2023-11-08 13:12:50 +01:00
testanalyzerinformation.cpp fixed some "Variable can be made constexpr" Rider warnings (#5615) 2023-11-03 09:55:44 +01:00
testassert.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testastutils.cpp Fix #12235 performance regression (hang) in 2.13dev (#5715) 2023-12-15 11:01:08 +01:00
testautovariables.cpp Add tests for #8399/#10646/#10833 (#5743) 2023-12-09 00:36:55 +01:00
testbool.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testboost.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testbufferoverrun.cpp fixed some "Variable can be made constexpr" Rider warnings (#5615) 2023-11-03 09:55:44 +01:00
testcharvar.cpp gui/platforms.h: renamed `Platform` to `PlatformData` / Platform: removed unnecessary `cppcheck` namespace (#5545) 2023-10-13 16:02:04 +02:00
testcheck.cpp cleaned up includes based on include-what-you-use (#5532) 2023-10-09 10:07:20 +02:00
testclangimport.cpp Fix #12251 internalError while cppcheck tries to parse Clang AST (#5755) 2023-12-12 20:47:58 +01:00
testclass.cpp Fix #11796 FN memleak with brace init (#5708) 2023-12-01 15:39:16 +01:00
testcmdlineparser.cpp #12263: Constant Error 'missingInclude' (#5769) 2023-12-16 18:38:30 +01:00
testcolor.cpp optimized template string substitutions a bit (#4840) 2023-04-08 22:19:52 +02:00
testcondition.cpp Fix #11741 FP knownConditionTrueFalse minus/negation confuses check (#5766) 2023-12-16 17:03:56 +01:00
testconstructors.cpp Fix #12150 FP uninitialized member array, initialized in range for loop (#5627) 2023-11-06 16:15:47 +01:00
testcppcheck.cpp aligned and optimized unique error handling (#5280) 2023-12-17 21:59:06 +01:00
testerrorlogger.cpp added `xml.h` wrapper for TinyXML2 / cleaned up suppressions of Clang compiler warnings (#5700) 2023-11-26 14:04:35 +01:00
testexceptionsafety.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testfilelister.cpp fixed #12145 - provided order of source files is not preserved (#5625) 2023-11-07 21:21:24 +01:00
testfunctions.cpp fixed some "Variable can be made constexpr" Rider warnings (#5615) 2023-11-03 09:55:44 +01:00
testgarbage.cpp cleaned up includes based on include-what-you-use (#5532) 2023-10-09 10:07:20 +02:00
testimportproject.cpp testrunner: make sure that more redirects/outputs are actually being consumed (#5721) 2023-12-06 22:01:00 +01:00
testincompletestatement.cpp Fix #12072 FN constStatement with enum (#5554) 2023-10-13 21:40:47 +02:00
testinternal.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testio.cpp Fix #12236 FP related to decltype/__typeof__ (#5717) 2023-12-04 11:19:49 +01:00
testleakautovar.cpp Fix #12236 FP related to decltype/__typeof__ (#5717) 2023-12-04 11:19:49 +01:00
testlibrary.cpp added `xml.h` wrapper for TinyXML2 / cleaned up suppressions of Clang compiler warnings (#5700) 2023-11-26 14:04:35 +01:00
testmathlib.cpp fixed some "Variable can be made constexpr" Rider warnings (#5615) 2023-11-03 09:55:44 +01:00
testmemleak.cpp Fix FP leakNoVarFunctionCall (#5309) 2023-08-10 20:55:02 +02:00
testnullpointer.cpp Fix #10572 FP nullPointerRedundantCheck with try/catch / #10701 FP knownConditionTrueFalse with nested try/catch (#5761) 2023-12-13 19:22:54 +01:00
testoptions.cpp cleaned up includes based on include-what-you-use / iwyu.yml: updated to yet another distro to get the latest version and updated the Chaotic-AUR key (#5267) 2023-08-02 10:36:17 +02:00
testother.cpp Fix #9684 New check: find unnecessary copy in range loop (#5738) 2023-12-08 16:58:43 +01:00
testpath.cpp fixed #11926 (Treat MacOS filesystem as case insensitive) / TestPath: added more tests (#5412) 2023-09-08 17:33:37 +02:00
testpathmatch.cpp reduced usage of mutable `Settings` objects in tests (#4798) 2023-05-02 11:48:24 +02:00
testplatform.cpp added `xml.h` wrapper for TinyXML2 / cleaned up suppressions of Clang compiler warnings (#5700) 2023-11-26 14:04:35 +01:00
testpostfixoperator.cpp reduced usage of mutable `Settings` objects in tests (#4798) 2023-05-02 11:48:24 +02:00
testpreprocessor.cpp refs #11928 / refs #10045 / fixes #11794 - generate `limits.h`/`climits` defines from platform (#5414) 2023-10-21 17:21:12 +02:00
testprocessexecutor.cpp aligned and optimized unique error handling (#5280) 2023-12-17 21:59:06 +01:00
testrunner.vcxproj fixed #11910 - removed Visual Studio x86 targets from project files and builds from CI (#5397) 2023-09-04 19:40:13 +02:00
testrunner.vcxproj.filters Fix #11897 (Safety: show what checks are enabled/disabled) (#5378) 2023-08-31 18:28:47 +02:00
testsettings.cpp fixed tests by adjusting results for `picojson` update (#5729) 2023-12-05 20:39:26 +01:00
testsimplifytemplate.cpp Fix #12178 extern "C++" scope generates valueflow (#5654) 2023-11-14 10:02:41 +01:00
testsimplifytokens.cpp Fix #12137 syntaxError with attribute in typedef (#5612) 2023-11-03 09:56:41 +01:00
testsimplifytypedef.cpp Fix #12218: class and union (#5705) 2023-12-01 10:03:43 +01:00
testsimplifyusing.cpp gui/platforms.h: renamed `Platform` to `PlatformData` / Platform: removed unnecessary `cppcheck` namespace (#5545) 2023-10-13 16:02:04 +02:00
testsingleexecutor.cpp aligned and optimized unique error handling (#5280) 2023-12-17 21:59:06 +01:00
testsizeof.cpp cleaned up includes based on include-what-you-use (#5532) 2023-10-09 10:07:20 +02:00
teststl.cpp Fix #12091 (False negative: Uninitialized variable read in subfunction (regression)) (#5739) 2023-12-08 21:54:23 +01:00
teststring.cpp iwyu.yml: made `include-what-you-use` output more verbose / cleaned up includes (#5540) 2023-10-16 12:57:49 +02:00
testsummaries.cpp reduced usage of mutable `Settings` objects in tests (#4798) 2023-05-02 11:48:24 +02:00
testsuppressions.cpp Revert "Fixed #12071 (suppressing critical error, no indication to user that analysis of file fails) (#5771)" (#5775) 2023-12-17 19:13:14 +01:00
testsymboldatabase.cpp Add unit tests for expr ids (#5722) 2023-12-03 22:18:35 +01:00
testthreadexecutor.cpp aligned and optimized unique error handling (#5280) 2023-12-17 21:59:06 +01:00
testtimer.cpp Update copyright year 2023-01-28 10:16:34 +01:00
testtoken.cpp Fix syntaxError with const lambda (refs #11275) (#5571) 2023-10-20 15:32:46 +02:00
testtokenize.cpp Fix #12178 extern "C++" scope generates valueflow (#5654) 2023-11-14 10:02:41 +01:00
testtokenlist.cpp testrunner: make sure all redirected output is being consumed / some cleanups (#5714) 2023-12-01 20:56:30 +01:00
testtokenrange.cpp reduced usage of mutable `Settings` objects in tests (#4798) 2023-05-02 11:48:24 +02:00
testtype.cpp Add tests for #8399/#10646/#10833 (#5743) 2023-12-09 00:36:55 +01:00
testuninitvar.cpp Fix #12091 (False negative: Uninitialized variable read in subfunction (regression)) (#5739) 2023-12-08 21:54:23 +01:00
testunusedfunctions.cpp gui/platforms.h: renamed `Platform` to `PlatformData` / Platform: removed unnecessary `cppcheck` namespace (#5545) 2023-10-13 16:02:04 +02:00
testunusedprivfunc.cpp gui/platforms.h: renamed `Platform` to `PlatformData` / Platform: removed unnecessary `cppcheck` namespace (#5545) 2023-10-13 16:02:04 +02:00
testunusedvar.cpp REOPENED #12260 (false positive: unusedVariable with side effects in member initialization) (#5764) 2023-12-15 11:35:55 +01:00
testutils.cpp cleaned up includes based on include-what-you-use (#5532) 2023-10-09 10:07:20 +02:00
testvaarg.cpp removed unnecessary `Settings` parameter from `Check::runChecks()` and made `Tokenizer` a reference (#5308) 2023-08-18 12:03:50 +02:00
testvalueflow.cpp Fix assertion failure in evalSameCondition (#5770) 2023-12-16 19:27:26 +01:00
testvarid.cpp Fix #12258 Assert failure in setSymbolic() (#5759) 2023-12-12 22:37:33 +01:00