gpt4 book ai didi

Fortran(重新)分配分配和 gfortran 警告

转载 作者:行者123 更新时间:2023-12-04 15:45:00 27 4
gpt4 key购买 nike

一个简单的代码:

program main
integer, allocatable :: A(:,:)
integer :: B(3,4)
B=1
A = B !A will get allocated, with the same shape and bounds as B
end program main

使用以下代码编译上述代码: gfortran-8 -std=f2008 -fcheck=all -Wall -Wextra -fbounds-check -fimplicit-none array.f90
我收到以下警告:
Warning: ‘a.offset’ may be used uninitialized in this function
Warning: ‘a.dim[0].lbound’ may be used uninitialized in this function
Warning: ‘a.dim[0].ubound’ may be used uninitialized in this function [-Wmaybe-uninitialized]

有人知道我为什么收到这些警告吗?

最佳答案

这是一个众所周知的 GCC 错误 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77504已经向 bugzilla 报告了许多重复(甚至是我自己) - 请参阅其他化身的重复部分。

据我了解,编译器生成的实际代码应该可以正常工作,这只是一个不正确的警告。正如史蒂夫在评论中指出的那样,使用 -Wno-maybe-uninitialized隐藏此警告。我也将它包含在我的构建脚本中。

关于Fortran(重新)分配分配和 gfortran 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56261880/

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