There's the case where we'd like to have the files of a subsystem to be optimized but we want a handful of functions that directly access hardware be unoptimized. (We found that the optimization did some write reordering that the hardware didn't like. ;) )
You will want to either, file bug reports for this, or learn to use volatile or stop type tricks... :-)