Erreur du compilateur C3036
'opérateur' : jeton d’opérateur non valide dans la clause 'reduction' OpenMP
Une clause reduction n’a pas été spécifiée correctement.
L’exemple suivant génère l’erreur C3036 :
// C3036.cpp
// compile with: /openmp
static float a[1000], b[1000], c[1000];
void test1(int first, int last) {
static float dp = 0.0f;
#pragma omp for nowait reduction(.:dp) // C3036
// try the following line instead
// #pragma omp for nowait reduction(+: dp)
for (int i = first ; i <= last ; ++i)
dp += a[i] * b[i];
}