Avertissement du compilateur (niveau 4) C4254
'operator' : conversion de 'type1':'field_bits' en 'type2':'field_bits', perte possible de données
Un champ de bits plus grand a été affecté à un champ de bits plus petit. Une perte de données est possible.
Cet avertissement est désactivé par défaut. Pour plus d'informations, consultez Compiler Warnings That Are Off by Default.
L’exemple suivant génère l’avertissement 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
};