Error del compilador C3039
'var': la variable de índice de la instrucción 'for' de OpenMP no puede ser una variable de reducción
Una variable de índice es implícitamente privada, por lo que no se puede usar la variable en una cláusula reduction en la directiva parallel envolvente.
Ejemplo
El ejemplo siguiente genera la advertencia C3039:
// C3039.cpp
// compile with: /openmp /c
int g_i;
int main() {
int i;
#pragma omp parallel reduction(+: i)
{
#pragma omp for
for (i = 0; i < 10; ++i) // C3039
g_i += i;
}
}