Compartir a través de


Error del compilador C3012

"intrinsic": función intrínseca no permitida directamente dentro de una región paralela

Una función intrínseca del compilador no se permite en una región omp parallel . Para corregir este problema, saque los intrínsecos de la región o reemplácelos por equivalentes no intrínsecos.

Ejemplo

El ejemplo siguiente genera el error C3012 y muestra cómo corregirlo:

// C3012.cpp
// compile with: /openmp
#ifdef __cplusplus
extern "C" {
#endif
void* _ReturnAddress();
#ifdef __cplusplus
}
#endif

int main()
{
   #pragma omp parallel
   {
      _ReturnAddress();   // C3012
   }
   _ReturnAddress();      // OK
}