diff --git a/lib/forwardanalyzer.cpp b/lib/forwardanalyzer.cpp index fd9d68a07..8a3bc6105 100644 --- a/lib/forwardanalyzer.cpp +++ b/lib/forwardanalyzer.cpp @@ -575,7 +575,8 @@ struct ForwardTraversal { tok = nextAfterAstRightmostLeaf(assignTok); if (!tok) return Break(); - } else if (Token::simpleMatch(tok, ") {") && Token::Match(tok->link()->previous(), "for|while (")) { + } else if (Token::simpleMatch(tok, ") {") && Token::Match(tok->link()->previous(), "for|while (") && + !Token::simpleMatch(tok->link()->astOperand2(), ":")) { // In the middle of a loop structure so bail return Break(Analyzer::Terminate::Bail); } else if (tok->str() == ";" && tok->astParent()) {