Fixed #2610 (segmentation fault of cppcheck ( if () < {} ))
This commit is contained in:
parent
db7ce1c13c
commit
9bf6e67898
|
@ -4663,6 +4663,8 @@ void Tokenizer::simplifyIfAddBraces()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
tempToken = tempToken->link();
|
tempToken = tempToken->link();
|
||||||
|
if (!tempToken || !tempToken->next())
|
||||||
|
break;
|
||||||
if (tempToken->next()->isName() && tempToken->next()->str() != "else")
|
if (tempToken->next()->isName() && tempToken->next()->str() != "else")
|
||||||
break;
|
break;
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -79,6 +79,7 @@ private:
|
||||||
TEST_CASE(ifAddBraces11);
|
TEST_CASE(ifAddBraces11);
|
||||||
TEST_CASE(ifAddBraces12);
|
TEST_CASE(ifAddBraces12);
|
||||||
TEST_CASE(ifAddBraces13);
|
TEST_CASE(ifAddBraces13);
|
||||||
|
TEST_CASE(ifAddBraces14); // #2610 - segfault: if()<{}
|
||||||
|
|
||||||
TEST_CASE(whileAddBraces);
|
TEST_CASE(whileAddBraces);
|
||||||
TEST_CASE(doWhileAddBraces);
|
TEST_CASE(doWhileAddBraces);
|
||||||
|
@ -850,6 +851,13 @@ private:
|
||||||
ASSERT_EQUALS(expected2, tokenizeAndStringify(code2, true));
|
ASSERT_EQUALS(expected2, tokenizeAndStringify(code2, true));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ifAddBraces14()
|
||||||
|
{
|
||||||
|
// ticket #2610 (segfault)
|
||||||
|
tokenizeAndStringify("if()<{}", false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void whileAddBraces()
|
void whileAddBraces()
|
||||||
{
|
{
|
||||||
const char code[] = ";while(a);";
|
const char code[] = ";while(a);";
|
||||||
|
|
Loading…
Reference in New Issue