Is optimisation level -O3 dangerous in g++?
===

I have heard from various sources (though mostly from a colleague of mine), that compiling with an optimisation level of `-O3` in `g++` is somehow 'dangerous', and should be avoided in general unless proven to be necessary.

Is this true, and if so, why? Should I just be sticking to `-O2`?