Avertissement du compilateur (niveau 1) C4293

Mise à jour : novembre 2007

Message d'erreur

'opérateur' : compteur de décalage négatif ou trop important, comportement non défini
'operator' : shift count negative or too big, undefined behavior

Si un compteur de décalage est négatif ou trop important, le comportement de l'image résultante n'est pas défini.

Exemple

L'exemple suivant génère l'erreur C4293 :

// C4293.cpp
// compile with: /c /W1
unsigned __int64 combine (unsigned lo, unsigned hi) {

   return (hi << 32) | lo;   // C4293

   // try the following line instead
   // return ( (unsigned __int64)hi << 32) | lo;
}