Udostępnij za pomocą


Błąd kompilatora C3059

"var" : symbol "threadprivate" nie może być używany w klauzuli "klauzula"

Uwagi

Symbol threadprivate został użyty w klauzuli .

Example

Poniższy przykład generuje kod C3059:

// C3059.cpp
// compile with: /openmp
#include "omp.h"
int x, y;
#pragma omp threadprivate(x, y)

int main() {
   #pragma omp parallel private(x, y)   // C3059
   {
      x = y;
   }
}

Możliwe rozwiązanie:

// C3059b.cpp
// compile with: /openmp
#include "omp.h"
int x = 0, y = 0;

int main() {
   #pragma omp parallel firstprivate(y) private(x)
   {
      x = y;
   }
}