36 lines
1.1 KiB
Fortran
36 lines
1.1 KiB
Fortran
! { dg-do compile }
|
|
!
|
|
! PR fortran/30940
|
|
program test
|
|
implicit none
|
|
interface
|
|
subroutine foobar(x)
|
|
integer,dimension(4) :: x
|
|
end subroutine foobar
|
|
subroutine arr(y)
|
|
integer,dimension(1,2,1,2) :: y
|
|
end subroutine arr
|
|
end interface
|
|
|
|
integer a(3), b(5)
|
|
call foobar(a) ! { dg-warning "contains too few elements" }
|
|
call foobar(b)
|
|
call foobar(b(1:3)) ! { dg-warning "contains too few elements" }
|
|
call foobar(b(1:5))
|
|
call foobar(b(1:5:2)) ! { dg-warning "contains too few elements" }
|
|
call foobar(b(2))
|
|
call foobar(b(3)) ! { dg-warning "Actual argument contains too few elements" }
|
|
call foobar(reshape(a(1:3),[2,1])) ! { dg-warning "contains too few elements" }
|
|
call foobar(reshape(b(2:5),[2,2]))
|
|
|
|
call arr(a) ! { dg-warning "contains too few elements" }
|
|
call arr(b)
|
|
call arr(b(1:3)) ! { dg-warning "contains too few elements" }
|
|
call arr(b(1:5))
|
|
call arr(b(1:5:2)) ! { dg-warning "contains too few elements" }
|
|
call arr(b(2))
|
|
call arr(b(3)) ! { dg-warning "contains too few elements" }
|
|
call arr(reshape(a(1:3),[2,1])) ! { dg-warning "contains too few elements" }
|
|
call arr(reshape(b(2:5),[2,2]))
|
|
end program test
|