【问题标题】:gfortran requires format widths while ifort doesn't?gfortran 需要格式宽度,而 ifort 不需要?
【发布时间】:2017-12-05 05:34:10
【问题描述】:

我正在尝试将 .FOR 文件(出于练习目的)从 ifort 迁移到 gfortran。该文件在我的英特尔 Visual Fortran 解决方案中编译,没有任何问题。但是,当我使用以下命令在 gfortran 中编译它时:

gfortran -ffree-form -ffree-line-length-200 -Dinternal_debug -c MyFile.FOR -o MyFile.o

我收到以下错误消息:

MyFile.FOR:4561:22:

   102     format(A, I)
                      1
Error: Nonnegative width required in format string at (1)

ifort 是否根本不需要格式宽度,或者是否有其他 ifort 选项可以放宽此要求?为什么文件在 ifort 中运行流畅,而在 gfortran 中运行不流畅?

【问题讨论】:

    标签: fortran gfortran


    【解决方案1】:

    你的观察是正确的,我自己也遇到过。英特尔 Fortran 不强制执行此要求,而 gfortran 执行此要求。 Fortran 标准实际上要求字段宽度。我不知道有任何编译器选项可以改变这种行为。我知道的唯一选择是修复代码以使其符合标准。

    如何操作可以在Error: Nonnegative width required in format string at (1) 中找到。请注意,您询问的g0 不是接受I 的编译器选项。这是一个不同的格式描述符放入代码而不是I

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-19
      • 1970-01-01
      • 2018-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-11
      相关资源
      最近更新 更多