在源代码中嵌入编译器选项

Embedding Compiler Options in source

我正在将一些 COBOL 代码从 zOS 移动到 Linux,并在 COBOL 程序的顶部偶然发现了这段代码:

   CBL DATEPROC(FLAG),YEARWINDOW(-90)                               004220CB
   ID DIVISION.                                                     004220CB
   PROGRAM-ID.   AL0001.                                            004220C

是 COBOL 编译器检测到的编译器选项,还是对某种第三方预处理器的指令。

个人猜测是代码中处理Y2K问题的第三方处理器

对于 IBM 的企业 COBOL,CBL 语句是提供编译器选项的几种方法之一。

您的示例中的选项有点特殊,因为 IBM 放弃了 Y2K 支持,因此在从版本 4 移动到版本 5 时 DATEPROC and YEARWINDOW 选项。对于 V5 编译器,它们应该被标记为编译器,但不应导致编译错误。