# V3015. It is likely that a wrong variable is being compared inside the 'for' operator. Consider reviewing 'X'.

The analyzer detected a potential error: a variable referring to an outer loop is used in the condition of the 'for' operator.

This is the simplest form of this error:

    for (int i = 0; i < 5; i++)
      for (int j = 0; i < 5; j++)
        A[i][j] = 0;

It is the comparison 'i < 5' that is performed instead of 'j < 5' in the inner loop. Such an error might be not so visible in a real application. This is the correct code:

    for (int i = 0; i < 5; i++)
      for (int j = 0; j < 5; j++)
        A[i][j] = 0;

This diagnostic is classified as:

CWE-691

You can look at examples of errors detected by the V3015 diagnostic.