Share via


Advertencia del compilador (nivel 4) C4937

"text1" y "text2" no se pueden distinguir como argumentos para "directive"

Debido a la forma en que el compilador procesa argumentos para directivas, no es posible distinguir los nombres que tienen un significado para el compilador como, por ejemplo, palabras clave con varias representaciones de texto (en formato de subrayado simple y doble).

Algunos ejemplos de estas cadenas son __cdecl y __forceinline. Tenga en cuenta que con /Za solo se habilita el formato de subrayado doble.

El ejemplo siguiente genera la advertencia C4937:

// C4937.cpp
// compile with: /openmp /W4
#include "omp.h"
int main() {
   #pragma omp critical ( __leave )   // C4937
   ;

   // OK
   #pragma omp critical ( leave )
   ;
}