Just because an optimization could break things in some cases doesnt meanthe compiler cant ever make the optimization. It just cant make theoptimization in the case that breaks things. And by things I mean thingsthat are defined in the standard that would be broken, not things outside ofit.