I see. Well, thank you very much for your help. I appreciate the quick response. Scott On Mon, Jun 2, 2008 at 7:11 PM, me22 <me22.ca@xxxxxxxxx> wrote: > On Mon, Jun 2, 2008 at 10:04 PM, Scott Phuong <mycleanjunk@xxxxxxxxx> wrote: >> Thanks so much for your quick reply. This code is simliar to code in a >> third party source code that I have to fix and they do this all over >> the place. The question is w/o touching their code is there a way I >> can fix this? > > Switch to a platform with 16-bit ints? > >> I tried explicitly casting the 1 to an unsigned short >> but it doesn't seem to work like this: >> >> a = (a + (unsigned short) 1) % b. >> > > More evidence that you're hitting integral promotion, so there's > basically nothing you can do about it. > > (Besides make sure a is never that large :P) >