1! { dg-do compile }
2! PR33162 INTRINSIC functions as ACTUAL argument
3! Test case adapted from PR by Jerry DeLisle <jvdelisle@gcc.gnu.org>
4module m
5implicit none
6  interface
7    double precision function my1(x)
8      double precision, intent(in) :: x
9    end function my1
10  end interface
11  interface
12    real(kind=4) function my2(x)
13      real, intent(in) :: x
14    end function my2
15  end interface
16  interface
17    real function  my3(x, y)
18      real, intent(in) :: x, y
19    end function my3
20  end interface
21end module
22
23program test
24use m
25implicit none
26procedure(dcos):: my1 ! { dg-error "Cannot change attributes" }
27procedure(cos) :: my2 ! { dg-error "Cannot change attributes" }
28procedure(dprod) :: my3 ! { dg-error "Cannot change attributes" }
29
30end program test
31