Advertisement
PVS-StudioWarnings

PVS-Studio warning V610 for Newton Game Dynamics

Nov 25th, 2014
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.59 KB | None | 0 0
  1. dgGoogol dgGoogol::Floor () const
  2. {
  3.   ....
  4.   dgUnsigned64 mask = (-1LL) << (64 - bits);
  5.   ....
  6. }
  7.  
  8. Most likely this is what should be written here: dgUnsigned64 mask = (~0LLU) << (64 - bits);
  9.  
  10. This suspicious code was found in Newton Game Dynamics project by PVS-Studio static code analyzer.
  11. Warning message is:
  12. V610 Undefined behavior. Check the shift operator '<<. The left operand '(- 1LL)' is negative. dggoogol.cpp 249
  13.  
  14. PVS-Studio is a static analyzer for detecting bugs in the source code of applications written in C, C++, C++11, C++/CX. Site: http://www.viva64.com/en/pvs-studio/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement