elemental_args_check_1.f90

来自「用于进行gcc测试」· F90 代码 · 共 32 行

F90
32
字号
! { dg-do compile }! PR fortran/33343!! Check conformance of array actual arguments to! elemental function.!! Contributed by Mikael Morin  <mikael.morin@tele2.fr>!      module geometry      implicit none      integer, parameter :: prec = 8      integer, parameter :: length = 10      contains      elemental function Mul(a, b)      real(kind=prec) :: a      real(kind=prec) :: b, Mul      intent(in)      :: a, b      Mul = a * b      end function Mul      pure subroutine calcdAcc2(vectors, angles)      real(kind=prec),      dimension(:)          :: vectors      real(kind=prec), dimension(size(vectors),2) :: angles      intent(in) :: vectors, angles      real(kind=prec), dimension(size(vectors)) :: ax      real(kind=prec), dimension(size(vectors),2) :: tmpAcc      tmpAcc(1,:) = Mul(angles(1,1:2),ax(1)) ! Ok      tmpAcc(:,1) = Mul(angles(:,1),ax)      ! OK      tmpAcc(:,:) = Mul(angles(:,:),ax) ! { dg-error "Incompatible ranks in elemental procedure" }      end subroutine calcdAcc2      end module geometry

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?