Avviso del compilatore (livello 1 e livello 2) C4091

'keyword': ignorato a sinistra di 'type' quando non viene dichiarata alcuna variabile

Il compilatore ha rilevato una situazione in cui l'utente probabilmente intendeva dichiarare una variabile, ma il compilatore non è riuscito a dichiarare la variabile.

Esempi

Un __declspec attributo all'inizio di una dichiarazione di tipo definito dall'utente si applica alla variabile di tale tipo. C4091 indica che non viene dichiarata alcuna variabile. L'esempio seguente genera l'errore 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 {};

Se un identificatore è un typedef, non può essere anche un nome di variabile. L'esempio seguente genera l'errore C4091.

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