! RUN: %python %S/test_errors.py %s %flang_fc1
module m
type dt
real a
end type
contains
subroutine s(a,b,p,unl)
type(dt), optional :: a(:), b
procedure(sin), optional :: p
type(*), optional :: unl
print *, present(a) ! ok
print *, present(p) ! ok
print *, present(unl) ! ok
!ERROR: Argument of PRESENT() must be the name of a whole OPTIONAL dummy argument
print *, present(a(1))
!ERROR: Argument of PRESENT() must be the name of a whole OPTIONAL dummy argument
print *, present(b%a)
!ERROR: Argument of PRESENT() must be the name of a whole OPTIONAL dummy argument
print *, present(a(1)%a)
end
end