Avviso del compilatore (livello 1) C4912
'attribute': l'attributo produce un comportamento indefinito su un tipo annidato definito dall'utente
Gli attributi che si applicano ai tipi annidati definiti dall'utente (un tipo definito dall'utente typedef, union o struct) possono essere ignorati.
Il codice seguente mostra come viene generato questo avviso:
// C4912.cpp
// compile with: /W1
#include <windows.h>
[emitidl, module(name="xx")];
[object, uuid("00000000-0000-0000-0000-000000000002")]
__interface IMy
{
};
[coclass, default(IMy), appobject, uuid("00000000-0000-0000-0000-000000000001")]
class CMy : public IMy
{
[export, v1_enum] typedef enum myEnum { k3_1 = 1, k3_2 = 2 } myEnumv; // C4912
};
int main()
{
}