Pavel Tolkachev <paultolk@xxxxxxxxx> writes: > This certainly works for my original problem. But my question is why > gcc is kind of changing its mind as it generates the code for the > functions I sent in my original post -- it just seems illogical. gcc's optimizations interact in fairly complex ways. I haven't looked at this particular case, but it is not surprising that gcc does not act as you predict. If you are interested I would encourage you to look into the problem. Using -fdump-tree-all and comparing dumps is often a good way to find out what is happening. Ian