I am generally familiar with the sorts of optimizations performed by the -O2 or -O3 switches.
I have been bitten a couple of times now by issues that are specific to building a DLL that don't appear in writing a flat executable, so before I start turning on optimizations are there any "gotcha"s that I should be aware of?