C4254 de aviso (nível 4) do compilador
'operador' : conversão de 'Type '1. para 'Tipo2' possível perda de dados
Um campo de bit maior foi atribuído a um campo de bits menor. Pode haver uma perda de dados.
Este aviso está desativado por padrão. Consulte Compilador avisos que está desativado por padrão para obter mais informações.
O exemplo a seguir gera C4254:
// C4254.cpp
// compile with: /W4
#pragma warning(default: 4254)
struct X {
int a : 20;
int b : 12;
};
int main() {
X *x = new X();
x->b = 10;
x->a = 4;
x->a = x->b; // OK
x->b = x->a; // C4254
};