> 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 [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/