C4293 de aviso (nível 1) do compilador
'operator': deslocar contagem negativa ou muito grande, indefinida comportamento
Se uma contagem shift for negativo ou muito grande, o comportamento da imagem resultante é indefinido.
Exemplo
O exemplo a seguir gera 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;
}