【发布时间】:2017-04-16 04:51:36
【问题描述】:
使用以下虚拟代码复制问题。
program pp
implicit none
real*8,dimension(45) :: refPoints
refPoints(:) = (/ -1.0 , 1.0 , 1.0 , -1.0 , -1.0 , 1.0 , 1.0 , -1.0 , 0.0 , 1.0 , 0.0 , -1.0 , 0.0 , 1.0 , 0.0 , -1.0 , -1.0 , 1.0 , 1.0 , -1.0 , 0.0 , 1.0 , 0.0 ,-1.0 , 0.0 , 0.0 , 0.0 , 0.0 , 0.0 , 1.0, 1.0, 2.0 , 3.0, 34.0, 35.0, 25.0, 1.0, 50.0, 5.0, 55.0 , 1.0 , 2.0, 3.0, 4.0, 5.0/)
end program pp
PGF90-S-0285-Source line too long (pp.f90: 6) PGF90-S-0023-语法错误 - 不平衡括号 (pp.f90: 6) 0 通知,0 警告,2 严重,0 对 pp 致命
【问题讨论】:
-
显示代码怎么样?
-
refPoints(1,:) = (/ -1.0_rp, 1.0_rp, 1.0_rp, -1.0_rp, -1.0_rp, 1.0_rp, 1.0_rp, -1.0_rp, 0.0_rp, 1.0_rp , 0.0_rp, -1.0_rp, 0.0_rp, 1.0_rp, 0.0\ _rp, -1.0_rp, -1.0_rp, 1.0_rp, 1.0_rp, -1.0_rp, 0.0_rp, 1.0_rp, 0.0_rp, -1.0_rp, 0.0 _rp, 0.0_rp, 0.0_rp /)
-
就是这样。与除 PGI 之外的所有 fortran 编译器都可以正常工作。对于 PGI,我需要添加 & 符号才能继续。我在整个代码中有很多。
-
将代码放在问题中,这在评论中不可读。请添加您使用的编译器命令行。
-
我添加了一个使用 pgfortran 编译的虚拟代码。