Compartilhar via


Erro do compilador C3047

O bloco estruturado em uma região de OpenMP 'sections' precisa ser precedido por '#pragma omp section'

Qualquer código em um bloco de código introduzido por uma diretiva sections precisa estar em um bloco de código introduzido por uma diretiva section.

Esse erro ficou obsoleto no Visual Studio 2022 e em versões posteriores.

O seguinte exemplo gera o erro C3047:

// C3047.cpp
// compile with: /openmp /c
#include "omp.h"

int main() {
   int n2 = 2, n3 = 3;

   #pragma omp parallel
   {
      ++n2;

      #pragma omp sections
      {

         #pragma omp section
         {
            ++n3;
         }

         ++n2;   // C3047 not enclosed in #pragma omp section
      }
   }
}