Advertencia del compilador (nivel 4) C4254
'operador' : conversión de 'tipo1' a 'tipo2', posible pérdida de datos
Se asignó un campo de bits a otro campo de bits de menor tamaño. Puede haberse producido pérdida de datos.
De forma predeterminada, esta advertencia está desactivada. Para obtener más información, vea Advertencias del compilador desactivadas de forma predeterminada.
El código siguiente genera el error 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
};