Compiler Error C3018
Visual Studio 2015
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at Compiler Error C3018.
var1' : OpenMP 'for' test or increment must use index variable 'var2'
A for loop in an OpenMP statement must use the same variable for its test and increment as it uses for its index.
The following sample generates C3018:
// C3018.cpp
// compile with: /openmp
int main()
{
int i = 0, j = 5;
#pragma omp parallel
{
#pragma omp for
for (i = 0; j < 10; ++i) // C3018
// try the the following line instead
// for (i = 0; i < 10; ++i)
j *= 2;
#pragma omp for
for (i = 0; i < 10; j = j + i) // C3018
// try the the following line instead
// for (i = 0; i < 10; i = j + i)
j *= 2;
}
}
Show: