语言元素控制

此类别中的选项允许您指定源代码的特征。 您还可以使用这些选项来实施或放宽语言限制,并启用或禁用语言扩展。

表 1. 语言元素控制选项
选项名称 等效编译指示名称 描述
-qaltivec (-maltivec)

启用对向量数据类型和运算符的编译器支持。

-qasm (-fasm)

控制汇编语言扩展代码的解释和后续生成。

基于 XL 的前端开始-qcpluscmt(仅限C语言) 无。

支持识别 C 源文件中的 C++ 样式的注释。

-D 无。

像在 #define 预处理器伪指令中一样定义宏。

基于 XL 的前端开始-qdfp 无。

启用对十进制浮点类型和字面值的编译器支持。

基于 XL 的前端开始-qdigraph #pragma 选项摘要

启用双字母组合键 仅限 C + +和操作员关键词仅限 C + + ,以表示某些键盘上没有的字符。 两字母词键组合包括 <:<% 等。 仅限 C + +操作员关键字包括 andor 等。仅限 C + +

-qdollar (-fdollars-in-identifiers) 基于 XL 的前端开始#pragma options dollar基于 Clang 的前端开始

允许在标识的名称中使用美元符 ($) 符号。

基于 XL 的前端开始-qignprag #pragma 选项 ignprag

指示编译器忽略某些编译指示语句。

基于 XL 的前端开始 -关键词 无。

控制每当指定的名称出现在程序源代码中时是将它视为关键字还是标识。

-qlanglvl (-std) 基于 XL 的前端开始仅限 C #pragma options langlvl, #pragma langlvl基于 Clang 的前端开始无。

确定源代码是否符合特定语言标准或者某项标准的子集或超集。 当源代码包含相应的标准或 IBM® 扩展功能时,相应的选项设置需要生效。

基于 XL 的前端开始-qlonglong #pragma 选项长整型

允许程序中的 IBM long long 整数类型。

基于 XL 的前端开始-qmacpstr #pragma 选项 macpstr

将 Pascal 字符串文字(以 \p 转义序列为前缀)转换为以 null 结束的字符串,其中第一个字节包含字符串的长度。

基于 XL 的前端开始-qmbcs, -qdbcs #pragma 个选项 mbcs , #pragma 个选项 dbcs

在源代码中启用多字节字符集 (MBCS) 和 Unicode 字符支持。

基于 XL 的前端开始 -qstaticinline(仅适用于C++) 无。

控制是否将内联函数视为具有 staticextern 链接。

基于 XL 的前端开始-qtabsize 无。

设置缺省制表符长度,以用于在错误消息中报告列号。

-qtrigraph (-trigraphs) 无。

支持识别三字母词键组合以表示部分键盘上不存在的字符。

-U 无。

如果指定了 -U,那么在名称中区分大小写。

-qutf 无。

启用 UTF 字面值语法的识别。

XL C/C++ 支持以下选项以实现 GCC 兼容性。 有关这些选项的详细信息,请参阅 GNU Compiler Collection 在线文档,网址为 http://gcc.gnu.org/onlinedocs/请注意,这些 GCC 选项仅在 IBM XL C/C++ for AIX® 16.1(由 xlclang/xlclang + +调用) 的基于 Clang 的前端中受支持。

  • -ansi
  • -fasm
  • -fconstexpr-depth
  • -fdollars-in-identifiers
  • -ffreestanding
  • -fgnu89-inline
  • -fhosted
  • -fno-access-control
  • -fno-builtin
  • -fno-gnu-keywords
  • -fno-operator-names
  • -fpermissive
  • -fsigned-bitfields
  • -fsigned-char 和 -funsigned-char
  • -ftemplate-backtrace-limit
  • -ftemplate-depth
  • -maltivec
  • -std
  • -trigraphs
  • -Xassembler