Partilhar via


Erro do compilador C3012

«Intrínseca» : função intrínseca não autorizada diretamente numa região paralela

Observações

Uma função intrínseca do compilador não é permitida em uma omp parallel região. Para corrigir esse problema, mova intrínsecos para fora da região ou substitua-os por equivalentes não intrínsecos.

Example

O exemplo a seguir gera C3012 e mostra uma maneira de corrigi-lo:

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

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