The relatively old compiler still works quite well. It may be lacking some newer C++ features and may miss a few optimizations in -03 mode, but we know it works and gives very stable results. A huge code base has been thoroughly tested with this specific old version.
So far, no newer version offers improved code speed. Frank and others have tested performance and found almost no improvement and in some cases slightly slower generated code by newer versions.
Every toolchain upgrade comes with substantial risk, usually by exposing subtle bugs in various libraries which never mattered under the old compiler. While that's technically not the new compiler's fault, the practical reality is upgrading the toolchain requires a lot of beta testing. If old code breaks with the newer toolchain, it all needs to be updated before we can make the switch in a stable release.
All that effort needs to be balanced against a huge list of other features, like improving MTP, many audio features people want, more USB host drivers, non-blocking I2C, and so on. While you probably feel these specific C++ features are important, in terms of making decisions where to invest limited dev time, those sorts of major features so many people want almost always take priority over messing with the toolchain.
The net result is we tend to stay on older but highly stable toolchains, especially when newer ones produce slower or at best the same performance compiled code.