void main()
{ int x = 1;
foo(x = 2); // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} int y = x = 1; // no warning expected
(void)y; int z = foo(x = 1); // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
(void)z; switch (x = 1)
{ // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
}
std::map<int, int> map1;
map1[x = 1] = 1; // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
}
}
void main()
{
MyInt x = 1;
foo(x = 2); // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
MyInt y = x = 1; // no warning expected
(void)y;
MyInt z = foo(x = 1); // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
(void)z;
z = x; // no warning expected
std::map<MyInt, int> map1;
map1[x = 1] = 1; // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
}
}
namespace test3
{ void main(OUString sUserAutoCorrFile, OUString sExt)
{
OUString sRet; if (sUserAutoCorrFile == "xxx")
sRet = sUserAutoCorrFile; // no warning expected if (sUserAutoCorrFile == "yyy")
(sRet = sUserAutoCorrFile)
+= sExt; // expected-error@-1 {{buried assignment, rather put on own line [loplugin:buriedassign]}}
}
}
namespace test5
{ void main(OUString sUserAutoCorrFile, int* p2)
{
OUString sRet; int* p1; if (sUserAutoCorrFile == "yyy" && (p1 = p2))
sRet = sUserAutoCorrFile; if (sUserAutoCorrFile == "yyy" && nullptr != (p1 = p2))
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if (nullptr != (p1 = p2))
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if ((p1 = p2) != nullptr)
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if ((p1 = p2))
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if ((p1 = p2) && sUserAutoCorrFile == "yyy")
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if ((p1 = p2) || sUserAutoCorrFile == "yyy")
sRet = sUserAutoCorrFile; // expected-error@+1 {{buried assignment, rather put on own line [loplugin:buriedassign]}} if ((p1 = p2) && sUserAutoCorrFile == "yyy")
sRet = sUserAutoCorrFile;
(void)sRet;
}
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.