Compartir a través de


Advertencia del compilador (niveles 1 y 2) C4091

'keyword': omitido a la izquierda de 'type' cuando no hay ninguna variable declarada

El compilador detectó una situación en la que el usuario probablemente pretendía declarar una variable, pero el compilador no pudo declarar la variable.

Ejemplos

Un atributo __declspec al comienzo de una declaración de tipos definidos por el usuario se aplica a la variable de ese tipo. La advertencia C4091 indica que no se declara ninguna variable. El ejemplo siguiente genera la advertencia C4091.

// C4091.cpp
// compile with: /W1 /c
__declspec(dllimport) class X {}; // C4091

// __declspec attribute applies to varX
__declspec(dllimport) class X2 {} varX;

// __declspec attribute after the class or struct keyword
// applies to user defined type
class __declspec(dllimport) X3 {};

Si un identificador es typedef, no puede ser también un nombre de variable. El ejemplo siguiente genera la advertencia C4091.

// C4091_b.cpp
// compile with: /c /W1 /WX
#define LIST 4
typedef struct _LIST {} LIST;   // C4091