where20.f90
来自「用于进行gcc测试」· F90 代码 · 共 55 行
F90
55 行
! Test the dependency checking in simple where. This! did not work and was fixed as part of the patch for! pr24519.!program where_20 integer :: a(4) integer :: b(3) integer :: c(3) integer :: d(3) = (/1, 2, 3/) equivalence (a(1), b(1)), (a(2), c(1))! This classic case worked before the patch. a = (/1, 2, 3, 4/) where (b .gt. 1) a(2:4) = a(1:3) if (any(a .ne. (/1,2,2,3/))) call abort ()! This is the original manifestation of the problem! and is repeated in where_19.f90. a = (/1, 2, 3, 4/) where (b .gt. 1) c = b endwhere if (any(a .ne. (/1,2,2,3/))) call abort ()! Mask to.destination dependency. a = (/1, 2, 3, 4/) where (b .gt. 1) c = d endwhere if (any(a .ne. (/1,2,2,3/))) call abort ()! Source to.destination dependency. a = (/1, 2, 3, 4/) where (d .gt. 1) c = b endwhere if (any(a .ne. (/1,2,2,3/))) call abort ()! Check the simple where. a = (/1, 2, 3, 4/) where (b .gt. 1) c = b if (any(a .ne. (/1,2,2,3/))) call abort ()! This was OK before the patch. a = (/1, 2, 3, 4/) where (b .gt. 1) where (d .gt. 1) c = b end where endwhere if (any(a .ne. (/1,2,2,3/))) call abort ()end program
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?