下面列出了此 5.14 发行版中特定于 C++ 编译器的新增和更改的功能。
C++ 编译器更改包括编译器通用的新增和更改的功能中介绍的更改。
有关详细信息,请参见Oracle Developer Studio 12.5:C++ 用户指南和 CC(1) 手册页。
缺省编译模式中的更改-Oracle Solaris 中的缺省编译模式是使用 –library=Cstd 的 –compat=5(使用 Sun ABI 和 libCstd 库的 C++03 模式)。Linux 中的缺省编译模式是 –std=c++03(使用 g++ ABI 和运行时库的 C++03 模式)。
支持 C++11 标准功能:
Oracle Developer Studio 12.5 C++ 通过增加以下项目完成了对 C++11 的支持:
并发性和原子操作
用户定义的文字
新编译器选项:
–pedantic-针对在缺省情况下接受但不遵循 C++ 标准的代码发出警告或错误。
–abiopt=[mangle5|mangle6]-仅在 –compat=5 模式下可用。缺省值是 mangle6,用于纠正名称改编。在 Oracle Solaris SPARC 和具有 –m32 选项的 Oracle Solaris x86 上,可以指定 mangle5 以和较旧编译器的可能错误的名称改编兼容。
–xcheck=noreturn-通知编译器当已描述为 does_not_return 的例程返回时添加导致运行时错误的代码。
–xatomic 指定链接哪个原子支持运行时库。