diff --git a/lib/checkclass.cpp b/lib/checkclass.cpp index bffddc55e..3eb51925c 100644 --- a/lib/checkclass.cpp +++ b/lib/checkclass.cpp @@ -1515,8 +1515,6 @@ void CheckClass::operatorEq() { if (it->token->strAt(-2) == "void") operatorEqReturnError(it->token->tokAt(-2)); - else if (Token::Match(it->token->tokAt(-4), "const %type% &")) - operatorEqReturnConstError(it->token->tokAt(-4)); } } } @@ -2261,11 +2259,6 @@ void CheckClass::operatorEqReturnError(const Token *tok) reportError(tok, Severity::style, "operatorEq", "'operator=' should return something"); } -void CheckClass::operatorEqReturnConstError(const Token *tok) -{ - reportError(tok, Severity::style, "operatorEqReturnConst", "'operator=' should not return a const reference"); -} - void CheckClass::virtualDestructorError(const Token *tok, const std::string &Base, const std::string &Derived) { reportError(tok, Severity::error, "virtualDestructor", "Class " + Base + " which is inherited by class " + Derived + " does not have a virtual destructor"); diff --git a/lib/checkclass.h b/lib/checkclass.h index 5988b66e1..eb86322a9 100644 --- a/lib/checkclass.h +++ b/lib/checkclass.h @@ -320,7 +320,6 @@ private: void memsetClassError(const Token *tok, const std::string &memfunc); void memsetStructError(const Token *tok, const std::string &memfunc, const std::string &classname); void operatorEqReturnError(const Token *tok); - void operatorEqReturnConstError(const Token *tok); void virtualDestructorError(const Token *tok, const std::string &Base, const std::string &Derived); void thisSubtractionError(const Token *tok); void operatorEqRetRefThisError(const Token *tok); @@ -338,7 +337,6 @@ private: memsetClassError(0, "memfunc"); memsetStructError(0, "memfunc", "classname"); operatorEqReturnError(0); - operatorEqReturnConstError(0); //virtualDestructorError(0, "Base", "Derived"); thisSubtractionError(0); operatorEqRetRefThisError(0); diff --git a/test/testclass.cpp b/test/testclass.cpp index 0a47500cf..0e6c06e88 100644 --- a/test/testclass.cpp +++ b/test/testclass.cpp @@ -88,7 +88,6 @@ private: TEST_CASE(noConstructor5); TEST_CASE(operatorEq1); - TEST_CASE(operatorEq2); TEST_CASE(operatorEqRetRefThis1); TEST_CASE(operatorEqRetRefThis2); // ticket #1323 TEST_CASE(operatorEqRetRefThis3); // ticket #1405 @@ -232,16 +231,6 @@ private: ASSERT_EQUALS("[test.cpp:3]: (style) 'operator=' should return something\n", errout.str()); } - void operatorEq2() - { - checkOpertorEq("class A\n" - "{\n" - "public:\n" - " const A& operator=(const A&);\n" - "};\n"); - ASSERT_EQUALS("[test.cpp:4]: (style) 'operator=' should not return a const reference\n", errout.str()); - } - // Check that operator Equal returns reference to this void checkOpertorEqRetRefThis(const char code[]) {