blob: 23862e54d748d53bdec65d6a25f058e85cb2e39c [file] [log] [blame]
! PR 101334
! { dg-do compile}
! { dg-additional-options "-fcoarray=single" }
!
! TS 29113
! C535b An assumed-rank variable name shall not appear in a designator
! or expression except as an actual argument corresponding to a dummy
! argument that is assumed-rank, the argument of the C_LOC function
! in the ISO_C_BINDING intrinsic module, or the first argument in a
! reference to an intrinsic inquiry function.
!
! This has been renamed C838 in the Fortran 2018 standard, with C_SIZEOF
! and SELECT_RANK additionally added.
!
! This tests various forms of the 2-argument associated intrinsic.
function test_associated2 (a, b)
implicit none
integer, pointer :: a(..)
integer, target :: b(..)
logical :: test_associated2
test_associated2 = associated (a, b) ! { dg-error "Assumed.rank" }
end function
function test_associated3 (a, b)
implicit none
integer, pointer :: a(..)
integer, target :: b
logical :: test_associated3
test_associated3 = associated (a, b) ! { dg-bogus "must be of rank -1" "pr101334" }
end function
function test_associated4 (a, b)
implicit none
integer, pointer :: a(..)
integer, target :: b(:)
logical :: test_associated4
test_associated4 = associated (a, b) ! { dg-bogus "must be of rank -1" "pr101334" }
end function
function test_associated5 (a, b)
implicit none
integer, pointer :: a(..)
integer, target :: b(20)
logical :: test_associated5
test_associated5 = associated (a, b) ! { dg-bogus "must be of rank -1" "pr101334" }
end function
function test_associated6 (a, b)
implicit none
integer, pointer :: a(..)
integer, pointer :: b(..)
logical :: test_associated6
test_associated6 = associated (a, b) ! { dg-error "Assumed.rank" }
end function
function test_associated7 (a, b)
implicit none
integer, pointer :: a(..)
integer, pointer :: b
logical :: test_associated7
test_associated7 = associated (a, b) ! { dg-bogus "must be of rank -1" "pr101334" }
end function
function test_associated8 (a, b)
implicit none
integer, pointer :: a(..)
integer, pointer :: b(:)
logical :: test_associated8
test_associated8 = associated (a, b) ! { dg-bogus "must be of rank -1" "pr101334" }
end function