cppcheck/test
Rikard Falkeborn abea580b78 Fix FP memory leak with unknown function call in condition (#2012)
* Fix FP memory leak with unknown function call in condition

This was introduced in 8513fb81d2 when
fixing memory leaks for global variables allocated in condition. The
refactored code had an inconsistency where c and c++ code behaved
slightly differently when `var` is NULL. This seemed to not have an
impact as the code was written prior to 8513fb81d2,
but when the same code was used for conditions, FPs were introduced.

The introduced FPs were memleak warnings when there should have been an
information message about missing configurations for code like

	void f() {
		char *p = malloc(10);
		if (set_data(p)) {}
	}

Fix this by always returning true if varTok->Variable() is NULL for
both c and c++ code.

* Improve function name
2019-07-18 15:23:19 +02:00
..
cfg Configure xrealloc and adjust gnu memory functions (#2003) 2019-07-16 08:12:21 +02:00
cli appveyor: check that cmake builds work also. run test/cli tests. 2019-07-09 07:46:53 +02:00
synthetic Improve Python code 2017-06-05 13:23:00 +02:00
testsuites Typos found by running "codespell" (#1804) 2019-04-23 13:26:48 +02:00
CMakeLists.txt appveyor: check that cmake builds work also. run test/cli tests. 2019-07-09 07:46:53 +02:00
options.cpp Update Copyright 2019-06-29 07:49:14 +02:00
options.h Update Copyright 2019-06-29 07:49:14 +02:00
redirect.h Updated copyright year 2018-01-14 15:37:52 +01:00
test.cxx
test64bit.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testassert.cpp Moved CheckAssert::assertWithSideEffects to normal checking 2019-03-09 16:50:50 +01:00
testastutils.cpp Adjust more test results for invalid code 2019-04-19 20:53:07 +02:00
testautovariables.cpp Fix issue 3695: Handle class pointers 2019-07-07 10:16:19 +02:00
testbool.cpp Remove debug printout (#1933) 2019-06-28 22:08:32 +02:00
testboost.cpp CheckBoost: Use 'normal' checking 2019-03-09 20:00:31 +01:00
testbufferoverrun.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
testcharvar.cpp Remove test case, ValueFlow will truncate and sign-extend values 2019-05-01 19:33:47 +02:00
testclass.cpp Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
testcmdlineparser.cpp Fix compiler errors. After removing the -std=posix. 2019-04-12 10:41:53 +02:00
testcondition.cpp Fixed #7464 (warn about opposite if and else-if conditions) 2019-06-30 23:26:49 +02:00
testconstructors.cpp Revert "Remove bailout. It hides lots of warnings for real code to avoid FP in unused templates." 2019-06-19 22:29:00 +02:00
testcppcheck.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testerrorlogger.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testexceptionsafety.cpp Use 'normal' checking instead of 'simplified' 2019-03-16 07:19:48 +01:00
testfilelister.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testfiles.pri Fixed #8960 ("(debug) Unknown type 'x'." with alias in template class alias) (#1643) 2019-02-05 08:52:23 +01:00
testfunctions.cpp Fix false positive with ignoredReturnValue with std::move (#1809) 2019-04-26 12:22:31 +02:00
testgarbage.cpp regression test for daca codeblocks crash (#1974) 2019-07-10 07:16:16 +02:00
testimportproject.cpp astyle formatting 2019-04-16 19:07:44 +02:00
testincompletestatement.cpp astyle formatting 2019-05-21 10:43:33 +02:00
testinternal.cpp CheckInternal: Extend redundant null pointer check before Token::Match() (#1789) 2019-04-06 07:44:44 +02:00
testio.cpp Fix #8992: Add originalTypeToken to auto (#1701) 2019-02-27 06:44:31 +01:00
testleakautovar.cpp Fix FP memory leak with unknown function call in condition (#2012) 2019-07-18 15:23:19 +02:00
testlibrary.cpp Modernize: Use enum class for Library::Action and Library::Yield 2019-07-17 11:39:30 +02:00
testmathlib.cpp MathLib: Added robustness tests for 'MathLib::divide()'. 2019-05-25 23:06:50 +02:00
testmemleak.cpp Fix #6115 (Add support to realloc to cfg files) (#1953) 2019-07-05 12:44:52 +02:00
testnullpointer.cpp Revert 'Cleaning up unsimplified templates'. This fix caused problems. 2019-05-16 21:11:04 +02:00
testoptions.cpp Allow multiple test case arguments to testrunner (#1755) 2019-03-26 20:28:40 +01:00
testother.cpp Detect shadowed arguments 2019-07-17 17:08:42 +02:00
testpath.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testpathmatch.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testplatform.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testpostfixoperator.cpp Fixed #9042 (Another `using BOOL` type breach) (#1765) 2019-03-27 21:42:50 +01:00
testpreprocessor.cpp Removed casts 2019-07-16 09:14:44 +02:00
testrunner.cpp Update Copyright 2019-06-29 07:49:14 +02:00
testrunner.vcxproj Increase Windows stack size to 8M (#1998) 2019-07-15 12:39:58 +02:00
testrunner.vcxproj.filters Updated to Visual Studio 2019 2019-07-06 12:11:19 +02:00
testsamples.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testsimplifytemplate.cpp fix crash in daca gcc-avr from intentional bad instantiation test (#1994) 2019-07-15 12:41:06 +02:00
testsimplifytokens.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
testsimplifytypedef.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
testsimplifyusing.cpp Partial fix for #9191 (simplifyTypedef: Problem when namespace is used) (#1952) 2019-07-06 20:22:13 +02:00
testsizeof.cpp sizeof: write inconclusive warning if calculation in sizeof is done indirectly by macro 2019-02-26 21:06:44 +01:00
teststl.cpp Switch to use lifetime analysis for iterators and pointers to invalid containers 2019-07-18 10:56:44 +02:00
teststring.cpp Overlapping sprintf, improve handling of casts (#1945) 2019-07-05 12:27:39 +02:00
testsuite.cpp Fixed Cppcheck shadowVar warnings 2019-04-30 21:01:18 +02:00
testsuite.h Add help to testrunner (#1704) 2019-03-02 08:06:23 +01:00
testsuppressions.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testsymboldatabase.cpp SymbolDatabase: Better handling of smart pointers 2019-07-09 17:32:19 +02:00
testthreadexecutor.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testtimer.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testtoken.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
testtokenize.cpp Fix syntaxError for struct initialization 2019-07-17 15:21:17 +02:00
testtokenlist.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testtype.cpp Try to clarify signConversion message 2019-07-17 22:41:24 +02:00
testuninitvar.cpp uninitStructMember: Fixed FP shown in daca@home 2019-06-02 20:19:53 +02:00
testunusedfunctions.cpp fixed tests, unused templates are removed by default 2019-05-05 19:40:58 +02:00
testunusedprivfunc.cpp Update copyright year 2019-02-09 07:24:06 +01:00
testunusedvar.cpp Fix false positives in self check: Variable t is assigned a value that is never used. Classes with destructors was not handled properly. 2019-07-14 16:20:45 +02:00
testutils.h Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
testvaarg.cpp Disable all simplified checks 2019-03-16 09:17:50 +01:00
testvalueflow.cpp testrunner: Make a few tests more 'proper' 2019-07-13 07:29:23 +02:00
testvarid.cpp token simplifier: fix namespace, token link and syntax error support for template type aliases (#1863) 2019-06-01 10:52:29 +02:00