diff --git a/checkother.cpp b/checkother.cpp index 06c350702..48df6c0fc 100644 --- a/checkother.cpp +++ b/checkother.cpp @@ -809,7 +809,7 @@ static bool isOp(const Token *tok) tok->str() == ">" || tok->str() == ">=" || tok->str() == "<<" || - Token::Match(tok, "[+-*/&|,[])]"))); + Token::Match(tok, "[+-*/%&|,[])]"))); } void CheckOther::functionVariableUsage() diff --git a/testunusedvar.cpp b/testunusedvar.cpp index 9a4eb47b0..b58bf16e8 100644 --- a/testunusedvar.cpp +++ b/testunusedvar.cpp @@ -63,6 +63,8 @@ private: TEST_CASE( localvar4 ); TEST_CASE( localvar5 ); TEST_CASE( localvar6 ); + + TEST_CASE( localvarMod ); // Usage with modulo } void structmember1() @@ -198,6 +200,17 @@ private: ASSERT_EQUALS( std::string(""), errout.str() ); } + void localvarMod() + { + functionVariableUsage( "int main()\n" + "{\n" + " int tmp = 10;\n" + " return 123 % tmp;\n" + "}\n" ); + ASSERT_EQUALS( std::string(""), errout.str() ); + } + + }; REGISTER_TEST( TestUnusedVar )