gpt4 book ai didi

fortran - 使用新的 gfortran 版本具有不同种类参数的 iand

转载 作者:行者123 更新时间:2023-12-04 15:28:46 26 4
gpt4 key购买 nike

我目前正在使用旧代码,它调用 iand以不同类型的整数作为参数的函数。下面是代码包含的一个小例子:

program test
integer*1 i
integer j, k

i = 1
j = 8

k = iand(i, j)
print *, k
end program test

gfortran 8 及更早版本具有作为扩展调用 iand 不同类型整数的能力(例如,参见 here ),而该选项在 gfortran 9 中被删除(参见 this site )。
例如,使用 gfortran 7.5.0:
gfortran-7 -o test test.f90 && ./test
0

但是当用 gfortran 9.2.0 编译时,我得到:
gfortran -o test test.f90
...
Error: Arguments of ‘iand’ have different kind type parameters at (1)

新版 gfortran有选项吗?让我按原样使用此代码?

最佳答案

不,没有。由于没有很好地指定语义,因此删除了此扩展,并且将代码修复为符合标准很简单。

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81509

在你的情况下,像

k = iand(int(i, kind(j)), j)

希望是你所追求的。

关于fortran - 使用新的 gfortran 版本具有不同种类参数的 iand,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59756525/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com