Compilerwarnung (Stufe 1) C4293
Aktualisiert: November 2007
Fehlermeldung
'Operator' : Eine Verschiebung wurde mit einem negativen oder zu großen Wert aufgerufen, nicht definiertes Verhalten
'operator' : shift count negative or too big, undefined behavior
Wenn eine Verschiebung mit einem negativen oder zu großen Wert aufgerufen wird, ist das Verhalten des resultierenden Abbildes nicht definiert.
Beispiel
Im folgenden Beispiel wird C4293 generiert:
// 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;
}