编译时错误的诊断

移植项目的基本建议是使用选项 -qinfo=por 编译应用程序。-qinfo 的此子选项添加特定于可移植性的诊断消息。选项 -qinfo=warn64 指示编译器发出特定于将应用程序移植到 64 位方式的诊断消息。这些消息有助于缩小调查范围或查明特定编码构造。

下表显示对于检测并更正编译时错误可能很有用的其它选项。

编译时错误的其它诊断选项
选项 描述
-qsrcmsg 将下列信息打印至标准错误:编译器认为包含错误的源代码行、指向该源代码行中的特定点的信息(在源代码行下面一行)以及诊断消息。
-qsource 请求返回编译器清单。清单的各个部分包括带有行号的源代码、指定的选项、编译时使用的所有文件的清单、按严重性级别分类的诊断消息的总结、已读取的行数以及编译是否成功。可以通过分别指定 -qattr-qxref 选项来生成清单的属性和交叉引用部分。目标部分(要求指定选项 -qlist)显示编译器生成的伪汇编代码,用来在您怀疑由于代码生成错误导致程序不按期望执行时诊断执行时问题。
-qsuppress 阻止编译器发出特定消息。可以通过在用冒号分隔的列表中列示消息号来禁止发出多条消息。
-qflag 阻止向终端和清单文件发出指定的诊断消息。该选项使用缺省编译器消息格式的单字母严重性代码来指定某个级别,低于该级别的消息应被忽略。
IBM Copyright 2003