diff --git a/CheckClass.cpp b/CheckClass.cpp index 5bb5de33f..dd5db8ffd 100644 --- a/CheckClass.cpp +++ b/CheckClass.cpp @@ -388,6 +388,7 @@ void CheckClass::CheckConstructors() var->init = false; constructor_token = FindClassFunction( constructor_token->next, classname, classname, indentlevel ); + callstack.clear(); ClassChecking_VarList_Initialize(tok1, constructor_token, varlist, classname, callstack); } diff --git a/testconstructors.cpp b/testconstructors.cpp index 03629cb6b..826b770a2 100644 --- a/testconstructors.cpp +++ b/testconstructors.cpp @@ -64,7 +64,7 @@ private: TEST_CASE( initvar_operator_eq ); // BUG 2190376 TEST_CASE( initvar_same_classname ); // BUG 2208157 TEST_CASE( initvar_chained_assign ); // BUG 2270433 - // TODO TEST_CASE( initvar_2constructors ); // BUG 2270353 + TEST_CASE( initvar_2constructors ); // BUG 2270353 }