added at the time of gcc 2.8.1, but nowadays it works fine with default -O2 (we are at newer version of gcc, etc)