Skip to content

Commit 71281e5

Browse files
committed
Move check
1 parent 43ab4d4 commit 71281e5

1 file changed

Lines changed: 15 additions & 12 deletions

File tree

lib/tokenize.cpp

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5040,19 +5040,22 @@ void Tokenizer::setVarIdPass1()
50405040
}
50415041
}
50425042

5043-
bool isFuncPointerArg = false;
5044-
const Token *fpTok = tok;
5045-
while (Token::Match(fpTok, "%name%|&|*|,"))
5046-
fpTok = fpTok->previous();
5047-
if (fpTok && fpTok->str() == "(" && (fpTok = fpTok->previous()) && (fpTok = fpTok->link()))
5048-
isFuncPointerArg = Token::Match(fpTok->previous(), "%type% ( *");
5049-
5050-
if (tok->varId() == 0 && !isFuncPointerArg && (!scopeStack.top().isEnum || !(Token::Match(tok->previous(), "{|,") && Token::Match(tok->next(), ",|=|}"))) &&
5043+
if (tok->varId() == 0 && (!scopeStack.top().isEnum || !(Token::Match(tok->previous(), "{|,") && Token::Match(tok->next(), ",|=|}"))) &&
50515044
!Token::simpleMatch(tok->next(), ": ;") && !(tok->tokAt(-1) && Token::Match(tok->tokAt(-2), "{|, ."))) {
5052-
const auto it = variableMap.map(globalNamespace).find(tok->str());
5053-
if (it != variableMap.map(globalNamespace).end()) {
5054-
tok->varId(it->second);
5055-
setVarIdStructMembers(tok, structMembers, variableMap.getVarId());
5045+
5046+
bool isFuncPointerArg = false;
5047+
const Token *fpTok = tok;
5048+
while (Token::Match(fpTok, "%name%|&|*|,"))
5049+
fpTok = fpTok->previous();
5050+
if (fpTok && fpTok->str() == "(" && (fpTok = fpTok->previous()) && (fpTok = fpTok->link()))
5051+
isFuncPointerArg = Token::Match(fpTok->previous(), "%type% ( *");
5052+
5053+
if (!isFuncPointerArg) {
5054+
const auto it = variableMap.map(globalNamespace).find(tok->str());
5055+
if (it != variableMap.map(globalNamespace).end()) {
5056+
tok->varId(it->second);
5057+
setVarIdStructMembers(tok, structMembers, variableMap.getVarId());
5058+
}
50565059
}
50575060
}
50585061
} else if (Token::Match(tok, "::|. %name%") && Token::Match(tok->previous(), ")|]|>|%name%")) {

0 commit comments

Comments
 (0)