fix Tokenizer::simplifyVarDecl() template assignment
This commit is contained in:
parent
7e3e5d628d
commit
cbc81e20f5
|
@ -5795,12 +5795,12 @@ void Tokenizer::simplifyVarDecl()
|
||||||
tok2 = tok2->tokAt(2);
|
tok2 = tok2->tokAt(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tok2->str() == "*" || tok2->str() == "&")
|
if (tok2->str() == "*")
|
||||||
{
|
{
|
||||||
tok2 = tok2->next();
|
tok2 = tok2->next();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Token::Match(tok2, "%var% ,"))
|
if (Token::Match(tok2, "%var% ,|="))
|
||||||
{
|
{
|
||||||
tok2 = tok2->next(); // The ',' token
|
tok2 = tok2->next(); // The ',' token
|
||||||
typelen--;
|
typelen--;
|
||||||
|
@ -5868,7 +5868,7 @@ void Tokenizer::simplifyVarDecl()
|
||||||
{
|
{
|
||||||
// "type var =" => "type var; var ="
|
// "type var =" => "type var; var ="
|
||||||
Token *VarTok = type0->tokAt((int)typelen);
|
Token *VarTok = type0->tokAt((int)typelen);
|
||||||
while (Token::Match(VarTok, "*|const"))
|
while (Token::Match(VarTok, "*|&|const"))
|
||||||
VarTok = VarTok->next();
|
VarTok = VarTok->next();
|
||||||
insertTokens(eq, VarTok, 2);
|
insertTokens(eq, VarTok, 2);
|
||||||
eq->str(";");
|
eq->str(";");
|
||||||
|
|
|
@ -3015,7 +3015,7 @@ private:
|
||||||
"2: {\n"
|
"2: {\n"
|
||||||
"3: std :: vector < int > b@1 ;\n"
|
"3: std :: vector < int > b@1 ;\n"
|
||||||
"4: std :: vector < int > & a@2 = b@1 ;\n"
|
"4: std :: vector < int > & a@2 = b@1 ;\n"
|
||||||
"5: std :: vector < int > * c@3 = & b@1 ;\n"
|
"5: std :: vector < int > * c@3 ; c@3 = & b@1 ;\n"
|
||||||
"6: }\n");
|
"6: }\n");
|
||||||
|
|
||||||
ASSERT_EQUALS(expected, actual);
|
ASSERT_EQUALS(expected, actual);
|
||||||
|
@ -4118,8 +4118,7 @@ private:
|
||||||
ASSERT_EQUALS("{ std :: string x ; x = \"abc\" ; }", tokenizeAndStringify(code1));
|
ASSERT_EQUALS("{ std :: string x ; x = \"abc\" ; }", tokenizeAndStringify(code1));
|
||||||
|
|
||||||
const char code2[] = "{ std::vector<int> x = y; }";
|
const char code2[] = "{ std::vector<int> x = y; }";
|
||||||
TODO_ASSERT_EQUALS("{ std :: vector < int > x ; x = y ; }",
|
ASSERT_EQUALS("{ std :: vector < int > x ; x = y ; }", tokenizeAndStringify(code2));
|
||||||
"{ std :: vector < int > x = y ; }", tokenizeAndStringify(code2));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void vardecl_template()
|
void vardecl_template()
|
||||||
|
|
Loading…
Reference in New Issue