Export (0) Print
Expand All
Expand Minimize
0 out of 3 rated this helpful - Rate this topic

Compiler Warning (level 1) C4293

Error Message

'operator' : shift count negative or too big, undefined behavior

If a shift count is negative or too large, the behavior of the resulting image is undefined.


The following sample generates 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;
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2014 Microsoft. All rights reserved.