lkml.org 
[lkml]   [2006]   [Nov]   [25]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] Avoid truncating to 'long' in ALIGN() macro
FromRoland Dreier <>
DateSat, 25 Nov 2006 15:09:38 -0800
 > You would need to also cast the constants with typeof() to.

Why?  I'm not much of a C language lawyer, but I would have thought
that in something like

	(x) + _a - 1

the "1" will be promoted to the type of the rest of the expression
without any explicit cast.  I tested the unsigned long/unsigned int
and u64/int cases of ALIGN(), and my macro with typeof() works for
both of those cases at least.

 > But yes, given the array sizing case in the neighbour code,
 > perhaps we can use your original patch for now.  Feel free
 > to push that to Linus.

akpm is CC'ed on this thread.  Andrew, are you going to pick this up?

Thanks,
  Roland
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-11-25 23:13    [from the cache]
©2003-2008