Aviso do Compilador (nível 1) C4401
'bitfield' : membro é um campo de bits
O código do assembly embutido tenta acessar um membro do campo de bits. O assembly embutido não pode acessar membros de campo de bits, portanto, o último limite de empacotamento antes do membro de campo de bits é usado.
Para evitar esse aviso, converta o campo de bits em um tipo apropriado antes de fazer a referência no código do assembly embutido. O seguinte exemplo gera C4401:
// C4401.cpp
// compile with: /W1
// processor: x86
typedef struct bitfield {
signed bit : 1;
} mybitfield;
int main() {
mybitfield bf;
bf.bit = 0;
__asm {
mov bf.bit,0; // C4401
}
/* use the following __asm block to resolve the warning
int i = (int)bf.bit;
__asm {
mov i,0;
}
*/
}