Hello Don, > Surprise! c == -1. No kidding! > Because 1 is an int, b gets promoted to int before the shift happens. Why would it ever need to be promoted? Unless all (most?) CPUs have only size_t shifts, all three shifts should never promote the LHS. -- ... <IXOYE><