Rework the gnu++11 detection to also support CLang and gnu++0x