>
>
>
V1021. The variable is assigned the sam…


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)
  ....
}

This diagnostic is classified as: