GCC 中的 C++14 支持是实验性的

C++14 support in GCC is experimental

引用自GCC page on C++14 support

Important: Because the final ISO C++14 standard was only recently published, GCC's support is experimental. No attempt will be made to maintain backward compatibility with implementations of C++14 features that do not reflect the final standard.

我找不到 experimental 的官方 GCC 定义。正如最后一句话提到的那样,它是否仅适用于非标准功能的向后兼容性?或者它是否也表示稳定性或缺乏稳定性?同一页上较早的一句话说

C++14 features are available as part of the "mainline" GCC compiler in the trunk of GCC's Subversion repository and in GCC 4.8 and later.

对我来说,这意味着稳定。是这样吗?特别是,我的问题是关于 GCC 4.9,因为根据上述页面,这是具有完整 C++14 支持的最早版本。

没有"official GCC definition",只有官方的英文定义。

这段话的意思是,在 C++14 发布之前,GCC 先前实现了当时即将推出的 C++14 功能的实验原型 ,未来的版本将不会费心去尝试以保持与这些实验的向后兼容性。

两个版本之间的向后兼容性仅针对国际标准中包含这些版本时的功能保持。

这是因为,在标准发布之前,新 C++ 功能的规范可能会发生相当大的变化。保证支持它们的早期实验将与最终在标准中发布的最终真实功能向前兼容是疯狂的。

简而言之:使用实验性功能需要您自担风险,不要期望它们在下一版本的 GCC 中以相同的方式工作