V1021. The variable is assigned the same value on several loop iterations.


The analyzer has detected a loop with a suspicious assignment operation, which could make that loop infinite. Consider the following example:

static void f(Node *n)
{
  for (Node *it = n; it != nullptr; it = n->next)
  ....
}

This is a typical construct used to traverse lists. When 'n' is not modified, this loop will either never iterate or will iterate infinitely.

Fixed code:

static void f(Node *n)
{
  for (Node *it = n; it != nullptr; it = it->next)
  ....
}

Bugs Found

Checked Projects
355
Collected Errors
13 303