Error del compilador C3031
'var': la variable de la cláusula 'reduction' debe tener un tipo aritmético escalar
Se pasó una variable de tipo incorrecto a una cláusula reduction.
El ejemplo siguiente genera la advertencia C3031:
// C3031.cpp
// compile with: /openmp /link vcomps.lib
#include <stdio.h>
#include "omp.h"
typedef struct {
int n;
} Incomplete;
extern Incomplete inc;
int i = 9;
int main() {
#pragma omp parallel reduction(+: inc) // C3031
;
#pragma omp parallel reduction(+: i) // OK
;
}