本节介绍在 Solaris Studio 12.2 C++ 5.11 编译器发行版中引入的新增和更改的特性和功能的摘要列表。
-g 选项以及任何 -O 选项或 -xO 选项支持内联。(A.2.30 –g)
C++ 选项 -xalias_level=compatible 选项断言程序满足 C++ 标准的要求。(A.2.106 -xalias_level[= n])
添加了对 Oracle Solarise 中安装的 Apache C++ 库的支持。(A.2.49 -library=l[ ,l...])
-compat=g 选项提供了与 Gnu g++ 的一些兼容性。(A.2.6 –compat[={ 4|5|g}])
-features=[no%]rvalueref 选项可覆盖某些编译器检查。(A.2.18 –features=a[,a...])
添加了对 SPARC-V9 ISA 的 SPARC VIS3 版本的支持。如果使用 -xarch=sparcvis3 选项进行编译,编译器可以使用 SPARC-V9 指令集、UltraSPARC 和 UltraSPARC-III 扩展、混合乘加指令以及可视指令集 (Visual Instruction Set, VIS) 版本 3.0 中的指令。(A.2.109 –xarch=isa)
在基于 x86 的系统上,-xvector 选项的缺省值已更改为 -xvector=simd。(A.2.187 -xvector[= a])
现在,使用 -xarch=amdsse4a 选项可支持 AMD SSE4a 指令集。(A.2.109 –xarch=isa)
-traceback 选项使可执行文件在出现严重错误时输出栈跟踪。(A.2.94 -traceback[={ %none|common|signals_list}])
-mt 选项已更改为 -mt=yes 或 -mt=no。(A.2.55 -mt[={yes |no}])
#warning 编译器会在指令中发出文本作为警告并继续编译。(2.5.4 警告和错误)
新程序 does_not_read_global_data、does_not_write_global_data 和 no_side_effect。(2.5.1 Pragma)
现已提供头文件 mbarrier.h。为 SPARC 和 x86 处理器中的多线程代码定义不同的内存边界内部函数。(10.5 内存边界内部函数)
-xprofile=tcov 选项经过增强,支持可选的配置文件目录路径名,还能够生成与 tcov 兼容的反馈数据。(A.2.170 –xprofile=p)
在此发行版中,-xMD 和 -xMMD 选项 (C/C++) 写入的依赖性文件将覆写以前存在的任何文件。(A.2.146 -xMD)