Hello,

I just noticed a bug in 
http://www.eecs.berkeley.edu/~necula/cil/cil016.html#toc32 
  :

In the second example, (1 - sizeof(int)) >> 32) should be for instance  
(1 - sizeof(int)) >> 16) >> 16, or perhaps just (1 - sizeof(int)) >>  
31).

The current example is undefined behavior, and will indeed, when  
tried, output values other than the 0 and -1 that the wording of this  
example suggests (the example clearly assumes 32-bit ints and 2's  
complement representation for signed integers, which is fine by me and  
not the topic of this quibble).

C99 6.5.7.3: ... If the value of the right operand is negative or is  
greater than or equal to the width of the promoted left operand, the  
behavior is undefined.

Pascal


------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev
_______________________________________________
CIL-users mailing list
CIL-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cil-users

Reply via email to