File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -281,7 +281,7 @@ static const Token * isFunctionCall(const Token * nameToken)
281281 nameToken = nameToken->link ()->next ();
282282 }
283283 // check for '('
284- if (nameToken && nameToken->link () && nameToken->str () == " (" ) {
284+ if (nameToken && nameToken->link () && !nameToken-> isCast () && nameToken->str () == " (" ) {
285285 // returning opening parenthesis pointer
286286 return nameToken;
287287 }
Original file line number Diff line number Diff line change @@ -128,6 +128,7 @@ class TestLeakAutoVar : public TestFixture {
128128 TEST_CASE (doublefree12); // #10502
129129 TEST_CASE (doublefree13); // #11008
130130 TEST_CASE (doublefree14); // #9708
131+ TEST_CASE (doublefree15);
131132
132133 // exit
133134 TEST_CASE (exit1);
@@ -1528,6 +1529,13 @@ class TestLeakAutoVar : public TestFixture {
15281529 ASSERT_EQUALS (" " , errout.str ());
15291530 }
15301531
1532+ void doublefree15 () { // #11966
1533+ check (" void f(FILE* fp) {\n "
1534+ " static_cast<void>(fclose(fp));\n "
1535+ " }" , true );
1536+ ASSERT_EQUALS (" " , errout.str ());
1537+ }
1538+
15311539 void exit1 () {
15321540 check (" void f() {\n "
15331541 " char *p = malloc(10);\n "
You can’t perform that action at this time.
0 commit comments