Compartir a través de


Error del compilador C3047

El bloque estructurado en la región 'sections' de OpenMP debe ir precedido de '#pragma omp section'

Cualquier código en un bloque de código introducido por una directiva sections debe estar en un bloque de código introducido por una directiva section .

Este error está obsoleto en Visual Studio 2022 y versiones posteriores.

El ejemplo siguiente genera la advertencia 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
      }
   }
}