[openib-general] [PATCH] Avoid truncating to 'long' in ALIGN() macro

Al Viro viro at ftp.linux.org.uk
Sat Nov 25 17:25:11 PST 2006


On Sat, Nov 25, 2006 at 05:17:08PM -0800, Roland Dreier wrote:
>  > 	(typeof(x))((x + a - 1) & ~(a - 1ULL))
> 
> Yes I was being stupid thinking I needed a temporary variable to use
> typeof.  But what does the cast to typeof(x) accomplish if we write
> things the way you suggested above?  It seems that the right things is
> really just
> 
> 	(((x) + (a) - 1) & ~((typeof(x)) (a) - 1))

Better have type of result independent of that of a.




More information about the general mailing list